.pr-6 {
	padding-right:1.5rem
}

.anchor svg {
	display:inline;
}

.dark .toc-wrapper {
	background-color: var(--tw-prose-pre-bg)!important;
	border-color: rgb(55 65 81/var(--tw-divide-opacity))!important;
}

.light .toc-wrapper {
	border-color: rgb(229 231 235/var(--tw-divide-opacity))!important;
}

.toc-wrapper a, 
.related-posts a,
.recent-posts a {
	text-decoration: none;
}

.toc-link a {
	display:none;
}

.toc-link:hover a{
	display:inline-block;
}

.tags a {
	margin-right: .75rem;
}

.category a {
	margin-right: .1rem;	
}

.category {
	line-height:3.2rem;
}

.read-more {
	text-decoration:inherit;
}

.nav-top li {
	display:inline-block;
    margin-left: 1.5rem;
	font-weight: 500;
}

.nav-mobile li{
	outline-width: 0;
	outline-style: solid;
	letter-spacing: .1em;
	font-weight: 700;
	font-size: 1.5rem;
	line-height: 2rem;
	padding-right: 1rem;
	padding-top: .5rem;
	padding-bottom: .5rem;
	margin-bottom: 1rem;
}

.menu-mobile {
	display:none;
}

@media (max-width: 640px) {
	.nav-top {
		display:none;
	}
	.is-menu-open .menu-mobile {
		display:block!important;
	}
}

.search-form {
	display:none;
}

.is-search-open .search-form {
	display: flex;
}

.tags a:hover {
	color:rgb(190 24 93);
}


.dark .tags a:hover {
	color:rgb(244 114 182);
}

.thumbnail {
	position:relative;
	display:block;
}

.nav li > ul {
	display:none;
}

/* Small button indicator for menus that have a submenu */
.caret {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-left: 0.5rem;
	width: 1.5rem;
	height: 1.5rem;
	background-color: #f3f4f6;
	border-radius: 0.25rem; /* rounded */
	vertical-align: middle;
	color: #6b7280;
	transition: background-color 0.2s;
}

.dark .caret {
	background-color: #374151;
	color: #9ca3af;
}

li.dropdown:hover .caret {
	background-color: #e5e7eb;
}

.dark li.dropdown:hover .caret {
	background-color: #4b5563;
}

/* A tiny CSS downward triangle inside the small button */
.caret::after {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-left: 4px solid transparent;
	border-right: 4px solid transparent;
	border-top: 5px solid currentColor;
	margin-top: 2px;
	transition: transform 0.2s ease-in-out;
}

/* Rotate the arrow upwards when hovered */
li.dropdown:hover .caret::after {
	transform: rotate(180deg);
}

/* Dropdown Menu for nav-top */
.nav-top li.dropdown {
	position: relative;
	padding-bottom: 0.5rem; /* increased hover area so cursor doesn't fall off */
}

.nav-top li.dropdown:hover > ul {
	display: block;
	position: absolute;
	top: 100%;
	left: 1.5rem; /* align with margin-left of the li */
	min-width: 12rem;
	width: max-content; /* Ensure dropdown width adjusts precisely to long text */
	max-width: 20rem; /* Don't let it grow infinitely wide */
	background-color: #ffffff;
	padding: 0.5rem 0;
	z-index: 50;
	box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
	border-radius: 0.375rem;
	border: 1px solid #e5e7eb;
}

.dark .nav-top li.dropdown:hover > ul {
	background-color: #030712;
	border-color: #1f2937;
}

.nav-top .dropdown-menu li {
	display: block;
	margin-left: 0;
}

.nav-top .dropdown-menu li a {
	display: block;
	padding: 0.5rem 1.5rem;
	font-weight: 400;
	color: #374151;
	white-space: nowrap; /* Prevent long text from awkwardly wrapping */
	overflow: hidden;
	text-overflow: ellipsis; /* If it exceeds max-width, gracefully trim with ... */
}

.dark .nav-top .dropdown-menu li a {
	color: #d1d5db;
}

.nav-top .dropdown-menu li a:hover {
	background-color: #f3f4f6;
	color: #111827;
}

.dark .nav-top .dropdown-menu li a:hover {
	background-color: #1f2937;
	color: #ffffff;
}

/* Dropdown Menu for nav-mobile */
.nav-mobile li.dropdown > ul {
	margin-top: 0.5rem;
	margin-left: 1rem;
	border-left: 2px solid #e5e7eb;
}

.dark .nav-mobile li.dropdown > ul {
	border-left-color: #374151;
}

.nav-mobile li.dropdown:hover > ul {
	display: block;
}

.nav-mobile .dropdown-menu li {
	font-size: 1.25rem;
	margin-bottom: 0.5rem;
	padding-top: 0.25rem;
	padding-bottom: 0.25rem;
	font-weight: 500;
}

.footnotes {
	margin-top:0;
	border:none;
}

.footnotes ol {
	margin-bottom:0;
	padding-top: 1.5em;
}

.footnotes > hr {
	margin:0;
}

.thumb-icon { 
	background: rgba(0,0,0,0.7); 
	color: #fff; 
	text-align: center; 
	display: block; 
	width: 32px; 
	height: 32px; 
	position: absolute; 
	bottom: 50%; 
	left: 50%; 
	margin-left: -16px; 
	margin-bottom: -16px;
	-webkit-border-radius: 4px; 
	border-radius: 4px;
	-moz-transition: all 0.7s ease; 
	-webkit-transition: all 0.7s ease; 
	transition: all 0.7s ease;
}

.thumb-icon svg {
  margin: 1px 0 0 2px;
}

.thumbnail:hover .thumb-icon { 
	background: #fff; 
	color: #333; 
}

.recent-posts > ul {
	padding-left: 15px;
}
.btn-cta {
        background-color: #ff4d4d;
        color: white !important;
        padding: 15px 30px;
        text-decoration: none !important;
        font-weight: bold;
        border-radius: 50px;
        display: inline-block;
        margin-top: 20px;
        transition: transform 0.3s ease;
    }
    .btn-cta:hover {
        transform: scale(1.05);
        background-color: #e60000;
    }