/**
 * @file
 * Theme-specific styles
 */

/* Admin Toolbar Adjustment */
body.toolbar-fixed {
  padding-top: 0 !important;
}

body.toolbar-fixed .header {
  top: 79px; /* Adjust for admin toolbar */
}

body.toolbar-horizontal.toolbar-tray-open .header {
  top: 79px;
}

/* CKEditor Styles in Content */
.node__content .text-align-center {
  text-align: center;
}

.node__content .text-align-right {
  text-align: right;
}

.node__content .text-align-justify {
  text-align: justify;
}

/* Drupal-specific Overrides */
.region-highlighted {
  background-color: var(--color-bg-secondary);
  padding: var(--spacing-lg);
  border-radius: var(--radius-md);
  margin-bottom: var(--spacing-lg);
}

/* Content Links */
.links {
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-md);
  list-style: none;
  padding: 0;
  margin: var(--spacing-lg) 0 0;
}

.links li {
  margin: 0;
}

/* Tabs */
.tabs {
  margin-bottom: var(--spacing-lg);
  border-bottom: 1px solid var(--color-border);
}

.tabs__tab {
  display: inline-flex;
}

.tabs__link {
  display: block;
  padding: var(--spacing-sm) var(--spacing-md);
  color: var(--color-text-muted);
  text-decoration: none;
  border-bottom: 2px solid transparent;
  margin-bottom: -1px;
  transition: all var(--transition-fast);
}

.tabs__link:hover {
  color: var(--color-text);
}

.tabs__link.is-active {
  color: var(--color-primary);
  border-bottom-color: var(--color-primary);
}

/* Action Links */
.action-links {
  display: flex;
  gap: var(--spacing-md);
  list-style: none;
  padding: 0;
  margin: 0 0 var(--spacing-lg);
}

.action-links a {
  display: inline-flex;
  align-items: center;
  gap: var(--spacing-xs);
  padding: var(--spacing-sm) var(--spacing-md);
  background-color: var(--color-primary);
  color: white;
  border-radius: var(--radius-md);
  text-decoration: none;
  font-size: 0.875rem;
  font-weight: 500;
  transition: background-color var(--transition-fast);
}

.action-links a:hover {
  background-color: var(--color-primary-hover);
}

.action-links a::before {
  content: '+';
  font-weight: bold;
}

/* Field Styles */
.field {
  margin-bottom: var(--spacing-md);
}

.field__label {
  font-weight: 600;
  font-size: 0.875rem;
  color: var(--color-text-muted);
  margin-bottom: var(--spacing-xs);
}

.field__items {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-xs);
}

/* Image Field */
.field--type-image img {
  border-radius: var(--radius-md);
}

/* Taxonomy Term Reference */
.field--type-entity-reference .field__items {
  flex-direction: row;
  flex-wrap: wrap;
  gap: var(--spacing-xs);
}

.field--type-entity-reference .field__item a {
  display: inline-flex;
  padding: var(--spacing-xs) var(--spacing-sm);
  background-color: var(--color-bg-tertiary);
  border-radius: var(--radius-full);
  font-size: 0.8125rem;
  color: var(--color-text);
  text-decoration: none;
  transition: all var(--transition-fast);
}

.field--type-entity-reference .field__item a:hover {
  background-color: var(--color-primary);
  color: white;
}

/* Comments */
.comments {
  margin-top: var(--spacing-2xl);
  padding-top: var(--spacing-xl);
  border-top: 1px solid var(--color-border);
}

.comments__title {
  font-size: 1.5rem;
  margin-bottom: var(--spacing-lg);
}

.comment {
  padding: var(--spacing-lg);
  background-color: var(--color-bg-secondary);
  border-radius: var(--radius-md);
  margin-bottom: var(--spacing-md);
}

.comment__meta {
  display: flex;
  align-items: center;
  gap: var(--spacing-md);
  margin-bottom: var(--spacing-sm);
}

.comment__author {
  font-weight: 600;
}

.comment__date {
  font-size: 0.8125rem;
  color: var(--color-text-muted);
}

/* Login Form */
.user-login-form {
  max-width: 400px;
  margin: 0 auto;
  padding: var(--spacing-xl);
  background-color: var(--color-bg);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
}

/* Password Strength */
.password-strength {
  margin-top: var(--spacing-sm);
}

.password-strength__meter {
  height: 4px;
  background-color: var(--color-bg-tertiary);
  border-radius: var(--radius-full);
  overflow: hidden;
}

.password-strength__indicator {
  height: 100%;
  transition: width var(--transition-normal), background-color var(--transition-normal);
}

/* Vertical Tabs */
.vertical-tabs {
  display: flex;
  gap: var(--spacing-lg);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
}

.vertical-tabs__menu {
  width: 200px;
  border-right: 1px solid var(--color-border);
  background-color: var(--color-bg-secondary);
}

.vertical-tabs__menu-item {
  display: block;
  padding: var(--spacing-md);
  color: var(--color-text);
  text-decoration: none;
  border-bottom: 1px solid var(--color-border);
  transition: background-color var(--transition-fast);
}

.vertical-tabs__menu-item:hover,
.vertical-tabs__menu-item.is-selected {
  background-color: var(--color-bg);
}

.vertical-tabs__pane {
  flex: 1;
  padding: var(--spacing-lg);
}

/* Skip Link */
.skip-link {
  position: absolute;
  top: -100px;
  left: 50%;
  transform: translateX(-50%);
  padding: var(--spacing-sm) var(--spacing-md);
  background-color: var(--color-primary);
  color: white;
  border-radius: var(--radius-md);
  z-index: 1000;
  transition: top var(--transition-fast);
}

.skip-link:focus {
  top: var(--spacing-md);
}

/* Team Card Gradient Backgrounds */
.team-gradient-peach {
  background: linear-gradient(180deg, #fde4cf 0%, #ffcfd2 100%);
}

.team-gradient-pink-blue {
  background: linear-gradient(180deg, #fbc2eb 0%, #a6c1ee 100%);
}

.team-gradient-blue {
  background: linear-gradient(180deg, #a1c4fd 0%, #c2e9fb 100%);
}

.team-gradient-green {
  background: linear-gradient(180deg, #d4fc79 0%, #96e6a1 100%);
}

.team-gradient-cream {
  background: linear-gradient(180deg, #ffecd2 0%, #fcb69f 100%);
}

/* Print Styles */
@media print {
  .header,
  .footer,
  .sidebar,
  .tabs,
  .action-links,
  .pager,
  .comments__form {
    display: none !important;
  }

  body {
    font-size: 12pt;
    color: black;
    background: white;
  }

  a {
    color: black;
    text-decoration: underline;
  }

  .node__content {
    max-width: none;
  }
}
