/* CSS для футера с изолированными классами */
:root {
  --dp-footer-accent: #117e77;
  --dp-footer-text: #0f172a;
  --dp-footer-muted: #64748b;
  --dp-footer-glass: rgba(255,255,255,.8);
  --dp-footer-border: 1px solid rgba(255,255,255,.25);
  --dp-footer-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);
  --dp-footer-radius: 24px;
}

html[data-theme="dark"] {
  --dp-footer-text: #e5e7eb;
  --dp-footer-muted: #9ca3af;
  --dp-footer-glass: rgba(17,126,119,0.15);
  --dp-footer-border: 1px solid rgba(17,126,119,0.3);
  --dp-footer-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);
}

.dp-footer-container,
.dp-footer-container *,
.dp-footer-container *::before,
.dp-footer-container *::after {
  all: unset;
  box-sizing: border-box;
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, Helvetica Neue, Arial, sans-serif;
}

.dp-footer-container.dp-footer-site {
  display: block !important;
  backdrop-filter: blur(14px) saturate(140%) !important;
  background: var(--dp-footer-glass) !important;
  border: var(--dp-footer-border) !important;
  box-shadow: var(--dp-footer-shadow) !important;
  border-radius: calc(var(--dp-footer-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(--dp-footer-text) !important;
  position: relative !important;
}

.dp-footer-actions {
  display: flex !important;
  flex-direction: row !important;
  justify-content: center !important;
  align-items: center !important;
  gap: clamp(12px, 2vw, 16px) !important;
  margin: 0 auto 20px auto !important;
  flex-wrap: wrap !important;
  padding: 0 !important;
}

.dp-footer-btn {
  display: inline-block !important;
  padding: clamp(8px, 2vw, 10px) clamp(12px, 2.5vw, 16px) !important;
  border-radius: 999px !important;
  border: var(--dp-footer-border) !important;
  background: var(--dp-footer-glass) !important;
  text-decoration: none !important;
  color: var(--dp-footer-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;
  font-size: clamp(12px, 2.5vw, 14px) !important;
}

.dp-footer-btn: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;
}

html[data-theme="dark"] .dp-footer-btn:hover {
  background: rgba(17,126,119,.3) !important;
  color: var(--dp-footer-text) !important;
}

.dp-footer-policy-links {
  display: flex !important;
  flex-direction: row !important;
  justify-content: center !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: clamp(6px, 1.5vw, 8px) clamp(12px, 2vw, 16px) !important;
  margin: 0 auto 20px auto !important;
  padding: 0 !important;
}

.dp-footer-policy-links a {
  color: var(--dp-footer-muted) !important;
  text-decoration: none !important;
  font-size: clamp(12px, 2.5vw, 14px) !important;
  padding: clamp(4px, 1vw, 6px) clamp(6px, 1.5vw, 8px) !important;
  border-radius: 8px !important;
  transition: all 0.3s ease !important;
  cursor: pointer !important;
  display: inline-block !important;
}

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

html[data-theme="dark"] .dp-footer-policy-links a:hover {
  background: rgba(17,126,119,.2) !important;
}

.dp-footer-meta {
  font-size: clamp(12px, 2.5vw, 14px) !important;
  color: var(--dp-footer-muted) !important;
  margin: 12px auto 0 auto !important;
  padding: 0 !important;
  text-align: center !important;
  display: block !important;
}

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

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

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

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