/* Footer CSS Variables */
.footer {
  --footer-dp-accent: #117e77;
  --footer-dp-text: #0f172a;
  --footer-dp-muted: #64748b;
  --footer-dp-glass: rgba(255,255,255,.8);
  --footer-dp-border: 1px solid rgba(255,255,255,.25);
  --footer-dp-shadow: 0 8px 32px rgba(31,38,135,0.15), inset 0 1px 1px rgba(255,255,255,.8), 0 1px 0 rgba(255,255,255,.3);
  --footer-dp-radius: 24px;
}

html[data-theme="dark"] .footer {
  --footer-dp-text: #e5e7eb;
  --footer-dp-muted: #9ca3af;
  --footer-dp-glass: rgba(17,126,119,0.15);
  --footer-dp-border: 1px solid rgba(17,126,119,0.3);
  --footer-dp-shadow: 0 8px 32px rgba(0,0,0,.6), inset 0 1px 1px rgba(17,126,119,0.2), 0 1px 0 rgba(17,126,119,0.1);
}

/* ПОЛНАЯ ИЗОЛЯЦИЯ ФУТЕРА ОТ ВНЕШНИХ СТИЛЕЙ */
.footer, 
.footer *,
.footer *::before,
.footer *::after {
  all: unset !important;
  box-sizing: border-box !important;
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, Helvetica Neue, Arial, sans-serif !important;
}

/* Main Footer Styles */
.footer.site-footer {
  display: block !important;
  backdrop-filter: blur(14px) saturate(140%) !important;
  background: var(--footer-dp-glass) !important;
  border: var(--footer-dp-border) !important;
  box-shadow: var(--footer-dp-shadow) !important;
  border-radius: calc(var(--footer-dp-radius) + 4px) !important;
  padding: 20px !important;
  margin: 20px auto !important;
  max-width: calc(100vw - 40px) !important;
  width: auto !important;
  box-sizing: border-box !important;
  text-align: center !important;
  color: var(--footer-dp-text) !important;
  position: relative !important;
  left: auto !important;
  right: auto !important;
  top: auto !important;
  bottom: auto !important;
  transform: none !important;
}

.footer .foot-actions {
  display: flex !important;
  flex-direction: row !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 16px !important;
  margin: 0 auto 20px auto !important;
  flex-wrap: wrap !important;
  padding: 0 !important;
  width: auto !important;
  max-width: 100% !important;
  text-align: center !important;
  position: relative !important;
  left: auto !important;
  right: auto !important;
}

.footer .btn-foot {
  display: inline-block !important;
  padding: 10px 16px !important;
  border-radius: 999px !important;
  border: var(--footer-dp-border) !important;
  background: var(--footer-dp-glass) !important;
  text-decoration: none !important;
  color: var(--footer-dp-text) !important;
  box-shadow: 0 4px 16px rgba(31,38,135,0.12), inset 0 1px 1px rgba(255,255,255,.6) !important;
  backdrop-filter: blur(8px) !important;
  transition: all 0.3s ease !important;
  font-weight: 500 !important;
  white-space: nowrap !important;
  cursor: pointer !important;
  position: relative !important;
  left: auto !important;
  right: auto !important;
  margin: 0 !important;
  flex: none !important;
  width: auto !important;
  min-width: auto !important;
  max-width: none !important;
  text-align: center !important;
}

.footer .btn-foot:hover {
  background: rgba(255,255,255,.9) !important;
  box-shadow: 0 8px 25px rgba(31,38,135,0.2), inset 0 1px 1px rgba(255,255,255,.8) !important;
  transform: translateY(-1px) !important;
}

.footer .policy-links {
  display: flex !important;
  flex-direction: row !important;
  justify-content: center !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 8px 16px !important;
  margin: 0 auto 20px auto !important;
  padding: 0 !important;
  width: auto !important;
  text-align: center !important;
  position: relative !important;
}

.footer .policy-links a {
  color: var(--footer-dp-muted) !important;
  text-decoration: none !important;
  font-size: 14px !important;
  padding: 6px 8px !important;
  border-radius: 8px !important;
  transition: all 0.3s ease !important;
  cursor: pointer !important;
  position: relative !important;
  margin: 0 !important;
  width: auto !important;
  text-align: center !important;
}

.footer .policy-links a:hover {
  color: var(--footer-dp-text) !important;
  background: rgba(255,255,255,.3) !important;
}

.footer .foot-meta {
  font-size: 14px !important;
  color: var(--footer-dp-muted) !important;
  margin: 12px auto 0 auto !important;
  padding: 0 !important;
  text-align: center !important;
  width: auto !important;
  position: relative !important;
}

.footer .foot-meta a {
  color: var(--footer-dp-muted) !important;
  text-decoration: none !important;
  cursor: pointer !important;
}

.footer .foot-meta a:hover {
  color: var(--footer-dp-text) !important;
}

@media (max-width: 768px) {
  .footer.site-footer {
    margin: 16px auto !important;
    max-width: calc(100vw - 32px) !important;
    padding: 16px !important;
  }
  
  .footer .foot-actions {
    gap: 12px !important;
  }
}

@media (max-width: 480px) {
  .footer.site-footer {
    margin: 12px auto !important;
    max-width: calc(100vw - 24px) !important;
    padding: 14px !important;
  }
  
  .footer .foot-actions {
    flex-direction: column !important;
    gap: 8px !important;
  }
  
  .footer .btn-foot {
    width: 100% !important;
    text-align: center !important;
  }
  
  .footer .policy-links {
    flex-direction: column !important;
    text-align: center !important;
    gap: 4px !important;
  }
}
