/* Legal Disclaimer Plugin Styles */

.legal-disclaimer-wrapper {
  margin: 0 auto;
  padding: 0 15px;
}

.legal-disclaimer {
  position: relative;
  transition: all 0.3s ease;
}

/* Content wrapper */
.gld-content {
  display: inline;
}

.gld-content strong {
  color: var(--accent-color, #0073aa);
  font-weight: 600;
}

.gld-content a {
  color: var(--accent-color, #0073aa);
  text-decoration: underline;
}

.gld-content a:hover {
  text-decoration: none;
}

/* Icon styles */
.gld-icon {
  font-size: 1.5em;
  vertical-align: middle;
  margin-right: 10px;
  display: inline-block;
}

/* Container style variations */
.gld-style-banner {
  width: 100vw;
  margin-left: calc(-50vw + 50%);
  border-radius: 0 !important;
}

.gld-style-minimal {
  background-color: transparent !important;
  padding: 10px 0 !important;
}

.gld-style-card {
  box-shadow: 0 4px 6px rgba(0,0,0,0.1) !important;
}

/* Animations */
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes slideDown {
  from {
    opacity: 0;
    transform: translateY(-20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes slideUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes scaleIn {
  from {
    opacity: 0;
    transform: scale(0.95);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}

.gld-animate-fade-in {
  animation: fadeIn 0.6s ease-out;
}

.gld-animate-slide-down {
  animation: slideDown 0.6s ease-out;
}

.gld-animate-slide-up {
  animation: slideUp 0.6s ease-out;
}

.gld-animate-scale {
  animation: scaleIn 0.6s ease-out;
}

/* Responsive design */
@media (max-width: 768px) {
  .legal-disclaimer {
    font-size: 13px !important;
    padding: 15px 20px !important;
  }
  
  .gld-icon {
    font-size: 1.3em;
    margin-right: 8px;
  }
}

@media (max-width: 480px) {
  .legal-disclaimer {
    font-size: 12px !important;
    padding: 12px 15px !important;
  }
  
  .gld-icon {
    font-size: 1.2em;
    margin-right: 6px;
  }
}

/* Print styles */
@media print {
  .legal-disclaimer {
    border: 1px solid #000 !important;
    box-shadow: none !important;
    page-break-inside: avoid;
  }
}

/* Accessibility */
.legal-disclaimer:focus-within {
  outline: 2px solid var(--accent-color, #0073aa);
  outline-offset: 2px;
}

/* High contrast mode support */
@media (prefers-contrast: high) {
  .legal-disclaimer {
    border-width: 2px !important;
  }
}

/* Reduced motion support */
@media (prefers-reduced-motion: reduce) {
  .legal-disclaimer,
  .gld-animate-fade-in,
  .gld-animate-slide-down,
  .gld-animate-slide-up,
  .gld-animate-scale {
    animation: none !important;
    transition: none !important;
  }
}
