/*
Theme Name: Ortorodzina
Description: Plugin compatibility and legacy support styles
Version: 1.0.0
*/

/* ============================================================================
   Contact Form 7 Compatibility
   ========================================================================= */

.ortorodzina-cf7-form .wpcf7-form {
  margin: 0;
}

.ortorodzina-cf7-form .wpcf7-form p {
  margin-bottom: var(--space-4);
}

.ortorodzina-cf7-form input[type="text"],
.ortorodzina-cf7-form input[type="email"],
.ortorodzina-cf7-form input[type="tel"],
.ortorodzina-cf7-form textarea,
.ortorodzina-cf7-form select {
  width: 100%;
  padding: var(--space-3);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  font-family: inherit;
  font-size: 16px;
}

.ortorodzina-cf7-form input[type="submit"] {
  background-color: var(--color-accent);
  color: var(--color-bg);
  border: none;
  padding: var(--space-3) var(--space-5);
  border-radius: var(--radius-sm);
  font-weight: 600;
  cursor: pointer;
  transition: background-color var(--transition-fast);
}

/* .ortorodzina-cf7-form input[type="submit"]:hover {
  background-color: var(--color-dark);
} */

.ortorodzina-cf7-form .wpcf7-not-valid-tip {
  color: var(--color-error);
  font-size: 14px;
  margin-top: var(--space-2);
}

.ortorodzina-cf7-form .wpcf7-validation-errors,
.ortorodzina-cf7-form .wpcf7-acceptance-missing {
  border: 1px solid var(--color-error);
  background-color: rgba(197, 48, 48, 0.1);
  color: var(--color-error);
  padding: var(--space-3);
  border-radius: var(--radius-sm);
  margin-top: var(--space-4);
}

.ortorodzina-cf7-form .wpcf7-mail-sent-ok {
  border: 1px solid var(--color-success);
  background-color: rgba(20, 128, 74, 0.1);
  color: var(--color-success);
  padding: var(--space-3);
  border-radius: var(--radius-sm);
  margin-top: var(--space-4);
}

.ortorodzina-cf7-form .wpcf7-spinner {
  display: none;
}

/* ============================================================================
   Gravity Forms Compatibility
   ========================================================================= */

.gform_wrapper .gform_body {
  margin-bottom: var(--space-4);
}

.gform_wrapper .gfield {
  margin-bottom: var(--space-4);
}

.gform_wrapper .gfield_label {
  font-weight: 600;
  margin-bottom: var(--space-2);
  display: block;
}

.gform_wrapper input[type="text"],
.gform_wrapper input[type="email"],
.gform_wrapper input[type="tel"],
.gform_wrapper input[type="url"],
.gform_wrapper textarea,
.gform_wrapper select {
  width: 100%;
  padding: var(--space-3);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  font-family: inherit;
  font-size: 16px;
}

.gform_wrapper input[type="submit"] {
  background-color: var(--color-accent);
  color: var(--color-bg);
  border: none;
  padding: var(--space-3) var(--space-5);
  border-radius: var(--radius-sm);
  font-weight: 600;
  cursor: pointer;
}

.gform_wrapper input[type="submit"]:hover {
  background-color: var(--color-dark);
}

.gform_wrapper .validation_error {
  color: var(--color-error);
  background-color: rgba(197, 48, 48, 0.1);
  border: 1px solid var(--color-error);
  padding: var(--space-3);
  border-radius: var(--radius-sm);
  margin-bottom: var(--space-4);
}

.gform_wrapper .gfield_error {
  background-color: rgba(197, 48, 48, 0.05);
  border-left: 3px solid var(--color-error);
  padding-left: var(--space-3);
}

/* ============================================================================
   WooCommerce Compatibility (when enabled)
   ========================================================================= */

.woocommerce-page .woocommerce-products-header {
  margin-bottom: var(--space-8);
}

.woocommerce ul.products {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
  gap: var(--space-6);
  list-style: none;
  padding: 0;
  margin: 0;
}

.woocommerce ul.products li.product {
  background-color: var(--color-bg);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  padding: var(--space-4);
  text-align: center;
  transition:
    transform var(--transition-base),
    box-shadow var(--transition-base);
}

.woocommerce ul.products li.product:hover {
  transform: translateY(-4px);
  box-shadow: var(--shadow-lg);
}

.woocommerce ul.products li.product .button {
  background-color: var(--color-accent);
  color: var(--color-bg);
  padding: var(--space-2) var(--space-4);
  border-radius: var(--radius-sm);
  font-weight: 600;
}

.woocommerce ul.products li.product .button:hover {
  background-color: var(--color-dark);
}

/* ============================================================================
   Yoast SEO Breadcrumbs
   ========================================================================= */

#breadcrumbs {
  padding: var(--space-4) 0;
  font-size: 14px;
  color: var(--color-text-soft);
}

#breadcrumbs a {
  color: var(--color-text);
  text-decoration: none;
}

#breadcrumbs a:hover {
  color: var(--color-accent);
}

#breadcrumbs span {
  margin: 0 var(--space-2);
}

/* ============================================================================
   Jetpack Compatibility
   ========================================================================= */

.jetpack-social-navigation {
  display: flex;
  gap: var(--space-3);
  list-style: none;
  padding: 0;
  margin: 0;
}

.jetpack-social-navigation a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  background-color: var(--color-dark-2);
  color: var(--color-bg);
  border-radius: 50%;
  transition: background-color var(--transition-fast);
}

.jetpack-social-navigation a:hover {
  background-color: var(--color-accent);
}

/* ============================================================================
   Shortcode Cleanup
   ========================================================================= */

/* Remove unwanted paragraph spacing around shortcodes */
.entry-content p:empty {
  display: none;
}

/* Generic shortcode container normalization */
.shortcode-wrapper,
.shortcode-container {
  margin-bottom: var(--space-4);
}

/* ============================================================================
   Legacy Widget Styles
   ========================================================================= */

.widget_recent_entries ul,
.widget_recent_comments ul,
.widget_archive ul,
.widget_categories ul,
.widget_meta ul,
.widget_pages ul,
.widget_nav_menu ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.widget_recent_entries li,
.widget_recent_comments li,
.widget_archive li,
.widget_categories li,
.widget_meta li,
.widget_pages li,
.widget_nav_menu li {
  padding: var(--space-2) 0;
  border-bottom: 1px solid var(--color-border);
}

.widget_recent_entries li:last-child,
.widget_recent_comments li:last-child,
.widget_archive li:last-child,
.widget_categories li:last-child,
.widget_meta li:last-child,
.widget_pages li:last-child,
.widget_nav_menu li:last-child {
  border-bottom: none;
}

/* Calendar Widget */
.widget_calendar table {
  width: 100%;
  border-collapse: collapse;
}

.widget_calendar th,
.widget_calendar td {
  text-align: center;
  padding: var(--space-2);
  border: 1px solid var(--color-border);
}

.widget_calendar caption {
  font-weight: 600;
  margin-bottom: var(--space-3);
  text-align: center;
}

/* Search Widget */
.widget_search .search-form {
  display: flex;
  gap: var(--space-2);
}

.widget_search .search-field {
  flex: 1;
}

/* Tag Cloud Widget */
.widget_tag_cloud .tagcloud {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
}

.widget_tag_cloud .tagcloud a {
  display: inline-block;
  padding: var(--space-1) var(--space-3);
  background-color: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  font-size: 14px !important;
  text-decoration: none;
  transition: all var(--transition-fast);
}

.widget_tag_cloud .tagcloud a:hover {
  background-color: var(--color-accent);
  border-color: var(--color-accent);
  color: var(--color-bg);
}
