/* ===== 鑫乐种业 · 增强组件样式（天气/节气日历/品种对比） ===== */

/* --- 天气小组件 --- */
.weather-widget { background: linear-gradient(135deg, #234932 0%, #2f5c40 100%); border-radius: 16px; padding: 20px 24px; color: #f4f0e8; display: flex; align-items: center; gap: 20px; flex-wrap: wrap; box-shadow: 0 10px 30px rgba(16,34,25,.18); }
.weather-main { display: flex; align-items: center; gap: 14px; }
.weather-icon { font-size: 2.6rem; line-height: 1; }
.weather-temp { font-size: 2rem; font-weight: 700; line-height: 1.1; }
.weather-desc { font-size: .85rem; opacity: .85; }
.weather-details { display: flex; gap: 18px; font-size: .82rem; opacity: .9; flex-wrap: wrap; }
.weather-details span { display: flex; align-items: center; gap: 5px; }
.weather-farm-tip { flex-basis: 100%; margin-top: 4px; padding-top: 12px; border-top: 1px solid rgba(244,240,232,.2); font-size: .88rem; line-height: 1.6; }
.weather-farm-tip strong { color: #e8c97a; }
.weather-loading, .weather-error { font-size: .9rem; opacity: .8; }

/* --- 节气农事日历 --- */
.solar-terms { overflow: hidden; }
.solar-terms-track-wrap { position: relative; margin: 28px 0 8px; }
.solar-terms-track { display: flex; gap: 10px; overflow-x: auto; padding: 6px 4px 16px; scroll-behavior: smooth; -webkit-overflow-scrolling: touch; scrollbar-width: thin; }
.solar-terms-track::-webkit-scrollbar { height: 6px; }
.solar-terms-track::-webkit-scrollbar-thumb { background: #234932; border-radius: 3px; opacity: .3; }
.solar-term-item { flex: 0 0 auto; width: 88px; padding: 14px 8px; border: 1px solid rgba(35,73,50,.18); border-radius: 12px; background: #fff; text-align: center; cursor: pointer; transition: all .25s ease; }
.solar-term-item:hover { border-color: #234932; transform: translateY(-3px); box-shadow: 0 8px 20px rgba(16,34,25,.12); }
.solar-term-item.active { background: #234932; color: #f4f0e8; border-color: #234932; }
.solar-term-item.current { border-color: #c9a227; box-shadow: 0 0 0 2px rgba(201,162,39,.3); }
.solar-term-item .term-name { font-weight: 700; font-size: .95rem; display: block; }
.solar-term-item .term-date { font-size: .72rem; opacity: .7; display: block; margin-top: 4px; }
.solar-term-item .term-season { font-size: .68rem; opacity: .6; display: block; margin-top: 2px; }
.solar-term-detail { background: #fff; border: 1px solid rgba(35,73,50,.15); border-radius: 16px; padding: 26px 28px; margin-top: 18px; }
.solar-term-detail h3 { color: #234932; font-size: 1.25rem; margin-bottom: 6px; }
.solar-term-detail .term-range { font-size: .82rem; color: #888; margin-bottom: 14px; }
.solar-term-detail .term-crops { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 14px; }
.solar-term-detail .term-crop-tag { background: rgba(35,73,50,.08); color: #234932; font-size: .78rem; padding: 4px 12px; border-radius: 999px; }
.solar-term-detail ul { padding-left: 1.2em; line-height: 1.9; color: #444; font-size: .95rem; }
.solar-terms-nav { display: flex; gap: 8px; justify-content: flex-end; }
.solar-terms-nav button { width: 38px; height: 38px; border-radius: 50%; border: 1px solid rgba(35,73,50,.25); background: #fff; color: #234932; font-size: 1.1rem; cursor: pointer; transition: all .2s; }
.solar-terms-nav button:hover { background: #234932; color: #f4f0e8; }

/* --- 品种对比工具 --- */
.compare-tool { }
.compare-picker { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 12px; margin: 22px 0; }
.compare-chip { position: relative; border: 2px solid rgba(35,73,50,.18); border-radius: 12px; padding: 12px 10px; background: #fff; cursor: pointer; text-align: center; transition: all .2s ease; }
.compare-chip:hover { border-color: #234932; }
.compare-chip.selected { border-color: #234932; background: rgba(35,73,50,.06); }
.compare-chip.selected::after { content: "✓"; position: absolute; top: -8px; right: -8px; width: 22px; height: 22px; background: #234932; color: #fff; border-radius: 50%; font-size: .75rem; display: flex; align-items: center; justify-content: center; }
.compare-chip img { width: 56px; height: 56px; object-fit: contain; }
.compare-chip .chip-name { display: block; font-weight: 700; font-size: .9rem; color: #234932; margin-top: 6px; }
.compare-chip .chip-type { display: block; font-size: .7rem; color: #888; margin-top: 2px; }
.compare-hint { font-size: .85rem; color: #777; margin-bottom: 14px; }
.compare-table-wrap { overflow-x: auto; border-radius: 14px; border: 1px solid rgba(35,73,50,.15); }
.compare-table { width: 100%; border-collapse: collapse; background: #fff; min-width: 560px; }
.compare-table th, .compare-table td { padding: 13px 16px; text-align: left; border-bottom: 1px solid rgba(35,73,50,.1); font-size: .9rem; }
.compare-table th { background: rgba(35,73,50,.06); color: #234932; font-weight: 700; white-space: nowrap; }
.compare-table td:first-child { color: #888; font-size: .82rem; white-space: nowrap; }
.compare-table tr:last-child th, .compare-table tr:last-child td { border-bottom: none; }
.compare-table .compare-product-head { text-align: center; }
.compare-table .compare-product-head img { width: 72px; height: 72px; object-fit: contain; }
.compare-table .compare-product-head .name { font-size: 1.05rem; color: #234932; }
.compare-empty { text-align: center; padding: 36px 20px; color: #999; font-size: .92rem; background: #fff; border: 1px dashed rgba(35,73,50,.25); border-radius: 14px; }

@media (max-width: 820px) {
  .weather-widget { padding: 16px 18px; gap: 14px; }
  .weather-icon { font-size: 2rem; }
  .weather-temp { font-size: 1.6rem; }
  .solar-term-detail { padding: 20px; }
  .compare-picker { grid-template-columns: repeat(3, 1fr); gap: 8px; }
  .compare-chip img { width: 44px; height: 44px; }
}

/* --- 布局工具类 --- */
.section--flush-top { padding-top: 0; }
.section-sub { color: #666; margin-top: 8px; }
