
:root{
  --bg:#f6f8fc;--text:#142033;--muted:#5b6b83;--link:#0b57d0;--nav-text:#fff;
  --nav-bg:linear-gradient(90deg,#0b57d0,#169b8f);
  --footer-bg:#0e1b3a;--footer-text:#e8eefc;
  --surface:#ffffff;--surface-2:#f2f7ff;--border:#e5ecfb
}
*{box-sizing:border-box}
html,body{background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,"PingFang SC","Microsoft YaHei",Arial,sans-serif;line-height:1.65;margin:0;overflow-x:hidden}
a{color:var(--link);text-decoration:none}
a:hover{text-decoration:none;opacity:.94}
img{max-width:100%;height:auto;display:block}
.container{max-width:100%;margin:0 auto;padding:0 12px}
.wrap{max-width:1280px;margin:0 auto;padding:0 16px}

/* Topbar */
.topbar{background:#fff;border-bottom:1px solid var(--border);position:relative;z-index:2400}
.topbar .container{display:flex;align-items:center;gap:8px;min-height:44px;flex-wrap:nowrap}
.topbar .left{display:flex;gap:8px;min-width:0;flex:0 1 auto;white-space:nowrap}
.topbar .right{margin-left:auto;display:flex;gap:10px;align-items:center;flex:0 1 auto;justify-content:flex-end;min-width:0;flex-wrap:nowrap;white-space:nowrap}
.topbar .auth a,.app-link{padding:6px 12px;border-radius:999px;border:1px solid #d2ddf2;background:#fff;white-space:nowrap;display:inline-block;font-size:14px}
.lang-switch{font-size:14px;white-space:nowrap}

/* Header & Nav */
.header{background:var(--nav-bg);position:sticky;top:0;z-index:3000}
.header .container{display:flex;justify-content:center}
.header-inner{display:grid;grid-template-columns:auto 1fr auto auto;gap:14px;align-items:center;min-height:64px;width:100%}
.branding{display:flex;align-items:center;gap:10px}
.branding .logo-img,.custom-logo{max-height:48px;width:auto}
.site-title a{color:var(--nav-text);font-weight:700;letter-spacing:.3px;white-space:nowrap}
.nav{display:flex;justify-content:center;align-items:center}
.nav .menu{list-style:none;display:flex;gap:8px;margin:0;padding:0;justify-content:center}
.nav .menu a{color:var(--nav-text);padding:10px 14px;border-radius:12px;display:inline-block}
.nav .menu a:hover{background:rgba(255,255,255,.14)}
.hamburger{display:none;background:transparent;border:0;color:#fff;font-size:24px;line-height:1;cursor:pointer;padding:8px;border-radius:10px;position:relative;z-index:5050}

/* Desktop: center nav, keep search at right */
@media (min-width:981px){
  .header-inner{display:grid;grid-template-columns:auto 1fr auto;align-items:center}
  .branding{justify-self:start}
  .nav{justify-self:center}
  .nav-search{justify-self:end}
}

/* Search dropdown */
.nav-search{position:relative}
.search-btn{display:inline-flex;align-items:center;justify-content:center;background:rgba(255,255,255,.10);border:0;cursor:pointer;padding:10px;border-radius:14px;transition:.18s}
.search-btn:hover{background:rgba(255,255,255,.18);transform:translateY(-1px)}
.search-btn svg{width:22px;height:22px;fill:#fff;display:block}
.search-pop{position:absolute;right:0;top:calc(100% + 10px);width:min(560px,92vw);background:#fff;border:1px solid #e6edff;border-radius:16px;box-shadow:0 18px 50px rgba(11,87,208,.16),0 4px 14px rgba(0,0,0,.08);padding:12px;opacity:0;transform:translateY(-6px) scale(.98);pointer-events:none;transition:.18s;z-index:4100}
.search-pop.open{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}
.search-form{display:flex;gap:10px}
.search-form .search-field{flex:1;padding:12px 14px;border:1px solid #d7e3ff;border-radius:12px;font-size:16px;outline:none}
.search-form .search-field:focus{border-color:#9cc0ff;box-shadow:0 0 0 3px rgba(156,192,255,.22)}
.search-form .search-submit{padding:10px 14px;border-radius:12px;border:1px solid #ccd6ee;background:#f7f9ff;cursor:pointer}

/* Mobile drawer top-most */
@media (max-width:980px){
  .hamburger{display:inline-block}
  .nav{display:none}
  .header-inner{grid-template-columns:auto 1fr auto}
  .site-title a{font-size:16px;max-width:55vw;overflow:hidden;text-overflow:ellipsis}
}
.drawer-mask{position:fixed;inset:0;background:rgba(0,0,0,.45);opacity:0;pointer-events:none;transition:.25s;z-index:4985}
.drawer-mask.show{opacity:1;pointer-events:auto}
.mobile-drawer{position:fixed;inset:0 0 0 auto;width:min(84%,360px);background:#14244f;color:#fff;transform:translateX(100%);transition:.25s;z-index:5055;padding:16px 12px;overflow:auto}
.mobile-drawer.open{transform:translateX(0)}
.mobile-drawer .menu{list-style:none;margin:0;padding:0}
.mobile-drawer .menu a{display:block;color:#fff;padding:10px;border-radius:10px}

/* Sections / Posts */
.section-gap{padding:18px 0}
.surface{background:var(--surface);border-radius:16px;padding:14px;border:1px solid var(--border)}
.main-with-sidebar{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:16px}
@media (max-width:980px){.main-with-sidebar{grid-template-columns:1fr}}
.post-card{display:grid;grid-template-columns:120px 1fr;gap:12px;padding:12px;border-radius:14px;background:transparent;border:1px solid var(--border)}
.post-card .thumb{width:100%;height:86px;overflow:hidden;border-radius:10px}
.post-card .thumb img{width:100%;height:100%;object-fit:cover}

/* Banner */
.banner-wrap{position:relative;width:100%}
.banner-img{width:100%;height:clamp(260px,42vw,520px);object-fit:cover;display:block}
.banner-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-align:center}
.banner-overlay .overlay-inner{padding:8px 12px}
.banner-overlay .overlay-inner p{margin:.3em 0 1em 0;color:#fff;font-size:18px;text-shadow:0 2px 6px rgba(0,0,0,.18)}
.banner-cta{padding:10px 18px;border-radius:999px;border:1px solid rgba(255,255,255,.85);color:#fff;background:rgba(11,87,208,.9);display:inline-block}

/* --- App 展示（回滚 15.8.3 视觉） --- */
.app-block .app-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:24px;align-items:center;
  background:#fff;border:1px solid var(--border);border-radius:20px;padding:24px}
.app-block .app-title{margin:0 0 8px 0;font-size:24px}
.app-block .app-desc{margin:0 0 14px 0;color:#4d5c78}
.app-block .app-actions{display:flex;gap:10px;flex-wrap:wrap}
.app-block .app-actions .app-link{padding:10px 14px;border:1px solid #d2ddf2;border-radius:12px;background:#fff;display:inline-block}
.app-block .visual img{border-radius:16px;border:1px solid var(--border)}
@media (max-width:900px){.app-block .app-grid{grid-template-columns:1fr}}

/* 最新文章宫格 */
#latest-posts .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
@media (max-width:1024px){#latest-posts .grid{grid-template-columns:1fr 1fr}}
@media (max-width:640px){#latest-posts .grid{grid-template-columns:1fr}}

/* --- FAQ（回滚 15.8.3 视觉） --- */
#home-faq .faq details{border:1px solid var(--border);border-radius:12px;padding:12px 14px;background:#fff}
#home-faq .faq details+details{margin-top:10px}
#home-faq .faq summary{cursor:pointer;font-weight:600;color:#152647}
#home-faq .faq .answer{margin-top:8px;color:#42506a}

/* Footer */
.site-footer{background:#0e1b3a;color:#e8eefc;margin-top:28px}
.site-footer a{color:#fff}
.footer-columns{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:28px;padding:32px 0}
.footer-columns h3{margin:.2em 0 .6em 0;font-size:18px}
.footer-columns ul{list-style:none;margin:0;padding:0}
.footer-bottom{border-top:1px solid rgba(255,255,255,.14);color:#fff;padding:14px 0;text-align:center;font-size:14px}
@media (max-width:1024px){.footer-columns{grid-template-columns:1fr 1fr 1fr}}
@media (max-width:680px){.footer-columns{grid-template-columns:1fr 1fr;text-align:center}}
@media (max-width:480px){.footer-columns{grid-template-columns:1fr;text-align:center}}

/* Prev/Next + Comments */
.post-nav{display:flex;justify-content:space-between;gap:12px;margin-top:18px}
.post-nav a{display:inline-flex;align-items:center;gap:8px;padding:12px 18px;border:1px solid var(--border);border-radius:12px;background:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1 1 0}
.post-nav .prev a::before{content:'←';}
.post-nav .next a::after{content:'→';}
@media (max-width:640px){.post-nav{flex-direction:column} .post-nav a{flex:none}}
.comment-form.flat{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.comment-form.flat .comment-form-comment{grid-column:1 / -1}
.comment-form.flat input[type=text],.comment-form.flat input[type=email],.comment-form.flat textarea{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:#fff;outline:none;box-shadow:none;transition:border-color .2s}
.comment-form.flat textarea{min-height:140px;resize:vertical}
.comment-form.flat input:focus,.comment-form.flat textarea:focus{border-color:#9cc0ff}
.comment-form.flat .form-submit{grid-column:1 / -1}
.comment-form.flat input[type=submit]{padding:10px 16px;border-radius:999px;border:1px solid #d2ddf2;background:#fff;cursor:pointer}
@media (max-width:640px){.comment-form.flat{grid-template-columns:1fr}}

/* --- HOTFIX: 顶部注册/登录自适应，避免换行 --- */
.topbar .right{flex:1 1 auto; min-width:0; gap:8px; justify-content:flex-end; flex-wrap:nowrap}
.topbar .auth{display:flex; gap:8px; flex:0 1 auto; min-width:0; align-items:center; white-space:nowrap}
.topbar .auth a{padding:6px 10px; font-size:14px; line-height:1}
@media (max-width:520px){
  .topbar .auth a{padding:5px 8px; font-size:13px}
  .lang-switch{font-size:13px}
}
@media (max-width:420px){
  .topbar .auth a{padding:4px 7px; font-size:12px}
  .lang-switch{font-size:12px}
}
