.maddos-archive-list .maddos-link-container,
.maddos-archive-grid .maddos-post-grid-entry,
.maddos-link-container { background: var(--color-surface); border: 1px solid var(--color-border); border-radius: var(--radius-lg); box-shadow: 0 6px 24px rgba(0,0,0,.35); }
.maddos-link-header { background: linear-gradient(90deg, var(--primary-start), var(--primary-end)); color: #fff; }
.maddos-post-title a { color: var(--text-primary); }
.maddos-post-title a:hover { color: var(--primary-300); }
.maddos-post-meta { color: var(--text-secondary); padding: 4px 12px; }
/* Theme palette (brand psychology: trustworthy, calm, modern) */
:root {
    --color-bg: #0f172a;           /* slate-900 */
    --color-surface: #0b1220;      /* deep navy surface */
    --color-border: #1f2a44;       /* subtle border */
    --text-primary: #e2e8f0;       /* slate-200 */
    --text-secondary: #94a3b8;     /* slate-400 */
    --primary-start: #0ea5e9;      /* cyan-500 (fresh) */
    --primary-end: #6366f1;        /* indigo-500 (trust/innovation) */
    --primary-400: #60a5fa;        /* blue-400 (links) */
    --primary-300: #93c5fd;        /* blue-300 (hover) */
    --radius-lg: 12px;
    --radius-md: 10px;
    --radius-sm: 8px;
}

/* Light theme variables */
body.theme-light {
  --color-bg: #f8fafc;          /* slate-50 */
  --color-surface: #ffffff;      /* white card */
  --color-border: #e2e8f0;       /* slate-200 */
  --text-primary: #0f172a;       /* slate-900 */
  --text-secondary: #475569;     /* slate-600 */
  --primary-start: #2563eb;      /* blue-600 */
  --primary-end: #22c55e;        /* green-500 */
  --primary-400: #2563eb;        /* blue */
  --primary-300: #60a5fa;        /* blue-300 */
}

body {
    background: var(--color-bg);
    color: var(--text-primary);
    font-size: 16px;
    line-height: 1.6;
}

/* Interactive ambient background blob for directory */
.maddos-directory-container, 
.container.maddos-directory-container { position: relative; }
.maddos-ambient-blob { 
    position: absolute; 
    inset: -20% -10% auto -10%; 
    height: 60vh; 
    pointer-events: none; 
    z-index: 0; 
    filter: blur(60px) saturate(120%) opacity(.35); 
    background: radial-gradient(45% 45% at 25% 40%, var(--primary-start), transparent 60%), 
                radial-gradient(45% 45% at 70% 50%, var(--primary-end), transparent 60%); 
    animation: maddosBlobFloat 16s ease-in-out infinite; 
    will-change: transform; /* Optimize animation performance */
}
@keyframes maddosBlobFloat { 
    0% { transform: translate3d(0,0,0) scale(1); } 
    50% { transform: translate3d(0,-20px,0) scale(1.04); } 
    100% { transform: translate3d(0,0,0) scale(1); } 
}

/* Lift categories above ambient layer */
.maddos-directory .maddos-category-container { position: relative; z-index: 1; }

/* Style empty widget areas */
.maddos-column .widget-area:empty::before,
.maddos-column:not(:has(.widget))::before {
    content: attr(data-column-title, "Add Widgets");
    display: block;
    text-align: center;
    padding: 40px 20px;
    color: var(--text-secondary);
    background: var(--color-surface);
    border: 2px dashed var(--color-border);
    border-radius: var(--radius-lg);
    margin: 20px 0;
}

a { color: var(--primary-400); text-decoration: none; }
a:hover { color: var(--primary-300); text-decoration: underline; }
a:visited { color: var(--primary-300); }


/* HEADER -------------------------------------------------------------------------------- */

.maddos-infobar {
	background: none repeat scroll 0px 0px #000;
	color: #fff;
	font-size: 18px;
	margin-bottom: 20px;
	text-align: center;
	width: 100%;
	border-bottom: 5px solid #000000;
	overflow: hidden;
	border-bottom: 3px solid #aa0000;
}

.maddos-header {
    background: transparent;
    box-shadow: none;
}

.maddos-header-image {
	padding: 0;
	overflow: hidden;
}

.maddos-header-image img {
	margin: 0 auto;
	background-size: cover;
	vertical-align: middle;
	display: block;
}

.maddos-header-content {
    padding: 16px;
    background-color: transparent;
}

.maddos-header-overlay {
	position: absolute;
	top: 10px;
	overflow: hidden;
	padding: 0 15px;
}

#maddos-site-title,
#maddos-site-title a {
    margin: 0;
    font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji";
    font-size: 40px;
    color: #f8fafc;
    line-height: 1.2;
}

#maddos-site-desc { margin: 0; font-size: 16px; color: #cbd5e1; line-height: 1.4; }

.maddos-headline { padding: 10px 0; background: transparent; color: #cbd5e1; text-align: center; border-bottom: 0; }


/* MAIN CONTENT ------------------------------------------------------------------------------ */

.maddos-title-icon {
	display: inline-block;
	position: relative;
	background-size: 100%;
	overflow: hidden;
	font-size: 24px;
}

.maddos-title-icon img {
	margin-top: 8px;
	width: 16px;
	height: 16px;
	object-fit: contain;
}

.maddos-category-icon {
	display: inline-block;
	position: relative;
	background-size: 100%;
	font-size: 24px;
	padding-right: 5px;
	overflow: visible;
}

.maddos-category-container {
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-lg);
    box-shadow: 0 6px 24px rgba(0,0,0,.35);
    margin: 20px 0;
    overflow: hidden;
}
.maddos-category-container::before { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(255,255,255,.06), transparent 35%); opacity: 0; transition: opacity .2s ease; pointer-events: none; }
.maddos-category-container:hover::before { opacity: 1; }

.maddos-category-header,
.maddos-link-header,
.maddos-link-header a {
    background: linear-gradient(90deg, var(--primary-start), var(--primary-end));
    color: #fff;
    text-align: center;
    line-height: 1.0;
}
.maddos-category-container { transition: box-shadow .18s ease, transform .18s ease, border-color .18s ease; }
.maddos-category-container:hover { box-shadow: 0 10px 28px rgba(0,0,0,.45); border-color: rgba(99,102,241,.45); }
.maddos-category-header { position: relative; overflow: hidden; }
.maddos-category-header::after { content: ""; position: absolute; inset: 0; background: radial-gradient(120px 40px at var(--hover-x, 120px) var(--hover-y, 0), rgba(255,255,255,.18), transparent 60%); opacity: 0; transition: opacity .2s ease; }
.maddos-category-header:hover::after { opacity: 1; }
.maddos-cat-toolbar { display: none; }
.maddos-global-toolbar { display: flex; justify-content: flex-end; padding: 8px 0 12px; }
.maddos-global-toolbar input { width: 280px; max-width: 100%; height: 34px; border-radius: var(--radius-sm); border: 1px solid var(--color-border); background: var(--color-surface); color: var(--text-primary); padding: 6px 10px; }
.maddos-global-toolbar .maddos-toolbar-left { float: left; }
.maddos-global-toolbar .maddos-toolbar-right { float: right; }

/* Category index & top searches */
.maddos-category-index { position: sticky; top: 0; z-index: 5; padding: 8px 0; background: var(--color-bg); border-bottom: 1px solid var(--color-border); margin-bottom: 8px; }
.maddos-category-index ul { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; padding: 0; margin: 0; }
.maddos-category-index a { display: inline-block; padding: 6px 10px; border: 1px solid var(--color-border); border-radius: 999px; color: var(--text-secondary); background: var(--color-surface); }
.maddos-category-index a:hover { color: var(--primary-300); border-color: var(--primary-300); text-decoration: none; }
.maddos-top-searches { display: flex; flex-wrap: wrap; gap: 8px; margin: 8px 0 12px; }
.maddos-top-searches .maddos-chip { display: inline-block; padding: 6px 10px; border: 1px solid var(--color-border); border-radius: 999px; color: var(--primary-400); background: var(--color-surface); text-decoration: none; }
.maddos-top-searches .maddos-chip:hover { color: var(--primary-300); border-color: var(--primary-300); }

.maddos-category-header { 
	padding: 8px 0;
}

.maddos-category-header .nocenter,
.maddos-link-container .nocenter,
.nocenter {
	text-align: left !important;
}

.maddos-category-header-title { display: inline-block; color: #fff; overflow: hidden; margin: 0; position: relative; font-size: 18px; letter-spacing: .2px; }

.maddos-category-header-title a {
	color: inherit;
	text-decoration: none;
	position: relative;
}

.maddos-category-wrapper { background: var(--color-bg); color: #cbd5e1; overflow-y: auto; position: relative; }
.maddos-category-wrapper { max-height: 480px; }

.maddos-category-wrapper ol,
.maddos-category-wrapper ul.maddos-list { list-style: none; padding: 12px 12px 4px; margin: 0; }

.maddos-category-wrapper ol li,
.maddos-category-wrapper ul.maddos-list li { display: flex; align-items: center; gap: 10px; margin: 0; padding: 10px 12px 10px 14px; position: relative; border-bottom: 1px solid var(--color-border); transition: background-color .2s ease, color .2s ease, transform .12s ease; contain: layout paint; }
.maddos-category-wrapper ul.maddos-list li::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 0; background: linear-gradient(180deg, var(--primary-start), var(--primary-end)); opacity: .8; transition: width .18s ease; border-top-left-radius: var(--radius-sm); border-bottom-left-radius: var(--radius-sm); }
.maddos-category-wrapper ul.maddos-list li:hover { background: rgba(99,102,241,.08); transform: translateY(-1px); }
.maddos-category-wrapper ul.maddos-list li:hover::before { width: 3px; }
.maddos-category-wrapper::-webkit-scrollbar { width: 10px; height: 10px; }
.maddos-category-wrapper::-webkit-scrollbar-track { background: rgba(255,255,255,.04); border-radius: var(--radius-sm); }
.maddos-category-wrapper::-webkit-scrollbar-thumb { background: linear-gradient(180deg, var(--primary-start), var(--primary-end)); border-radius: var(--radius-sm); border: 1px solid rgba(255,255,255,.1); }
.maddos-category-wrapper::-webkit-scrollbar-thumb:hover { background: linear-gradient(180deg, var(--primary-300), var(--primary-400)); }
.maddos-category-wrapper { scrollbar-color: var(--primary-end) rgba(255,255,255,.06); scrollbar-width: thin; }
.maddos-category-wrapper ul.maddos-list li:last-child { border-bottom: 0; }
.maddos-category-wrapper a.maddos-link { color: var(--primary-300); flex: 1 1 auto; min-width: 0; }
.maddos-category-wrapper a.maddos-link:hover { color: #bfdbfe; }
.maddos-item-actions { margin-left: auto; display: flex; gap: 6px; opacity: 0; transform: translateX(6px); transition: opacity .15s ease, transform .15s ease; }
.maddos-category-wrapper ul.maddos-list li:hover .maddos-item-actions { opacity: 1; transform: translateX(0); }
.maddos-rank { display: inline-flex; align-items: center; justify-content: center; min-width: 22px; height: 20px; padding: 0 6px; font-size: 12px; font-weight: 700; color: #fff; background: linear-gradient(90deg, var(--primary-start), var(--primary-end)); border-radius: 999px; box-shadow: 0 0 0 1px rgba(255,255,255,.08) inset; }
.maddos-item-actions button, .maddos-item-actions .maddos-visit { background: transparent; color: var(--text-secondary); border: 1px solid var(--color-border); border-radius: var(--radius-sm); padding: 0 6px; height: 24px; cursor: pointer; line-height: 22px; text-decoration: none; display: inline-flex; align-items: center; }
.maddos-item-actions button:hover, .maddos-item-actions .maddos-visit:hover { color: var(--primary-300); border-color: var(--primary-300); }
.maddos-list li.is-fav { background: rgba(14,165,233,.08); }

.maddos-category-wrapper ol li .maddos-icon {
	width: 16px;
	height: 16px;
	display: inline-block;
}

.maddos-taxonomy-description { padding: 10px 12px 0 12px; border-bottom: 1px solid var(--color-border); color: var(--text-secondary); }

.maddos-review {
	display: none;
	position: absolute;
	right: 4px;
	top: 0px;
}

.maddos-site-review-icon {
	display: none;
	width: 16px;
	height: 16px;
	display: inline-block;
	position: relative;
	background-size: 100%;
	overflow: hidden;
	background-image: url(data:image/svg+xml;base64,CiAgPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMTAyNCAxMDI0IiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCAxMDI0IDEwMjQiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8bWV0YWRhdGE+IEZyZWUgSWNvbiBEb3dubG9hZCAtLSA8YSBjbGFzcz0ibGlua2lmaWNhdGlvbi1leHQiIGhyZWY9Imh0dHA6Ly93d3cub25saW5ld2ViZm9udHMuY29tIiB0aXRsZT0iTGlua2lmaWNhdGlvbjogaHR0cDovL3d3dy5vbmxpbmV3ZWJmb250cy5jb20iPnd3dy5vbmxpbmV3ZWJmb250cy5jb208L2E+IDwvbWV0YWRhdGE+CgogIDxwYXRoIHN0eWxlPSJmaWxsOiM1NjU2NTYiIGQ9Ik04NTcuNTE4MDggNDM5LjMwNjI0Yy0xOC4wNTMxMiAwLTMxLjM5NTg0IDE0LjY4NDE2LTMxLjM5NTg0IDMyLjc2OGwwIDMyLjc5ODcyIDAgMjk0Ljk4MzY4IDAgNzMuMDExMmMwIDQzLjExMDQtMzMuMzIwOTYgNzkuNzQ5MTItNzYuMzQ5NDQgNzkuNzQ5MTJMMTY1LjI2MzM2IDk1Mi42MTY5NmMtNDMuMDE4MjQgMC05My4wMzA0LTM2LjYzODcyLTkzLjAzMDQtNzkuNzQ5MTJMNzIuMjMyOTYgMjg2LjM3MTg0YzAtNDMuMTUxMzYgNTAuMDEyMTYtODkuMTA4NDggOTMuMDMwNC04OS4xMDg0OGw0MC4xMzA1NiAwIDE5NS45OTM2IDAgOTcuOTc2MzIgMGMxOC4wOTQwOCAwIDMyLjY3NTg0LTEzLjM4MzY4IDMyLjY3NTg0LTMxLjQ3Nzc2IDAtMTguMTI0OC0xNC41ODE3Ni0zMS40Njc1Mi0zMi42NzU4NC0zMS40Njc1MmwtOTcuOTc2MzIgMC0xOTUuOTkzNiAwLTQwLjEzMDU2IDBjLTg1LjkxMzYgMC0xNTUuODYzMDQgNjUuNzYxMjgtMTU1Ljg2MzA0IDE1Mi4wNTM3NmwwIDU4Ni40OTZjMCA4Ni4yNjE3NiA2OS45NTk2OCAxNDIuNzA0NjQgMTU1Ljg2MzA0IDE0Mi43MDQ2NEw3NDkuNzcyOCAxMDE1LjU3MjQ4Yzg1Ljk4NTI4IDAgMTM5LjE2MTYtNTYuNDQyODggMTM5LjE2MTYtMTQyLjcwNDY0bDAtNzMuMDExMkw4ODguOTM0NCA1MDQuODcyOTZsMC0zMi43OTg3MkM4ODguOTM0NCA0NTMuOTkwNCA4NzUuNTkxNjggNDM5LjMwNjI0IDg1Ny41MTgwOCA0MzkuMzA2MjR6Ij48L3BhdGg+CjxwYXRoIHN0eWxlPSJmaWxsOiM1NjU2NTYiIGQ9Ik05ODYuMjk2MzIgODMuODM0ODggOTM4LjQ0NDggMzUuODRjLTM2LjM4MjcyLTM2LjUzNjMyLTEwMC4zODI3Mi0zNi41MzYzMi0xMzYuNzk2MTYgMGwtOTAuNDE5MiAxMDYuNDg1NzZMMjI5LjI5NDA4IDYwNC41NDkxMmwwIDExLjI3NDI0LTAuMzc4ODggMS45MjUxMi02MC42MDAzMiAyMDUuODY0OTYgNDQuNTIzNTIgMzkuNzkyNjQgMTk0LjQyNjg4LTY4LjY3OTY4IDIuNDY3ODQgMC41MzI0OCA5LjU0MzY4IDAgNDYwLjgyMDQ4LTQ4My40MDk5MiAxMDYuMjE5NTItODYuODk2NjRDMTAyNC4wMzA3MiAxODcuMTU2NDggMTAyNC4wMzA3MiAxMjEuNjkyMTYgOTg2LjI5NjMyIDgzLjgzNDg4ek0yNTMuOTExMDQgNzc4LjQwMzg0bDI4LjMxMzYtOTAuMzA2NTYgNTYuNTg2MjQgNTYuNzE5MzZMMjUzLjkxMTA0IDc3OC40MDM4NHpNMzk2LjMzOTIgNzExLjA0NTEybC04My4yODE5Mi04My41MDcyIDQzMC44Njg0OC00MjkuNDE0NCA4MC41NjgzMiA4MC44NDQ4TDM5Ni4zMzkyIDcxMS4wNDUxMnpNOTQwLjcxODA4IDE3NS4zMzk1MmwtNjQuMjE1MDQgNjQuMzU4NC05My40NzA3Mi05My43Nzc5MiA2NC4xNzQwOC02NC4zNTg0YzYuMDgyNTYtNi4wNTE4NCAxNC4xNjE5Mi05LjM5MDA4IDIyLjgxNDcyLTkuMzkwMDggOC42NzMyOCAwIDE2Ljc2Mjg4IDMuMzM4MjQgMjIuODI0OTYgOS4zOTAwOGw0Ny44MTA1NiA0Ny45ODQ2NEM5NTMuMjcyMzIgMTQyLjIwMjg4IDk1My4yNzIzMiAxNjIuNzEzNiA5NDAuNzE4MDggMTc1LjMzOTUyeiI+PC9wYXRoPgoKCjwvc3ZnPiAg );
}

.maddos-mobile-friendly-icon {
	width: 16px;
	height: 16px;
	display: inline-block;
	position: relative;
	background-size: 100%;
	overflow: hidden;
	background-image: url(data:image/svg+xml;base64,CiAgPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMTAyNCAxMDI0IiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCAxMDI0IDEwMjQiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8bWV0YWRhdGE+IEZyZWUgSWNvbiBEb3dubG9hZCAtLSA8YSBjbGFzcz0ibGlua2lmaWNhdGlvbi1leHQiIGhyZWY9Imh0dHA6Ly93d3cub25saW5ld2ViZm9udHMuY29tIiB0aXRsZT0iTGlua2lmaWNhdGlvbjogaHR0cDovL3d3dy5vbmxpbmV3ZWJmb250cy5jb20iPnd3dy5vbmxpbmV3ZWJmb250cy5jb208L2E+IDwvbWV0YWRhdGE+CgogIDxwYXRoIHN0eWxlPSJmaWxsOiNhOWI3YjciIGQ9Ik03MzYgMGgtNDQ4Yy01Mi44IDAtOTYgNDMuMi05NiA5NnY4MzJjMCA1Mi44IDQzLjIgOTYgOTYgOTZoNDQ4YzUyLjggMCA5Ni00My4yIDk2LTk2di04MzJjMC01Mi44LTQzLjItOTYtOTYtOTZ6TTM4NCA0OGgyNTUuOTk5djMyaC0yNTUuOTk5di0zMnpNNTEyIDk2MGMtMzUuMzQ2IDAtNjQtMjguNjU0LTY0LTY0czI4LjY1NC02NCA2NC02NCA2NCAyOC42NTQgNjQgNjQtMjguNjU0IDY0LTY0IDY0ek03NjggNzY4aC01MTEuOTk5di02NDBoNTExLjk5OXY2NDB6Ij48L3BhdGg+CgoKPC9zdmc+ICA= );
}

.maddos-new-icon {
	width: 16px;
	height: 16px;
	display: inline-block;
	position: relative;
	background-size: 100%;
	overflow: hidden;
	background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACRQTFRFzDMz////zDQ0zDIyzTQ0yzIyzDExzTIyzDM0yzExzDIxuLi4HG+ZNQAAAAx0Uk5T//////////////8AEt/OzgAAAGdJREFUeNqEj9sOwCAIQ9uCc5f//99V4vbgHlZTDKeGIK5F+ABrQ/ZAAwKlhJABNd9uYgQzUhUeIEjbuEzMZpyOZKHhjaIHMCsT5kvxhBPSJNnmZNeGR7s0FimsyuNdsfT/uRXcAgwAFgsESSkC5/4AAAAASUVORK5CYII=");
}

.maddos-sticky-icon {
	width: 16px;
	height: 16px;
	display: inline-block;
	position: relative;
	background-size: 100%;
	overflow: hidden;
	background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAACXBIWXMAAAE7AAABOwEf329xAAACCElEQVR4nJWRT0gUcRTHP7+ZWWf/mK67O7vqSi2YlFhmQnkMPFSXjhH9uwh2ik4FdYk9BUVE4CXpEgWVgucKOgYFQQRhGAkRapkbieLOjjvzm9fB6A85C77be9/v+7zHe9Ag5GIhJeXOZCOP1Uhk+PBVJAjh0ZUoixE5vVzIU+w9jZM9K9eK2S0D2Dd0kpa8Q1zy7Oo/tSWA3OpKkMuPIJ6Bv6xIx0alXIpv5lUyicnHXB4SWXIZh2SynebmIXoPncObt6h9DgmDkLnKOO76K6q1b1S9Cjr4Qc/3JSV3D5yhb+91UrkU1C3QBoZlErqwOi2EHoQBoEN0XaM9TUhA0qnzYeGSxcLrx2zTuylmLmC3xBAB7Qr1RUG7IAH4a0KwAipmUhi26ewwmH17ky9fJxSACIp73edpV2UsP0kYbDRqT9BrIBqsVigebaKtppn5dJkj724rEPXP8e44Jyi4Y1j15o215delDEjvN+lwhJm5EXVs+uHmX1isTFFdXyL0/zQDGHFQwPxshdr0RPQbbaeErdt+5yYGBgbig9aCUlneF3Y0AHh9WJLCwqCYtdnevYZlrqD8GP4yxNM2ebc/GpBaH6A1kaC7D/zSOE9X9/CmbYBFe4zqnIsRKNIcJCrkftOUvOx9Lg92Dv6n3WgdlKnUE3nR8ywaUM50yXHMSH0SU8qZrr9rPwG+4MqllSSCUgAAAABJRU5ErkJggg==");
}

.maddos-archive,
.maddos-search-results {
	display: inline-block;
	padding: 0 0 0 10px;
	margin: 0;
	position: relative;
}

.maddos-link-container {
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-lg);
    box-shadow: 0 6px 24px rgba(0,0,0,.35);
    padding: 0px;
    margin: 20px 0;
}

.maddos-link-header {
	position: relative;
	overflow: hidden;
	border-bottom: 3px solid #aa0000;
	padding: 8px 0;
}

.maddos-post-header {
	display: inline-block;
	font-size: 24px;
	position: relative;
	text-transform: uppercase;
	margin: 5px 0 5px 10px;
}

.maddos-grid-container {
	background: none repeat scroll 0% 0% #ffffff;
	box-shadow: 3px 6px 10px 0px #999;
	padding: 0px;
	margin: 0;
}

.maddos-grid-container p {
	font-size: 13px;
	padding: 10px;
	overflow: hidden;
	text-align: justify;
	line-height: 1.0;
	height: 160px;
}

.maddos-grid-thumbnail {
	width: 100%;
	margin: 0 !important;
	height: auto;
}

.maddos-post-grid-entry {
	margin-bottom: 20px;
}

.maddos-post-grid-header {
	text-align: center;
}

.maddos-post-grid-header h2 a {
	font-size: 16px;
	margin: 0;
	white-space: nowrap;
}

.maddos-link-header-back {
	font-size: 17px;
	padding: 10px 10px 0 40px;
	float: right;
	text-transform: uppercase;
}

.maddos-link-header-back,
.maddos-link-header-back a {
	color: #fff;
	text-decoration: none;
	text-align: center;
}

.maddos-link-header-back a:hover {
	text-decoration: underline;
}

.maddos-link-content {
	padding: 20px;
}

.maddos-link-content h2 {
	margin-top: 0;
}

li img.maddos-image-hover {
	display: none;
	border: 1px solid #000000;
}

.maddos-page-content {
    color: var(--text-primary);
    padding: 10px 10px 20px 10px;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-lg);
    box-shadow: 0 6px 24px rgba(0,0,0,.35);
}

.maddos-page-content p {
	margin-bottom: 10px;
}

.maddos-page-content h2 {
	top: 0;
	left: 0;
	margin: 0;
	padding: 0;
	position: relative;
	margin-bottom: 10px;
}

.maddos-single-left {
	padding-left: 10px;
	padding-right: 10px;
}

.maddos-link-thumbnail {
	text-align: center;
	margin-bottom: 10px;
}

.maddos-single-left .maddos-link-thumbnail img {
	margin: 0 auto;
	box-shadow: 3px 6px 10px 0px #999;
}

.maddos-single-left .maddos-post-linktext {
	width: 100%;
	color: #fff;
	font-size: 28px;
	display: block;
	text-transform: capitalize;
	background-color: #000;
	padding: 14px 0;
	border-radius: 5px;
	margin-top: 10px;
	border: 5px solid #000;
}

.maddos-single-left .maddos-post-linktext a {
	color: #fff;
}

.maddos-single-left .maddos-post-linktext:hover {
	color: #000;
	background: #fff;
}

.maddos-post-title,
.maddos-post-title a {
	font-size: 36px;
	font-weight: bold;
	color: #000000;
	position: relative;
	margin: 0;
	overflow: hidden;
}

.maddos-url-links-row:first-child {
	margin-top: 15px;
}

.maddos-url-link-image img {
	max-width: 200px;
	max-height: 200px;
	margin: 10px auto;
	box-shadow: 3px 6px 10px 0px #999;
}

.maddos-search { position: absolute; bottom: 5px; right: 20px; }

.maddos-search input[type="text"] {
	background: url("../images/search.png") no-repeat scroll 4px 4px #ffffff;
	border-radius: 2px;
	border: 1px solid #a0a0a0;
	color: #7d7d7d;
	font-size: 11px;
	padding: 4px 8px 4px 25px;
}

.maddos-url-links-wrapper .maddos-url-link-container {
	text-align: center;
	display: inline-block;
	margin: 20px 0;
}

.maddos-url-links-wrapper .row {
	text-align: center;
}

.maddos-no-margins {
	margin: 0;
}

.maddos-comments-container {
	padding: 0px 20px;
}

.maddos-comments {
	border-top: 1px solid #2d2d2d;
	border-bottom: 1px solid #2d2d2d;
	padding: 0 20px;
}

.maddos-commentlist {}

.maddos-comment-form-comment #comment,
.maddos-comment-form-author #author,
.maddos-comment-form-email #email,
.maddos-comment-form-url #url {
	max-width: 100%;
}

.maddos-commentlist li {
	border-top: 1px dotted #a0a0a0;
}

.maddos-leave-comment {
	margin: 10px 0;
}

.maddos-menu { margin: 0; background: transparent; border-bottom: 1px solid var(--color-border); }

.maddos-content,
.maddos-content-scroll {
	margin: 20px 0;
	text-align: justify;
}

.maddos-tags .btn-default {
	border-color: #000000;
}

.maddos-tags .btn-default:hover {
	background-color: #000000;
	color: white;
}

.maddos-legend {
	margin: 20px 0 10px 0;
	font-size: 0.9em;
}

.maddos-hidden {
	display: none;
}

.maddos-more-link {
	display: flex;
	justify-content: flex-end;
	padding: 5px;
	border-top: 1px solid #ccc;
}

.maddos-more-link a {
	position: relative;
	padding: 0 10px 0 0;
	display: inline-block;
}

.maddos-more-link a::after {
	content: "";
	position: absolute;
	right: -5px;
	top: 50%;
	border: 5px solid transparent;
	border-left: 5px solid #ccc;
	transform: translateY(-50%);
}

.maddos-arrow {
	display: inline-block;
	padding: 3px;
}

.maddos-arrow-up {
	margin-top: 3px;
	border: solid #9f9;
	border-width: 0 3px 3px 0;
	transform: rotate(-135deg);
	-webkit-transform: rotate(-135deg);
}

.maddos-arrow-down {
	margin-bottom: 3px;
	border: solid #f99;
	border-width: 0 3px 3px 0;
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
}


/* OPEN CLOSE ---------------------------------------------------------------------------------- */


/* Modified from https://codepen.io/murphyrandle/pen/wvCgI/ */

.maddos-open-close-button {
	float: right;
	width: 26px;
	height: 26px;
	font-size: 12px;
	border-radius: 50%;
	position: relative;
	-moz-transition: 0.5s;
	-o-transition: 0.5s;
	-webkit-transition: 0.5s;
	transition: 0.5s;
	-moz-transform: translateZ(0);
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
}

.maddos-open-close-button:hover {
	cursor: pointer;
}

.maddos-open-close-button:before {
	content: "";
	display: block;
	position: absolute;
	background-color: #fff;
	width: 40%;
	height: 6%;
	left: 30%;
	top: 47%;
}

.maddos-open-close-button:after {
	content: "";
	display: block;
	position: absolute;
	background-color: #fff;
	width: 6%;
	height: 40%;
	left: 47%;
	top: 30%;
}

.maddos-open-close-button.open {
	-moz-transform: rotate(225deg);
	-ms-transform: rotate(225deg);
	-webkit-transform: rotate(225deg);
	transform: rotate(225deg);
}

.maddos-open-close-button.open:after {
	background-color: #fff;
}

.maddos-open-close-button.open:before{
	background-color: #fff;
}


/* NAVIGATION---------------------------------------------------------------------------------- */

.maddos-nav {
	overflow: hidden;
	padding: 5px 5px 5px 10px;
	font-weight: bold;
	background-color: #000000;
}

.maddos-nav a,
.maddos-nav a:link,
.maddos-nav a:active,
.maddos-nav a:visited,
.maddos-nav a:hover {
	color: #fff;
}

.maddos-nav-prev {
	display: block;
	float: left;
}

.maddos-nav-next {
	display: block;
	float: right;
}


/* BOOTSTRAP MENUS ------------------------------------------------------------------------------- */

.nav,
.nav>li>a,
.nav>li>a:hover,
.nav>li>a:focus,
.nav>.active>a,
.nav>.active>a:hover,
.nav>.active>a:focus,
.nav>.open>a,
.nav>.open>a:hover,
.nav>.open>a:focus,
.dropdown-menu,
.dropdown-menu>li>a,
.dropdown-menu>li>a:hover,
.dropdown-menu>li>a:focus,
.dropdown-menu>.active>a,
.dropdown-menu>.active>a:hover,
.dropdown-menu>.active>a:focus {
    background-color: transparent;
    color: var(--text-primary);
    border: 0;
    font-size: 18px;
}
.nav>li>a:hover,
.dropdown-menu>li>a:hover { color: var(--primary-300); }

/* Rounded surfaces across the theme */
.maddos-widget,
.maddos-page-content,
.maddos-link-container,
.maddos-grid-container { 
    border-radius: var(--radius-lg); 
    overflow: hidden; 
    background: var(--color-surface); 
    border: 1px solid var(--color-border); 
    transition: transform 0.15s ease, box-shadow 0.15s ease;
}
.maddos-link-container:hover,
.maddos-grid-container:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 32px rgba(0,0,0,.4);
}
.maddos-link-thumbnail img,
.maddos-url-link-image img { border-radius: var(--radius-md); }
.dropdown-menu { border-radius: var(--radius-md); background: var(--color-surface); border: 1px solid var(--color-border); }
.maddos-widget-title { background: linear-gradient(90deg, var(--primary-start), var(--primary-end)); border-bottom: 0; }
.maddos-widget { box-shadow: 0 6px 24px rgba(0,0,0,.35); }
.maddos-page-content { box-shadow: 0 6px 24px rgba(0,0,0,.35); }

/* Inputs & buttons */
.maddos-search input[type="text"] { border-radius: var(--radius-md); border-color: var(--color-border); background-color: var(--color-surface); color: var(--text-primary); }
.btn, .btn-default { border-radius: var(--radius-sm); border-color: var(--color-border); }
.btn-default:hover { background: linear-gradient(90deg, var(--primary-start), var(--primary-end)); color: #fff; border-color: transparent; }

/* Contact form */
.maddos-contact-wrapper { margin-top: 16px; padding: 16px; background: var(--color-surface); border: 1px solid var(--color-border); border-radius: var(--radius-lg); box-shadow: 0 6px 24px rgba(0,0,0,.35); }
.maddos-contact-notice { margin-bottom: 12px; padding: 10px 12px; border-radius: var(--radius-sm); }
.maddos-contact-success { background: rgba(34,197,94,.12); color: #86efac; border: 1px solid rgba(34,197,94,.35); }
.maddos-contact-error { background: rgba(239,68,68,.12); color: #fecaca; border: 1px solid rgba(239,68,68,.35); }
.maddos-contact-form .mcf-row { display: flex; flex-direction: column; gap: 6px; margin-bottom: 12px; }
.maddos-contact-form label { color: var(--text-secondary); font-size: 14px; }
.maddos-contact-form input[type="text"],
.maddos-contact-form input[type="email"],
.maddos-contact-form textarea { background: var(--color-bg); color: var(--text-primary); border: 1px solid var(--color-border); border-radius: var(--radius-sm); padding: 10px 12px; }
.maddos-contact-form textarea { resize: vertical; }
.maddos-contact-form .mcf-hp { position: absolute; left: -10000px; top: auto; width: 1px; height: 1px; overflow: hidden; }
.maddos-contact-form .mcf-actions { text-align: right; }

.nav>li>a:hover,
.nav>li>a:focus,
.dropdown-menu>li>a:hover,
.dropdown-menu>.active a:hover {
	outline: 0;
}

.icon-bar {
	background-color: #fff;
}

/* FOOTER --------------------------------------------------------------------------------------- */

#maddos-footer-area {
	text-align: center;
}

#maddos-footer-area .maddos-widget {
	margin: 1px 0 0 0;
}

footer {
	margin: 10px 0;
}

.maddos-copyright { background: var(--color-surface); color: var(--text-secondary); font-size: 14px; padding: 8px 0; text-align: center; width: 100%; border-top: 1px solid var(--color-border); }

/* Directory "View all" link */
.maddos-more { padding: 8px 12px 14px; text-align: right; }
.maddos-more a { color: var(--primary-400); }
.maddos-more a:hover { color: var(--primary-300); }


/* WP-POSTVIEWS --------------------------------------------------------------------------------- */

.maddos-the-views {
	line-height: 16px;
}


/* MADDOS WIDGETS --------------------------------------------------------------------- */

#maddos-header-area {
	text-align: center;
}

#maddos-header-area .maddos-widget {
	margin: 1px 0 0 0;
}

.maddos-widget {
	overflow: hidden;
	margin: 20px 0 0 0;
	background-color: #fff;
	box-shadow: 3px 6px 10px 0px #999;
}

.maddos-widget-title {
	background: none repeat scroll 0% 0% #000;
	font-family: arial;
	font-size: 18px;
	color: #fff;
	position: relative;
	text-align: center;
	border-bottom: 3px solid #aa0000;
	margin-top: 0;
	padding: 8px 0;
	min-height: 45px;
	height: auto;
}

.maddos-widget-title a {
	color: inherit;
	text-decoration: none;
	position: relative;
}


/* WORDPRESS ELEMENTS -------------------------------------------------------------------------- */

.textwidget,
.tagcloud {
	padding: 10px;
}

.widget_archive select,
.widget_categories select,
.widget_search input {
	margin: 0 10px 10px 10px;
}

.widget_search input {
	width: 90%;
}

.wp-caption-text {
	font-family: Verdana, Geneva, sans-serif;
	text-align: left;
	margin: 6px 0 26px 0;
	font-size: 11px;
	font-style: italic;
	font-weight: normal;
	line-height: 17px;
	color: #444;
}

.wp-caption {
	text-align: center;
	max-width: 100% !important;
}

.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	height: 1px;
	overflow: hidden;
	position: absolute !important;
	width: 1px;
}

.bypostauthor {
	line-height: 1;
}

.size-auto,
.size-full,
.size-large,
.size-medium,
.size-thumbnail {
	max-width: 100%;
	height: auto;
}

.aligncenter {
	display: block;
	margin: 20px auto;
	margin: 1.25rem auto;
}

.alignleft {
	display: inline;
	float: left;
	margin: 5px 20px 20px 0;
	margin: 0.3125rem 1.25rem 1.25rem 0;
}

.alignright {
	display: inline;
	float: right;
	margin: 5px 0 20px 20px;
	margin: 0.3125rem 0 1.25rem 1.25rem;
}

.gallery-caption {
	font-size: 16px;
	line-height: 24px;
}

#wp-calendar {
	margin: 0 auto;
}

#wp-calendar caption {
	text-align: right;
	color: #333;
	font-size: 12px;
	margin-top: 10px;
	margin-bottom: 15px;
}

#wp-calendar thead {
	font-size: 10px;
}

#wp-calendar thead th {
	padding-bottom: 10px;
	text-align: center;
}

#wp-calendar tbody {
	color: #aaa;
}

#wp-calendar tbody td {
	background: #f5f5f5;
	border: 1px solid #fff;
	text-align: center;
	padding: 8px;
}

#wp-calendar tbody td:hover {
	background: #fff;
}

#wp-calendar tbody .pad {
	background: none;
}

#wp-calendar tfoot #next {
	font-size: 10px;
	text-transform: uppercase;
	text-align: right;
}

#wp-calendar tfoot #prev {
	font-size: 10px;
	text-transform: uppercase;
	padding-top: 10px;
}


/* WORDPRESS GALLERY STYLING --------------------------------------------------------------------- */

.gallery:after {
	content: "";
	display: table;
	clear: both;
}

img.aligncenter,
div.aligncenter,
figure.aligncenter,
img.wp-post-image {
	display: block;
	margin: 1em auto;
}

img.alignright,
div.alignright,
figure.alignright {
	float: right;
	margin: 1em 0 1em 2em;
}

img.alignleft,
div.alignleft,
figure.alignleft,
img.wp-post-image.attachment-thumb {
	float: left;
	margin: 1em 1em 2em 0;
}

figure {
	max-width: 100%;
	height: auto;
	margin: 1em 0;
}

p img.alignright,
p img.alignleft {
	margin-top: 0;
}

.gallery figure img {
	max-width: 100%;
	height: auto;
	margin: 0 auto;
	display: block;
}

.gallery figure {
	float: left;
	margin: 0 2% 1em 0;
}

.gallery.gallery-columns-1 figure {
	width: 100%;
	margin: 0 0 1em 0;
	float: none;
}

.gallery.gallery-columns-3 figure {
	width: 32%;
}

.gallery.gallery-columns-3 figure:nth-of-type(3n+3) {
	margin-right: 0;
}

.gallery.gallery-columns-3 figure:nth-of-type(3n+4) {
	clear: left;
}

.gallery.gallery-columns-2 figure {
	width: 49%;
}

.gallery.gallery-columns-2 figure:nth-of-type(even) {
	margin-right: 0;
}

.gallery.gallery-columns-2 figure:nth-of-type(odd) {
	clear: left;
}

.gallery.gallery-columns-4 figure {
	width: 23.25%;
}

.gallery.gallery-columns-4 figure:nth-of-type(4n+4) {
	margin-right: 0;
}

.gallery.gallery-columns-4 figure:nth-of-type(4n+5) {
	clear: left;
}

.gallery.gallery-columns-5 figure {
	width: 18%;
}

.gallery.gallery-columns-5 figure:nth-of-type(5n+5) {
	margin-right: 0;
}

.gallery.gallery-columns-5 figure:nth-of-type(5n+6) {
	clear: left;
}

.gallery.gallery-columns-6 figure {
	width: 14.2%;
}

.gallery.gallery-columns-6 figure:nth-of-type(6n+6) {
	margin-right: 0;
}

.gallery.gallery-columns-6 figure:nth-of-type(6n+7) {
	clear: left;
}

.gallery.gallery-columns-7 figure {
	width: 12%;
}

.gallery.gallery-columns-7 figure:nth-of-type(7n+7) {
	margin-right: 0;
}

.gallery.gallery-columns-7 figure:nth-of-type(7n+8) {
	clear: left;
}

.gallery.gallery-columns-8 figure {
	width: 10.2%;
}

.gallery.gallery-columns-8 figure:nth-of-type(8n+8) {
	margin-right: 0;
}

.gallery.gallery-columns-8 figure:nth-of-type(8n+9) {
	clear: left;
}

.gallery.gallery-columns-9 figure {
	width: 8.85%;
}

.gallery.gallery-columns-9 figure:nth-of-type(9n+9) {
	margin-right: 0;
}

.gallery.gallery-columns-9 figure:nth-of-type(9n+10) {
	clear: left;
}

@media (max-width:767px) {
	img.alignright,
	div.alignright,
	figure.alignright,
	img.alignleft,
	div.alignleft,
	figure.alignleft,
	img.wp-post-image.attachment-thumb {
		display: block;
		margin: 1em auto;
		float: none;
	}
	.gallery.gallery-columns-4 figure,
	.gallery.gallery-columns-5 figure,
	.gallery.gallery-columns-6 figure,
	.gallery.gallery-columns-7 figure,
	.gallery.gallery-columns-8 figure,
	.gallery.gallery-columns-9 figure {
		width: 100%;
		margin: 0 0 1em 0;
		float: none;
	}
}
