/* 网络安全百科模块样式 · knowledge/wiki.css (移动优先, 全断点自查) */
:root{--wp:#1a4f8b;--wp2:#123a68;--wacc:#0e8a6d;--wbg:#f4f7fb;--wcard:#fff;--wtxt:#22314a;--wmut:#6b7a90;--wline:#e3eaf4}
.wk-wrap{max-width:1120px;margin:0 auto;padding:0 16px 48px;color:var(--wtxt);font-size:15px;line-height:1.75}
.wk-hero{background:linear-gradient(135deg,var(--wp2),var(--wp) 60%,#2a6bb8);color:#fff;border-radius:0 0 22px 22px;padding:38px 16px 30px;text-align:center;margin:0 -16px 24px}
.wk-hero h1{font-size:26px;margin:0 0 6px;letter-spacing:2px}
.wk-hero p{opacity:.85;margin:0 0 18px;font-size:14px}
.wk-stats{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:16px}
.wk-stats span{background:rgba(255,255,255,.14);padding:4px 14px;border-radius:999px;font-size:13px}
.wk-search{display:flex;max-width:560px;margin:0 auto;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 6px 24px rgba(10,40,90,.25)}
.wk-search input{flex:1;border:0;padding:13px 16px;font-size:15px;outline:none;color:var(--wtxt)}
.wk-search button{border:0;background:var(--wacc);color:#fff;padding:0 22px;font-size:15px;cursor:pointer}
.wk-sec{margin:30px 0}
.wk-sec>h2{font-size:19px;margin:0 0 14px;display:flex;align-items:center;gap:8px}
.wk-sec>h2::before{content:"";width:4px;height:18px;background:var(--wacc);border-radius:2px}
.wk-cats{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.wk-cat{background:var(--wcard);border:1px solid var(--wline);border-radius:12px;padding:14px;cursor:pointer;transition:.18s;text-align:left;font-family:inherit}
.wk-cat:hover{border-color:var(--wp);transform:translateY(-2px);box-shadow:0 8px 20px rgba(26,79,139,.12)}
.wk-cat b{display:block;font-size:15px;margin:4px 0 2px}
.wk-cat small{color:var(--wmut);font-size:12px;display:block;height:32px;overflow:hidden}
.wk-cat em{font-style:normal;color:var(--wacc);font-size:12px}
.wk-list{display:flex;flex-direction:column;gap:10px}
.wk-item{background:var(--wcard);border:1px solid var(--wline);border-radius:12px;padding:14px 16px;display:block;text-decoration:none;color:inherit;transition:.15s}
.wk-item:hover{border-color:var(--wp);box-shadow:0 6px 16px rgba(26,79,139,.10)}
.wk-item h3{margin:0 0 4px;font-size:16px}
.wk-item p{margin:0;color:var(--wmut);font-size:13px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.wk-meta{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px;font-size:12px;color:var(--wmut);align-items:center}
.wk-tag{background:#eef4fc;color:var(--wp);padding:1px 8px;border-radius:999px}
.wk-board{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}
.wk-board .wk-item p{-webkit-line-clamp:1}
.wk-crumb{font-size:13px;color:var(--wmut);margin:18px 0 10px}
.wk-crumb a{color:var(--wp);text-decoration:none}
.wk-article{background:var(--wcard);border:1px solid var(--wline);border-radius:14px;padding:22px 18px}
.wk-article h1.at{font-size:24px;margin:0 0 4px;line-height:1.4}
.wk-atmeta{color:var(--wmut);font-size:13px;margin-bottom:16px;display:flex;gap:12px;flex-wrap:wrap}
.wk-body h2{font-size:20px;margin:26px 0 10px;border-left:4px solid var(--wacc);padding-left:10px}
.wk-body h3{font-size:17px;margin:20px 0 8px}
.wk-body p{margin:10px 0}
.wk-body a{color:var(--wp)}
.wk-body blockquote{margin:12px 0;padding:10px 14px;border-left:3px solid var(--wacc);background:#f0f8f5;border-radius:0 8px 8px 0;color:#33544a}
.wk-body table{width:100%;border-collapse:collapse;margin:14px 0;font-size:14px;display:block;overflow-x:auto}
.wk-body th,.wk-body td{border:1px solid var(--wline);padding:7px 10px;text-align:left;white-space:nowrap}
.wk-body th{background:#eef4fc}
.wcode{background:#0f2438;color:#d7e6f5;padding:14px;border-radius:10px;overflow-x:auto;font-size:13px;line-height:1.6}
.wcode.arch{background:#132c22;color:#cfeadb;border:1px dashed #3d8a6d}
.wic{background:#eef2f8;padding:1px 6px;border-radius:4px;font-size:.92em;color:#a33}
.wmath{background:#fbf7ee;color:#8a5a00;padding:1px 6px;border-radius:4px;font-family:Georgia,serif}
.wmath-block{background:#fbf7ee;border:1px solid #ecd9a8;border-radius:8px;padding:10px 14px;margin:12px 0;text-align:center;font-family:Georgia,serif;color:#6b4a00;overflow-x:auto}
.wimg-denied{color:#b3452e;font-size:13px}
.wanchor{opacity:0;font-size:13px;text-decoration:none;margin-left:6px}
.wk-body h2:hover .wanchor,.wk-body h3:hover .wanchor{opacity:.6}
.wk-author{display:flex;gap:12px;align-items:center;background:var(--wcard);border:1px solid var(--wline);border-radius:12px;padding:14px 16px;margin-top:18px;flex-wrap:wrap}
.wk-author .av{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,var(--wp),var(--wacc));color:#fff;display:flex;align-items:center;justify-content:center;font-size:19px}
.wk-btn{display:inline-block;background:var(--wp);color:#fff;border:0;border-radius:9px;padding:9px 18px;font-size:14px;cursor:pointer;text-decoration:none}
.wk-btn.green{background:var(--wacc)}
.wk-btn.ghost{background:#fff;color:var(--wp);border:1px solid var(--wp)}
.wk-btn.sm{padding:5px 12px;font-size:13px}
.wk-form{background:var(--wcard);border:1px solid var(--wline);border-radius:14px;padding:18px}
.wk-form label{display:block;font-size:13px;color:var(--wmut);margin:14px 0 5px}
.wk-form input,.wk-form select,.wk-form textarea{width:100%;box-sizing:border-box;border:1px solid var(--wline);border-radius:9px;padding:10px 12px;font-size:14px;color:var(--wtxt);background:#fbfcfe;font-family:inherit}
.wk-form textarea{min-height:280px;font-family:ui-monospace,Consolas,monospace;line-height:1.7;resize:vertical}
.wk-form input:focus,.wk-form select:focus,.wk-form textarea:focus{outline:none;border-color:var(--wp)}
.wk-bar{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0}
.wk-bar button{border:1px solid var(--wline);background:#fff;border-radius:6px;padding:4px 10px;font-size:13px;cursor:pointer;color:var(--wtxt)}
.wk-bar button:hover{border-color:var(--wp);color:var(--wp)}
.wk-hint{font-size:12px;color:var(--wmut);margin-top:6px}
.wk-tabs{display:flex;gap:8px;margin:16px 0;flex-wrap:wrap}
.wk-tabs button{border:1px solid var(--wline);background:#fff;border-radius:999px;padding:6px 16px;font-size:13px;cursor:pointer}
.wk-tabs button.on{background:var(--wp);color:#fff;border-color:var(--wp)}
.wk-st{display:inline-block;padding:1px 9px;border-radius:999px;font-size:12px}
.wk-st.pending{background:#fff6e0;color:#9a6a00}
.wk-st.approved{background:#e6f6ef;color:#0e7a5a}
.wk-st.rejected{background:#fdeae6;color:#b3452e}
.wk-empty{text-align:center;color:var(--wmut);padding:40px 0}
.wk-toast{position:fixed;left:50%;bottom:34px;transform:translateX(-50%);background:#22314a;color:#fff;padding:11px 22px;border-radius:10px;font-size:14px;z-index:9999;box-shadow:0 8px 30px rgba(0,0,0,.3);max-width:86vw}
.wk-navbox{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:14px}
.wk-navbox a{color:#fff;opacity:.85;font-size:13px;text-decoration:none;border:1px solid rgba(255,255,255,.35);padding:3px 12px;border-radius:999px}
.wk-navbox a:hover{opacity:1}
.wk-chip{background:var(--wcard);border:1px solid var(--wline);border-radius:999px;padding:6px 14px;font-size:13px}
.wk-chip b{color:var(--wacc)}
.wk-more{text-align:center;margin:16px 0}
@media(max-width:640px){
 .wk-hero h1{font-size:21px}.wk-article h1.at{font-size:20px}
 .wk-article{padding:16px 12px}.wk-cats{grid-template-columns:repeat(2,1fr)}
 .wk-search input{padding:11px 12px;font-size:14px}
 .wk-author .av{width:36px;height:36px;font-size:16px}
}




/* ===== 官网首页内联响应式规则(导航/页脚/移动汉堡 — style.css 不含任何 @media) =====
@media(max-width:1024px) {
      .about-grid,.founder-grid {
        grid-template-columns:1fr;
        gap:40px
      }
    .about-visual-card {
      position:relative;
      bottom:auto;
      right:auto;
      margin-top:20px;
      max-width:100%
    }
    .research-grid {
      grid-template-columns:1fr
    }
    .footer-grid {
      grid-template-columns:1fr 1fr
    }
    }
@media(max-width:768px) {
      .nav-links {
        display:none;
        position:absolute;
        top:72px;
        left:0;
        right:0;
        background:white;
        flex-direction:column;
        padding:16px 24px;
        box-shadow:0 8px 24px rgba(0,0,0,0.08);
        gap:4px;
        border-bottom:1px solid var(--border)
      }
    .nav-links.active {
      display:flex
    }
    .mobile-toggle {
      display:flex
    }
    .hero {
      padding-top:96px;
      min-height:auto;
      padding-bottom:48px
    }
    .hero-content {
      padding:0 16px
    }
    .hero-badge {
      font-size:12px;
      padding:6px 16px;
      margin-bottom:20px
    }
    .hero h1 {
      font-size:clamp(26px,7vw,36px);
      letter-spacing:-0.5px;
      margin-bottom:16px
    }
    .hero p {
      font-size:15px;
      margin-bottom:28px;
      line-height:1.7
    }
    .hero-actions {
      gap:12px
    }
    .hero-actions .btn {
      padding:12px 20px;
      font-size:14px;
      border-radius:10px
    }
    .slogan-carousel {
      min-height:80px
    }
    .slogan-item {
      font-size:13px;
      padding:0 16px
    }
    .about-content h3 {
      font-size:22px
    }
    .about-visual-main {
      padding:28px
    }
    .about-visual-card {
      padding:16px
    }
    .about-feature span {
      font-size:13px
    }
    .program-card {
      padding:20px
    }
    .program-card h3 {
      font-size:16px
    }
    .program-card p {
      font-size:13px
    }
    .program-card .icon-wrap {
      width:48px;
      height:48px;
      border-radius:12px
    }
    .program-card .icon-wrap svg {
      width:24px;
      height:24px
    }
    .programs-grid {
      grid-template-columns:1fr
    }
    .founder-image {
      min-height:auto;
      padding:20px
    }
    .founder-image img {
      max-width:100%;
      max-height:240px;
      width:auto;
      height:auto;
      object-fit:contain;
      display:block;
      border-radius:12px
    }
    .founder-image .placeholder {
      width:120px;
      height:120px;
      font-size:48px
    }
    .founder-content h3 {
      font-size:22px
    }
    .research-card {
      flex-direction:column;
      gap:12px
    }
    .cta-banner {
      padding:40px 24px
    }
    .cta-banner h3 {
      font-size:22px
    }
    .footer-grid {
      grid-template-columns:1fr;
      gap:32px
    }
    .section {
      padding:48px 0
    }
    .about-features {
      grid-template-columns:1fr
    }
    }
/* 用户中心入口统一胶囊样式(全站) */
.nav-links a.nav-cta{background:linear-gradient(135deg,#1a6eff,#0d4fc4);color:#fff !important;padding:8px 20px !important;border-radius:100px;font-weight:600;box-shadow:0 2px 10px rgba(26,110,255,.35)}
.nav-links a.nav-cta:hover{background:linear-gradient(135deg,#0d4fc4,#1a6eff) !important;color:#fff !important;transform:translateY(-1px)}
@media(max-width:768px){.nav-links a.nav-cta{margin:6px 12px;text-align:center}}

/* 用户芯片强化(登录态入口 → 用户中心) */
.wk-userchip{display:inline-flex;align-items:center;gap:6px;background:linear-gradient(135deg,#123a68,#1a4f8b);
  color:#fff;border-radius:999px;padding:7px 16px;font-size:13px;text-decoration:none;font-weight:600;
  box-shadow:0 4px 14px rgba(18,58,104,.25)}
.wk-userchip:hover{transform:translateY(-1px)}

/* ===== 结构级导航让位(所有知识页): fixed 导航 74px, 与官网各专栏一致 ===== */
body{padding-top:74px}
@media(max-width:768px){body{padding-top:64px}}


/* ===== 顶部大 banner: 与官网课题研究(research.html)同款清爽风 ===== */
:root{--primary:#1a6eff;--primary-gradient:linear-gradient(135deg,#1a6eff,#00c6ff);--wtext:#16233a;--wtext2:#4a5b74}
.wk-hero{position:relative;left:50%;transform:translateX(-50%);width:100vw;min-height:640px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:linear-gradient(180deg,#f0f5ff 0%,#ffffff 100%);padding-top:74px}
#wkCanvas{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1}
.wk-hero-overlay{position:absolute;inset:0;z-index:2;pointer-events:none;background:radial-gradient(ellipse at 30% 50%,transparent 0%,rgba(240,245,255,.2) 50%,rgba(255,255,255,.55) 100%)}
.wk-hero-content{position:relative;z-index:3;max-width:900px;text-align:center;padding:48px 24px}
.wk-hero-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(26,110,255,.08);color:var(--primary);font-size:13px;font-weight:600;padding:8px 20px;border-radius:100px;margin-bottom:24px;border:1px solid rgba(26,110,255,.15)}
.wk-hero-badge::before{content:'';width:6px;height:6px;background:var(--primary);border-radius:50%;animation:wkPulse 2s infinite}
@keyframes wkPulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.5)}}
@keyframes wkFadeUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}
.wk-hero h1{font-size:clamp(32px,5vw,52px);font-weight:900;line-height:1.15;color:var(--wtext);margin:0 0 20px;letter-spacing:-1px;animation:wkFadeUp .8s ease-out .15s both}
.wk-hero h1 .highlight{background:var(--primary-gradient);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.wk-hero-content>p{font-size:clamp(15px,2vw,18px);color:var(--wtext2);max-width:640px;margin:0 auto 32px;line-height:1.8;animation:wkFadeUp .8s ease-out .3s both}
.wk-hero .wk-search{position:relative;z-index:4;max-width:560px;margin:0 auto;box-shadow:0 8px 30px rgba(26,110,255,.14)}
.wk-hero-stats{display:flex;justify-content:center;gap:48px;margin-top:40px;flex-wrap:wrap;animation:wkFadeUp .8s ease-out .45s both}
.wk-stat-num{font-size:clamp(26px,3.4vw,40px);font-weight:900;color:var(--primary);font-variant-numeric:tabular-nums}
.wk-stat-label{font-size:13px;color:var(--wtext2);margin-top:4px}
#wkHot{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}
@media(max-width:768px){.wk-hero{min-height:540px;padding-top:64px}.wk-hero-stats{gap:26px}.wk-hero-content{padding:40px 16px}}

html,body{overflow-x:hidden}
