/*
 * File: css/conf/02-components/07.buttons.css
 * Logic: Global Button Styles & Variants.
 * Refactored from: 05.schema.css, 01.colors.css, 04.animation.css
 */

/* Actions Wrapper */
.action-wrapper {
  display: flex;
  flex-direction: column;
  gap: var(--space-md);
  justify-content: center;
  align-items: center;
  margin-top: var(--space-lg);
}

@media all and (min-width: 768px) {
  .action-wrapper {
    flex-direction: row;
  }
}
/* ==========================================================================
   GLOBAL BREADCRUMBS
   ========================================================================== */
.wsdt-breadcrumb ol {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 0; /* Το κενό ρυθμίζεται από το separator */
  font-size: calc(var(--font-size-sm) * 0.9);
}

.wsdt-breadcrumb li {
  display: inline-flex;
  align-items: center;
  color: var(--text-body);
}

.wsdt-breadcrumb a {
  color: var(--text-body);
  text-decoration: none;
  font-weight: 400; /* Κανονικό βάρος για τα links */
  transition: color var(--transition-fast);
}

.wsdt-breadcrumb a:hover {
  color: var(--color-secondary);
  text-decoration: underline;
}

.wsdt-breadcrumb li:not(:last-child)::after {
  content: "/";
  margin: 0 var(--space-xs);
  font-weight: 400;
  opacity: var(--opacity-80);
  color: var(--text-body);
}

/* Τρέχουσα (ενεργή) σελίδα */
.wsdt-breadcrumb li:last-child {
  color: var(--text-body);
  font-weight: var(--font-weight-semibold);
}
/* ==========================================================================
   1. PRIMARY BUTTON (Gradient & Borders)
   ========================================================================== */
.wsdt-btn,
.websdt-btn,
.btn-primary,
.button--primary,
.wsdt-slide-link,
.wsdt-button-link,
.websdt-btn-primary,
.link-cta,
.form-actions .button.form-submit,
#user-login-form .form-submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: var(--btn-padding);
  font-family: var(--h-font-family);
  font-weight: var(--h-font-weight);
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: var(--letter-spacing-sm);
  font-size: var(--font-size-base);
  border-radius: var(--btn-radius);
  cursor: pointer;
  color: var(--btn-text);

  border: var(--btn-border-w) solid transparent;

  /* Background Logic */
  background-color: var(--btn-bg);
  transition: background-color var(--transition-fast),
    color var(--transition-fast), border-color var(--transition-fast),
    box-shadow var(--transition-fast);
}

.wsdt-btn:hover,
.websdt-btn:hover,
.btn-primary:hover,
.button--primary:hover,
.wsdt-slide-link:hover,
.wsdt-button-link:hover,
.websdt-btn-primary:hover,
.link-cta:hover,
.form-actions .button.form-submit:hover,
#user-login-form .form-submit:hover {
  background-color: var(--btn-text);
  color: var(--color-secondary);
  box-shadow: var(--shadow-card-hover);
}

/* ==========================================================================
   2. SECONDARY / OUTLINE BUTTON
   ========================================================================== */
.websdt-btn-secondary,
.btn-outline-secondary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: var(--btn-padding);
  font-family: var(--h-font-family);
  font-weight: var(--h-font-weight);
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: var(--letter-spacing-sm);
  font-size: var(--font-size-base);
  border-radius: var(--btn-radius);
  cursor: pointer;
  background-color: transparent;
  border: var(--btn-border-w) solid var(--text-body);
  color: var(--text-body);
  transition: var(--interaction-transition);
  gap: var(--space-sm);
}

.websdt-btn-secondary:hover,
.btn-outline-secondary:hover {
  background-color: var(--text-body);
  color: var(--text-on-dark);
  border-color: var(--text-body);
}

/* Variant: White Outline (For Dark Backgrounds like CTA Block) */
.btn-outline-white {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: var(--btn-padding);
  font-family: var(--h-font-family);
  font-weight: var(--h-font-weight);
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: var(--letter-spacing-sm);
  font-size: var(--font-size-base);
  border-radius: var(--btn-radius);
  cursor: pointer;
  background-color: transparent;
  border: var(--btn-border-w) solid var(--text-on-dark);
  color: var(--text-on-dark);
  transition: var(--interaction-transition);
  gap: var(--space-sm);
}

.btn-outline-white:hover {
  background-color: var(--text-on-dark);
  color: var(--color-secondary);
  transform: translateY(var(--interaction-lift));
}

/* ==========================================================================
   3. LINK STYLE BUTTON
   ========================================================================== */
.websdt-btn-link {
  background: transparent;
  text-decoration: underline;
  color: var(--text-body);
  font-size: var(--p-font-size);
  padding: var(--btn-padding);
  transition: var(--interaction-transition);
  border: var(--border-width-sm) solid transparent;
}

.websdt-btn-link:hover {
  color: var(--color-secondary);
}

/* ==========================================================================
   4. GLOBAL ICON FIXES IN BUTTONS
   ========================================================================== */
.wsdt-btn svg,
.btn-outline-secondary svg,
.btn-outline-white svg {
  width: var(--icon-size-base);
  height: var(--icon-size-base);
}

.pager {
  margin-top: var(--space-2xl);
  margin-bottom: var(--space-xl);
  display: flex;
  justify-content: center;
}

.pager__items {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-xs);
  list-style: none;
  padding: 0;
  margin: 0;
  align-items: center;
}

.pager__item a {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: var(--btn-size-square);
  height: var(--btn-size-square);
  padding: 0 var(--space-xs);
  background-color: var(--surface-bg);
  border: var(--border-width-sm) solid var(--border-light);
  border-radius: 50%;
  color: var(--text-body);
  text-decoration: none;
  font-weight: var(--font-weight-semibold);
  font-family: var(--h-font-family);
  transition: var(--interaction-transition);
}

.pager__item--next a,
.pager__item--last a,
.pager__item--first a,
.pager__item--previous a {
  width: auto;
  padding: 0 var(--space-md);
  border-radius: var(--radius-pill);
}

.pager__item a:hover,
.pager__item.is-active a {
  border-color: var(--color-secondary);
  background-color: var(--color-secondary);
  color: var(--text-on-dark);
  transform: translateY(var(--interaction-lift));
  box-shadow: var(--shadow-reopen);
}

.pager__item.is-active a {
  cursor: default;
  pointer-events: none;
  transform: none;
}

.wsdt-block-local-tasks-block ul {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-xs);
  list-style: none;
  padding: 0;
  margin-bottom: var(--space-lg);
}

.wsdt-block-local-tasks-block a {
  padding: var(--space-xs) var(--space-md);
  background-color: var(--bg-gray-lighter);
  color: var(--text-body);
  border-radius: var(--radius-sm);
  font-weight: var(--h-font-weight);
  transition: var(--interaction-transition);
  text-decoration: none;
}

.wsdt-block-local-tasks-block a.is-active,
.wsdt-block-local-tasks-block a:hover {
  background-color: var(--color-secondary);
  color: var(--text-on-dark);
}

/* ==========================================================================
   5. CONTEXTUAL OVERRIDES
   ========================================================================== */
/* CTA Block: Make secondary button light for this dark block */
.block-type-cta-block .btn-outline-secondary {
  color: var(--text-on-dark);
  border-color: var(--text-on-dark);
}

.block-type-cta-block .btn-outline-secondary:hover {
  background-color: var(--text-on-dark);
  color: var(--color-secondary);
  border-color: var(--text-on-dark);
  transform: translateY(var(--interaction-lift));
  box-shadow: var(--shadow-card-hover);
}

/* ==========================================================================
   USER DASHBOARD NAVIGATION (Strictly scoped to .wsdt-path-user)
   ========================================================================== */
.wsdt-path-user .wsdt-block-local-tasks-block ul,
.wsdt-path-user .tabs--primary {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-sm);
  list-style: none;
  padding: 0;
  margin: 0 0 var(--space-xl) 0;
  border-bottom: var(--border-width-sm) solid var(--border-light);
  padding-bottom: var(--space-sm);
}

.wsdt-path-user .wsdt-block-local-tasks-block a,
.wsdt-path-user .tabs--primary a {
  display: inline-flex;
  padding: var(--space-xs) var(--space-md);
  background-color: transparent;
  color: var(--text-body);
  border-radius: var(--radius-sm);
  font-weight: var(--font-weight-semibold);
  transition: var(--interaction-transition);
  text-decoration: none;
  border: var(--border-width-sm) solid transparent;
}

.wsdt-path-user .wsdt-block-local-tasks-block a.is-active,
.wsdt-path-user .wsdt-block-local-tasks-block a:hover,
.wsdt-path-user .tabs--primary a.is-active,
.wsdt-path-user .tabs--primary a:hover {
  background-color: var(--color-secondary);
  color: var(--text-on-dark);
  box-shadow: var(--shadow-sm);
}

/* Επιθετική απόκρυψη tabs στις σελίδες χρήστη */
.wsdt-path-user .wsdt-region--tabs {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}
