/*
Theme Name: Tamoza
Theme URI: https://tamoza.net
Author: Tamoza Dev
Author URI: https://tamoza.net
Description: A premium WordPress theme featuring Glassmorphism UI with dark mode, Indigo-Cyan gradient accents, dynamic front page with Customizer-controlled category tabs, 16 social media networks, SEO with JSON-LD structured data, and an 8pt grid system. Built with VIP security standards.
Version: 1.3.6
Requires at least: 5.5
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: tamoza
Tags: dark, custom-menu, featured-images, threaded-comments, translation-ready, custom-background, custom-logo, theme-options, custom-colors, full-width-template, grid-layout, one-column, two-columns, right-sidebar, front-page-post-form

Tamoza UI Standard - Verified: 8pt Logic, Premium Glassmorphism, English Only, Indigo Brand DNA, SF Pro Typography.
*/

/* ============================================
   CSS CUSTOM PROPERTIES — 8PT GRID SYSTEM
   ============================================ */
:root {
	/* ---- Background ---- */
	--bg-dark: #121212;
	--bg-dark-elevated: #1a1a2e;
	--bg-dark-surface: #16213e;

	/* ---- Glass Material ---- */
	--glass-bg: rgba(255, 255, 255, 0.05);
	--glass-bg-hover: rgba(255, 255, 255, 0.08);
	--glass-bg-active: rgba(255, 255, 255, 0.12);
	--glass-border: rgba(255, 255, 255, 0.1);
	--glass-border-hover: rgba(255, 255, 255, 0.18);
	--glass-blur: blur(12px);

	/* ---- Accent Gradient ---- */
	--accent-start: #6366F1;
	--accent-end: #22D3EE;
	--accent-gradient: linear-gradient(135deg, #6366F1, #22D3EE);
	--accent-gradient-hover: linear-gradient(135deg, #7c7ff7, #3dd9f5);

	/* ---- Typography ---- */
	--font-display: 'SF Pro Display', -apple-system, BlinkMacSystemFont, 'Inter', 'Segoe UI', Roboto, sans-serif;
	--font-body: 'SF Pro Text', -apple-system, BlinkMacSystemFont, 'Inter', 'Segoe UI', Roboto, sans-serif;

	/* ---- Font Sizes (8pt scale) ---- */
	--text-xs: 0.75rem;    /* 12px */
	--text-sm: 0.875rem;   /* 14px */
	--text-base: 1rem;     /* 16px */
	--text-lg: 1.125rem;   /* 18px */
	--text-xl: 1.25rem;    /* 20px */
	--text-2xl: 1.5rem;    /* 24px */
	--text-3xl: 2rem;      /* 32px */
	--text-4xl: 2.5rem;    /* 40px */

	/* ---- 8pt Spacing ---- */
	--space-1: 0.5rem;   /* 8px */
	--space-2: 1rem;     /* 16px */
	--space-3: 1.5rem;   /* 24px */
	--space-4: 2rem;     /* 32px */
	--space-5: 2.5rem;   /* 40px */
	--space-6: 3rem;     /* 48px */
	--space-7: 3.5rem;   /* 56px */
	--space-8: 4rem;     /* 64px */

	/* ---- Layout ---- */
	--container-max: 1200px;
	--content-width: 70%;
	--sidebar-width: 30%;
	--header-gap: 24px;

	/* ---- Border Radius ---- */
	--radius-sm: 8px;
	--radius-md: 16px;
	--radius-lg: 24px;
	--radius-pill: 9999px;

	/* ---- Shadows ---- */
	--shadow-glow: 0 0 20px rgba(99, 102, 241, 0.15);
	--shadow-glow-hover: 0 0 30px rgba(99, 102, 241, 0.25);
	--shadow-card: 0 8px 32px rgba(0, 0, 0, 0.3);
	--shadow-float: 0 16px 48px rgba(0, 0, 0, 0.4);

	/* ---- Transitions ---- */
	--transition-base: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	--transition-fast: all 0.15s cubic-bezier(0.4, 0, 0.2, 1);
}

/* ============================================
   RESET & BASE
   ============================================ */
*,
*::before,
*::after {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}

html {
	font-size: 16px;
	scroll-behavior: smooth;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

body {
	font-family: var(--font-body);
	font-size: var(--text-base);
	line-height: 1.6;
	color: rgba(255, 255, 255, 0.87);
	background-color: var(--bg-dark);
	direction: ltr;
	text-align: left;
	min-height: 100vh;
}

body::before {
	content: '';
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background:
		radial-gradient(ellipse at 20% 50%, rgba(99, 102, 241, 0.08) 0%, transparent 50%),
		radial-gradient(ellipse at 80% 20%, rgba(34, 211, 238, 0.06) 0%, transparent 50%),
		radial-gradient(ellipse at 50% 80%, rgba(99, 102, 241, 0.04) 0%, transparent 50%);
	pointer-events: none;
	z-index: 0;
}

a {
	color: var(--accent-end);
	text-decoration: none;
	transition: var(--transition-fast);
}

a:hover {
	color: var(--accent-start);
}

img {
	max-width: 100%;
	height: auto;
	display: block;
}

h1, h2, h3, h4, h5, h6 {
	font-family: var(--font-display);
	font-weight: 600;
	line-height: 1.3;
	color: #ffffff;
}

h1 { font-size: var(--text-4xl); }
h2 { font-size: var(--text-3xl); }
h3 { font-size: var(--text-2xl); }
h4 { font-size: var(--text-xl); }
h5 { font-size: var(--text-lg); }
h6 { font-size: var(--text-base); }

ul, ol {
	list-style: none;
}

/* ============================================
   GLASSMORPHISM UTILITY CLASSES
   ============================================ */
.glass {
	background: var(--glass-bg);
	backdrop-filter: var(--glass-blur);
	-webkit-backdrop-filter: var(--glass-blur);
	border: 1px solid var(--glass-border);
	border-radius: var(--radius-md);
}

.glass-hover:hover {
	background: var(--glass-bg-hover);
	border-color: var(--glass-border-hover);
	box-shadow: var(--shadow-glow-hover);
}

.glass-card {
	background: var(--glass-bg);
	backdrop-filter: var(--glass-blur);
	-webkit-backdrop-filter: var(--glass-blur);
	border: 1px solid var(--glass-border);
	border-radius: var(--radius-md);
	padding: var(--space-3);
	box-shadow: var(--shadow-card);
	transition: var(--transition-base);
}

.glass-card:hover {
	background: var(--glass-bg-hover);
	border-color: var(--glass-border-hover);
	box-shadow: var(--shadow-glow-hover), var(--shadow-card);
	transform: translateY(-2px);
}

.glass-pill {
	background: var(--glass-bg);
	backdrop-filter: var(--glass-blur);
	-webkit-backdrop-filter: var(--glass-blur);
	border: 1px solid var(--glass-border);
	border-radius: var(--radius-pill);
}

/* ============================================
   CONTAINER & LAYOUT
   ============================================ */
.tamoza-container {
	max-width: var(--container-max);
	margin: 0 auto;
	padding: 0 var(--space-1);
	width: 100%;
}

.tamoza-layout {
	display: flex;
	gap: var(--space-3);
	position: relative;
	z-index: 1;
}

.tamoza-main {
	flex: 0 0 var(--content-width);
	max-width: var(--content-width);
}

.tamoza-sidebar {
	flex: 0 0 var(--sidebar-width);
	max-width: var(--sidebar-width);
}

/* ============================================
   HEADER (Non-Sticky — scrolls away)
   ============================================ */
.tamoza-header {
	position: relative !important;
	width: 100%;
	z-index: 10;
	background: rgba(18, 18, 18, 0.85);
	backdrop-filter: var(--glass-blur);
	-webkit-backdrop-filter: var(--glass-blur);
	border-bottom: 1px solid var(--glass-border);
}

.tamoza-header-inner {
	width: 100%;
	padding: var(--space-2) var(--space-3);
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--space-2);
	box-sizing: border-box;
}

.tamoza-logo,
.tamoza-logo-link {
	display: flex;
	align-items: center;
	gap: var(--space-1);
	text-decoration: none;
}

.tamoza-logo-icon {
	width: 40px;
	height: 40px;
	background: var(--accent-gradient);
	border-radius: var(--radius-sm);
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: var(--font-display);
	font-weight: 700;
	font-size: var(--text-xl);
	color: #fff;
}

.tamoza-logo-text {
	font-family: var(--font-display);
	font-size: var(--text-xl);
	font-weight: 700;
	color: #ffffff;
	letter-spacing: -0.5px;
}

.tamoza-logo-text span {
	background: var(--accent-gradient);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
}

/* ============================================
   NAVIGATION BAR (Below header, normal flow)
   ============================================ */
.tamoza-nav {
	position: relative;
	z-index: 999;
	flex: 1;
	display: flex;
	justify-content: center;
}

.tamoza-nav > ul {
	display: flex;
	align-items: center;
	gap: 4px;
	flex-wrap: wrap;
	list-style: none;
	margin: 0;
	padding: var(--space-1) 0;
}

.tamoza-nav li {
	margin: 0;
	position: relative;
}

.tamoza-nav a {
	display: inline-block;
	padding: 8px 16px;
	border-radius: var(--radius-pill);
	font-family: var(--font-body);
	font-size: var(--text-sm);
	font-weight: 500;
	color: rgba(255, 255, 255, 0.7);
	text-decoration: none;
	transition: var(--transition-base);
	white-space: nowrap;
}

.tamoza-nav a:hover,
.tamoza-nav li.current-menu-item > a,
.tamoza-nav li.current-menu-ancestor > a {
	background: var(--accent-gradient);
	color: #ffffff;
	box-shadow: var(--shadow-glow);
}

/* ---- Dropdown Arrow Indicator ---- */
.tamoza-nav .menu-item-has-children > a::after,
nav .menu-item-has-children > a::after {
	content: ' ▾' !important;
	font-size: 10px !important;
	margin-left: 4px !important;
	opacity: 0.5 !important;
}

/* ============================================
   DROPDOWN MENUS — Triple-Layer Hiding
   Uses: display:none + opacity:0 + visibility:hidden
   ============================================ */

/* Level 1+ sub-menus: HIDDEN by default */
.tamoza-nav .sub-menu,
.tamoza-nav ul.children,
nav .sub-menu,
nav ul.children,
.nav-menu .sub-menu,
.main-navigation .sub-menu,
.main-navigation ul.children {
	display: none !important;
	opacity: 0 !important;
	visibility: hidden !important;
	position: absolute !important;
	top: 100% !important;
	left: 0 !important;
	min-width: 240px !important;
	background: rgba(18, 18, 18, 0.95) !important;
	backdrop-filter: blur(10px) !important;
	-webkit-backdrop-filter: blur(10px) !important;
	border: 1px solid rgba(255, 255, 255, 0.1) !important;
	border-radius: 12px !important;
	box-shadow: 0 8px 32px rgba(0, 0, 0, 0.5) !important;
	padding: 8px 0 !important;
	margin: 0 !important;
	list-style: none !important;
	z-index: 100000 !important;
	transition: opacity 0.3s ease, visibility 0.3s ease !important;
	pointer-events: none !important;
}

/* SHOW sub-menu on parent hover */
.tamoza-nav li:hover > .sub-menu,
.tamoza-nav li:hover > ul.children,
nav li:hover > .sub-menu,
nav li:hover > ul.children,
.nav-menu li:hover > .sub-menu,
.main-navigation li:hover > .sub-menu,
.main-navigation li:hover > ul.children,
.tamoza-nav .menu-item-has-children:hover > .sub-menu {
	display: block !important;
	opacity: 1 !important;
	visibility: visible !important;
	pointer-events: auto !important;
}

/* Sub-menu items: vertical stack */
.tamoza-nav .sub-menu li,
.tamoza-nav ul.children li,
nav .sub-menu li,
.main-navigation .sub-menu li {
	display: block !important;
	width: 100% !important;
	position: relative !important;
	float: none !important;
}

/* Sub-menu links */
.tamoza-nav .sub-menu a,
.tamoza-nav ul.children a,
nav .sub-menu a,
.main-navigation .sub-menu a {
	display: block !important;
	padding: 10px 20px !important;
	border-radius: 0 !important;
	color: rgba(255, 255, 255, 0.7) !important;
	white-space: nowrap !important;
	width: 100% !important;
	font-size: var(--text-sm) !important;
	transition: all 0.2s ease !important;
}

.tamoza-nav .sub-menu a:hover,
nav .sub-menu a:hover,
.main-navigation .sub-menu a:hover {
	background: rgba(255, 255, 255, 0.08) !important;
	color: #ffffff !important;
	padding-left: 24px !important;
}

/* Level 2+ sub-menus: flyout to the right */
.tamoza-nav .sub-menu .sub-menu,
.tamoza-nav ul.children ul.children,
nav .sub-menu .sub-menu,
.main-navigation .sub-menu .sub-menu {
	top: 0 !important;
	left: 100% !important;
}

/* ============================================
   WP BLOCK SEARCH — Glassmorphism Style
   ============================================ */
.wp-block-search,
.wp-block-search__button-outside.wp-block-search__text-button.wp-block-search {
	display: flex !important;
	align-items: center !important;
	gap: var(--space-2) !important;
	max-width: 100% !important;
	background: transparent !important;
	border: none !important;
}

.wp-block-search__label {
	color: rgba(255, 255, 255, 0.7) !important;
	font-family: var(--font-body) !important;
	font-size: var(--text-sm) !important;
	font-weight: 600 !important;
	margin-bottom: var(--space-1) !important;
}

.wp-block-search__input {
	background: var(--glass-bg) !important;
	backdrop-filter: var(--glass-blur) !important;
	-webkit-backdrop-filter: var(--glass-blur) !important;
	border: 1px solid var(--glass-border) !important;
	border-radius: var(--radius-pill) !important;
	padding: 12px 20px !important;
	color: rgba(255, 255, 255, 0.87) !important;
	font-family: var(--font-body) !important;
	font-size: var(--text-sm) !important;
	outline: none !important;
	transition: var(--transition-base) !important;
	width: 100% !important;
	min-width: 200px !important;
	line-height: 1.5 !important;
}

.wp-block-search__input::placeholder {
	color: rgba(255, 255, 255, 0.35) !important;
}

.wp-block-search__input:focus {
	border-color: var(--accent) !important;
	box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.15), var(--shadow-glow) !important;
	background: var(--glass-bg-active) !important;
}

.wp-block-search__button,
.wp-block-search__button.wp-element-button {
	background: var(--accent-gradient) !important;
	border: none !important;
	border-radius: var(--radius-pill) !important;
	padding: 12px 24px !important;
	color: #ffffff !important;
	font-family: var(--font-body) !important;
	font-size: var(--text-sm) !important;
	font-weight: 600 !important;
	cursor: pointer !important;
	transition: var(--transition-base) !important;
	white-space: nowrap !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
	box-shadow: var(--shadow-glow) !important;
	line-height: 1.5 !important;
}

.wp-block-search__button:hover,
.wp-block-search__button.wp-element-button:hover {
	transform: translateY(-1px) !important;
	box-shadow: var(--shadow-glow-hover), var(--shadow-card) !important;
	filter: brightness(1.1) !important;
}

.wp-block-search__button:active,
.wp-block-search__button.wp-element-button:active {
	transform: translateY(0) !important;
}

.wp-block-search__button svg {
	fill: currentColor !important;
	width: 18px !important;
	height: 18px !important;
}

/* ============================================
   SITE CONTENT AREA
   ============================================ */
.tamoza-site-content {
	padding-top: 32px;
	padding-bottom: var(--space-8);
	position: relative;
	z-index: 1;
}

/* ============================================
   POST CARDS (LIST VIEW)
   ============================================ */
.tamoza-post-list {
	display: flex;
	flex-direction: column;
	gap: var(--space-3);
}

.tamoza-post-card {
	display: flex;
	align-items: center;
	gap: var(--space-3);
	background: var(--glass-bg);
	backdrop-filter: var(--glass-blur);
	-webkit-backdrop-filter: var(--glass-blur);
	border: 1px solid var(--glass-border);
	border-radius: var(--radius-md);
	padding: var(--space-3);
	box-shadow: var(--shadow-card);
	transition: var(--transition-base);
	text-decoration: none;
	color: inherit;
}

.tamoza-post-card:hover {
	background: var(--glass-bg-hover);
	border-color: var(--glass-border-hover);
	box-shadow: var(--shadow-glow-hover), var(--shadow-card);
	transform: translateY(-2px);
}

/* Thumbnail */
.tamoza-post-card-thumb {
	flex: 0 0 80px;
	width: 80px;
	height: 80px;
	border-radius: var(--radius-sm);
	overflow: hidden;
	background: var(--glass-bg-active);
	display: flex;
	align-items: center;
	justify-content: center;
}

.tamoza-post-card-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.tamoza-post-card-thumb .thumb-placeholder {
	width: 40px;
	height: 40px;
	background: var(--accent-gradient);
	border-radius: var(--radius-sm);
	opacity: 0.6;
}

/* Content */
.tamoza-post-card-content {
	flex: 1;
	min-width: 0;
}

.tamoza-post-card-meta {
	display: flex;
	align-items: center;
	gap: var(--space-1);
	margin-bottom: 6px;
}

.tamoza-post-card-date {
	font-size: var(--text-xs);
	color: rgba(255, 255, 255, 0.4);
	font-weight: 400;
}

.tamoza-post-card-meta-sep {
	color: rgba(255, 255, 255, 0.2);
	font-size: var(--text-xs);
}

.tamoza-post-card-category {
	display: inline-block;
	font-size: var(--text-xs);
	font-weight: 500;
	border: 1px solid rgba(34, 211, 238, 0.3) !important;
	padding: 2px 10px !important;
	border-radius: var(--radius-pill);
	background: transparent !important;
	-webkit-text-fill-color: unset !important;
	text-decoration: none;
	transition: all 0.2s ease;
}

.tamoza-post-card:hover .tamoza-post-card-category {
	border-color: rgba(34, 211, 238, 0.5) !important;
	background: rgba(34, 211, 238, 0.06) !important;
}

.tamoza-post-card-title {
	font-family: var(--font-display);
	font-size: var(--text-lg);
	font-weight: 600;
	color: #ffffff;
	margin-bottom: 4px;
	line-height: 1.4;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.tamoza-post-card-excerpt {
	font-size: var(--text-sm);
	color: rgba(255, 255, 255, 0.5);
	line-height: 1.5;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* Action Button */
.tamoza-post-card-action {
	flex: 0 0 auto;
}

.tamoza-btn-gradient {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 10px 24px;
	background: var(--accent-gradient);
	border: none;
	border-radius: var(--radius-pill);
	color: #ffffff;
	font-family: var(--font-body);
	font-size: var(--text-sm);
	font-weight: 600;
	cursor: pointer;
	text-decoration: none;
	transition: var(--transition-base);
	white-space: nowrap;
}

.tamoza-btn-gradient:hover {
	box-shadow: var(--shadow-glow-hover);
	transform: translateY(-1px);
	color: #ffffff;
}

.tamoza-btn-gradient svg {
	width: 14px;
	height: 14px;
	fill: currentColor;
}

/* ============================================
   BUTTON VARIANTS — For use in post content
   ============================================ */

/* Outline Button — glass border, transparent bg */
.tamoza-btn-outline {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 10px 24px;
	background: rgba(255, 255, 255, 0.04);
	border: 1px solid rgba(99, 102, 241, 0.4);
	border-radius: var(--radius-pill);
	color: rgba(255, 255, 255, 0.85);
	font-family: var(--font-body);
	font-size: var(--text-sm);
	font-weight: 600;
	cursor: pointer;
	text-decoration: none;
	transition: var(--transition-base);
	white-space: nowrap;
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
}
.tamoza-btn-outline:hover {
	background: rgba(99, 102, 241, 0.12);
	border-color: rgba(99, 102, 241, 0.6);
	color: #fff;
	transform: translateY(-1px);
	box-shadow: 0 4px 16px rgba(99, 102, 241, 0.15);
}
.tamoza-btn-outline svg {
	width: 14px;
	height: 14px;
	fill: currentColor;
}

/* Ghost Button — minimal, text only with hover bg */
.tamoza-btn-ghost {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 10px 24px;
	background: transparent;
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: var(--radius-pill);
	color: rgba(255, 255, 255, 0.65);
	font-family: var(--font-body);
	font-size: var(--text-sm);
	font-weight: 600;
	cursor: pointer;
	text-decoration: none;
	transition: var(--transition-base);
	white-space: nowrap;
}
.tamoza-btn-ghost:hover {
	background: rgba(255, 255, 255, 0.06);
	border-color: rgba(255, 255, 255, 0.2);
	color: rgba(255, 255, 255, 0.9);
}
.tamoza-btn-ghost svg {
	width: 14px;
	height: 14px;
	fill: currentColor;
}

/* Ensure buttons inside post content are properly spaced */
.entry-content .tamoza-btn-gradient,
.entry-content .tamoza-btn-outline,
.entry-content .tamoza-btn-ghost {
	margin: 8px 4px;
}

/* ============================================
   SIDEBAR
   ============================================ */
/* Hide search widget inside sidebar — search is only on front page */
.tamoza-sidebar .widget_search,
.tamoza-sidebar .search-form {
	display: none !important;
}

.tamoza-sidebar-widget {
	background: var(--glass-bg);
	backdrop-filter: var(--glass-blur);
	-webkit-backdrop-filter: var(--glass-blur);
	border: 1px solid var(--glass-border);
	border-radius: var(--radius-md);
	padding: var(--space-3);
	margin-bottom: var(--space-3);
	box-shadow: var(--shadow-card);
}

.tamoza-sidebar-widget-title {
	font-family: var(--font-display);
	font-size: var(--text-lg);
	font-weight: 600;
	color: #ffffff;
	margin-bottom: var(--space-2);
	padding-bottom: var(--space-1);
	border-bottom: 1px solid var(--glass-border);
	display: flex;
	align-items: center;
	gap: 8px;
}

.tamoza-sidebar-widget-title::before {
	content: '';
	width: 4px;
	height: 20px;
	background: var(--accent-gradient);
	border-radius: var(--radius-pill);
}

/* Recent Posts Widget */
.tamoza-recent-posts {
	list-style: none;
	padding: 0;
	margin: 0;
}

.tamoza-recent-posts li {
	padding: 12px 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.tamoza-recent-posts li:last-child {
	border-bottom: none;
	padding-bottom: 0;
}

.tamoza-recent-posts li:first-child {
	padding-top: 0;
}

.tamoza-recent-post-link {
	display: block;
	text-decoration: none;
	padding: 8px;
	border-radius: var(--radius-md);
	transition: all 0.2s ease;
	position: relative;
	border: 1px solid transparent;
}

.tamoza-recent-post-link:hover {
	background: var(--glass-bg-hover);
	border-color: var(--glass-border);
	transform: translateX(4px);
	box-shadow: 0 0 12px rgba(99, 102, 241, 0.08);
}

/* Category Tag (hollow outlined box) — Line 1 */
.tamoza-recent-post-tag {
	display: inline-block;
	font-size: 11px;
	font-weight: 600;
	color: var(--accent-end);
	border: 1px solid rgba(34, 211, 238, 0.3);
	padding: 3px 10px;
	border-radius: var(--radius-sm);
	letter-spacing: 0.02em;
	line-height: 1.4;
	margin-bottom: 8px;
	background: transparent;
	transition: all 0.2s ease;
}

.tamoza-recent-post-link:hover .tamoza-recent-post-tag {
	border-color: rgba(34, 211, 238, 0.6);
	color: #ffffff;
}

.tamoza-recent-post-tag--fallback {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: rgba(255, 255, 255, 0.3);
	border-color: rgba(255, 255, 255, 0.12);
	padding: 3px;
}

.tamoza-recent-post-link:hover .tamoza-recent-post-tag--fallback {
	color: rgba(255, 255, 255, 0.5);
	border-color: rgba(255, 255, 255, 0.25);
}

/* Post Title — Line 2 */
.tamoza-recent-post-title {
	color: rgba(255, 255, 255, 0.85);
	font-size: var(--text-sm);
	font-weight: 500;
	line-height: 1.5;
	display: block;
	transition: color 0.2s ease;
}

.tamoza-recent-post-link:hover .tamoza-recent-post-title {
	color: #ffffff;
}

/* Recent Comments Widget */
.tamoza-recent-comments {
	list-style: none;
	padding: 0;
	margin: 0;
}

.tamoza-recent-comments li {
	padding: 12px 8px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.05);
	border-radius: var(--radius-md);
	transition: all 0.2s ease;
	border: 1px solid transparent;
	border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.tamoza-recent-comments li:hover {
	background: var(--glass-bg-hover);
	border-color: var(--glass-border);
	transform: translateX(4px);
	box-shadow: 0 0 12px rgba(99, 102, 241, 0.08);
}

.tamoza-recent-comments li:last-child {
	border-bottom: none;
	padding-bottom: 0;
}

.tamoza-recent-comments li:first-child {
	padding-top: 0;
}

.tamoza-recent-comments .comment-header {
	display: flex;
	align-items: center;
	font-size: var(--text-xs);
	margin-bottom: 4px;
}

/* Universal widget title style — applies to ALL widgets in sidebar/footer */
.tamoza-sidebar-widget .widget-title,
.tamoza-footer-widget .widget-title,
.tamoza-sidebar-widget-title,
.tamoza-footer-widget-title {
	font-family: var(--font-display) !important;
	font-size: var(--text-lg) !important;
	font-weight: 600 !important;
	color: #ffffff !important;
	margin-bottom: var(--space-2) !important;
	padding-bottom: var(--space-1) !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
	display: flex !important;
	align-items: center !important;
	gap: 8px !important;
}

.tamoza-sidebar-widget .widget-title::before,
.tamoza-footer-widget .widget-title::before,
.tamoza-sidebar-widget-title::before,
.tamoza-footer-widget-title::before {
	content: '' !important;
	width: 4px !important;
	height: 20px !important;
	background: var(--accent-gradient) !important;
	border-radius: var(--radius-pill) !important;
	flex-shrink: 0 !important;
}

/* Comment Author — plain text, no border */
.tamoza-recent-comments .comment-author-name {
	display: block;
	color: var(--accent-end);
	font-weight: 600;
	font-size: 12px;
	margin-bottom: 6px;
	letter-spacing: 0.02em;
}

/* Comment Post Title — single line with ellipsis */
.tamoza-recent-comments .comment-post-title {
	display: block;
	color: rgba(255, 255, 255, 0.85);
	text-decoration: none;
	font-size: var(--text-sm);
	font-weight: 500;
	line-height: 1.5;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	transition: color 0.2s ease;
}

.tamoza-recent-comments .comment-post-title:hover {
	color: #ffffff;
}

.tamoza-recent-comments li:hover .comment-post-title {
	color: #ffffff;
}

.tamoza-recent-comments li:hover .comment-excerpt,
.tamoza-recent-comments li:hover .comment-excerpt a {
	color: rgba(255, 255, 255, 0.6);
}

.tamoza-recent-comments .comment-excerpt {
	font-size: 12px;
	color: rgba(255, 255, 255, 0.45);
	line-height: 1.5;
	margin-top: 4px;
	font-style: italic;
}

.tamoza-recent-comments .comment-excerpt a {
	color: rgba(255, 255, 255, 0.45);
	text-decoration: none;
	transition: color 0.2s ease;
}

.tamoza-recent-comments .comment-excerpt a:hover {
	color: rgba(255, 255, 255, 0.75);
}

.tamoza-recent-comments .comment-text {
	font-size: var(--text-sm);
	color: rgba(255, 255, 255, 0.6);
	margin-top: 4px;
	line-height: 1.5;
}

.tamoza-recent-comments .comment-text a {
	color: rgba(255, 255, 255, 0.8);
}

/* Category/Tag badges */
.tamoza-categories-list,
.tamoza-tags-list {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	list-style: none;
	padding: 0;
	margin: 0;
}

.tamoza-category-badge,
.tamoza-tag-badge {
	display: inline-block;
	padding: 5px 14px;
	background: transparent;
	border: 1px solid var(--glass-border);
	border-radius: var(--radius-pill);
	font-size: var(--text-xs);
	font-weight: 500;
	color: rgba(255, 255, 255, 0.6);
	text-decoration: none;
	transition: var(--transition-base);
}

.tamoza-category-badge:hover,
.tamoza-tag-badge:hover {
	border-color: var(--accent-end);
	color: var(--accent-end);
	background: rgba(34, 211, 238, 0.06);
	transform: translateY(-1px);
}

/* ============================================
   FOOTER
   ============================================ */
.tamoza-footer {
	background: rgba(18, 18, 18, 0.8);
	backdrop-filter: var(--glass-blur);
	-webkit-backdrop-filter: var(--glass-blur);
	border-top: 1px solid var(--glass-border);
	padding: var(--space-2) 0;
	position: relative;
	z-index: 1;
}

.tamoza-footer-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	max-width: var(--container-max);
	margin: 0 auto;
	padding: 0 var(--space-3);
	gap: var(--space-2);
}

.tamoza-footer .tamoza-social-links {
	display: flex;
	align-items: center;
	gap: 12px;
}

.tamoza-footer .tamoza-social-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	color: rgba(255, 255, 255, 0.5);
	transition: color 250ms cubic-bezier(0.4, 0, 0.2, 1);
}

.tamoza-footer .tamoza-social-link:hover {
	color: #22D3EE;
}

.tamoza-footer .tamoza-social-link svg {
	width: 18px;
	height: 18px;
}

.tamoza-footer-section {
	display: flex;
	align-items: center;
}

.tamoza-footer-site-name {
	font-family: "SF Pro Text", -apple-system, BlinkMacSystemFont, "Helvetica Neue", sans-serif;
	font-size: 18px;
	font-weight: 600;
	color: #ffffff;
	letter-spacing: -0.01em;
}

.copyright-text {
	font-family: "SF Pro Text", -apple-system, BlinkMacSystemFont, "Helvetica Neue", sans-serif;
	font-size: var(--text-sm);
	color: rgba(255, 255, 255, 0.4);
}

/* ============================================
   SINGLE POST
   ============================================ */
.tamoza-single-post {
	background: var(--glass-bg);
	backdrop-filter: var(--glass-blur);
	-webkit-backdrop-filter: var(--glass-blur);
	border: 1px solid var(--glass-border);
	border-radius: var(--radius-md);
	padding: var(--space-5);
	box-shadow: var(--shadow-card);
}

.tamoza-single-post .entry-header {
	margin-bottom: var(--space-4);
}

.tamoza-single-post .entry-title {
	font-size: var(--text-3xl);
	margin-bottom: var(--space-2);
}

.tamoza-single-post .entry-meta {
	display: flex;
	align-items: center;
	gap: var(--space-1);
	font-size: var(--text-sm);
	color: rgba(255, 255, 255, 0.5);
}

.tamoza-single-post .entry-content {
	font-size: var(--text-base);
	line-height: 1.8;
	color: rgba(255, 255, 255, 0.8);
}

.tamoza-single-post .entry-content p {
	margin-bottom: var(--space-3);
}

.tamoza-single-post .entry-content h2,
.tamoza-single-post .entry-content h3 {
	margin-top: var(--space-4);
	margin-bottom: var(--space-2);
}

.tamoza-single-post .entry-content a {
	color: var(--accent-end);
	text-decoration: underline;
	text-underline-offset: 3px;
}

.tamoza-single-post .entry-content img {
	border-radius: var(--radius-md);
	margin: var(--space-3) 0;
}

.tamoza-single-post .featured-image {
	width: 100%;
	max-height: 360px;
	border-radius: var(--radius-md);
	overflow: hidden;
	margin-bottom: var(--space-4);
}

.tamoza-single-post .featured-image img {
	width: 100%;
	height: 100%;
	max-height: 360px;
	object-fit: cover;
}

/* ============================================
   404 PAGE
   ============================================ */
.tamoza-404 {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	min-height: 60vh;
}

.tamoza-404-code {
	font-family: var(--font-display);
	font-size: 8rem;
	font-weight: 700;
	background: var(--accent-gradient);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
	line-height: 1;
	margin-bottom: var(--space-3);
}

.tamoza-404-title {
	font-size: var(--text-2xl);
	margin-bottom: var(--space-2);
}

.tamoza-404-text {
	color: rgba(255, 255, 255, 0.5);
	margin-bottom: var(--space-4);
	max-width: 400px;
}

/* ============================================
   PAGINATION
   ============================================ */
.tamoza-pagination {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: var(--space-1);
	margin-top: var(--space-5);
}

.tamoza-pagination a,
.tamoza-pagination span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 40px;
	height: 40px;
	padding: 0 12px;
	border-radius: var(--radius-sm);
	font-size: var(--text-sm);
	font-weight: 500;
	transition: var(--transition-base);
	text-decoration: none;
}

.tamoza-pagination a {
	background: var(--glass-bg);
	border: 1px solid var(--glass-border);
	color: rgba(255, 255, 255, 0.7);
}

.tamoza-pagination a:hover {
	background: var(--glass-bg-hover);
	border-color: var(--glass-border-hover);
	color: #ffffff;
}

.tamoza-pagination .current {
	background: var(--accent-gradient);
	color: #ffffff;
	border: none;
}

/* ============================================
   COMMENTS
   ============================================ */
.tamoza-comments-area {
	margin-top: var(--space-5);
}

.tamoza-comments-title {
	font-size: var(--text-xl);
	margin-bottom: var(--space-3);
}

.comment-list {
	list-style: none;
	padding: 0;
}

.comment {
	padding: var(--space-3);
	margin-bottom: var(--space-2);
	background: var(--glass-bg);
	backdrop-filter: var(--glass-blur);
	-webkit-backdrop-filter: var(--glass-blur);
	border: 1px solid var(--glass-border);
	border-radius: var(--radius-md);
}

.comment-author {
	font-weight: 600;
	color: #ffffff;
	font-size: var(--text-sm);
}

.comment-content {
	margin-top: var(--space-1);
	color: rgba(255, 255, 255, 0.7);
	font-size: var(--text-sm);
	line-height: 1.6;
}

/* ============================================
   COMPACT COMMENT MODE
   ============================================ */
.tamoza-comment-compact.tamoza-comment-glass {
	padding: 12px !important;
	margin-bottom: 8px !important;
}
.tamoza-comment-compact .tamoza-comment-body {
	display: flex;
	gap: 10px;
	align-items: flex-start;
}
.tamoza-comment-compact .tamoza-comment-avatar img {
	width: 32px !important;
	height: 32px !important;
}
.tamoza-comment-compact .tamoza-comment-header {
	gap: 8px !important;
	margin-bottom: 6px !important;
}
.tamoza-comment-compact .tamoza-comment-author {
	font-size: 13px !important;
}
.tamoza-comment-compact .tamoza-comment-time {
	font-size: 11px !important;
}
.tamoza-comment-compact .tamoza-comment-text {
	margin-top: 6px !important;
	font-size: 13px !important;
	line-height: 1.5 !important;
}
.tamoza-comment-compact .tamoza-comment-actions {
	margin-top: 8px !important;
	gap: 10px !important;
}
.tamoza-comment-compact .tamoza-comment-actions a,
.tamoza-comment-compact .comment-reply-link,
.tamoza-comment-compact .comment-edit-link {
	font-size: 11px !important;
	padding: 3px 8px !important;
}
.tamoza-comment-compact .children {
	margin-top: 12px !important;
	margin-left: 20px !important;
}

/* Load More Comments button */
.tamoza-load-more-comments {
	padding: 10px 24px !important;
	font-size: 13px !important;
}
.tamoza-comments-load-more {
	transition: all 0.3s ease;
}

/* ============================================
   COMMENT FORM
   ============================================ */
.tamoza-comment-form {
	padding: var(--space-4);
	background: var(--glass-bg);
	backdrop-filter: blur(16px);
	-webkit-backdrop-filter: blur(16px);
	border: 1px solid var(--glass-border);
	border-radius: var(--radius-md);
	margin-top: var(--space-4);
}

.tamoza-comment-reply-title {
	font-size: var(--text-lg);
	font-weight: 600;
	color: #ffffff;
	margin-bottom: var(--space-3);
	padding-bottom: var(--space-2);
	border-bottom: 1px solid var(--glass-border);
}

.tamoza-comment-notes {
	font-size: var(--text-sm);
	color: rgba(255, 255, 255, 0.45);
	margin-bottom: var(--space-3);
}

.tamoza-comment-form-textarea textarea {
	width: 100%;
	background: rgba(255, 255, 255, 0.04);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: var(--radius-sm);
	padding: 14px 16px;
	color: rgba(255, 255, 255, 0.87);
	font-family: var(--font-body);
	font-size: var(--text-sm);
	line-height: 1.6;
	resize: vertical;
	min-height: 120px;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	outline: none;
}

.tamoza-comment-form-textarea textarea::placeholder {
	color: rgba(255, 255, 255, 0.3);
}

.tamoza-comment-form-textarea textarea:focus {
	border-color: var(--accent-start);
	box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.15), 0 0 20px rgba(99, 102, 241, 0.1);
	background: rgba(255, 255, 255, 0.07);
}

.tamoza-comment-form-fields {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: var(--space-2);
	margin-top: var(--space-3);
}

.tamoza-comment-form-field input {
	width: 100%;
	background: rgba(255, 255, 255, 0.04);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: var(--radius-sm);
	padding: 12px 14px;
	color: rgba(255, 255, 255, 0.87);
	font-family: var(--font-body);
	font-size: var(--text-sm);
	outline: none;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.tamoza-comment-form-field input::placeholder {
	color: rgba(255, 255, 255, 0.3);
}

.tamoza-comment-form-field input:focus {
	border-color: var(--accent-start);
	box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.15), 0 0 20px rgba(99, 102, 241, 0.1);
	background: rgba(255, 255, 255, 0.07);
}

/* Cookies consent checkbox */
.comment-form-cookies-consent {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-top: var(--space-3);
	font-size: var(--text-sm);
	color: rgba(255, 255, 255, 0.5);
}

.comment-form-cookies-consent input[type="checkbox"] {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	width: 18px;
	height: 18px;
	min-width: 18px;
	border: 1px solid rgba(255, 255, 255, 0.2);
	border-radius: 4px;
	background: rgba(255, 255, 255, 0.05);
	cursor: pointer;
	position: relative;
	transition: all 0.2s ease;
}

.comment-form-cookies-consent input[type="checkbox"]:checked {
	background: var(--accent-gradient);
	border-color: var(--accent-start);
}

.comment-form-cookies-consent input[type="checkbox"]:checked::after {
	content: '✓';
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	color: #ffffff;
	font-size: 12px;
	font-weight: 700;
}

.comment-form-cookies-consent input[type="checkbox"]:hover {
	border-color: rgba(255, 255, 255, 0.4);
}

.comment-form-cookies-consent label {
	cursor: pointer;
	line-height: 1.4;
}

/* Form submit area */
.tamoza-comment-form .form-submit {
	margin-top: var(--space-3);
	margin-bottom: 0;
	display: flex;
	justify-content: flex-end;
}

.tamoza-comment-form .tamoza-btn-gradient {
	padding: 12px 28px;
	font-size: var(--text-sm);
	border-radius: var(--radius-pill);
}

/* Responsive: stack fields on mobile */
@media (max-width: 768px) {
	.tamoza-comment-form-fields {
		grid-template-columns: 1fr;
	}
}

/* ============================================
   SINGLE POST — CSS CLASSES (replaces inline styles)
   ============================================ */

/* Breadcrumbs */
.tamoza-breadcrumbs {
	margin-bottom: var(--space-4);
	font-size: 13px;
	color: rgba(255, 255, 255, 0.45);
}
.tamoza-breadcrumb-link {
	color: rgba(255, 255, 255, 0.5);
	text-decoration: none;
}
.tamoza-breadcrumb-link:hover {
	color: rgba(255, 255, 255, 0.8);
}
.tamoza-breadcrumb-sep {
	margin: 0 6px;
	opacity: 0.3;
}
.tamoza-breadcrumb-current {
	color: rgba(255, 255, 255, 0.7);
}

/* Meta separator */
.tamoza-meta-sep {
	color: rgba(255, 255, 255, 0.2);
}

/* Updated date */
.tamoza-updated-date {
	color: rgba(255, 255, 255, 0.45);
	font-size: 12px;
}

/* Entry footer */
.entry-footer {
	margin-top: var(--space-4);
	padding-top: var(--space-3);
	border-top: 1px solid var(--glass-border);
}

.tamoza-tags-list {
	margin-bottom: var(--space-3);
}

/* Post navigation */
.tamoza-post-nav {
	display: flex;
	justify-content: space-between;
	gap: var(--space-3);
	margin-top: var(--space-4);
	padding-top: var(--space-4);
	border-top: 1px solid var(--glass-border);
}

.tamoza-post-nav-btn {
	flex: 1;
	max-width: 50%;
	padding: var(--space-3) var(--space-4);
	background: var(--glass-bg);
	border: 1px solid var(--glass-border);
	border-radius: 12px;
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	transition: all 0.3s ease;
	box-sizing: border-box;
	display: flex;
	align-items: center;
}

.tamoza-post-nav-btn:hover {
	background: var(--glass-bg-hover);
	border-color: var(--glass-border-hover);
	transform: translateY(-1px);
}

.tamoza-post-nav-btn:first-child {
	justify-content: flex-start;
	text-align: left;
}

.tamoza-post-nav-btn:last-child {
	justify-content: flex-end;
	text-align: right;
}

.tamoza-post-nav-btn a {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: rgba(255, 255, 255, 0.85);
	text-decoration: none;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.4;
	max-width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.tamoza-post-nav-btn a:hover {
	color: #ffffff;
}

@media (max-width: 768px) {
	.tamoza-post-nav {
		flex-direction: column;
		gap: var(--space-2);
	}

	.tamoza-post-nav-btn {
		max-width: 100%;
	}
}

/* Author Bio */
.tamoza-author-bio {
	margin-top: var(--space-6, 48px);
	padding: var(--space-4, 24px);
	background: rgba(255, 255, 255, 0.05);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 16px;
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	box-sizing: border-box;
}

.tamoza-author-bio-header {
	display: flex;
	align-items: center;
	gap: 16px;
	margin-bottom: 16px;
}

.tamoza-author-bio-header img {
	border-radius: 50%;
	border: 2px solid rgba(99, 102, 241, 0.3);
	flex-shrink: 0;
}

.tamoza-author-bio-info {
	display: flex;
	flex-direction: column;
	gap: 4px;
	min-width: 0;
}

.tamoza-author-bio-name {
	font-weight: 600;
	color: #ffffff;
	font-size: 15px;
	line-height: 1.3;
}

.tamoza-author-bio-url {
	font-size: 12px;
	color: rgba(255, 255, 255, 0.4);
	text-decoration: none;
	word-break: break-all;
}

.tamoza-author-bio-url:hover {
	color: rgba(255, 255, 255, 0.7);
}

.tamoza-author-bio-text {
	color: rgba(255, 255, 255, 0.6);
	font-size: 14px;
	line-height: 1.7;
	margin: 0;
}

/* Related Posts */
.tamoza-related-posts {
	margin-top: var(--space-6);
}

.tamoza-related-posts-title {
	font-size: 18px;
	font-weight: 600;
	color: #ffffff;
	margin-bottom: var(--space-3);
}

.tamoza-related-posts-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
	gap: var(--space-3);
}

.tamoza-related-card {
	display: block;
	padding: var(--space-3);
	background: var(--glass-bg);
	border: 1px solid var(--glass-border);
	border-radius: 12px;
	text-decoration: none;
	transition: all 0.3s ease;
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
}

.tamoza-related-card:hover {
	border-color: var(--glass-border-hover);
	background: var(--glass-bg-hover);
	transform: translateY(-2px);
}

.tamoza-related-card-thumb {
	margin-bottom: 8px;
	border-radius: 8px;
	overflow: hidden;
}

.tamoza-related-card-img {
	width: 100%;
	height: 120px;
	object-fit: cover;
	display: block;
}

.tamoza-related-card-title {
	font-size: 14px;
	font-weight: 500;
	color: rgba(255, 255, 255, 0.85);
	line-height: 1.4;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.tamoza-related-card-date {
	font-size: 11px;
	color: rgba(255, 255, 255, 0.35);
	margin-top: 4px;
	display: block;
}

/* ============================================
   RESPONSIVE (Static Header)
   ============================================ */
@media (max-width: 1024px) {
	.tamoza-layout {
		flex-direction: column;
	}

	.tamoza-main,
	.tamoza-sidebar {
		flex: 0 0 100%;
		max-width: 100%;
	}
}

@media (max-width: 768px) {
	.tamoza-logo-text {
		font-size: var(--text-base);
	}

	.tamoza-nav > ul {
		flex-wrap: nowrap;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		padding-bottom: 4px;
	}

	.tamoza-post-card {
		flex-direction: column;
		align-items: flex-start;
	}

	.tamoza-post-card-thumb {
		flex: 0 0 60px;
		width: 60px;
		height: 60px;
	}

	.tamoza-post-card-action {
		align-self: flex-end;
	}

	.tamoza-footer-inner {
		flex-direction: column;
		gap: var(--space-2);
		text-align: center;
	}
}

@media (max-width: 480px) {
	:root {
		--text-4xl: 2rem;
		--text-3xl: 1.5rem;
	}

	.tamoza-post-card-title {
		font-size: var(--text-base);
	}

	.tamoza-btn-gradient {
		padding: 8px 16px;
		font-size: var(--text-xs);
	}
}

/* ============================================
   ACCESSIBILITY — Screen Reader Text
   ============================================ */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}
.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 0.875rem;
	font-weight: 700;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}

/* ========================================
   CODE BLOCK — Tamoza Glassmorphism
   ======================================== */
.wp-block-code {
	position: relative;
	margin: 1.5rem 0;
	background: rgba(255, 255, 255, 0.05);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 12px;
	overflow: hidden;
	padding: 0;
	direction: ltr;
}
.wp-block-code .copy-button,
.wp-block-code button[aria-label="Copy"] {
	display: none !important;
}
.wp-block-code code {
	display: block;
	padding: 12px 16px;
	font-family: "SF Mono", "Fira Code", "Cascadia Code", "Consolas", monospace;
	font-size: 0.8125rem;
	line-height: 1.5;
	color: rgba(255, 255, 255, 0.85);
	white-space: pre;
	overflow-x: auto;
	background: none !important;
	border: none !important;
}

/* Line Numbers */
.tamoza-code-lines {
	position: absolute;
	top: 0;
	left: 0;
	width: 40px;
	padding: 12px 0;
	text-align: right;
	user-select: none;
	border-right: 1px solid rgba(255, 255, 255, 0.06);
	background: rgba(255, 255, 255, 0.02);
	z-index: 1;
}
.tamoza-code-lines span {
	display: block;
	padding: 0 8px;
	font-family: "SF Mono", "Fira Code", "Cascadia Code", "Consolas", monospace;
	font-size: 0.75rem;
	line-height: 1.5;
	color: rgba(255, 255, 255, 0.15);
}
.wp-block-code.has-line-numbers code {
	padding-left: 52px;
}
