/* ========== 六爻占卜页 ========== */
.ly-tip {
  max-width: 1100px;
  margin: 0 auto 24px;
  background: rgba(212,168,67,0.06);
  border: 1px solid var(--gold-dim);
  border-radius: 8px;
  padding: 14px 22px;
  text-align: center;
}
.ly-tip-text {
  font-size: 13px;
  color: var(--gold-light);
  letter-spacing: 2px;
  line-height: 1.8;
}
[data-theme="light"] .ly-tip { background: rgba(138,104,16,0.08); border-color: #c4b59a; }
[data-theme="light"] .ly-tip-text { color: #6a5008; }
.ly-wrap { max-width: 1100px; margin: 0 auto; }

/* 设置区 */
.ly-setup {
  background: var(--card-bg);
  border: 1px solid var(--card-border);
  border-radius: 12px;
  padding: 26px 28px;
  margin-bottom: 24px;
}
.ly-field { margin-bottom: 24px; }
.ly-field:last-child { margin-bottom: 0; }

/* 主题选择 */
.ly-theme-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.ly-theme-option {
  background: rgba(20,20,45,0.5);
  border: 1px solid var(--card-border);
  border-radius: 10px;
  padding: 14px 12px;
  text-align: center;
  cursor: pointer;
  transition: all 0.25s;
}
.ly-theme-option:hover { border-color: var(--gold); transform: translateY(-2px); }
.ly-theme-option.active {
  border-color: var(--gold);
  background: linear-gradient(180deg, rgba(212,168,67,0.18), rgba(212,168,67,0.05));
  box-shadow: 0 0 0 1px var(--gold);
}
.ly-th-name { font-size: 15px; color: var(--gold-light); letter-spacing: 3px; margin-bottom: 4px; font-weight: bold; }
.ly-theme-option.active .ly-th-name { color: var(--gold); }
.ly-th-desc { font-size: 11px; color: var(--text-muted); }

/* 性别 */
.ly-gender-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
.ly-gender-option {
  background: rgba(20,20,45,0.5);
  border: 1px solid var(--card-border);
  border-radius: 8px;
  padding: 12px;
  text-align: center;
  cursor: pointer;
  font-size: 15px;
  color: var(--text-muted);
  letter-spacing: 4px;
  transition: all 0.25s;
}
.ly-gender-option:hover { border-color: var(--gold); color: var(--gold-light); }
.ly-gender-option.active {
  border-color: var(--gold);
  background: linear-gradient(135deg, var(--gold-dim), var(--gold));
  color: var(--bg-1);
  font-weight: bold;
}

/* 开始按钮 */
.ly-actions { text-align: center; margin-top: 28px; }
.ly-start-btn {
  background: linear-gradient(135deg, var(--gold-dim), var(--gold));
  color: var(--bg-1);
  border: none;
  padding: 14px 52px;
  border-radius: 8px;
  font-size: 15px;
  font-weight: bold;
  cursor: pointer;
  letter-spacing: 6px;
  transition: all 0.3s;
  font-family: inherit;
}
.ly-start-btn:hover {
  background: linear-gradient(135deg, var(--gold), var(--gold-light));
  transform: translateY(-1px);
  box-shadow: 0 6px 20px rgba(212,168,67,0.4);
}

/* 摇卦区 */
.ly-cast { display: none; text-align: center; padding: 40px 20px; }
.ly-cast.show { display: block; }
.ly-cast-info { font-size: 16px; color: var(--gold-light); letter-spacing: 4px; margin-bottom: 30px; }

/* 三铜钱 */
.ly-coins { display: flex; justify-content: center; gap: 30px; margin-bottom: 30px; }
.coin {
  width: 60px; height: 60px;
  border-radius: 50%;
  border: 3px solid var(--gold);
  overflow: hidden;
  box-shadow: 0 4px 14px rgba(0,0,0,0.4);
  transition: border-color 0.3s, box-shadow 0.3s;
}
.coin img { width: 100%; height: 100%; border-radius: 50%; object-fit: cover; display: block; }
.coin.backs { border-color: var(--gold); box-shadow: 0 0 14px rgba(212,168,67,0.7), 0 4px 14px rgba(0,0,0,0.4); }
.coin.zi { border-color: #6a8fc5; box-shadow: 0 0 14px rgba(106,143,197,0.7), 0 4px 14px rgba(0,0,0,0.4); }
.coin.flipping { animation: coinFlip 0.9s ease-in-out; }
@keyframes coinFlip {
  0% { transform: rotateY(0) translateY(0); }
  50% { transform: rotateY(540deg) translateY(-50px); }
  100% { transform: rotateY(1080deg) translateY(0); }
}

/* 爻预览 */
.ly-yao-preview {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  margin-bottom: 30px;
  min-height: 130px;
}
.yao-empty, .yao-yang, .yao-yin { display: flex; align-items: center; justify-content: center; gap: 14px; min-height: 26px; }
.yao-line { display: flex; gap: 6px; align-items: center; justify-content: center; min-width: 90px; }
.yao-line .bar { display: block; height: 6px; border-radius: 3px; }
.yao-line.yang .bar { width: 80px; background: var(--gold); }
.yao-line.yin .bar { width: 36px; background: #6a8fc5; }
.yao-dong .yao-line .bar { box-shadow: 0 0 8px rgba(212,168,67,0.6); }
.yao-name { font-size: 13px; color: var(--gold-light); min-width: 36px; text-align: left; letter-spacing: 1px; }
.yao-mark { min-width: 20px; text-align: center; color: var(--bad); font-weight: bold; font-size: 15px; }
.yao-empty { opacity: 0.3; }
.yao-empty .yao-symbol { color: var(--text-dim); }
.yao-yang .yao-symbol { color: var(--gold); }
.yao-yin .yao-symbol { color: var(--gold-light); }
.yao-dong .yao-symbol { font-weight: bold; text-shadow: 0 0 8px rgba(212,168,67,0.5); }

.ly-cast-actions { text-align: center; }
.ly-cast-btn {
  background: linear-gradient(135deg, var(--gold-dim), var(--gold));
  color: var(--bg-1);
  border: none;
  padding: 12px 44px;
  border-radius: 8px;
  font-size: 15px;
  font-weight: bold;
  cursor: pointer;
  letter-spacing: 4px;
  transition: all 0.3s;
  font-family: inherit;
}
.ly-cast-btn:hover:not(:disabled) { box-shadow: 0 6px 20px rgba(212,168,67,0.4); transform: translateY(-1px); }
.ly-cast-btn:disabled { opacity: 0.5; cursor: not-allowed; }

/* 结果区 */
.ly-result { display: none; }
.ly-result.show { display: block; }
.ly-summary {
  background: rgba(212,168,67,0.06);
  border-left: 3px solid var(--gold);
  border-radius: 8px;
  padding: 18px 22px;
  margin-bottom: 24px;
  color: #c0b090;
  font-size: 14px;
  line-height: 2;
  white-space: pre-line;
}

/* 卦象 */
.ly-gua-board {
  background: var(--card-bg);
  border: 1px solid var(--card-border);
  border-radius: 12px;
  padding: 30px 20px;
  margin-bottom: 24px;
}
.gua-pair { display: flex; justify-content: center; gap: 50px; flex-wrap: wrap; }
.gua-col { width: 320px; display: flex; flex-direction: column; align-items: center; gap: 4px; }
.gua-title { font-size: 15px; color: var(--gold); letter-spacing: 3px; margin-bottom: 12px; font-weight: bold; }
.gua-sub { font-size: 12px; color: var(--gold); letter-spacing: 2px; margin: 8px 0 2px; padding-left: 22px; opacity: 0.85; }
.ryao { display: grid; grid-template-columns: 22px 95px 40px 140px; align-items: center; column-gap: 8px; padding: 4px 0; min-height: 24px; line-height: 1; }
.ryao-bian { display: flex; justify-content: center; align-items: center; gap: 8px; width: 100%; }
.ryao-mark { text-align: center; color: var(--bad); font-weight: bold; font-size: 14px; }
.ryao-line { display: flex; gap: 5px; align-items: center; justify-content: center; }
.ryao-line .bar { display: block; height: 6px; border-radius: 3px; }
.ryao-line.yang .bar { width: 76px; background: var(--gold); }
.ryao-line.yin .bar { width: 34px; background: #6a8fc5; }
.ryao-name { font-size: 13px; color: var(--gold-light); }
.ryao-dong .ryao-line .bar { box-shadow: 0 0 8px rgba(212,168,67,0.6); }
.ryao-meta { font-size: 11px; color: var(--text-muted); letter-spacing: 1px; }

/* 逐爻详解 */
.ly-detail-title {
  color: var(--gold);
  font-size: 15px;
  letter-spacing: 4px;
  border-left: 3px solid var(--gold);
  padding-left: 10px;
  margin-bottom: 16px;
}
.ly-detail {
  background: var(--card-bg);
  border: 1px solid var(--card-border);
  border-radius: 12px;
  padding: 24px 26px;
  margin-bottom: 24px;
}
.ly-yao-row {
  display: flex;
  gap: 16px;
  padding: 14px 0;
  border-bottom: 1px dashed rgba(90,90,124,0.2);
}
.ly-yao-row:last-child { border-bottom: none; }
.ly-yao-symbol { flex-shrink: 0; min-width: 90px; text-align: center; }
.ly-yao-symbol .yao-yang, .ly-yao-symbol .yao-yin { font-size: 16px; }
.ly-yao-body { flex: 1; min-width: 0; }
.ly-yao-pos { font-size: 14px; color: var(--gold-light); letter-spacing: 2px; margin-bottom: 4px; }
.ly-yao-pos em { font-style: normal; font-size: 11px; padding: 1px 6px; border-radius: 8px; margin-left: 4px; }
.ly-yao-pos em.shi { color: var(--bg-1); background: var(--gold); }
.ly-yao-pos em.ying { color: var(--gold); border: 1px solid var(--gold-dim); }
.ly-yao-pos em.dong-mark { color: var(--bad); border: 1px solid var(--bad); }
.ly-yao-meta { font-size: 12px; color: var(--text-muted); letter-spacing: 1px; margin-bottom: 4px; }
.ly-yao-ws {
  font-size: 12px;
  color: var(--gold);
  background: rgba(212,168,67,0.1);
  padding: 2px 8px;
  border-radius: 4px;
  display: inline-block;
  margin-bottom: 4px;
}
.ly-yao-dong { font-size: 12px; color: var(--bad); margin: 2px 0 4px; }
.ly-yao-bian-ci { font-size: 12px; color: var(--gold); margin: 2px 0 4px; padding-left: 8px; border-left: 2px solid var(--gold-dim); }
.ly-yao-ci { font-size: 13px; color: #c0b090; line-height: 1.8; }
.ly-yao-ci-bh { font-size: 12px; color: var(--text-muted); margin: 2px 0 4px; }
.ly-yao-bian-ci-bh { font-size: 12px; color: var(--text-muted); margin: 2px 0 4px; padding-left: 8px; }

/* 重新占卜 */
.ly-redraw { text-align: center; }
.ly-redraw-btn {
  background: transparent;
  color: var(--gold);
  border: 1px solid var(--gold-dim);
  padding: 12px 40px;
  border-radius: 8px;
  font-size: 14px;
  cursor: pointer;
  letter-spacing: 4px;
  font-family: inherit;
  transition: all 0.25s;
}
.ly-redraw-btn:hover {
  color: var(--bg-1);
  background: linear-gradient(135deg, var(--gold-dim), var(--gold));
  border-color: var(--gold);
}

/* 响应式 */
@media (max-width: 768px) {
  .ly-theme-grid { grid-template-columns: repeat(2, 1fr); }
  .ly-setup { padding: 20px 16px; }
  .ly-coins { gap: 20px; }
  .coin { width: 50px; height: 50px; font-size: 20px; }
  .gua-pair { gap: 30px; }
  .gua-col { width: 100%; }
  .ryao-line { font-size: 16px; min-width: 80px; }
  .ly-yao-row { flex-direction: column; gap: 8px; }
  .ly-yao-symbol { min-width: 0; }
  .ly-detail { padding: 18px 16px; }
}

/* 明亮主题 */
[data-theme="light"] .ly-setup,
[data-theme="light"] .ly-gua-board,
[data-theme="light"] .ly-detail {
  background: linear-gradient(180deg, rgba(255,253,247,0.98), rgba(248,243,230,0.92));
  border-color: #c4b59a;
}
[data-theme="light"] .ly-theme-option,
[data-theme="light"] .ly-gender-option {
  background: rgba(255,253,247,0.7);
  border-color: #c4b59a;
}
[data-theme="light"] .ly-theme-option.active {
  background: linear-gradient(180deg, rgba(138,104,16,0.15), rgba(138,104,16,0.05));
}
[data-theme="light"] .ly-summary { background: rgba(138,104,16,0.08); color: #3a3225; }
[data-theme="light"] .ly-yao-ci { color: #3a3225; }
[data-theme="light"] .ly-yao-row { border-bottom-color: rgba(180,160,120,0.35); }
