/* ============================================================
   前台 · 攻略搜索结果页（洮湖蓝 · 结果风）
   ============================================================ */
.gsearch { background:#F4F8F9; min-height:60vh; }

/* 顶部结果条 */
.gsearch-hero { background:linear-gradient(135deg,#073B47 0%,#0E6B78 55%,#0F8A93 100%); color:#fff; }
.gsearch-hero-in { max-width:1200px; margin:0 auto; padding:34px 24px 40px; }
.gsearch-crumb { font-size:12px; opacity:.75; margin-bottom:14px; }
.gsearch-crumb a { color:#BFE9EE; }
.gsearch-hero h1 { font-size:28px; font-weight:800; margin-bottom:6px; font-family:"Songti SC","STSong","SimSun",Georgia,serif; letter-spacing:.5px; }
.gsearch-total { font-size:13px; opacity:.9; margin-bottom:18px; }
.gsearch-total b { color:#7CE0EA; font-size:16px; }
.gsearch-form { display:flex; max-width:560px; background:#fff; border-radius:40px; overflow:hidden; box-shadow:0 8px 24px rgba(0,0,0,.18); }
.gsearch-form input { flex:1; border:none; outline:none; padding:13px 20px; font-size:14px; color:#123C46; font-family:inherit; }
.gsearch-form button { background:linear-gradient(135deg,#00B4C6,#00707E); color:#fff; border:none; padding:0 26px; font-size:14px; font-weight:600; cursor:pointer; font-family:inherit; }

/* 筛选 chips */
.gsearch-filter { max-width:1200px; margin:0 auto; padding:18px 24px 0; display:flex; flex-direction:column; gap:10px; }
.gsearch-frow { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.gsearch-frow .f-label { font-size:12px; color:#6B8290; margin-right:4px; }
.gsearch-frow .chip {
  padding:6px 16px; border-radius:20px; font-size:13px; background:#fff; color:#33505E;
  border:1px solid #DCE9EB; text-decoration:none; transition:all .15s;
}
.gsearch-frow .chip:hover { border-color:#00B4C6; color:#00707E; }
.gsearch-frow .chip.on { background:linear-gradient(135deg,#00B4C6,#00707E); color:#fff; border-color:transparent; font-weight:600; }

/* 结果网格 */
.gsearch-body { max-width:1200px; margin:0 auto; padding:22px 24px 60px; }
.gsearch-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.gs-card {
  background:#fff; border:1px solid #E4EEF0; border-radius:14px; overflow:hidden;
  text-decoration:none; color:inherit; display:block; transition:transform .18s, box-shadow .18s;
}
.gs-card:hover { transform:translateY(-4px); box-shadow:0 12px 26px rgba(6,58,68,.12); }
.gs-cover { position:relative; height:170px; background:linear-gradient(135deg,#0E7E8C,#2FBF71); overflow:hidden; }
.gs-cover img { width:100%; height:100%; object-fit:cover; }
.gs-cover-ph { display:flex; align-items:center; justify-content:center; height:100%; color:#fff; font-size:15px; font-weight:700; padding:0 16px; text-align:center; }
.gs-diff { position:absolute; top:12px; left:12px; padding:3px 12px; border-radius:12px; font-size:11px; font-weight:700; color:#fff; }
.gs-diff.easy { background:rgba(47,191,113,.92); }
.gs-diff.mid { background:rgba(217,145,33,.92); }
.gs-diff.hard { background:rgba(196,66,58,.92); }
.gs-body { padding:14px 16px 16px; }
.gs-body h3 { font-size:15px; font-weight:700; color:#123C46; margin-bottom:5px; line-height:1.5; }
.gs-ex { font-size:12px; color:#6B8290; line-height:1.7; margin-bottom:10px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.gs-meta { display:flex; gap:12px; font-size:11px; color:#8AA0AE; flex-wrap:wrap; }

/* 空结果 */
.gsearch-empty { background:#fff; border:1px dashed #C4DDE2; border-radius:16px; padding:60px 20px; text-align:center; }
.gsearch-empty .em-ico { font-size:40px; margin-bottom:12px; }
.gsearch-empty p { font-size:14px; color:#5B7380; margin-bottom:16px; }
.gsearch-empty .em-btn { display:inline-block; padding:9px 24px; background:linear-gradient(135deg,#00B4C6,#00707E); color:#fff; border-radius:22px; font-size:13px; text-decoration:none; }

/* 分页 */
.gsearch-pager { display:flex; justify-content:center; gap:8px; margin-top:28px; flex-wrap:wrap; }
.gsearch-pager .p-btn { padding:8px 16px; border-radius:8px; background:#fff; border:1px solid #DCE9EB; color:#33505E; font-size:13px; text-decoration:none; }
.gsearch-pager .p-btn.on { background:linear-gradient(135deg,#00B4C6,#00707E); color:#fff; border-color:transparent; }
.gsearch-pager .p-btn:hover { border-color:#00B4C6; }

@media (max-width: 900px) {
  .gsearch-grid { grid-template-columns:repeat(2,1fr); }
}
@media (max-width: 560px) {
  .gsearch-grid { grid-template-columns:1fr; }
  .gsearch-hero-in { padding:26px 18px 30px; }
}
