@font-face {
	font-display: block;
	font-family: 'Source Sans Pro';
	font-style: normal;
	font-weight: 400;
	src: url('../fonts/source-sans-pro-latin-400-normal.woff2') format('woff2');
}
@font-face {
	font-display: block;
	font-family: 'Source Sans Pro';
	font-style: normal;
	font-weight: 700;
	src: url('../fonts/source-sans-pro-latin-700-normal.woff2') format('woff2');
}
@font-face {
	font-display: block;
	font-family: 'Source Sans Pro';
	font-style: normal;
	font-weight: 900;
	src: url('../fonts/source-sans-pro-latin-900-normal.woff2') format('woff2');
}
:root {
	--bfs-primary: #9966ff;
	--bfs-secondary: #ff9966;
	--bfs-primary-rgb: 153, 102, 255;
	--bs-body-bg: #121212;
	--bs-body-bg-rgb: 18, 18, 18;
	--bs-body-color: #e0e0e0;
	--bs-emphasis-color: #ffffff;
	--bs-border-color: rgba(255, 255, 255, 0.15);
	--bs-secondary-bg: #1e1e1e;
	--bs-tertiary-bg: #2a2a2a;
	--bs-tertiary-bg-rgb: 42, 42, 42;
	--bfs-success: #48d18d;
	--bfs-success-rgb: 72, 209, 141;
	--bfs-warning: #f5b759;
	--bfs-warning-rgb: 245, 183, 89;
	--bfs-danger: #ff6b6b;
	--bfs-danger-rgb: 255, 107, 107;
	--bfs-info: #4cc9f0;
	--bfs-info-rgb: 76, 201, 240;
	--bfs-blue: #5e81f5;
	--bfs-blue-rgb: 94, 129, 245;
	--gh-font-heading: "Source Sans Pro", sans-serif;
	--gh-font-body: "Source Sans Pro", sans-serif;
}
body { font-family: var(--gh-font-body); }
iframe { color-scheme: light !important; }
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 { font-family: var(--gh-font-heading); font-weight: 700 !important; }
a { color: var(--bfs-primary); text-decoration: none; }
a:hover { color: var(--bs-emphasis-color); text-decoration: underline; }
b, strong, b b, strong strong, b strong, strong b { font-weight: 700; }
ol, ul { padding-left: 1rem; }
th span { border-bottom: 1px rgba(255, 255, 255, 0.5) dotted; cursor: help; }
article > [id]:not(:first-child) { margin-top: 2rem; }
header.header-signup .d-signup, header.header-signup .dropdown, footer.footer-signup .d-signup { display: none !important; }
header.header-signup .container-xl { justify-content: center !important; height: 62px; }
footer.footer-signup .container-xl { display: flex; justify-content: center !important; height: 115px; }
footer.footer-signup .col-lg-5 { width: 100%; text-align: center; padding: 0 }
footer.footer-signup .logo-brand, footer.footer-signup .logo-brand span { display: block !important; }
footer.footer-signup .logo-brand .bi { font-size: 4rem; margin-right: 0 }
footer.footer-signup .logo-brand span { font-size: 2rem; }
footer .policy li:not(:last-of-type)::after { content: "|"; display: inline-block; margin: 0 0.5rem; }
.page-signup { padding: 0 !important; }
.page-signup .bg-tertiary { background-color: var(--bs-tertiary-bg); }
.page-signup .site-card:hover, .page-signup .site-card:hover .card-img-top { transform: none; box-shadow: none; }
.page-signup table .bi.text-success { text-shadow: 0 0 16px currentColor; }
.kg-width-wide, .kg-width-full, .kg-image { width: 100%; height: auto; display: block; border-radius: 0.25rem; }
.post-template { padding: 0 !important; }
.page-sites-card:hover { background-color: rgba(var(--bs-body-bg-rgb), 0.15); }
.btn { font-weight: 700; text-decoration: none !important; }
.bg-primary.btn:hover, .bg-success.btn:hover, .bg-warning.btn:hover, .bg-danger.btn:hover, .bg-info.btn:hover, .bg-blue.btn:hover { opacity: .75 }
.logo-text { background: linear-gradient(45deg, var(--bfs-primary), var(--bfs-secondary)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; font-weight: 900 !important; }
.logo-brand { font-size: 1.5rem; font-weight: 900; color: var(--bs-emphasis-color); }
.logo-brand .bi { color: var(--bfs-primary); font-size: 2rem; margin-right: 0.5rem; line-height: 1rem; }
.logo-brand svg { height: 32px; margin-right: 0.5rem; }
.form-disabled .form-control, .form-disabled .btn { pointer-events: none; }
.site-header, .site-footer { background-color: var(--bs-secondary-bg); border-color: var(--bs-border-color) !important; }
.main-content-card { background-color: var(--bs-secondary-bg); border: 1px solid var(--bs-border-color); border-radius: 1rem; }
.blur { filter: blur(5px); -webkit-filter: blur(5px); user-select: none; pointer-events: none; opacity: 0.6; }
.dropdown-item { display: flex; justify-content: space-between; align-items: center; }
.dropdown-item div { display: flex; align-items: center; }
.dropdown-item img, .dropdown-item .dropdown-img { height: 24px; width: 24px; text-align: center; display: inline-block; margin-right: .5rem; }
.dropdown-item.active, .dropdown-item.active-parent { background-color: rgba(var(--bfs-primary-rgb), 0.2); color: white !important; border-left: 4px solid var(--bfs-primary); font-weight: 700; }
.dropdown-item.active img, .dropdown-item.active .dropdown-img, .dropdown-item.active-parent img, .dropdown-item.active-parent .dropdown-img { margin-left: -4px; }
.dropdown-item:hover, .dropdown-item:focus, .dropdown-item:active { background-color: rgba(var(--bfs-primary-rgb), 0.1) !important; }
button.dropdown-item:active { color: var(--bs-dropdown-link-active-color) !important; }
.table { --bs-table-bg: var(--bs-tertiary-bg); --bs-table-border-color: var(--bs-border-color); --bs-table-striped-bg: #2a2a2a; --bs-table-hover-bg: #343434; border-radius: 0.5rem; overflow: hidden; }
.table thead { font-weight: 700; text-transform: uppercase; letter-spacing: 0.5px; font-size: 0.9rem; }
.table tbody tr { transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out; }
.table tbody tr:hover .site-name a { color: white; }
.table .rank-cell { font-size: 1.25rem; font-weight: 700; color: var(--bs-secondary-color); counter-increment: rowNumber; }
.table .rank-cell::before { content: counter(rowNumber); min-width: 1em; display: inline-block; }
.table .promoted { counter-increment: none; } .table .promoted::before { content: none; }
.table .site-name { font-weight: 700; font-size: 1.25rem; }
.table .site-name img { width: 24px; height: 24px; margin-right: 0.5rem; }
.table .icon { font-size: 1.75rem; }
table { counter-reset: rowNumber; }
.text-success { color: var(--bfs-success) !important; }
.text-warning { color: var(--bfs-warning) !important; }
.text-danger  { color: var(--bfs-danger) !important; }
.text-info    { color: var(--bfs-info) !important; }
.text-body    { color: var(--bs-body-color) !important; }
.text-bg-success { background-color: var(--bfs-success) !important; }
.text-bg-warning { background-color: var(--bfs-warning) !important; }
.text-bg-danger  { background-color: var(--bfs-danger) !important; }
.bg-primary { color: var(--bfs-primary) !important; background-color: rgba(var(--bfs-primary-rgb), 0.15) !important; }
.bg-success { color: var(--bfs-success) !important; background-color: rgba(var(--bfs-success-rgb), 0.15) !important; }
.bg-warning { color: var(--bfs-warning) !important; background-color: rgba(var(--bfs-warning-rgb), 0.15) !important; }
.bg-danger { color: var(--bfs-danger) !important; background-color: rgba(var(--bfs-danger-rgb), 0.15) !important; }
.bg-info { color: var(--bfs-info) !important; background-color: rgba(var(--bfs-info-rgb), 0.15) !important; }
.bg-blue { color: var(--bfs-blue) !important; background-color: rgba(var(--bfs-blue-rgb), 0.15) !important; }
.preview-toggle-cell { cursor: pointer; }
.screenshot-cell { padding: 0 !important; background-color: #000; }
.screenshot-wrapper { padding: 1rem; display: flex; justify-content: center; align-items: center; }
.screenshot-wrapper:hover img { opacity: 0.8; }
.screenshot-cell img, .screenshot-cell .screenshot-failed { max-width: 100%; border-radius: 0.25rem; transition: opacity 0.2s ease-in-out; }
.screenshot-cell .screenshot-failed { color: var(--bs-secondary-color); padding: 3rem 1rem; }
.preview-icon.spinner-border { width: 1.25rem; height: 1.25rem; vertical-align: middle; border-width: .2em; }
.favicon-container { width: 24px; height: 24px; margin-right: 0.5rem; flex-shrink: 0; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23444'%3E%3Cpath d='M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M6.79 5.093A.5.5 0 0 0 6 5.5v5a.5.5 0 0 0 .79.407l3.5-2.5a.5.5 0 0 0 0-.814z'/%3E%3C/svg%3E"); background-size: contain; background-position: center; background-repeat: no-repeat; }
.favicon-image { opacity: 0; transition: opacity 0.4s ease-in-out; }
.favicon-image.loaded { opacity: 1; background-color: var(--bs-tertiary-bg); }
.card .favicon-image.loaded { opacity: 1; background-color: var(--bs-secondary-bg); }
.table tbody tr:hover .favicon-image.loaded { background-color: var(--bs-table-hover-bg); }
.caption-overlay { transition: opacity 0.3s ease-in-out; } figure:hover .caption-overlay { opacity: 1 !important; }
.site-card { position: relative; background-color: var(--bs-secondary-bg); border: 1px solid var(--bs-border-color); transition: transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out; }
.site-card:hover { transform: translateY(-5px); box-shadow: 0 8px 20px rgba(0, 0, 0, 0.4); z-index: 10; }
.site-card .card-img-top { transition: transform 0.3s ease; }
.site-card:hover .card-img-top { transform: scale(1.05); }
.site-card .card-img-container { position: relative; overflow: hidden; border-radius: var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius) 0 0; }
.card-tools-badge { position: absolute; top: 0.5rem; right: 0.5rem; z-index: 2; display: flex; align-items: center; gap: 0.25rem; background-color: rgba(0, 0, 0, 0.7); border-radius: 0.5rem; opacity: 0.85; transition: opacity 0.2s ease-in-out; }
.site-card:hover .card-tools-badge { opacity: 1; }
.card-tools-badge .dropdown-toggle::after { display: none; }
.dropdown-item { text-decoration: none !important; }
.popover-status { --bs-popover-max-width: 300px; --bs-popover-bg: var(--bs-tertiary-bg); font-family: var(--gh-font-body); }
.text-cap-first::first-letter { text-transform: uppercase; }
.card-img-container { position: relative; height: 0; padding-bottom: 83.333%; background-color: var(--bs-secondary-bg); display: flex; align-items: center; justify-content: center; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='64' height='64' fill='%23444' class='bi bi-image' viewBox='0 0 16 16'%3E%3Cpath d='M6.002 5.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0z'/%3E%3Cpath d='M2.002 1a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2h-12zm12 1a1 1 0 0 1 1 1v6.5l-3.777-1.947a.5.5 0 0 0-.577.093l-3.71 3.71-2.66-1.772a.5.5 0 0 0-.63.062L1.002 12V3a1 1 0 0 1 1-1h12z'/%3E%3C/svg%3E"); background-size: 4rem; background-position: center; background-repeat: no-repeat; }
.card-img-container.screenshot-failed { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='64' height='64' viewBox='0 0 16 16'%3E%3Cg opacity='0.3'%3E%3Cpath fill='%23e0e0e0' d='M6.002 5.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0z'/%3E%3Cpath fill='%23e0e0e0' d='M2.002 1a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2h-12zm12 1a1 1 0 0 1 1 1v6.5l-3.777-1.947a.5.5 0 0 0-.577.093l-3.71 3.71-2.66-1.772a.5.5 0 0 0-.63.062L1.002 12V3a1 1 0 0 1 1-1h12z'/%3E%3C/g%3E%3Cpath stroke='%23ff6b6b' stroke-width='1.5' stroke-linecap='round' opacity='0.75' d='M3 3l10 10M13 3L3 13'/%3E%3C/svg%3E"); }
.card-img-container.cheveron { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='64' height='64' fill='%23444' viewBox='0 0 16 16'%3E%3Cpath d='M3.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L9.293 8 3.646 2.354a.5.5 0 0 1 0-.708'/%3E%3Cpath d='M7.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L13.293 8 7.646 2.354a.5.5 0 0 1 0-.708'/%3E%3C/svg%3E"); }
.card-img-container .card-img-top { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; }
.card-img-top.lazy-load-image, header .lazy-load-image { opacity: 0; transition: opacity 0.5s ease-in-out; }
.card-img-top.lazy-load-image.loaded, header .lazy-load-image.loaded { opacity: 1; }
header:has(img.lazy-load-image) { opacity: 0; transition: opacity 0.5s ease-in-out; }
header:has(img.lazy-load-image.loaded) { opacity: 1; }
.ratio.opacity-25 { mask-image: linear-gradient(to bottom, black 50%, transparent 100%); -webkit-mask-image: linear-gradient(to bottom, black 50%, transparent 100%); }
.sites-icon { height: 6rem; width: 6rem; object-fit: contain; }
.pagination-minimal a { transition: color 0.2s ease-in-out; }
.pagination-minimal a:hover { color: var(--bfs-primary) !important; }
.header-menu-button { background-color: var(--bs-secondary-bg) !important; border-color: transparent; }
.header-menu-button .icon-close { display: none; }
.header-menu-button[aria-expanded="true"] .icon-menu { display: none; }
.header-menu-button[aria-expanded="true"] .icon-close { display: inline-block; }
.kg-bookmark-container { background: var(--bs-secondary-bg) !important; color: var(--bs-body-color) !important; }
.kg-bookmark-thumbnail { background: #000 !important; } .kg-bookmark-thumbnail img { object-fit: contain !important; mix-blend-mode: screen; -webkit-mask-image: radial-gradient(circle, black 60%, transparent 100%); mask-image: radial-gradient(circle, black 60%, transparent 100%); }
.toc-container { background: var(--bs-tertiary-bg); top: 0.5rem; }
.toc-link { text-decoration: none; color: var(--bs-body-color); }
.toc-link:hover { text-decoration: none; }
.toc-link.is-active-link { font-weight: bold; color: var(--bfs-primary); }
.toc-list-item > .toc-list { counter-reset: section; margin-left: 1rem; }
.toc-list-item > .toc-list > .toc-list-item::before { content: counter(section) ". "; }
@media (max-width: 767px) { .sites-icon { height: 4rem; width: 4rem; } }
@media (max-width: 575px) { .page-signup .badge.fs-6 { font-size: 0.75em !important; } }