/* ============================================================
   FRONT PAGE ENHANCEMENTS - Contact Info & Contrast Fixes
   ============================================================ */

/* Pulse Dot for Active Status */
.pulse-dot {
	display: inline-block;
	width: 8px;
	height: 8px;
	background: #4caf50;
	border-radius: 50%;
	margin-right: 6px;
	animation: pulse-green 2s infinite;
	box-shadow: 0 0 0 0 rgba(76, 175, 80, 0.7);
}



/* Contact Details Block */
.contact-details {
	margin-top: 12px;
	padding-top: 12px;
	border-top: 1px solid rgba(255, 255, 255, 0.2);
}

.contact-row {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	margin-bottom: 8px;
	font-size: 0.95rem;
	color: rgba(255, 255, 255, 0.95);
}

.contact-icon {
	flex-shrink: 0;
	font-size: 1rem;
	opacity: 0.9;
}

.contact-hours-row {
	align-items: flex-start;
}

.contact-hours-details {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.hours-line {
	display: flex;
	gap: 8px;
}

.hours-label {
	font-weight: 500;
	min-width: 35px;
	color: rgba(255, 255, 255, 0.8);
}

.hours-value {
	color: rgba(255, 255, 255, 0.95);
}

.hours-closed .hours-value {
	color: #ff8a80;
	font-weight: 500;
}

/* Enhanced Contact Phone Label */
.contact-phone-label {
	font-size: 0.8rem;
	opacity: 0.9;
	display: flex;
	align-items: center;
	gap: 4px;
	flex-wrap: wrap;
}

/* Contrast Improvements for Light Theme */
:root {
	/* Enhanced text colors for better contrast */
	--med-text: #1a1a1a;
	--med-text-light: #4a4a4a;
	--med-text-muted: #666666;
	--med-text-subtle: #757575;
	
	/* Stronger primary for better contrast */
	--med-primary: #5568d3;
	--med-primary-dark: #3f4fa3;
	--med-secondary: #5a3a7a;
	
	/* Border with better contrast */
	--med-border: #b0b0b0;
	--med-border-light: #d0d0d0;
}

/* Enhanced Card Contrast */
.med-card {
	background: #ffffff;
	border: 1px solid var(--med-border-light);
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

.med-card-title,
.feature-title,
.quick-service-title-sm {
	color: var(--med-text);
	font-weight: 600;
}

.med-card-text,
.feature-desc,
.quick-service-desc-sm {
	color: var(--med-text-light);
}

/* Service Card Price - Better Contrast */
.service-card-price {
	color: var(--med-primary-dark);
	font-weight: 700;
}

/* Doctor Card Enhancements */
.doctor-position-sm {
	color: var(--med-primary-dark);
	font-weight: 600;
}

.doctor-specialty-sm {
	color: var(--med-text-light);
}

/* Review Card Contrast */
.review-author-sm {
	color: var(--med-text);
	font-weight: 600;
}

.review-text-sm {
	color: var(--med-text-light);
}

/* FAQ Content */
.faq-content {
	color: var(--med-text-light);
	line-height: 1.7;
}

/* Links with Better Contrast */
.med-link,
.read-more,
.entry-content a {
	color: var(--med-primary-dark);
	text-decoration: underline;
	text-underline-offset: 0.2em;
}

.med-link:hover,
.read-more:hover,
.entry-content a:hover {
	color: var(--med-secondary);
}

/* Button Text Contrast */
.med-btn {
	font-weight: 600;
}

.med-btn-primary {
	background: var(--med-primary-dark);
}

/* Dark Mode Contrast Improvements */
@media (prefers-color-scheme: dark) {
	:root {
		/* Dark theme with better contrast */
		--med-text: #ffffff;
		--med-text-light: #e0e0e0;
		--med-text-muted: #b0b0b0;
		--med-text-subtle: #909090;
		
		/* Lighter primary for dark backgrounds */
		--med-primary: #7b8ef5;
		--med-primary-dark: #9aaaf8;
		--med-secondary: #b794d4;
		
		/* Borders with better visibility */
		--med-border: #4a4a6a;
		--med-border-light: #3a3a5a;
		
		/* Backgrounds */
		--med-bg: #0f0f1a;
		--med-bg-light: #1a1a2e;
		--med-bg-gray: #151525;
	}
	
	/* Body background */
	body {
		background-color: var(--med-bg);
		color: var(--med-text);
	}
	
	/* Cards in dark mode */
	.med-card,
	.doctor-card,
	.review-card-sm,
	.quick-service-card {
		background: var(--med-bg-light);
		border-color: var(--med-border);
	}
	
	/* Service card popular badge in dark mode */
	.service-popular-badge {
		box-shadow: 0 4px 15px rgba(255, 107, 107, 0.5);
	}
	
	/* Text colors in dark mode */
	.med-card-title,
	.feature-title,
	.quick-service-title-sm,
	.doctor-name-sm,
	.review-author-sm {
		color: var(--med-text);
	}
	
	.med-card-text,
	.feature-desc,
	.quick-service-desc-sm,
	.doctor-specialty-sm,
	.review-text-sm {
		color: var(--med-text-light);
	}
	
	/* Price in dark mode - brighter for contrast */
	.service-card-price {
		color: var(--med-primary);
	}
	
	/* Position in dark mode */
	.doctor-position-sm {
		color: var(--med-primary);
	}
	
	/* Links in dark mode */
	.med-link,
	.read-more,
	.entry-content a,
	.quick-service-title-sm a {
		color: var(--med-primary);
	}
	
	.med-link:hover,
	.read-more:hover,
	.entry-content a:hover {
		color: var(--med-secondary);
	}
	
	/* FAQ in dark mode */
	.faq-content {
		color: var(--med-text-light);
	}
	
	/* Meta text */
	.med-text-muted,
	.review-footer-sm,
	.hours-label {
		color: var(--med-text-muted);
	}
	
	/* Section backgrounds */
	.section-bg-white {
		background: var(--med-bg);
	}
	
	.section-bg-gray {
		background: var(--med-bg-gray);
	}
	
	/* Glass panel adjustments */
	.glass-panel {
		background: rgba(30, 30, 50, 0.85);
		border-color: rgba(255, 255, 255, 0.1);
	}
	
	/* Form elements */
	input,
	textarea,
	select,
	.astra-child-search-input {
		background: var(--med-bg);
		color: var(--med-text);
		border-color: var(--med-border);
	}
	
	input::placeholder,
	textarea::placeholder {
		color: var(--med-text-muted);
	}
	
	/* Status badges */
	.med-status-open {
		background: rgba(76, 175, 80, 0.2);
		color: #81c784;
		border: 1px solid rgba(76, 175, 80, 0.3);
	}
	
	.med-status-closed {
		background: rgba(244, 67, 54, 0.2);
		color: #e57373;
		border: 1px solid rgba(244, 67, 54, 0.3);
	}
	
	/* Contact hours in dark mode */
	.contact-row {
		color: rgba(255, 255, 255, 0.95);
	}
	
	.hours-label {
		color: rgba(255, 255, 255, 0.7);
	}
	
	.hours-value {
		color: rgba(255, 255, 255, 0.95);
	}
	
	/* Alert backgrounds */
	.med-alert-info {
		background: rgba(33, 150, 243, 0.1);
		border-left-color: var(--med-primary);
	}
	
	/* Service card hover */
	.service-card-mini:hover {
		border-color: var(--med-primary);
	}
	
	/* Step items */
	.step-item {
		background: var(--med-bg-light);
		border-color: var(--med-border);
	}
	
	/* Guarantee items */
	.guarantee-item {
		background: var(--med-bg-light);
		border-color: var(--med-border);
	}
	
	.guarantee-title {
		color: var(--med-text);
	}
	
	.guarantee-desc {
		color: var(--med-text-light);
	}
}

/* Manual Dark Mode Class */
.dark-mode {
	--med-text: #ffffff;
	--med-text-light: #e0e0e0;
	--med-text-muted: #b0b0b0;
	--med-primary: #7b8ef5;
	--med-primary-dark: #9aaaf8;
	--med-secondary: #b794d4;
	--med-border: #4a4a6a;
	--med-border-light: #3a3a5a;
	--med-bg: #0f0f1a;
	--med-bg-light: #1a1a2e;
	--med-bg-gray: #151525;
}

.dark-mode body {
	background-color: var(--med-bg);
	color: var(--med-text);
}

/* Focus styles for accessibility */
*:focus-visible {
	outline: 3px solid var(--med-primary);
	outline-offset: 2px;
}

/* High Contrast Mode Support */
@media (prefers-contrast: high) {
	:root {
		--med-text: #000000;
		--med-text-light: #333333;
		--med-border: #000000;
		--med-primary: #0000ee;
		--med-primary-dark: #0000aa;
	}
	
	.med-card {
		border-width: 2px;
	}
	
	.med-btn {
		border: 2px solid currentColor;
	}
}

@media (prefers-contrast: high) and (prefers-color-scheme: dark) {
	:root {
		--med-text: #ffffff;
		--med-text-light: #ffffff;
		--med-border: #ffffff;
		--med-primary: #ffff00;
		--med-primary-dark: #ffff00;
		--med-bg: #000000;
		--med-bg-light: #000000;
	}
}
