/* ===================================
   Theme System Fixes & Enhancements
   =================================== */

/* New Hero Section Theme Support */
.hero-section-modern {
  /* Always maintain the gradient background for visual impact */
  background: #2E2BE2 !important;
}

.hero-gradient {
  background: linear-gradient(135deg, #2E2BE2 0%, #4F4CE6 50%, #6B68E8 100%) !important;
}

.hero-badge,
.hero-main-title,
.hero-description,
.trust-number,
.trust-label,
.scroll-text {
  color: #FFFFFF !important;
}

.hero-badge {
  color: rgba(255, 255, 255, 0.9) !important;
}

.hero-description {
  color: rgba(255, 255, 255, 0.9) !important;
}

.trust-label {
  color: rgba(255, 255, 255, 0.7) !important;
}

.scroll-text {
  color: rgba(255, 255, 255, 0.7) !important;
}

.scroll-arrow {
  color: rgba(255, 255, 255, 0.7) !important;
}

/* Navigation theme fixes */
.navbar-modern.hero-nav .nav-link-modern {
  color: #FFFFFF !important;
}

.navbar-modern.hero-nav .nav-link-modern:hover {
  color: #FFFFFF !important;
  background: rgba(255, 255, 255, 0.2) !important;
}

.navbar-modern.hero-nav .navbar-brand-modern {
  color: #FFFFFF !important;
}

/* Scrolled hero navigation should use theme colors */
.navbar-modern.hero-nav.scrolled .nav-link-modern {
  color: var(--nav-text) !important;
}

.navbar-modern.hero-nav.scrolled .nav-link-modern:hover {
  color: var(--nav-text-hover) !important;
  background: rgba(46, 43, 226, 0.1) !important;
}

/* Ensure smooth transitions */
.navbar-modern .nav-link-modern {
  transition: all 0.3s ease !important;
}

.navbar-modern {
  transition: all 0.3s ease !important;
}

/* Section header fixes for dark mode */
.theme-dark .text-muted,
[data-theme="dark"] .text-muted {
  color: var(--text-secondary) !important;
}

.theme-dark .lead,
[data-theme="dark"] .lead {
  color: var(--text-primary) !important;
}

.theme-dark .display-3,
[data-theme="dark"] .display-3,
.theme-dark .display-4,
[data-theme="dark"] .display-4 {
  color: var(--text-primary) !important;
}

.theme-dark .text-primary-modern,
[data-theme="dark"] .text-primary-modern {
  color: var(--primary-color) !important;
}

/* Auto theme support */
@media (prefers-color-scheme: dark) {
  .theme-auto .text-muted,
  :root:not([data-theme="light"]):not(.theme-light) .text-muted {
    color: var(--text-secondary) !important;
  }

  .theme-auto .lead,
  :root:not([data-theme="light"]):not(.theme-light) .lead {
    color: var(--text-primary) !important;
  }

  .theme-auto .display-3,
  :root:not([data-theme="light"]):not(.theme-light) .display-3,
  .theme-auto .display-4,
  :root:not([data-theme="light"]):not(.theme-light) .display-4 {
    color: var(--text-primary) !important;
  }

  .theme-auto .text-primary-modern,
  :root:not([data-theme="light"]):not(.theme-light) .text-primary-modern {
    color: var(--primary-color) !important;
  }
}

/* Button fixes */
.btn-hero-secondary {
  color: #FFFFFF !important;
}

.btn-hero-secondary:hover {
  color: #FFFFFF !important;
}

.btn-cta-primary {
  background: #FFFFFF !important;
  color: #2E2BE2 !important;
  border-color: #FFFFFF !important;
}

.btn-cta-primary:hover {
  background: transparent !important;
  color: #FFFFFF !important;
  border-color: #FFFFFF !important;
}

.btn-cta-secondary {
  color: #FFFFFF !important;
}

.btn-cta-secondary:hover {
  color: #FFFFFF !important;
}

/* Floating elements in hero */
.hero-visual .position-absolute .bg-white {
  background: rgba(255, 255, 255, 0.9) !important;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

/* Theme toggle positioning */
.navbar-cta-modern {
  display: flex;
  align-items: center;
  gap: var(--spacing-sm);
}

/* Dark theme specific adjustments */
.theme-dark .bg-light,
[data-theme="dark"] .bg-light {
  background-color: var(--bg-secondary) !important;
}

.theme-dark .text-muted,
[data-theme="dark"] .text-muted {
  color: var(--text-muted) !important;
}

.theme-dark .border,
[data-theme="dark"] .border {
  border-color: var(--border-color) !important;
}

/* Auto theme media query adjustments */
@media (prefers-color-scheme: dark) {
  .theme-auto .bg-light,
  :root:not([data-theme="light"]):not(.theme-light) .bg-light {
    background-color: var(--bg-secondary) !important;
  }

  .theme-auto .text-muted,
  :root:not([data-theme="light"]):not(.theme-light) .text-muted {
    color: var(--text-muted) !important;
  }

  .theme-auto .border,
  :root:not([data-theme="light"]):not(.theme-light) .border {
    border-color: var(--border-color) !important;
  }
}

/* Ensure smooth transitions */
* {
  transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease !important;
}

/* Fix any white text on white background issues */
.text-white {
  color: #FFFFFF !important;
}

.bg-white {
  background-color: #FFFFFF !important;
}

/* New Portfolio Section Theme Fixes */
.theme-dark .portfolio-section-new,
[data-theme="dark"] .portfolio-section-new {
  background: var(--bg-primary) !important;
}

.theme-dark .portfolio-card-new,
[data-theme="dark"] .portfolio-card-new {
  background: var(--card-bg) !important;
  border-color: var(--border-color) !important;
}

.theme-dark .portfolio-main-title,
[data-theme="dark"] .portfolio-main-title {
  color: var(--text-primary) !important;
}

.theme-dark .portfolio-description,
[data-theme="dark"] .portfolio-description {
  color: var(--text-secondary) !important;
}

.theme-dark .portfolio-card-title,
[data-theme="dark"] .portfolio-card-title {
  color: var(--text-primary) !important;
}

.theme-dark .portfolio-card-text,
[data-theme="dark"] .portfolio-card-text {
  color: var(--text-secondary) !important;
}

.theme-dark .portfolio-image-wrapper,
[data-theme="dark"] .portfolio-image-wrapper {
  background: var(--bg-secondary) !important;
}

/* Auto theme portfolio fixes */
@media (prefers-color-scheme: dark) {
  .theme-auto .portfolio-section-new,
  :root:not([data-theme="light"]):not(.theme-light) .portfolio-section-new {
    background: var(--bg-primary) !important;
  }

  .theme-auto .portfolio-card-new,
  :root:not([data-theme="light"]):not(.theme-light) .portfolio-card-new {
    background: var(--card-bg) !important;
    border-color: var(--border-color) !important;
  }

  .theme-auto .portfolio-main-title,
  :root:not([data-theme="light"]):not(.theme-light) .portfolio-main-title {
    color: var(--text-primary) !important;
  }

  .theme-auto .portfolio-description,
  :root:not([data-theme="light"]):not(.theme-light) .portfolio-description {
    color: var(--text-secondary) !important;
  }

  .theme-auto .portfolio-card-title,
  :root:not([data-theme="light"]):not(.theme-light) .portfolio-card-title {
    color: var(--text-primary) !important;
  }

  .theme-auto .portfolio-card-text,
  :root:not([data-theme="light"]):not(.theme-light) .portfolio-card-text {
    color: var(--text-secondary) !important;
  }
}

/* Feature card theme fixes */
.feature-card {
  background: var(--bg-contrast);
  border-color: var(--border-color);
}

.feature-card:hover {
  border-color: var(--primary-color);
}

.feature-title {
  color: var(--text-primary);
}

.feature-description {
  color: var(--text-secondary);
}

/* Stats card theme fixes */
.stats-card {
  background: var(--bg-contrast);
  border-color: var(--border-color);
}

.stats-number {
  color: var(--primary-color);
}

.stats-label {
  color: var(--text-secondary);
}

/* Mobile responsiveness for theme toggle */
@media (max-width: 992px) {
  .theme-toggle {
    order: -1;
  }
}

/* Mobile Toggle Icon Color Fixes */
/* Light Mode - Unscrolled: Light color */
.navbar-modern.hero-nav .navbar-toggler-modern span {
  background: rgba(255, 255, 255, 0.9) !important;
}

/* Light Mode - Scrolled: Black color */
.navbar-modern.hero-nav.scrolled .navbar-toggler-modern span,
.navbar-modern:not(.hero-nav) .navbar-toggler-modern span {
  background: #000000 !important;
}

/* Dark Mode - Unscrolled: Light color */
.theme-dark .navbar-modern.hero-nav .navbar-toggler-modern span,
[data-theme="dark"] .navbar-modern.hero-nav .navbar-toggler-modern span {
  background: rgba(255, 255, 255, 0.9) !important;
}

/* Dark Mode - Scrolled: Light color */
.theme-dark .navbar-modern.hero-nav.scrolled .navbar-toggler-modern span,
[data-theme="dark"] .navbar-modern.hero-nav.scrolled .navbar-toggler-modern span,
.theme-dark .navbar-modern:not(.hero-nav) .navbar-toggler-modern span,
[data-theme="dark"] .navbar-modern:not(.hero-nav) .navbar-toggler-modern span {
  background: rgba(255, 255, 255, 0.9) !important;
}

/* Auto theme support */
@media (prefers-color-scheme: dark) {
  .theme-auto .navbar-modern.hero-nav .navbar-toggler-modern span,
  :root:not([data-theme="light"]):not(.theme-light) .navbar-modern.hero-nav .navbar-toggler-modern span {
    background: rgba(255, 255, 255, 0.9) !important;
  }

  .theme-auto .navbar-modern.hero-nav.scrolled .navbar-toggler-modern span,
  :root:not([data-theme="light"]):not(.theme-light) .navbar-modern.hero-nav.scrolled .navbar-toggler-modern span,
  .theme-auto .navbar-modern:not(.hero-nav) .navbar-toggler-modern span,
  :root:not([data-theme="light"]):not(.theme-light) .navbar-modern:not(.hero-nav) .navbar-toggler-modern span {
    background: rgba(255, 255, 255, 0.9) !important;
  }
}

/* Ensure smooth transitions for mobile toggle */
.navbar-toggler-modern span {
  transition: all 0.3s ease !important;
}

/* High contrast mode enhancements */
@media (prefers-contrast: high) {
  .hero-modern {
    background: #000080 !important;
  }

  .btn-primary-modern {
    background: #0000FF !important;
    border-color: #0000FF !important;
  }

  .feature-icon {
    background: #0000FF !important;
  }
}

/* Print mode fixes */
@media print {
  .theme-toggle {
    display: none !important;
  }

  .hero-modern {
    background: #f8f9fa !important;
    color: #000000 !important;
  }

  .hero-tagline,
  .hero-title,
  .hero-subtitle-text,
  .hero-description {
    color: #000000 !important;
  }
}

/* Focus improvements for accessibility */
.theme-toggle:focus-visible {
  outline: 3px solid var(--primary-color);
  outline-offset: 2px;
}

/* Animation performance improvements */
@media (prefers-reduced-motion: reduce) {
  .theme-toggle,
  .theme-toggle-icon {
    transition: none !important;
    animation: none !important;
  }
}

/* Additional feature card and section fixes for dark mode */
.theme-dark .feature-card,
[data-theme="dark"] .feature-card {
  background: var(--card-bg) !important;
  border-color: var(--border-color) !important;
}

.theme-dark .feature-title,
[data-theme="dark"] .feature-title {
  color: var(--text-primary) !important;
}

.theme-dark .feature-description,
[data-theme="dark"] .feature-description {
  color: var(--text-secondary) !important;
}

.theme-dark .card-modern,
[data-theme="dark"] .card-modern {
  background: var(--card-bg) !important;
  border-color: var(--border-color) !important;
}

.theme-dark .card-modern-body,
[data-theme="dark"] .card-modern-body {
  color: var(--text-primary) !important;
}

/* Auto theme feature fixes */
@media (prefers-color-scheme: dark) {
  .theme-auto .feature-card,
  :root:not([data-theme="light"]):not(.theme-light) .feature-card {
    background: var(--card-bg) !important;
    border-color: var(--border-color) !important;
  }

  .theme-auto .feature-title,
  :root:not([data-theme="light"]):not(.theme-light) .feature-title {
    color: var(--text-primary) !important;
  }

  .theme-auto .feature-description,
  :root:not([data-theme="light"]):not(.theme-light) .feature-description {
    color: var(--text-secondary) !important;
  }

  .theme-auto .card-modern,
  :root:not([data-theme="light"]):not(.theme-light) .card-modern {
    background: var(--card-bg) !important;
    border-color: var(--border-color) !important;
  }
}

/* New CTA Section Theme Fixes */
.theme-dark .cta-section-new,
[data-theme="dark"] .cta-section-new {
  background: var(--bg-contrast) !important;
  border-color: var(--border-color) !important;
}

.theme-dark .cta-title-new,
[data-theme="dark"] .cta-title-new {
  color: var(--text-primary) !important;
}

.theme-dark .cta-description-new,
[data-theme="dark"] .cta-description-new {
  color: var(--text-secondary) !important;
}

.theme-dark .cta-btn-secondary-new,
[data-theme="dark"] .cta-btn-secondary-new {
  color: var(--text-primary) !important;
  border-color: var(--border-color) !important;
}

.theme-dark .cta-btn-secondary-new:hover,
[data-theme="dark"] .cta-btn-secondary-new:hover {
  color: var(--primary-color) !important;
  border-color: var(--primary-color) !important;
}

/* Auto theme CTA fixes */
@media (prefers-color-scheme: dark) {
  .theme-auto .cta-section-new,
  :root:not([data-theme="light"]):not(.theme-light) .cta-section-new {
    background: var(--bg-contrast) !important;
    border-color: var(--border-color) !important;
  }

  .theme-auto .cta-title-new,
  :root:not([data-theme="light"]):not(.theme-light) .cta-title-new {
    color: var(--text-primary) !important;
  }

  .theme-auto .cta-description-new,
  :root:not([data-theme="light"]):not(.theme-light) .cta-description-new {
    color: var(--text-secondary) !important;
  }

  .theme-auto .cta-btn-secondary-new,
  :root:not([data-theme="light"]):not(.theme-light) .cta-btn-secondary-new {
    color: var(--text-primary) !important;
    border-color: var(--border-color) !important;
  }
}

/* New Footer Theme Fixes */
.theme-dark .footer-new,
[data-theme="dark"] .footer-new {
  background: var(--bg-contrast) !important;
  border-color: var(--border-color) !important;
}

.theme-dark .footer-main,
[data-theme="dark"] .footer-main {
  border-color: var(--border-color) !important;
}

.theme-dark .footer-bottom-new,
[data-theme="dark"] .footer-bottom-new {
  background: rgba(0, 0, 0, 0.3) !important;
  border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
}

.theme-dark .footer-description-new,
[data-theme="dark"] .footer-description-new {
  color: var(--text-secondary) !important;
}

.theme-dark .footer-column-title,
[data-theme="dark"] .footer-column-title {
  color: var(--text-primary) !important;
}

.theme-dark .footer-links-new a,
[data-theme="dark"] .footer-links-new a {
  color: var(--text-secondary) !important;
}

.theme-dark .footer-copyright,
[data-theme="dark"] .footer-copyright {
  color: rgba(255, 255, 255, 0.7) !important;
}

.theme-dark .footer-legal-links a,
[data-theme="dark"] .footer-legal-links a {
  color: rgba(255, 255, 255, 0.7) !important;
}

.theme-dark .footer-legal-links a:hover,
[data-theme="dark"] .footer-legal-links a:hover {
  color: var(--primary-color) !important;
}

.theme-dark .newsletter-form,
[data-theme="dark"] .newsletter-form {
  background: var(--bg-primary) !important;
  border-color: var(--border-color) !important;
}

.theme-dark .newsletter-input,
[data-theme="dark"] .newsletter-input {
  color: var(--text-primary) !important;
}

.theme-dark .social-link-new,
[data-theme="dark"] .social-link-new {
  background: var(--bg-primary) !important;
  border-color: var(--border-color) !important;
  color: var(--text-secondary) !important;
}

/* Auto theme footer fixes */
@media (prefers-color-scheme: dark) {
  .theme-auto .footer-new,
  :root:not([data-theme="light"]):not(.theme-light) .footer-new {
    background: var(--bg-contrast) !important;
    border-color: var(--border-color) !important;
  }

  .theme-auto .footer-main,
  :root:not([data-theme="light"]):not(.theme-light) .footer-main {
    border-color: var(--border-color) !important;
  }

  .theme-auto .footer-bottom-new,
  :root:not([data-theme="light"]):not(.theme-light) .footer-bottom-new {
    background: rgba(0, 0, 0, 0.3) !important;
    border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
  }

  .theme-auto .footer-description-new,
  :root:not([data-theme="light"]):not(.theme-light) .footer-description-new {
    color: var(--text-secondary) !important;
  }

  .theme-auto .footer-column-title,
  :root:not([data-theme="light"]):not(.theme-light) .footer-column-title {
    color: var(--text-primary) !important;
  }

  .theme-auto .footer-copyright,
  :root:not([data-theme="light"]):not(.theme-light) .footer-copyright {
    color: rgba(255, 255, 255, 0.7) !important;
  }

  .theme-auto .footer-legal-links a,
  :root:not([data-theme="light"]):not(.theme-light) .footer-legal-links a {
    color: rgba(255, 255, 255, 0.7) !important;
  }

  .theme-auto .footer-legal-links a:hover,
  :root:not([data-theme="light"]):not(.theme-light) .footer-legal-links a:hover {
    color: var(--primary-color) !important;
  }
}

/* About Page Theme Fixes */
.theme-dark .section-title,
[data-theme="dark"] .section-title {
  color: var(--text-primary) !important;
}

.theme-dark .section-description,
[data-theme="dark"] .section-description {
  color: var(--text-secondary) !important;
}

.theme-dark .story-subtitle,
[data-theme="dark"] .story-subtitle {
  color: var(--text-primary) !important;
}

.theme-dark .story-text,
[data-theme="dark"] .story-text {
  color: var(--text-secondary) !important;
}

.theme-dark .value-card,
[data-theme="dark"] .value-card {
  background: var(--card-bg) !important;
  border-color: var(--border-color) !important;
}

.theme-dark .value-title,
[data-theme="dark"] .value-title {
  color: var(--text-primary) !important;
}

.theme-dark .value-description,
[data-theme="dark"] .value-description {
  color: var(--text-secondary) !important;
}

.theme-dark .team-card,
[data-theme="dark"] .team-card {
  background: var(--card-bg) !important;
  border-color: var(--border-color) !important;
}

.theme-dark .team-name,
[data-theme="dark"] .team-name {
  color: var(--text-primary) !important;
}

.theme-dark .team-bio,
[data-theme="dark"] .team-bio {
  color: var(--text-secondary) !important;
}

.theme-dark .team-image .image-placeholder,
[data-theme="dark"] .team-image .image-placeholder {
  background: var(--bg-primary) !important;
  border-color: var(--border-color) !important;
  color: var(--text-muted) !important;
}

.theme-dark .team-social .social-link,
[data-theme="dark"] .team-social .social-link {
  background: var(--bg-secondary) !important;
  border-color: var(--border-color) !important;
  color: var(--text-secondary) !important;
}

.theme-dark .timeline-content h4,
[data-theme="dark"] .timeline-content h4 {
  color: var(--text-primary) !important;
}

.theme-dark .timeline-content p,
[data-theme="dark"] .timeline-content p {
  color: var(--text-secondary) !important;
}

/* Solutions Page Theme Fixes */
.theme-dark .solution-card,
[data-theme="dark"] .solution-card {
  background: var(--card-bg) !important;
  border-color: var(--border-color) !important;
}

.theme-dark .solution-title,
[data-theme="dark"] .solution-title {
  color: var(--text-primary) !important;
}

.theme-dark .solution-description,
[data-theme="dark"] .solution-description {
  color: var(--text-secondary) !important;
}

.theme-dark .solution-features li,
[data-theme="dark"] .solution-features li {
  color: var(--text-secondary) !important;
}

.theme-dark .tech-tag,
[data-theme="dark"] .tech-tag {
  background: var(--bg-secondary) !important;
  color: var(--text-primary) !important;
  border-color: var(--border-color) !important;
}

.theme-dark .process-step,
[data-theme="dark"] .process-step {
  background: var(--card-bg) !important;
  border-color: var(--border-color) !important;
}

.theme-dark .process-icon,
[data-theme="dark"] .process-icon {
  background: var(--bg-secondary) !important;
  border-color: var(--border-color) !important;
}

.theme-dark .process-title,
[data-theme="dark"] .process-title {
  color: var(--text-primary) !important;
}

.theme-dark .process-description,
[data-theme="dark"] .process-description {
  color: var(--text-secondary) !important;
}

.theme-dark .process-deliverables li,
[data-theme="dark"] .process-deliverables li {
  color: var(--text-secondary) !important;
}

.theme-dark .tech-category-title,
[data-theme="dark"] .tech-category-title {
  color: var(--text-primary) !important;
}

.theme-dark .tech-item,
[data-theme="dark"] .tech-item {
  background: var(--card-bg) !important;
  border-color: var(--border-color) !important;
}

.theme-dark .tech-item span,
[data-theme="dark"] .tech-item span {
  color: var(--text-primary) !important;
}

.theme-dark .filter-tab,
[data-theme="dark"] .filter-tab {
  background: var(--bg-secondary) !important;
  border-color: var(--border-color) !important;
  color: var(--text-secondary) !important;
}

/* Portfolio Page Theme Fixes */
.theme-dark .portfolio-card,
[data-theme="dark"] .portfolio-card {
  background: var(--card-bg) !important;
  border-color: var(--border-color) !important;
}

.theme-dark .portfolio-title,
[data-theme="dark"] .portfolio-title {
  color: var(--text-primary) !important;
}

.theme-dark .portfolio-description,
[data-theme="dark"] .portfolio-description {
  color: var(--text-secondary) !important;
}

.theme-dark .portfolio-tech-stack .tech-tag,
[data-theme="dark"] .portfolio-tech-stack .tech-tag {
  background: var(--bg-secondary) !important;
  color: var(--text-primary) !important;
  border-color: var(--border-color) !important;
}

.theme-dark .modal-content,
[data-theme="dark"] .modal-content {
  background: var(--card-bg) !important;
  color: var(--text-primary) !important;
}

.theme-dark .project-description,
[data-theme="dark"] .project-description {
  color: var(--text-secondary) !important;
}

.theme-dark .features-title,
[data-theme="dark"] .features-title,
.theme-dark .tech-title,
[data-theme="dark"] .tech-title {
  color: var(--text-primary) !important;
}

.theme-dark .features-list li,
[data-theme="dark"] .features-list li {
  color: var(--text-secondary) !important;
}

.theme-dark .preview-item,
[data-theme="dark"] .preview-item {
  background: rgba(255, 255, 255, 0.05) !important;
  border-color: rgba(255, 255, 255, 0.1) !important;
}

/* Portfolio Badge Visibility Fixes */
.portfolio-badge {
  background: var(--primary-color) !important;
  color: white !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  font-size: 14px !important;
  box-shadow: 0 2px 8px rgba(46, 43, 226, 0.3) !important;
}

.theme-dark .portfolio-badge,
[data-theme="dark"] .portfolio-badge {
  background: var(--primary-color) !important;
  color: white !important;
  box-shadow: 0 2px 8px rgba(46, 43, 226, 0.5) !important;
}

/* Light mode specific fixes */
.theme-light .portfolio-badge,
[data-theme="light"] .portfolio-badge,
body:not([data-theme]) .portfolio-badge {
  background: var(--primary-color) !important;
  color: white !important;
  box-shadow: 0 2px 8px rgba(46, 43, 226, 0.3) !important;
}

/* Floating Icon Circles Theme Fixes */
.theme-dark .floating-icon-circle,
[data-theme="dark"] .floating-icon-circle {
  background: var(--card-bg) !important;
  border: 1px solid var(--border-color) !important;
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.3) !important;
}

.theme-dark .floating-icon-circle:hover,
[data-theme="dark"] .floating-icon-circle:hover {
  box-shadow: 0 12px 35px rgba(0, 0, 0, 0.4) !important;
}

.theme-dark .floating-icon-circle i,
[data-theme="dark"] .floating-icon-circle i {
  color: var(--primary-color) !important;
}

.theme-light .floating-icon-circle,
[data-theme="light"] .floating-icon-circle,
body:not([data-theme]) .floating-icon-circle {
  background: white !important;
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15) !important;
}

.theme-light .floating-icon-circle i,
[data-theme="light"] .floating-icon-circle i,
body:not([data-theme]) .floating-icon-circle i {
  color: var(--primary-color) !important;
}

/* Contact Reach Cards Theme Fixes */
.theme-dark .contact-reach-section,
[data-theme="dark"] .contact-reach-section {
  background: var(--card-bg) !important;
  border-color: var(--border-color) !important;
}

.theme-dark .contact-reach-title,
[data-theme="dark"] .contact-reach-title {
  color: var(--text-primary) !important;
}

.theme-dark .contact-reach-subtitle,
[data-theme="dark"] .contact-reach-subtitle {
  color: var(--text-secondary) !important;
}

.theme-dark .contact-reach-card,
[data-theme="dark"] .contact-reach-card {
  background: var(--bg-secondary) !important;
  border-color: var(--border-color) !important;
}

.theme-dark .reach-card-title,
[data-theme="dark"] .reach-card-title {
  color: var(--text-primary) !important;
}

.theme-dark .reach-card-description,
[data-theme="dark"] .reach-card-description {
  color: var(--text-secondary) !important;
}

.theme-dark .office-hour-item,
[data-theme="dark"] .office-hour-item {
  border-color: var(--border-color) !important;
}

.theme-dark .office-hour-item .day,
[data-theme="dark"] .office-hour-item .day {
  color: var(--text-primary) !important;
}

.theme-dark .office-hour-item .time,
[data-theme="dark"] .office-hour-item .time {
  color: var(--text-secondary) !important;
}


