/*
 * Zogby Theme Overrides
 * WordPress-specific styles that supplement the Tailwind base
 */

/* Font family aliases matching the source site's Tailwind config */
.font-sans {
	font-family: 'Inter', system-ui, -apple-system, sans-serif;
}

.font-heading {
	font-family: 'DM Sans', system-ui, -apple-system, sans-serif;
}

.font-mono {
	font-family: 'JetBrains Mono', ui-monospace, monospace;
}

/* Brand color aliases */
.text-primary { color: hsl(159 100% 25%); }
.bg-primary { background-color: hsl(159 100% 25%); }
.border-primary { border-color: hsl(159 100% 25%); }
.border-primary-border { border-color: hsl(159 100% 20%); }
.text-brand-navy { color: #1F2937; }
.bg-brand-navy { background-color: #1F2937; }

/* Button elevation effects from source */
.hover-elevate {
	transition: transform 0.15s ease, box-shadow 0.15s ease;
}
.hover-elevate:hover {
	transform: translateY(-1px);
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}
.active-elevate-2:active {
	transform: translateY(0);
	box-shadow: none;
}

/* WordPress admin bar fix */
body.admin-bar .sticky.top-0 {
	top: 32px;
}
@media screen and (max-width: 782px) {
	body.admin-bar .sticky.top-0 {
		top: 46px;
	}
}

/* Sticky sub-nav offset when admin bar is present */
body.admin-bar .sticky.top-16 {
	top: calc(4rem + 32px);
}
body.admin-bar .sticky.top-20 {
	top: calc(5rem + 32px);
}
@media screen and (max-width: 782px) {
	body.admin-bar .sticky.top-16 {
		top: calc(4rem + 46px);
	}
}

/* Hide scrollbar for horizontal scroll areas */
.no-scrollbar::-webkit-scrollbar {
	display: none;
}
.no-scrollbar {
	-ms-overflow-style: none;
	scrollbar-width: none;
}

/* WordPress content styling */
.entry-content a {
	color: hsl(159 100% 25%);
	text-decoration: underline;
}
.entry-content a:hover {
	opacity: 0.8;
}

/* Rating stars */
.zg-stars svg {
	display: inline-block;
}

/* Comparison table responsive */
@media (max-width: 768px) {
	.zg-comparison-table {
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}
}

/* Accordion animations */
.zg-accordion-content {
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.3s ease-out;
}
.zg-accordion-content.open {
	max-height: 2000px;
}

/* Progress bar animation */
.zg-progress-bar {
	transition: width 1s ease-out;
}

/* Card hover effects matching source */
.zg-card-hover {
	transition: box-shadow 0.2s ease, transform 0.2s ease;
}
.zg-card-hover:hover {
	box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08);
}

/* Calculator input styling */
.zg-calc-input {
	appearance: none;
	-webkit-appearance: none;
}
.zg-calc-input::-webkit-slider-thumb {
	appearance: none;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: hsl(159 100% 25%);
	cursor: pointer;
}

/* Print styles */
@media print {
	nav, footer, .no-print { display: none !important; }
	main { padding: 0 !important; }
}
