/* ==========================================================================
   页脚组件 (Footer)
   ========================================================================== */

.zuoekai-footer {
  background-color: var(--zuoekai-color-surface-page);
  border-top: 1px solid var(--zuoekai-color-border);
  padding: 40px 0 24px;
  color: var(--zuoekai-color-text);
  font-size: 14px;
}

.zuoekai-footer__container {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 16px;
}

/* 上部：链接与信息 */
.zuoekai-footer__content {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 32px;
  margin-bottom: 40px;
}

/* 列 (Column) */
.zuoekai-footer__col {
  display: flex;
  flex-direction: column;
}

.zuoekai-footer__title {
  font-size: 14px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-bottom: 16px;
  color: var(--zuoekai-color-text);
}

.zuoekai-footer__list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.zuoekai-footer__item {
  margin-bottom: 12px;
}

.zuoekai-footer__link {
  color: var(--zuoekai-color-text-secondary);
  text-decoration: none;
  transition: color 0.2s;
}

.zuoekai-footer__link:hover {
  color: var(--zuoekai-color-brand-600);
}

/* 品牌区域 (Brand - optional column) */
.zuoekai-footer__brand {
  margin-bottom: 16px;
  font-size: 20px;
  font-weight: 700;
  display: flex;
  align-items: center;
  gap: 8px;
}

.zuoekai-footer__desc {
  color: var(--zuoekai-color-text-secondary);
  line-height: 1.6;
  margin-bottom: 24px;
  max-width: 300px;
}

/* 下部：版权与社交 */
.zuoekai-footer__bottom {
  padding-top: 24px;
  border-top: 1px solid var(--zuoekai-color-border);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  text-align: center;
}

.zuoekai-footer__copyright {
  color: var(--zuoekai-color-text-muted);
  font-size: 13px;
}

.zuoekai-footer__social {
  display: flex;
  gap: 16px;
}

.zuoekai-footer__social-link {
  color: var(--zuoekai-color-text-muted);
  transition: color 0.2s;
}

.zuoekai-footer__social-link:hover {
  color: var(--zuoekai-color-text);
}

.zuoekai-footer__social-link svg {
  width: 20px;
  height: 20px;
}

/* --- 响应式 (Responsive) --- */
@media (min-width: 768px) {
  .zuoekai-footer__bottom {
    flex-direction: row;
    justify-content: space-between;
    text-align: left;
  }
}

@media (max-width: 768px) {
  .zuoekai-footer__content {
    grid-template-columns: repeat(2, 1fr); /* Tablet: 2 cols */
  }
}

@media (max-width: 640px) {
  .zuoekai-footer__content {
    grid-template-columns: 1fr; /* Mobile: 1 col */
    text-align: center;
  }
  
  .zuoekai-footer__col {
    align-items: center;
  }
  
  .zuoekai-footer__desc {
    margin-left: auto;
    margin-right: auto;
  }
}

/* --- 变体 (Variants) --- */

/* 1. 简单版 (Simple) - 仅底部 */
.zuoekai-footer--simple {
  padding: 24px 0;
}

.zuoekai-footer--simple .zuoekai-footer__content {
  display: none;
}

.zuoekai-footer--simple .zuoekai-footer__bottom {
  border-top: none;
  padding-top: 0;
}

/* 2. 深色背景 (Dark) - 类似于 section--dark，但特定于 footer */
.zuoekai-footer--dark {
  background-color: #111827;
  color: #f3f4f6;
  border-top: none;
}

.zuoekai-footer--dark .zuoekai-footer__title {
  color: #fff;
}

.zuoekai-footer--dark .zuoekai-footer__link,
.zuoekai-footer--dark .zuoekai-footer__desc,
.zuoekai-footer--dark .zuoekai-footer__copyright,
.zuoekai-footer--dark .zuoekai-footer__social-link {
  color: #9ca3af;
}

.zuoekai-footer--dark .zuoekai-footer__link:hover,
.zuoekai-footer--dark .zuoekai-footer__social-link:hover {
  color: #fff;
}

.zuoekai-footer--dark .zuoekai-footer__bottom {
  border-top-color: #374151;
}
