/* ==========================================
 * 星枢 API · 二十八星宿专属样式 v2
 * ========================================== */

/* ── Mansion Grid ── */
.mansion-grid {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 12px
}

@media(max-width:750px) {
  .mansion-grid {
    grid-template-columns: repeat(4, 1fr)
  }
}

@media(max-width:550px) {
  .mansion-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 10px
  }
}

@media(max-width:500px) {
  .mansion-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 8px
  }
}

/* ── Tab panels (initial state, toggled by JS) ── */
#tab-natal,
#tab-compare {
  display: none
}

.m-card {
  background: var(--c-surface);
  border: 1.5px solid var(--c-border);
  border-radius: 12px;
  padding: 16px 10px;
  text-align: center;
  cursor: pointer;
  transition: all var(--transition);
  box-shadow: var(--shadow-sm);
  -webkit-tap-highlight-color: transparent;
}

.m-card:hover {
  transform: translateY(-3px);
  box-shadow: var(--shadow-lg);
  border-color: rgba(67, 97, 238, .2);
}

.m-card:active {
  transform: scale(.95)
}

.m-card .mc-name {
  font-size: .84rem;
  font-weight: 700;
  color: var(--c-heading);
  margin-bottom: 3px
}

.m-card .mc-animal {
  font-size: .66rem;
  color: var(--c-primary);
  margin-bottom: 5px;
  font-weight: 600
}

.m-card .mc-meta {
  font-size: .62rem;
  color: var(--c-text-muted)
}

.dh-back {
  margin-left: auto
}

/* ── Lunar Panel (本命/对比表单+结果布局) ── */
.lunar-panel {
  display: flex;
  gap: 24px;
  flex-wrap: wrap
}

.lunar-panel .lp-form {
  flex: 1;
  min-width: 280px
}

.lunar-panel .lp-result {
  flex: 2;
  min-width: 280px
}

@media(max-width:750px) {

  .lunar-panel .lp-form,
  .lunar-panel .lp-result {
    flex: 1 1 100%;
    min-width: 100%
  }
}

/* ── Compare theme bar ── */
.lunar-compare-theme {
  margin-top: 18px
}

/* ── Compare tab spacers ── */
#tab-compare .loader,
#tab-compare .result {
  margin-top: 18px
}