
/* ===== GEO 案例库 · 基础样式 ===== */
:root{
  --brand:#3d85c6; --brand-dark:#2f6fa6; --ink:#1f2d3d; --muted:#6b7c8f;
  --line:rgba(61,133,198,.18); --panel:#fff; --soft:#f6f9fc; --warm:#f6f8fa;
  --shell:1380px;
  --navy:#073b72; --primary:#0d7eea; --primary-hover:#158fff; --text:#52677d;
  --sline:#e5f2ff; --ssoft:#f6fbff; --sc-bg:#f4f7fb; --sc:1180px;
  --radius-card:clamp(24px,3vw,34px);
  --font-sans:"HarmonyOS Sans SC","PingFang SC","Hiragino Sans GB","Microsoft YaHei",system-ui,-apple-system,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:#fff;color:var(--ink);font-family:var(--font-sans);font-size:14px;line-height:1.6}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto}
button,input,select{font-family:inherit}
.top-banner{background:#eaf4ff;color:var(--navy);text-align:center;font-size:13px;padding:8px 16px}
.top-banner b{color:var(--primary)}
.site-header{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.92);backdrop-filter:blur(20px);border-bottom:1px solid var(--sline);box-shadow:0 10px 28px rgba(7,59,114,.04)}
.header-inner{width:min(var(--sc),calc(100% - 32px));margin:0 auto;min-height:72px;display:flex;align-items:center;gap:28px}
.brand{display:flex;align-items:center;gap:10px;font-size:22px;font-weight:900;color:var(--navy);white-space:nowrap}
.brand-mark{width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,var(--primary),#38b6ff);display:grid;place-items:center;color:#fff;font-size:18px;font-weight:900}
.site-nav{display:flex;gap:30px;margin-left:auto}
.site-nav a{position:relative;color:var(--navy);font-size:16px;font-weight:800;padding-bottom:4px}
.site-nav a:after{content:"";position:absolute;left:50%;bottom:-2px;width:0;height:3px;border-radius:2px;background:var(--primary);transform:translateX(-50%);transition:width .3s}
.site-nav a:hover{color:var(--primary)}
.site-nav a:hover:after{width:100%}
.header-actions{display:flex;align-items:center;gap:14px}
.link-btn{border:0;background:transparent;color:var(--navy);font-size:16px;font-weight:800;cursor:pointer}
.link-btn:hover{color:var(--primary)}
.cta{padding:11px 22px;border-radius:999px;background:var(--primary);color:#fff;font-weight:800;font-size:15px;box-shadow:0 12px 26px rgba(13,126,234,.28)}
.cta:hover{background:var(--primary-hover)}
.burger{display:none;font-size:22px;background:none;border:0;color:var(--navy)}
.page-head{width:min(var(--shell),calc(100% - 48px));margin:0 auto;padding:34px 0 18px;text-align:center}
.page-title{margin:0;color:var(--brand);font-size:36px;font-weight:800;line-height:1.18;text-wrap:balance}
.page-subtitle{margin:11px 0 0;color:#666;font-size:23px;font-weight:600;line-height:1.42}
.page-subline{margin:9px 0 0;color:#666;font-size:19px;font-weight:500}
.query{width:min(var(--shell),calc(100% - 48px));margin:0 auto 18px}
.search-form{display:grid;grid-template-columns:minmax(260px,1fr) 192px 92px;gap:12px;align-items:center;padding:8px;border:1px solid rgba(31,45,61,.1);border-radius:10px;background:#fff;box-shadow:0 12px 28px rgba(31,45,61,.06)}
.search-input{height:48px;padding:0 16px;border:1px solid #d7e3ee;border-radius:6px;font-size:14px;color:var(--ink);background:#f8fafc;outline:none}
.search-input:focus{border-color:rgba(61,133,198,.54);box-shadow:0 0 0 3px rgba(61,133,198,.14)}
.select{position:relative}
.select-trigger{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;height:48px;padding:0 12px;border:1px solid #d7e3ee;border-radius:6px;background:#f8fafc;color:var(--ink);font-size:14px;cursor:pointer}
.select-trigger:hover{border-color:rgba(61,133,198,.54)}
.select-menu{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:40;display:none;max-height:280px;overflow:auto;padding:4px;border:1px solid #d7e3ee;border-radius:8px;background:#fff;box-shadow:0 10px 28px rgba(15,23,42,.12)}
.select.is-open .select-menu{display:block}
.select-option{display:block;width:100%;padding:8px 10px;border:0;border-radius:5px;background:transparent;text-align:left;font-size:14px;color:var(--ink);cursor:pointer}
.select-option:hover,.select-option[aria-selected="true"]{color:var(--brand-dark);background:var(--warm)}
.search-btn{height:48px;border:0;border-radius:6px;background:var(--brand);color:#fff;font-size:15px;font-weight:700;cursor:pointer}
.search-btn:hover{background:var(--brand-dark)}
.result-bar{width:min(var(--shell),calc(100% - 48px));margin:0 auto 14px;display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.result-count{font-size:14px;color:var(--muted)}
.result-count b{color:var(--brand-dark)}
.skin-switch{margin-left:auto;display:flex;gap:8px}
.skin-switch button{padding:7px 14px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--muted);font-size:13px;font-weight:600;cursor:pointer}
.skin-switch button.is-active{border-color:transparent;background:var(--brand);color:#fff}
.pager{width:min(var(--shell),calc(100% - 48px));margin:26px auto 10px;display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap}
.page-item{min-width:34px;height:34px;padding:0 10px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--ink);font-size:13px;cursor:pointer}
.page-item:hover{border-color:var(--brand);color:var(--brand-dark)}
.page-item.is-active{background:var(--brand);border-color:var(--brand);color:#fff;font-weight:700}
.page-item.is-disabled{color:#c3ced9;cursor:not-allowed;border-color:#e9eff5}
.page-jump{display:flex;align-items:center;gap:6px;margin-left:10px;color:var(--muted);font-size:13px}
.page-jump input{width:56px;height:34px;border:1px solid var(--line);border-radius:6px;text-align:center;font-size:13px;color:var(--ink)}
.tag{display:inline-flex;align-items:center;max-width:100%;padding:2px 8px;border:1px solid rgba(66,84,102,.14);border-radius:999px;background:#f8fafc;color:#64748b;font-size:11px;font-weight:600;line-height:1.6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.site-footer{margin-top:44px;padding:26px 16px 34px;border-top:1px solid var(--sline);color:var(--muted);font-size:13px;text-align:center}
.site-footer a{color:var(--brand-dark)}
.footer-links{margin-top:8px;display:flex;gap:18px;justify-content:center;flex-wrap:wrap}
.detail{width:min(var(--sc),calc(100% - 32px));margin:26px auto 40px}
.back-btn{margin-bottom:18px;padding:9px 18px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--brand-dark);font-size:14px;font-weight:700;cursor:pointer}
.detail-card{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:28px;background:#fff;border:1px solid var(--sline);border-radius:var(--radius-card);padding:28px}
.detail-title{margin:0 0 6px;color:var(--navy);font-size:30px;font-weight:900;line-height:1.3}
.detail-meta{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0 16px}
.detail-body{color:var(--text);font-size:15px;line-height:1.95;white-space:pre-wrap}
.detail-side{border-left:1px solid var(--sline);padding-left:24px}
.detail-side img{width:100%;border-radius:16px;border:1px solid var(--sline);background:#fff;object-fit:contain}
.side-row{margin-top:14px;font-size:13px;color:var(--muted)}
.side-row b{display:block;color:var(--navy);font-size:13px;margin-bottom:2px}
.visit-btn{display:inline-flex;align-items:center;gap:8px;margin-top:18px;padding:12px 22px;border-radius:999px;background:var(--primary);color:#fff;font-weight:800}
@media (max-width:1152px){
  .page-title{font-size:30px}.page-subtitle{font-size:19px}.page-subline{font-size:16px}
  .search-form{grid-template-columns:minmax(0,1fr) 160px 80px}
  .detail-card{grid-template-columns:1fr}
  .detail-side{border-left:0;padding-left:0;border-top:1px solid var(--sline);padding-top:18px}
}
@media (max-width:760px){
  .site-nav{display:none}.burger{display:block;margin-left:auto}
  .search-form{grid-template-columns:1fr 72px}
  .search-form .select{grid-column:1/-1;order:3}
  .page-title{font-size:26px}
  .detail-title{font-size:22px}
}
