


.vcnp-table th {
	white-space: nowrap;
}

.vcnp-table td {
	vertical-align: middle;
}

.vcnp-validation-result {
	box-shadow: 0 16px 35px rgba(0, 0, 0, .08);
}

 

.vcnp-validation-result .cnp-header {
    background: #248754;
}

.vcnp-validation-result .cnp-header h3 {
    display: inline-block;
    background: rgba(255, 255, 255, .15);
    padding: 8px 14px;
    border-radius: 30px;
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 12px;
    color: #fff;
}

.vcnp-validation-result.is-invalid .cnp-header {
    background: #dc3545;
}


.vcnp-status-dot {
	display: inline-block;
	width: .7rem;
	height: .7rem;
	margin-right: .65rem;
	background: #198754;
	vertical-align: middle;
}

.vcnp-validation-result.is-invalid .vcnp-status-dot {
	background: #dc3545;
}

.vcnp-detail-grid {
	display: grid;
	grid-template-columns: minmax(160px, 32%) 1fr;
	gap: .75rem 2rem;
}

.vcnp-detail-label {
	color: #212529;
	font-weight: 700;
}

.vcnp-detail-value {
	min-width: 0;
	color: #212529;
}

.vcnp-zodiac-badge {
	display: inline-block;
	padding: .25rem .65rem;
	color: #000;
	font-weight: 700;
	background: #dbe4ea;
}



@media (max-width: 767.98px) {
	.vcnp-detail-grid {
		grid-template-columns: 1fr;
		gap: .2rem;
	}

	.vcnp-detail-value {
		margin-bottom: .75rem;
	}
}

.vcnp-statistics-strip {
	background: #111;
	color: #fff;
}

.vcnp-statistics-strip-inner {
	display: grid;
	grid-template-columns: minmax(220px, 1.05fr) minmax(440px, 2.15fr) auto;
	gap: 26px;
	align-items: center;
	padding: 22px 0;
}

.vcnp-statistics-strip-copy span {
	display: block;
	margin-bottom: 4px;
	color: #fe4200;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.vcnp-statistics-strip-copy h2 {
	margin: 0;
	font-size: 1.35rem;
	font-weight: 800;
}

.vcnp-statistics-strip-items {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
}

.vcnp-statistics-strip-item {
	border-left: 1px solid rgba(255, 255, 255, .18);
	padding-left: 14px;
}

.vcnp-statistics-strip-item small,
.vcnp-statistics-strip-item em {
	display: block;
}

.vcnp-statistics-strip-item small {
	color: rgba(255, 255, 255, .62);
	font-size: 11px;
	font-style: normal;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.vcnp-statistics-strip-item strong {
	display: block;
	margin: 3px 0;
	font-size: 1.35rem;
	line-height: 1.05;
}

.vcnp-statistics-strip-item em {
	color: #fe4200;
	font-style: normal;
	font-weight: 800;
}

.vcnp-statistics-strip-empty {
	margin: 0;
	color: rgba(255, 255, 255, .72);
}

.vcnp-statistics-page {
	display: grid;
	gap: 24px;

}

.vcnp-statistics-empty,
.vcnp-statistics-panel,
.vcnp-stat-leader {
	border: 1px solid #d9d9d2;
	background: #fff;
}

.vcnp-statistics-empty {
	padding: 38px;
}

.vcnp-statistics-empty h2 {
	margin-bottom: 10px;
	font-size: 2rem;
	font-weight: 800;
}

.vcnp-statistics-leaders {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 16px;
}

.vcnp-stat-leader {
	min-height: 150px;
	padding: 22px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.vcnp-stat-leader span,
.vcnp-statistics-panel-head span {
	color: #6a6a63;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.vcnp-stat-leader strong {
	color: #111;
	font-size: clamp(1.65rem, 3vw, 2.45rem);
	line-height: 1.05;
}

.vcnp-stat-leader small {
	color: #f61501;
	font-weight: 700;
}

.vcnp-statistics-grid {
	display: grid;
	gap: 24px;
}

.vcnp-statistics-grid-2 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.vcnp-statistics-panel {
	padding: 24px;
}

.vcnp-statistics-panel-head {
	display: flex;
	gap: 16px;
	align-items: baseline;
	justify-content: space-between;
	margin-bottom: 18px;
	border-bottom: 1px solid #ededeb;
	padding-bottom: 12px;
}

.vcnp-statistics-panel-head h2 {
	margin: 0;
	color: #111;
	font-size: 1.45rem;
	font-weight: 800;
}

.vcnp-statistics-bars {
	display: grid;
	gap: 14px;
}

.vcnp-statistics-bar-meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	margin-bottom: 6px;
}

.vcnp-statistics-bar-meta strong {
	color: #111;
}

.vcnp-statistics-bar-meta span {
	color: #555;
	font-variant-numeric: tabular-nums;
}

.vcnp-statistics-bar-track {
	height: 9px;
	background: #ecece7;
	overflow: hidden;
}

.vcnp-statistics-bar-track i {
	display: block;
	height: 100%;
	min-width: 2px;
	background: #f61501;
}

.vcnp-statistics-day-grid {
	display: grid;
	grid-template-columns: repeat(31, minmax(34px, 1fr));
	gap: 6px;
	overflow-x: auto;
	padding-bottom: 4px;
}

.vcnp-statistics-day {
	min-width: 34px;
	padding: 9px 4px;
	text-align: center;
	background: linear-gradient(to top, rgba(246, 21, 1, .9) var(--vcnp-intensity), #f1f1ed var(--vcnp-intensity));
}

.vcnp-statistics-day strong,
.vcnp-statistics-day span {
	display: block;
}

.vcnp-statistics-day strong {
	color: #111;
	font-size: 14px;
}

.vcnp-statistics-day span {
	margin-top: 16px;
	color: #333;
	font-size: 11px;
	font-variant-numeric: tabular-nums;
}

.vcnp-statistics-zodiac-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 14px;
}

.vcnp-statistics-zodiac {
	border: 1px solid #ededeb;
	padding: 14px;
}
.statistics-strip-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
    align-items: center;
}


.statistics-strip-actions a {
    border: 1px solid rgba(255, 255, 255, .28);
    color: #fff;
    padding: 8px 12px;
    text-decoration: none;
    white-space: nowrap;
}

.statistics-strip-actions a:first-child {
    background: #fe4200;
    border-color: #fe4200;
}
.statistics-strip-actions a:hover {
    background: #fff;
    border-color: #fff;
    color: #111;
}
.vcnp-statistics-zodiac div {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 10px;
}

.vcnp-statistics-zodiac strong {
	color: #111;
}

.vcnp-statistics-zodiac span {
	color: #555;
	font-variant-numeric: tabular-nums;
}

.vcnp-statistics-zodiac i {
	display: block;
	height: 7px;
	min-width: 2px;
	width: var(--vcnp-zodiac-width);
	background: #111;
}





.cnp-result {
    margin: auto;
    background: #fff;
    overflow: hidden;
}

.cnp-header {
    background: #198754;
    color: #fff;
    padding: 25px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
}
.cnp-result.is-invalid .cnp-header {
    background: linear-gradient(135deg, #dc2626, #b91c1c);
}
.status-area {
    flex: 1;
}

.status-badge {
    display: inline-block;
    background: rgba(255, 255, 255, .15);
    padding: 8px 14px;
    border-radius: 30px;
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 12px;
}

.cnp-number {
    font-size: 34px;
    font-weight: 800;
    letter-spacing: 1px;
}

.cnp-actions {
    display: flex;
    gap: 10px;
}

.cnp-actions button {
    border: none;
    cursor: pointer;
    padding: 12px 18px;
    font-weight: 600;
    font-size: 14px;
}

.btn-white {
    background: #fff;
    color: #111;
}

.btn-black {
    background: #111;
    color: #fff;
}

.cnp-summary {
    padding: 20px 25px;
    background: #f8fafc;
    border-bottom: 1px solid #e5e7eb;
    font-size: 18px;
    line-height: 1.6;
}

.cnp-summary strong {
    color: #198754;
}

.cnp-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 15px;
    padding: 25px;
}

.info-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 4px 20px rgb(0 0 0 / 14%);
}

.info-card {
    background: #f0f3f6;
    padding: 16px;
    transition: 0.3s;
}

.info-label {
    display: block;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: .5px;
    color: #6b7280;
    margin-bottom: 8px;
}

.info-value {
    font-size: 18px;
    font-weight: 700;
}

.cnp-footer {
    padding: 20px 25px;
    border-top: 1px solid #e5e7eb;
    background: #fff;
    color: #555;
    line-height: 1.7;
}

@media(max-width:900px) {
    .info-card:hover {
        transform: translateY(0px);
        box-shadow: none
    }
    .cnp-grid {
        grid-template-columns: repeat(2, 1fr);
    }
        .cnp-actions button {
            padding: 12px 8px;
        }
}

@media(max-width: 770px) {
    .cnp-actions button {
            flex: 1;
        }

                        .cnp-header {
                            flex-direction: column;
                            align-items: flex-start;
                        }

                        .cnp-actions {
                            width: 100%;
                        }
}
@media(max-width:600px) {



.cnp-grid {
    gap: 5px;
}

    .cnp-number {
        font-size: 24px;
        word-break: break-all;
    }

    .cnp-actions {
        width: 100%;
    }

    .cnp-actions button {
        flex: 1;
    }

    .cnp-summary {
        font-size: 16px;
    }

    .cnp-grid {
        grid-template-columns: 1fr;
        padding: 15px;
    }

    .info-card {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .info-label {
        margin: 0;
    }

    .info-value {
        font-size: 16px;
        text-align: right;
    }
}




@media (max-width: 991.98px) {
	.vcnp-statistics-strip-inner,
	.vcnp-statistics-grid-2 {
		grid-template-columns: 1fr;
	}

	.statistics-strip-actions {
		justify-content: flex-start;
	}

	.vcnp-statistics-leaders,
	.vcnp-statistics-zodiac-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 575.98px) {
	.vcnp-statistics-leaders,
	.vcnp-statistics-strip-items,
	.vcnp-statistics-zodiac-grid {
		grid-template-columns: 1fr;
	}

	.vcnp-statistics-panel,
	.vcnp-statistics-empty {
		padding: 18px;
	}
}

.api-token-comment {
	color: #8b949e;
	font-style: italic;
}

.api-token-string {
	color: #a5d6ff;
}

.api-token-property {
	color: #79c0ff;
}

.api-token-keyword {
	color: #ff7b72;
}

.api-token-variable {
	color: #ffa657;
}

.api-token-number {
	color: #d2a8ff;
}

.api-token-option {
	color: #7ee787;
}

.api-console {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 1.25rem;
	margin-top: 1.25rem;
}

.api-console-card {
	display: flex;
	min-width: 0;
	height: 560px;
	flex-direction: column;
	overflow: hidden;
	border: 1px solid #d9e4dd;
	border-radius: 16px;
	background: #192126;
	box-shadow: 0 14px 36px rgba(20, 39, 28, .09);
}

.api-console-card-heading {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	min-height: 52px;
	padding: 0 1rem;
	border-bottom: 1px solid #e1e9e4;
	background: #fff;
}

.api-console-card-title {
	display: inline-flex;
	align-items: center;
	gap: .6rem;
	color: #17231c;
	font-size: .77rem;
	font-weight: 850;
	letter-spacing: .07em;
	text-transform: uppercase;
}

.api-console-dot {
	width: 9px;
	height: 9px;
	border-radius: 50%;
	background: #86948c;
	box-shadow: 0 0 0 4px #eef2ef;
}

.api-console-dot-response {
	background: #229653;
	box-shadow: 0 0 0 4px #e4f5ea;
}

.api-console-method {
	border: 1px solid #cce7d4;
	border-radius: 999px;
	background: #edf9f1;
	padding: .22rem .6rem;
	color: #177840;
	font-family: var(--bs-font-monospace);
	font-size: .7rem;
	font-weight: 850;
	letter-spacing: .06em;
}

.api-console-status {
	display: inline-flex;
	align-items: center;
	gap: .35rem;
	border-radius: 999px;
	background: #f0f3f1;
	padding: .28rem .65rem;
	color: #68736d;
	font-size: .72rem;
	font-weight: 800;
}

.api-console-status::before {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: currentColor;
	content: "";
}

.api-console-status.is-running {
	background: #fff6dc;
	color: #9a6c00;
}

.api-console-status.is-success {
	background: #e7f7ec;
	color: #168247;
}

.api-console-status.is-error {
	background: #fdecec;
	color: #c13e3e;
}

.api-console-copy {
	border-color: #d7e0da;
	border-radius: 999px;
	background: #fff;
	color: #536159;
	font-size: .72rem;
	font-weight: 800;
}

.api-console-toolbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	min-height: 64px;
	padding: .7rem .85rem;
	border-bottom: 1px solid #dde6e0;
	background: #f7faf8;
}

.api-console-toolbar .btn {
	border-radius: 999px;
	padding: .38rem .72rem;
	font-size: .79rem;
	font-weight: 800;
}

.api-console-toolbar [data-api-code-language].active {
	border-color: #21894a;
	background: #21894a;
	color: #fff;
	box-shadow: 0 4px 12px rgba(33, 137, 74, .2);
}

.api-console-toolbar [data-api-test-button] {
	border-color: #168b4b;
	background: #168b4b;
	padding: .48rem .9rem;
	box-shadow: 0 5px 14px rgba(22, 139, 75, .18);
}

.api-console-toolbar [data-api-test-button]:hover,
.api-console-toolbar [data-api-test-button]:focus {
	border-color: #116f3c;
	background: #116f3c;
}

.api-console-panel,
.entry-content .api-console-panel {
	height: auto;
	min-height: 0;
	flex: 1 1 auto;
	margin: 0;
	overflow: auto;
	border: 0;
	border-radius: 0;
	background: #192126;
	padding: 1.5rem;
	color: #edf3ef;
	font-size: .88rem;
	line-height: 1.7;
	white-space: pre;
	tab-size: 4;
}

.api-console-result,
.entry-content .api-console-result {
	height: auto;
	min-width: 0;
	min-height: 0;
	flex: 1 1 auto;
	margin: 0;
	overflow: auto;
	border: 0;
	border-radius: 0;
	background: #192126;
	padding: 1.5rem;
	color: #edf3ef;
	font-size: .88rem;
	line-height: 1.7;
	white-space: pre;
	tab-size: 4;
}

.api-console-response.is-empty .api-console-result {
	display: grid;
	place-items: center;
	color: #91a098;
	text-align: center;
	white-space: normal;
}

.api-console-response.is-empty .api-console-result code {
	max-width: 260px;
	font-family: var(--bs-font-sans-serif);
	font-size: .88rem;
	line-height: 1.55;
}

.api-json-example {
	overflow: hidden;
	margin-bottom: 2rem;
	border: 1px solid #d9e4dd;
	border-radius: 16px;
	background: #192126;
	box-shadow: 0 12px 30px rgba(20, 39, 28, .08);
}

.api-json-example-toolbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 48px;
	padding: 0 .85rem 0 1rem;
	border-bottom: 1px solid #e1e9e4;
	background: #fff;
	color: #536159;
	font-family: var(--bs-font-monospace);
	font-size: .72rem;
	font-weight: 850;
	letter-spacing: .08em;
}

.api-json-example-toolbar .btn {
	border-color: #d7e0da;
	border-radius: 999px;
	font-size: .72rem;
	font-weight: 800;
}

.api-json-example pre,
.entry-content .api-json-example pre {
	max-height: 520px;
	margin: 0;
	overflow: auto;
	border: 0;
	border-radius: 0;
	background: #192126;
	padding: 1.5rem;
	color: #edf3ef;
	font-size: .88rem;
	line-height: 1.7;
}

.api-error-responses .table-responsive {
	border-color: #d9e4dd;
	box-shadow: 0 8px 24px rgba(20, 39, 28, .05);
}

.api-error-responses thead th {
	background: #f5f9f6;
	color: #536159;
	font-size: .76rem;
	letter-spacing: .05em;
	text-transform: uppercase;
}

.api-error-responses tbody td:first-child {
	width: 245px;
	white-space: nowrap;
}

.api-error-responses tbody code {
	color: #17231c;
	font-weight: 800;
}

.entry-content.mw-100 > h2 {
	margin-top: 2.75rem;
	font-size: clamp(1.55rem, 2vw, 2rem);
	letter-spacing: -.025em;
}

.entry-content.mw-100 .input-group {
	overflow: hidden;
	border: 1px solid #d8e5dc;
	border-radius: 14px;
	box-shadow: 0 6px 18px rgba(20, 39, 28, .05);
}

.entry-content.mw-100 .input-group > * {
	border: 0;
}

.entry-content.mw-100 .alert {
	border-color: #dbe9df !important;
	border-radius: 14px;
	background: #f6fbf7;
	color: #304b3a;
}

@media (max-width: 991.98px) {
	.api-console {
		grid-template-columns: minmax(0, 1fr);
	}

	.api-console-card {
		height: 500px;
	}
}

@media (max-width: 575.98px) {
	.api-console-toolbar {
		align-items: stretch;
		flex-direction: column;
	}

	.api-console-toolbar > .btn {
		width: 100%;
	}

	.api-console-toolbar > .d-flex:last-child {
		width: 100%;
	}

	.api-console-toolbar > .d-flex:last-child .btn {
		flex: 1 1 auto;
	}

	.api-console-card {
		height: 440px;
		border-radius: 14px;
	}

	.api-console-panel,
	.entry-content .api-console-panel,
	.api-console-result,
	.entry-content .api-console-result {
		padding: 1rem;
		font-size: .82rem;
	}

	.api-error-responses tbody td:first-child {
		width: auto;
		white-space: normal;
	}
}

.vcnp-statistics-strip {
	background: #eef8f1;
	color: #101728;
	border-top: 1px solid #d7eadb;
	border-bottom: 1px solid #d7eadb;
}

.vcnp-statistics-strip-inner {
	padding: 30px 0;
}

.vcnp-statistics-strip-copy span,
.vcnp-statistics-strip-item em {
	color: #4ca657;
}

.vcnp-statistics-strip-copy h2,
.vcnp-statistics-strip-item strong {
	color: #101728;
}

.vcnp-statistics-strip-item {
	border-left-color: rgba(76, 166, 87, .26);
}

.vcnp-statistics-strip-item small,
.vcnp-statistics-strip-empty {
	color: #70746f;
}

.statistics-strip-actions a {
	border-color: #d7eadb;
	border-radius: 999px;
	background: #fff;
	color: #101728;
	font-weight: 760;
}

.statistics-strip-actions a:first-child,
.statistics-strip-actions a:hover {
	background: #4ca657;
	border-color: #4ca657;
	color: #fff;
}

.vcnp-statistics-panel,
.vcnp-stat-leader,
.vcnp-statistics-empty,
.vcnp-statistics-zodiac {
	border-color: #d7eadb;
	border-radius: 22px;
	background: #fff;
}

.vcnp-stat-leader {
	background: #eef8f1;
}

.vcnp-stat-leader small,
.vcnp-statistics-panel-head span {
	color: #4ca657;
}

.vcnp-statistics-bar-track {
	border-radius: 999px;
	background: #e7f3ea;
}

.vcnp-statistics-bar-track i,
.vcnp-statistics-zodiac i {
	border-radius: 999px;
	background: #4ca657;
}

.vcnp-statistics-day {
	border-radius: 14px;
	background: linear-gradient(to top, rgba(76, 166, 87, .78) var(--vcnp-intensity), #eef8f1 var(--vcnp-intensity));
}

.cnp-result {
	margin-top: 2rem;
	border: 1px solid #d7eadb;
	border-radius: 22px;
	background: #fff;
	box-shadow: 0 24px 70px rgba(16, 23, 40, .08);
}

.cnp-header,
.vcnp-validation-result .cnp-header {
	background: #4ca657;
}

.cnp-result.is-invalid .cnp-header,
.vcnp-validation-result.is-invalid .cnp-header {
	background: #c84d4d;
}

.cnp-actions button,
.btn-white,
.btn-black {
	border-radius: 999px;
}

.btn-black {
	background: #101728;
}

.cnp-summary,
.info-card {
	background: #eef8f1;
}

.cnp-summary strong {
	color: #2e7d39;
}

.info-card {
	border: 1px solid #d7eadb;
	border-radius: 18px;
}

/* Result card polish */
.cnp-result {
	margin-top: clamp(1.25rem, 3vw, 2.5rem);
	border: 1px solid #d7eadb;
	border-radius: 28px;
	background: #fff;
	box-shadow: 0 28px 90px rgba(16, 23, 40, .1);
	overflow: hidden;
}

.cnp-header {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 1.5rem;
	align-items: center;
	padding: clamp(1.25rem, 3vw, 2.25rem);
	background: linear-gradient(135deg, #4ca657, #5dac63);
	color: #fff;
}

.cnp-header::after {
	content: "";
	position: absolute;
	right: 4%;
	top: 10%;
	width: min(34vw, 420px);
	aspect-ratio: 1;
	border-radius: 50%;
	opacity: .16;
	pointer-events: none;
	background-image: radial-gradient(circle, #fff 0 2px, transparent 2.5px);
	background-size: 14px 14px;
	mask-image: radial-gradient(circle, #000 0 54%, transparent 72%);
}

.cnp-result.is-invalid .cnp-header {
	background: linear-gradient(135deg, #c84d4d, #a93f3f);
}

.status-area,
.cnp-actions {
	position: relative;
	z-index: 1;
}

.status-badge {
	display: inline-flex;
	align-items: center;
	gap: .45rem;
	margin-bottom: 1.15rem;
	border-radius: 999px;
	background: rgba(255, 255, 255, .18);
	padding: .45rem .8rem;
	color: #fff;
	font-size: .86rem;
	font-weight: 850;
	line-height: 1;
	text-transform: uppercase;
}

.cnp-number {
	color: #fff;
	font-size: clamp(2rem, 5vw, 3.4rem);
	font-weight: 900;
	letter-spacing: .02em;
	line-height: 1;
	word-break: break-word;
}

.cnp-actions {
	display: flex;
	flex-wrap: wrap;
	gap: .75rem;
	justify-content: flex-end;
}

.cnp-actions button {
	border: 0;
	border-radius: 999px;
	cursor: pointer;
	padding: .8rem 1.15rem;
	font-size: .95rem;
	font-weight: 800;
	line-height: 1.1;
	white-space: nowrap;
}

.btn-black {
	background: #101728;
	color: #fff;
}

.btn-white {
	background: #fff;
	color: #101728;
}

.cnp-summary {
	border-bottom: 1px solid #d7eadb;
	background: #eef8f1;
	padding: clamp(1rem, 2.2vw, 1.5rem) clamp(1.25rem, 3vw, 2.25rem);
	color: #101728;
	font-size: clamp(1.05rem, 1.8vw, 1.25rem);
	line-height: 1.55;
}

.cnp-summary strong {
	color: #2e7d39;
	font-weight: 850;
}

.cnp-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1rem;
	padding: clamp(1.25rem, 3vw, 2.25rem);
}

.info-card {
	display: grid;
	align-content: start;
	gap: .55rem;
	min-height: 118px;
	border: 1px solid #d7eadb;
	border-radius: 20px;
	background: #f4fbf6;
	padding: 1.05rem;
	transition: border-color .18s ease, background-color .18s ease, transform .18s ease;
}

.info-card:hover {
	border-color: rgba(76, 166, 87, .55);
	background: #eef8f1;
	box-shadow: none;
	transform: translateY(-2px);
}

.info-label {
	margin: 0;
	color: #70746f;
	font-size: .78rem;
	font-weight: 850;
	letter-spacing: .04em;
	text-transform: uppercase;
}

.info-value {
	color: #101728;
	font-size: clamp(1.1rem, 1.5vw, 1.35rem);
	font-weight: 850;
	line-height: 1.18;
}

.cnp-footer {
	border-top: 1px solid #edf3ef;
	background: #fff;
	padding: 1.15rem clamp(1.25rem, 3vw, 2.25rem);
	color: #70746f;
	font-size: 1rem;
	line-height: 1.65;
}

.cnp-result > ul {
	margin: 0;
	padding: clamp(1.25rem, 3vw, 2.25rem);
	color: #101728;
}

.cnp-result > ul li + li {
	margin-top: .45rem;
}

@media (max-width: 991.98px) {
	.cnp-header {
		grid-template-columns: 1fr;
	}

	.cnp-actions {
		justify-content: flex-start;
	}

	.cnp-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 575.98px) {
	.cnp-result {
		border-radius: 24px;
	}

	.cnp-header {
		padding: 1rem;
	}

	.status-badge {
		margin-bottom: .85rem;
	}

	.cnp-actions {
		display: grid;
		grid-template-columns: 1fr;
		width: 100%;
	}

	.cnp-actions button {
		width: 100%;
		padding: .9rem 1rem;
	}

	.cnp-grid {
		grid-template-columns: 1fr;
		gap: .75rem;
		padding: 1rem;
	}

	.info-card {
		display: grid;
		min-height: auto;
		padding: .9rem;
	}

	.info-value {
		text-align: left;
	}

	.cnp-summary,
	.cnp-footer {
		padding: 1rem;
	}
}

.validation-result-card {
	margin-top: clamp(1.5rem, 4vw, 3rem);
	border: 1px solid #d7eadb;
	border-radius: 30px;
	background: #fff;
	box-shadow: 0 28px 90px rgba(16, 23, 40, .1);
	overflow: hidden;
}

.validation-result-main {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 1.25rem;
	align-items: end;
	padding: clamp(1.25rem, 3vw, 2.25rem);
	background:
		radial-gradient(circle at 82% 18%, rgba(255, 255, 255, .24), transparent 26%),
		linear-gradient(135deg, #4ca657, #62b26a);
	color: #fff;
}

.validation-result-card.is-invalid .validation-result-main {
	background:
		radial-gradient(circle at 82% 18%, rgba(255, 255, 255, .2), transparent 26%),
		linear-gradient(135deg, #c84d4d, #a93f3f);
}

.validation-result-status {
	display: inline-flex;
	width: fit-content;
	align-items: center;
	gap: .55rem;
	margin-bottom: 1rem;
	border-radius: 999px;
	background: rgba(255, 255, 255, .18);
	padding: .48rem .82rem;
	font-size: .86rem;
	font-weight: 850;
	text-transform: uppercase;
}

.validation-result-dot {
	width: .62rem;
	height: .62rem;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 0 0 4px rgba(255, 255, 255, .18);
}

.validation-result-number {
	color: #fff;
	font-size: clamp(2rem, 5vw, 3.5rem);
	font-weight: 900;
	letter-spacing: .02em;
	line-height: 1;
	word-break: break-word;
}

.validation-result-actions {
	display: flex;
	flex-wrap: wrap;
	gap: .75rem;
	justify-content: flex-end;
}

.validation-result-actions .btn {
	min-height: 48px;
	padding-inline: 1.15rem;
	white-space: nowrap;
}

.validation-result-body {
	display: grid;
	grid-template-columns: minmax(260px, .82fr) minmax(0, 1.6fr);
	gap: clamp(1rem, 2.6vw, 1.5rem);
	padding: clamp(1.25rem, 3vw, 2.25rem);
}

.validation-result-summary {
	border: 1px solid #d7eadb;
	border-radius: 24px;
	background: #eef8f1;
	padding: clamp(1.1rem, 2.3vw, 1.5rem);
}

.validation-result-summary span {
	display: block;
	margin-bottom: .6rem;
	color: #4ca657;
	font-size: .82rem;
	font-weight: 850;
	text-transform: uppercase;
}

.validation-result-summary h2 {
	margin: 0 0 .75rem;
	color: #101728;
	font-size: clamp(1.45rem, 2.4vw, 2rem);
}

.validation-result-summary p {
	margin: 0;
	color: #70746f;
	line-height: 1.6;
}

.validation-result-summary strong {
	color: #2e7d39;
	font-weight: 850;
}

.validation-result-summary.is-error {
	background: #fff5f5;
	border-color: #f0c4c4;
}

.validation-result-summary.is-error h2 {
	color: #a93f3f;
}

.validation-result-facts {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: .9rem;
}

.validation-fact {
	display: grid;
	align-content: start;
	gap: .52rem;
	min-height: 108px;
	border: 1px solid #d7eadb;
	border-radius: 20px;
	background: #f7fcf8;
	padding: 1rem;
}

.validation-fact span {
	color: #70746f;
	font-size: .78rem;
	font-weight: 850;
	letter-spacing: .04em;
	text-transform: uppercase;
}

.validation-fact strong {
	color: #101728;
	font-size: clamp(1.08rem, 1.6vw, 1.32rem);
	font-weight: 850;
	line-height: 1.18;
}

.validation-result-note {
	margin: 0;
	border-top: 1px solid #edf3ef;
	padding: 1.1rem clamp(1.25rem, 3vw, 2.25rem);
	color: #70746f;
	font-size: 1rem;
	line-height: 1.65;
}

.validation-error-list {
	display: grid;
	gap: .75rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.validation-error-list li {
	border: 1px solid #f0c4c4;
	border-radius: 16px;
	background: #fff8f8;
	padding: .9rem 1rem;
	color: #101728;
	font-weight: 700;
}

@media (max-width: 991.98px) {
	.validation-result-main,
	.validation-result-body {
		grid-template-columns: 1fr;
	}

	.validation-result-actions {
		justify-content: flex-start;
	}
}

@media (max-width: 575.98px) {
	.validation-result-card {
		border-radius: 24px;
	}

	.validation-result-main,
	.validation-result-body {
		padding: 1rem;
	}

	.validation-result-status {
		margin-bottom: .75rem;
	}

	.validation-result-actions {
		display: grid;
		grid-template-columns: 1fr;
	}

	.validation-result-actions .btn {
		width: 100%;
	}

	.validation-result-facts {
		grid-template-columns: 1fr;
		gap: .75rem;
	}

	.validation-fact {
		min-height: auto;
	}

	.validation-result-note {
		padding: 1rem;
	}
}

/* Compact validation result */
.validation-result-card {
	margin-top: 1.25rem;
	border: 1px solid #d7eadb;
	border-radius: 22px;
	background: #fff;
	box-shadow: 0 18px 55px rgba(16, 23, 40, .08);
	overflow: hidden;
}

.validation-result-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    border-bottom: 7px solid #237f3f;
    background: #eef8f1;
    padding: 1rem 1.1rem;
}

.validation-result-title {
	display: grid;
	gap: .35rem;
	min-width: 0;
}

.validation-result-status {
	display: inline-flex;
	width: fit-content;
	align-items: center;
	gap: .45rem;
	margin: 0;
	border-radius: 999px;
	background: rgba(76, 166, 87, .14);
	padding: .34rem .6rem;
	color: #2e7d39;
	font-size: .78rem;
	font-weight: 850;
	line-height: 1;
	text-transform: uppercase;
}

.validation-result-card.is-invalid .validation-result-status {
	background: rgba(200, 77, 77, .12);
	color: #a93f3f;
}

.validation-result-dot {
	width: .5rem;
	height: .5rem;
	border-radius: 50%;
	background: currentColor;
	box-shadow: none;
}

.validation-result-title > strong {
	color: #101728;
	font-size: clamp(1.45rem, 3vw, 2.15rem);
	font-weight: 900;
	letter-spacing: .02em;
	line-height: 1;
	word-break: break-word;
}
section.validation-result-card.is-invalid .validation-result-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    border-bottom: 7px solid #a83f3f;
    background: #efe0e0;
}
.validation-result-actions {
	display: flex;
	flex-wrap: wrap;
	gap: .5rem;
	justify-content: flex-end;
}

.validation-result-actions .btn {
	min-height: 38px;
	padding: .45rem .8rem;
	font-size: .9rem;
	white-space: nowrap;
}

.validation-result-summary-line {
	margin: 0;
	border-bottom: 1px solid #edf3ef;
	padding: .85rem 1.1rem;
	color: #70746f;
	font-size: 1rem;
	line-height: 1.5;
}

.validation-result-summary-line strong {
	color: #2e7d39;
	font-weight: 850;
}

.validation-result-facts {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0;
	padding: 0;
}

.validation-fact {
	display: grid;
	gap: .28rem;
	min-height: auto;
	border: 0;
	border-right: 1px solid #edf3ef;
	border-bottom: 1px solid #edf3ef;
	border-radius: 0;
	background: #fff;
	padding: .75rem .9rem;
}

.validation-fact:nth-child(4n) {
	border-right: 0;
}

.validation-fact span {
	color: #70746f;
	font-size: .7rem;
	font-weight: 850;
	letter-spacing: .04em;
	text-transform: uppercase;
}

.validation-fact strong {
	color: #101728;
	font-size: .98rem;
	font-weight: 850;
	line-height: 1.2;
}

.validation-result-compact-body {
	padding: 0;
}

.validation-error-list {
	display: grid;
	gap: .5rem;
	margin: 0;
	padding: .9rem 1.1rem 1rem;
	list-style: none;
}

.validation-error-list li {
	border: 1px solid #f0c4c4;
	border-radius: 12px;
	background: #fff8f8;
	padding: .7rem .8rem;
	color: #101728;
	font-size: .95rem;
	font-weight: 700;
}

@media (max-width: 991.98px) {
	.validation-result-facts {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.validation-fact:nth-child(4n) {
		border-right: 1px solid #edf3ef;
	}

	.validation-fact:nth-child(2n) {
		border-right: 0;
	}
}

@media (max-width: 575.98px) {
	.validation-result-card {
		margin-top: 1rem;
		border-radius: 18px;
	}

	.validation-result-top {
		display: grid;
		grid-template-columns: 1fr;
		padding: .85rem;
	}

	.validation-result-actions {
		display: grid;
		grid-template-columns: 1fr 1fr;
	}

	.validation-result-actions .btn {
		width: 100%;
	}

	.validation-result-title > strong {
		font-size: 1.45rem;
	}

	.validation-result-summary-line {
		padding: .75rem .85rem;
		font-size: .94rem;
	}

	.validation-result-facts {
		grid-template-columns: 1fr;
	}

	.validation-fact,
	.validation-fact:nth-child(2n),
	.validation-fact:nth-child(4n) {
		border-right: 0;
	}
}
