:root{--build-id:"Y21vZGd4ZzJ3MDAwN2w1MDR1YXNzZWR1cTpjbW9kZ3h0OGQwMDBhbDUwNGF4dmc2NGNyOjE3NzcwOTAzNzM4NTk="}.popup-close{background:#f44336;border-bottom-left-radius:10px;border-top-right-radius:10px;opacity:1;z-index:5}.popup-close:before{background:#fff!important}.popup-close{height:50px;width:50px}.popup-close:before{mask-size:24px}

.prose {
	line-height: 1.7;
	color: var(--content-200);
}

/* ── Headings ── */
.prose h1 {
	font-size: var(--text-2xl);
	font-weight: var(--font-bold);
	color: var(--title-color);
	margin-top: var(--space-xl);
	margin-bottom: var(--space-sm);
	font-family: var(--font-heading);
}
.prose h2 {
	font-size: var(--text-xl);
	font-weight: var(--font-bold);
	color: var(--title-color);
	margin-top: var(--space-lg);
	margin-bottom: var(--space-sm);
	font-family: var(--font-heading);
}
.prose h3 {
	font-size: var(--text-lg);
	font-weight: var(--font-semibold);
	color: var(--title-color);
	margin-top: var(--space-md);
	margin-bottom: var(--space-xs);
	font-family: var(--font-heading);
}
.prose h4, .prose h5, .prose h6 {
	font-size: var(--text-base);
	font-weight: var(--font-semibold);
	color: var(--title-color);
	margin-top: var(--space-md);
	margin-bottom: var(--space-xs);
}

/* ── Paragraphs ── */
.prose p {
	margin-bottom: var(--space-sm);
}

/* ── Links ── */
.prose a {
	color: var(--primary-400);
	text-decoration: underline;
	text-underline-offset: 2px;
}
.prose a:hover {
	color: var(--primary-300);
}

/* ── Bold / strong ── */
.prose strong, .prose b {
	color: var(--content-50);
	font-weight: var(--font-semibold);
}

/* ── Lists ── */
.prose ol, .prose ul {
	padding-left: var(--space-lg);
	margin-bottom: var(--space-sm);
}
.prose ol { list-style-type: decimal; }
.prose ul { list-style-type: disc; }
.prose ol ol { list-style-type: lower-alpha; }
.prose ol ol ol { list-style-type: lower-roman; }
.prose li {
    display: list-item !important;
	margin-bottom: var(--space-xs);
}
.prose li > p {
	margin-bottom: var(--space-xs);
}

/* ── Tables ── */
.prose table {
	width: 100%;
	border-collapse: collapse;
	margin-top: var(--space-md);
	margin-bottom: var(--space-md);
	font-size: var(--text-sm);
}
.prose th {
	text-align: left;
	padding: var(--space-sm);
	background: var(--content-800);
	color: var(--title-color);
	font-weight: var(--font-semibold);
	border: 1px solid var(--content-600);
}
.prose td {
	padding: var(--space-sm);
	border: 1px solid var(--content-600);
	vertical-align: top;
}
.prose tr:nth-child(even) td {
	background: var(--color-core);
}

/* ── Horizontal rules ── */
.prose hr {
	border: none;
	border-top: 1px solid var(--content-600);
	margin: var(--space-lg) 0;
}

/* ── Underline ── */
.prose u {
	text-underline-offset: 2px;
}

/* ── First heading flush (no extra top margin) ── */
.prose > :first-child {
	margin-top: 0;
}


@keyframes logo-float {
    0%,to {
        transform: translateY(0)
    }

    50% {
        transform: translateY(-10px)
    }
}

@keyframes logo-pulse {
    0%,to {
        transform: scale(1)
    }

    50% {
        transform: scale(1.06)
    }
}

@keyframes logo-glow {
    0%,to {
        filter: drop-shadow(0 0 6px color-mix(in srgb,transparent 50%,var(--color-primary)))
    }

    50% {
        filter: drop-shadow(0 0 20px color-mix(in srgb,transparent 10%,var(--color-primary)))
    }
}

@keyframes logo-shimmer {
    0%,to {
        filter: brightness(1) saturate(1)
    }

    50% {
        filter: brightness(1.3) saturate(1.2)
    }
}

#logo.logo-anim--float>a {
    animation: logo-float 3.5s ease-in-out infinite
}

#logo.logo-anim--pulse>a {
    animation: logo-pulse 2.5s ease-in-out infinite
}

#logo.logo-anim--glow>a {
    animation: logo-glow 2s ease-in-out infinite
}

#logo.logo-anim--shimmer>a {
    animation: logo-shimmer 3s ease-in-out infinite
}