/* ================================================================
   site.css · 全站样式（新野兽派 · 结构化分节）
   01 基础主题（浅色基础 / 通用控件保留项）
   02 详情页基础（article-* / screenshots / section-h / breadcrumb）
   03 详情增强（评分收藏 / 截图轮播 / 版本时间线 / 评论 / 问题反馈）
   04 大眼仔风格详情（dz-* 信息表 + 下载区）
   05 新野兽派 · 我的软件首页 + 其他软件（nb-* 网格卡片）
   06 新野兽派 · 详情页（nb-detail）
   07 新野兽派 · 统一外壳（nb-topbar / nb-footer / 返回顶部）
   08 新野兽派 · 公共面板 / 表单 / 用户中心（整站一致）
   ================================================================ */
/* ============ 01 · 基础主题（浅色基础 / 通用控件） ============ */
:root{
  --primary:#0969da;
  --primary-dark:#0550ae;
  --primary-light:rgba(9,105,218,.1);
  --accent:#1a7f37;
  --text:#1f2328;
  --text-muted:#57606a;
  --text-weak:#6e7781;
  --border:#d0d7de;
  --border-hover:#8c959f;
  --bg:#ffffff;
  --bg-deep:#f6f8fa;
  --card:#ffffff;
  --card-hover:#f6f8fa;
  --radius:8px;
  --radius-lg:12px;
  --shadow:0 8px 24px rgba(31,35,40,.08);
  --container:1240px;
}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{
  font-family:"Inter","HarmonyOS Sans SC","PingFang SC","Microsoft YaHei",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  background:var(--bg);
  color:var(--text);
  line-height:1.65;
  font-size:15px;
  -webkit-font-smoothing:antialiased;
}a{color:var(--primary);text-decoration:none;transition:color .15s}a:hover{color:#0550ae}img{max-width:100%;display:block}.clearfix::after{content:"";display:table;clear:both}.container-fluid{max-width:var(--container);margin:0 auto;padding:0 16px}small{font-size:.8em}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--bg-deep)}::-webkit-scrollbar-thumb{background:#d0d7de;border-radius:6px}::-webkit-scrollbar-thumb:hover{background:#afb8c1}.nav-drop-menu{
  position:absolute;top:100%;left:0;margin-top:8px;
  background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);
  box-shadow:var(--shadow);padding:6px;min-width:150px;
  display:none;flex-direction:column;z-index:1001;
}@keyframes navDropIn{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.nav-drop-menu a{padding:8px 12px;border-radius:6px;color:var(--text-muted);font-size:14px;transition:all .15s}.nav-drop-menu a:hover{background:rgba(31,35,40,.08);color:var(--text)}.site-breadcrumb{max-width:var(--container);margin:0 auto;padding:10px 16px;font-size:13px;color:var(--text-muted)}.site-breadcrumb i{margin-right:4px;color:var(--text-weak)}.site-breadcrumb a{color:var(--text-muted)}.site-breadcrumb a:hover{color:var(--primary)}.pagination{display:flex;justify-content:center;align-items:center;gap:6px;padding:26px 0 8px;flex-wrap:wrap}.pagination .total{margin-right:12px;color:var(--text-muted);font-size:13px}.pagination a,.pagination span{
  padding:6px 12px;border:1px solid var(--border);border-radius:6px;
  background:var(--card);color:var(--text-muted);font-size:13px;transition:all .15s;
}.pagination a:hover{border-color:var(--primary);color:var(--primary)}.pagination .current{background:var(--primary);color:#fff;border-color:var(--primary);font-weight:600}.pagination .ellipsis{border:none;background:transparent}.empty-state{text-align:center;padding:64px 20px;color:var(--text-weak)}.empty-state i{font-size:44px;display:block;margin-bottom:12px;opacity:.5}.section-h{border-left:3px solid var(--primary);padding-left:10px;margin:24px 0 12px;font-size:16px;font-weight:600}.screenshots{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.screenshots img{border-radius:8px;border:1px solid var(--border);cursor:pointer;transition:border-color .15s,transform .15s}.screenshots img:hover{transform:scale(1.01);border-color:var(--border-hover)}/* ============ 02 · 详情页基础（article-* / screenshots / section-h / breadcrumb） ============ */
.article-card{
  background:var(--card);
  border:1px solid var(--border);border-radius:var(--radius-lg);
  padding:28px;margin-bottom:18px;
}.article-excerpt{
  background:rgba(31,35,40,.04);border-left:3px solid var(--primary);
  padding:12px 16px;border-radius:0 8px 8px 0;margin-bottom:20px;
  color:var(--text-muted);font-size:13.5px;line-height:1.8;
}.article-excerpt .ex-label{font-weight:600;color:var(--primary);margin-right:4px}.article-body{font-size:15px;line-height:1.9;color:var(--text)}.article-body p{margin:0 0 14px}.article-body h2,.article-body h3{margin:22px 0 12px;font-weight:600}.article-body img{max-width:100%;border-radius:8px;margin:10px 0}.article-body ul,.article-body ol{padding-left:22px;margin:0 0 14px}.article-body a{color:var(--primary);text-decoration:underline}.article-body code{background:rgba(31,35,40,.1);padding:2px 7px;border-radius:5px;font-size:.9em}.article-body blockquote{border-left:3px solid var(--border);padding:10px 14px;background:rgba(31,35,40,.04);border-radius:0 8px 8px 0;color:var(--text-muted);margin:14px 0}.article-body table{width:100%;border-collapse:collapse;margin:14px 0}.article-body th,.article-body td{border:1px solid var(--border);padding:8px 12px;text-align:left}.article-body th{background:rgba(31,35,40,.05)}.dl-copy{
  margin-left:6px;padding:1px 9px;border:1px solid var(--border);
  background:transparent;border-radius:5px;cursor:pointer;font-size:11.5px;color:var(--text-muted);transition:all .15s;
}.dl-copy:hover{border-color:var(--primary);color:var(--primary)}.article-tags{padding:16px 0;border-top:1px solid var(--border);margin-top:8px;display:flex;align-items:center;flex-wrap:wrap;gap:6px}.article-tags .t-label{color:var(--text-muted);font-size:13px;margin-right:6px}.article-tags .tag{
  display:inline-block;padding:3px 11px;background:rgba(31,35,40,.06);
  color:var(--text-muted);border-radius:20px;font-size:12px;transition:all .15s;
}.article-tags .tag:hover{background:rgba(9,105,218,.12);color:var(--primary)}.copyright-box{
  background:rgba(154,103,0,.05);border:1px solid rgba(154,103,0,.2);
  border-radius:8px;padding:14px 16px;margin-top:18px;font-size:12.5px;color:var(--text-muted);line-height:1.8;
}.copyright-box p{margin:0 0 4px}.copyright-box a{color:var(--primary);word-break:break-all}.related-box{
  background:var(--card);
  border:1px solid var(--border);border-radius:var(--radius-lg);padding:22px;margin-bottom:18px;
}.related-hd{font-size:15px;font-weight:600;margin:0 0 14px;border-left:3px solid var(--primary);padding-left:10px}.related-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px}.related-list li a{
  display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 10px;
  background:rgba(31,35,40,.04);border:1px solid var(--border);border-radius:8px;
  text-align:center;color:var(--text-muted);font-size:12.5px;transition:all .15s;
}.related-list li a:hover{border-color:var(--primary);color:var(--text)}.related-list img{width:44px;height:44px;border-radius:8px;object-fit:cover}.related-list i{font-size:32px;color:var(--text-muted)}.related-list .r-name{line-height:1.3;word-break:break-all}.related-list .r-date{font-size:11px;color:var(--text-weak)}.comment-form{
  background:rgba(31,35,40,.03);border:1px solid var(--border);border-radius:10px;
  padding:16px;margin-bottom:18px;
}.comment-form .cf-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:10px}.comment-form .form-control{
  width:100%;padding:8px 12px;background:var(--bg-deep);
  border:1px solid var(--border);border-radius:6px;font-size:13.5px;color:var(--text);outline:none;transition:border-color .15s;
}.comment-form .form-control:focus{border-color:var(--primary)}.comment-form .form-control::placeholder{color:var(--text-weak)}.comment-item{
  background:var(--card);border:1px solid var(--border);border-radius:10px;
  padding:14px 16px;margin-bottom:11px;
}.comment-item .c-head{display:flex;align-items:center;gap:10px;margin-bottom:7px}.comment-item .c-avatar{
  width:34px;height:34px;border-radius:50%;
  background:rgba(9,105,218,.12);color:var(--primary);
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
}.comment-item .c-user{font-weight:600;font-size:13.5px}.comment-item .c-time{font-size:11.5px;color:var(--text-muted)}.comment-item .c-body{color:var(--text-muted);font-size:13.5px;line-height:1.7}.pagination .last{margin-left:4px}.captcha-group{margin-bottom:16px}.captcha-row{display:flex;gap:10px;align-items:center}.captcha-img{height:40px;border-radius:6px;cursor:pointer;border:1px solid var(--border);flex-shrink:0}.captcha-img:hover{opacity:.85}.reveal{opacity:0;transform:translateY(14px);transition:opacity .45s ease,transform .45s cubic-bezier(.2,.7,.3,1)}.reveal.in{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion: reduce){.reveal{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}
}@media(max-width:768px){.container-fluid{padding:0 12px}.comment-form .cf-row{grid-template-columns:1fr}
}.own-body{background:var(--bg);margin:0;min-height:100vh}.own-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px;padding-bottom:16px;border-bottom:1px solid var(--border)}.own-grid-lg{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.own-detail-layout{display:grid;grid-template-columns:1fr 280px;gap:22px;align-items:start}.own-detail-main{min-width:0}.own-detail-side{position:sticky;top:80px}.own-side-card{
  background:var(--card);
  border:1px solid var(--border);border-radius:var(--radius-lg);padding:16px;
}.own-side-card h3{
  font-size:14px;font-weight:600;color:var(--text);margin:0 0 11px;
  padding-bottom:10px;border-bottom:1px solid var(--border);
}.own-side-card h3 i{color:var(--text-muted);margin-right:5px}.own-side-list{list-style:none;padding:0;margin:0}.own-side-list li{border-bottom:1px solid var(--border)}.own-side-list li:last-child{border-bottom:none}.own-side-list a{display:flex;align-items:center;gap:9px;padding:9px 2px;text-decoration:none;color:var(--text-muted);transition:color .15s}.own-side-list a:hover{color:var(--text)}.own-side-list img{width:34px;height:34px;border-radius:7px;object-fit:cover;flex-shrink:0}.own-side-list .os-icon{
  width:34px;height:34px;border-radius:7px;
  background:rgba(31,35,40,.07);display:flex;align-items:center;justify-content:center;flex-shrink:0;
}.own-side-list .os-icon i{color:var(--text-muted);font-size:16px}.own-side-list .os-info{display:flex;flex-direction:column;gap:1px;min-width:0}.own-side-list .os-name{font-size:12.5px;font-weight:500;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.own-side-list a:hover .os-name{color:var(--primary)}.own-side-list .os-meta{font-size:11px;color:var(--text-weak)}.own-main{padding:30px 16px 52px}.own-main-inner{max-width:var(--container);margin:0 auto}.own-main-inner > .site-breadcrumb{margin-bottom:20px}.own-footer{
  background:var(--bg-deep);border-top:1px solid var(--border);
  padding:24px 16px;
}.nav-other{
  background:var(--primary);color:#fff!important;
  padding:5px 14px;border-radius:6px;font-weight:600;margin-left:10px;
  display:inline-flex;align-items:center;gap:5px;transition:background .15s;
}.nav-other:hover{background:#0550ae;color:#fff!important}@media (max-width:768px){.own-main{padding:20px 14px 40px}.own-detail-layout{grid-template-columns:1fr}.own-detail-side{position:static}
}#backTop{
  position:fixed;right:22px;bottom:28px;z-index:999;
  width:44px;height:44px;border-radius:10px;
  background:var(--nb-yellow);border:3px solid #000;color:var(--nb-ink);
  display:flex;align-items:center;justify-content:center;cursor:pointer;
  box-shadow:4px 4px 0 #000;
  opacity:0;visibility:hidden;transform:translateY(8px);
  transition:all .2s;font-size:17px;font-weight:900;
}#backTop.show{opacity:1;visibility:visible;transform:translateY(0)}#backTop:hover{transform:translate(2px,2px);box-shadow:2px 2px 0 #000}@media(max-width:768px){#backTop{right:14px;bottom:18px;width:38px;height:38px}}/* ============ 03 · 详情增强（评分 / 轮播 / 时间线 / 评论 / 问题反馈） ============ */
.rate-fav-bar{
  display:flex;align-items:center;gap:14px;flex-wrap:wrap;
  margin-top:14px;padding-top:14px;border-top:1px solid var(--border);
}.rate-form{display:flex;align-items:center;gap:2px}.rate-label{font-size:13px;color:var(--text-muted);margin-right:4px}.rate-form .star{
  background:none;border:0;padding:2px 3px;font-size:20px;line-height:1;cursor:pointer;
  color:#d0d7de;transition:color .12s,transform .12s;
}.rate-form .star:hover{color:#eac54f;transform:scale(1.18)}.rate-form .star.on{color:#eac54f}.stars-static{font-size:17px;color:#eac54f;letter-spacing:2px}.stars-static .bi{color:#d0d7de}.stars-static .bi.lit{color:#eac54f}.rate-login-link{font-size:12.5px;color:var(--text-muted);text-decoration:underline dotted}.rate-login-link:hover{color:var(--primary)}.rate-info{font-size:12.5px;color:var(--text-muted)}.rate-info strong{color:#eac54f;font-size:14px}.fav-btn{
  display:inline-flex;align-items:center;gap:6px;margin-left:auto;
  padding:6px 14px;border-radius:6px;font-size:13px;font-weight:500;
  background:var(--card);border:1px solid var(--border);color:var(--text-muted);
  text-decoration:none;cursor:pointer;transition:all .15s;
}.fav-btn:hover{border-color:#d73a49;color:#d73a49}.fav-btn .bi-heart-fill{color:#d73a49}.fav-btn.on{border-color:#d73a49;color:#d73a49;background:rgba(215,58,73,.06)}.dl-hero{
  display:flex;align-items:center;gap:14px;flex-wrap:wrap;
  background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);
  padding:16px 18px;margin:4px 0 18px;
}.dl-hero-code{font-size:13px;color:var(--text-muted);display:inline-flex;align-items:center;gap:6px}.dl-hero-code code{background:var(--bg-deep);padding:2px 8px;border-radius:5px;color:var(--text)}.shot-carousel{margin:6px 0 20px}.shot-main{
  position:relative;border:1px solid var(--border);border-radius:var(--radius-lg);
  overflow:hidden;background:var(--bg-deep);cursor:zoom-in;
}.shot-main img{width:100%;max-height:520px;object-fit:contain;display:block}.shot-nav{
  position:absolute;top:50%;transform:translateY(-50%);
  width:38px;height:38px;border-radius:50%;border:1px solid var(--border);
  background:rgba(255,255,255,.92);color:var(--text);font-size:17px;
  display:flex;align-items:center;justify-content:center;cursor:pointer;
  transition:all .15s;z-index:2;
}.shot-nav:hover{background:var(--primary);color:#fff;border-color:var(--primary)}.shot-prev{left:12px}.shot-next{right:12px}.shot-thumbs{display:flex;gap:8px;margin-top:10px;overflow-x:auto;padding-bottom:4px}.shot-thumbs img{
  width:96px;height:60px;object-fit:cover;border-radius:6px;cursor:pointer;
  border:2px solid transparent;transition:border-color .15s;flex:0 0 auto;
}.shot-thumbs img.active{border-color:var(--primary)}.ver-timeline{position:relative;margin:6px 0 18px;padding-left:26px}.ver-timeline::before{
  content:"";position:absolute;left:8px;top:6px;bottom:6px;width:2px;background:var(--border);
}.ver-item{position:relative;margin-bottom:16px}.ver-dot{
  position:absolute;left:-26px;top:2px;width:18px;height:18px;border-radius:50%;
  background:var(--card);border:2px solid var(--primary);
  display:flex;align-items:center;justify-content:center;
}.ver-dot i{font-size:8px;color:var(--primary)}.ver-head{display:flex;align-items:baseline;gap:10px;margin-bottom:3px}.ver-version{
  font-size:14px;font-weight:700;color:var(--primary);
  background:var(--primary-light);padding:1px 10px;border-radius:20px;
}.ver-date{font-size:12px;color:var(--text-weak)}.ver-log{font-size:13.5px;color:var(--text-muted);line-height:1.7}.own-main-grid{display:grid;grid-template-columns:1fr 300px;gap:22px;align-items:start}.own-main-col.view-list .own-grid-lg{display:flex;flex-direction:column;gap:12px}.own-main-col.view-list .own-card-lg{flex-direction:row;align-items:center;padding:16px 18px}.own-main-col.view-list .own-card-icon{width:48px;height:48px;margin:0 14px 0 0;flex:0 0 auto}.own-main-col.view-list .own-card-body h3{margin-bottom:4px}.own-main-col.view-list .own-card-desc{display:none}@media (max-width:992px){.own-main-grid{grid-template-columns:1fr}.own-sidebar{position:static;flex-direction:row;flex-wrap:wrap}.own-sidebar .own-side-card{flex:1 1 45%;min-width:250px}
}@media (max-width:768px){.rate-fav-bar{gap:10px}.fav-btn{margin-left:0}.shot-nav{width:32px;height:32px}.shot-thumbs img{width:80px;height:52px}
}.issue-card{
  margin-top: 20px;
  border: 1px solid #f3d6d6;
  background: #fffaf9;
}.issue-head{ display: flex; align-items: center; gap: 14px; }.issue-head-icon{
  width: 48px; height: 48px; border-radius: 12px; flex-shrink: 0;
  background: linear-gradient(135deg, #dc2626, #ef4444);
  color: #fff; display: flex; align-items: center; justify-content: center; font-size: 24px;
  box-shadow: 0 4px 12px rgba(220, 38, 38, .25);
}.issue-toggle-btn{
  list-style: none;
  display: flex; align-items: center; justify-content: center; gap: 8px; width: 100%;
  padding: 14px 18px;
  background: linear-gradient(135deg, #dc2626, #f97316);
  color: #fff; border: none; border-radius: 10px;
  font-size: 16px; font-weight: 600; cursor: pointer;
  transition: transform .15s ease, box-shadow .15s ease, filter .15s ease;
  box-shadow: 0 4px 14px rgba(220, 38, 38, .3);
}.issue-toggle-btn:hover{ filter: brightness(1.08); transform: translateY(-1px); box-shadow: 0 6px 18px rgba(220, 38, 38, .4); }.issue-toggle-btn:active{ transform: translateY(0); }.issue-toggle-btn::-webkit-details-marker{ display: none; }.issue-toggle-btn .chev{ transition: transform .2s ease; }.issue-form{
  margin-top: 14px; padding: 18px;
  border: 1px dashed #f0b7b7; border-radius: 10px; background: #fff;
}.issue-form .form-label{ font-weight: 600; font-size: 13px; color: var(--text); margin-bottom: 6px; display: block; }.issue-form .form-control{ width: 100%; padding: 9px 12px; border: 1px solid var(--border); border-radius: 8px; font-size: 14px; background: #fff; color: var(--text); box-sizing: border-box; }.issue-form .form-control:focus{ outline: none; border-color: var(--primary); box-shadow: 0 0 0 3px rgba(9, 105, 218, .12); }:root{
  --grad-brand:linear-gradient(135deg,#0969da 0%,#8250df 100%);
  --grad-brand-text:linear-gradient(120deg,#0969da 0%,#6f42c1 60%,#8250df 100%);
  --glow-primary:rgba(9,105,218,.16);
  --glow-violet:rgba(130,80,223,.13);
  --glow-cyan:rgba(0,168,214,.11);
  --shadow-card:0 1px 2px rgba(31,35,40,.04),0 4px 14px rgba(31,35,40,.05);
  --shadow-card-hover:0 2px 4px rgba(31,35,40,.05),0 14px 32px rgba(9,105,218,.15);
  --shadow-btn:0 6px 16px rgba(9,105,218,.32);
  --radius-lg:16px;
}@keyframes heroGlow{0%{opacity:.7;transform:translateY(0) scale(1)}100%{opacity:1;transform:translateY(8px) scale(1.03)}
}.own-tabs a{
  border-radius:999px;transition:all .15s;
}.own-card-lg{
  border-radius:var(--radius-lg);
  box-shadow:var(--shadow-card);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}.own-side-card{
  border-radius:var(--radius-lg);
  background:linear-gradient(180deg,#ffffff 0%,#fbfcff 100%);
  box-shadow:var(--shadow-card);
}.own-side-card h3{
  display:flex;align-items:center;gap:6px;
}.own-side-card h3::after{
  content:"";flex:1;height:1px;margin-left:6px;
  background:linear-gradient(90deg,rgba(9,105,218,.3),transparent);
}.own-side-card h3 i{color:var(--primary)!important}.own-side-list a:hover .os-name{color:var(--primary)}.own-side-list .os-icon{background:linear-gradient(135deg,rgba(9,105,218,.1),rgba(130,80,223,.1));border-color:rgba(9,105,218,.18)}.own-side-list .os-icon i{color:var(--primary)}.own-detail-main .article-card{
  border-radius:var(--radius-lg);
  box-shadow:var(--shadow-card);
}.own-detail-main .article-card h2.section-h i{color:var(--primary)}.own-detail-side .own-side-card{box-shadow:var(--shadow-card)}.ver-timeline .ver-dot{
  background:var(--grad-brand);
  box-shadow:0 3px 10px var(--glow-primary);
}.ver-timeline .ver-dot i{color:#fff}.rate-fav-bar .star.on i{color:#f5b301}.stars-static i.lit{color:#f5b301}.fav-btn.on{background:rgba(214,51,132,.1);border-color:rgba(214,51,132,.3);color:#d63384}@media (max-width:768px){.own-card-lg{padding:18px}
}@media (prefers-reduced-motion: reduce){.own-card-lg,.own-card-lg:hover,.own-card-icon,.own-card-lg:hover .own-card-icon{transition:none;transform:none}.dl-hero-btn,.dl-hero-btn:hover{transition:none;transform:none}.reveal,.reveal.in{transition:none}
}.dl-hero-btn.hvr-icon-forward,
.issue-toggle-btn.hvr-pulse,
.fav-btn.hvr-pulse-grow,
.btn-primary.hvr-grow{
  display: inline-flex;
  align-items: center;
  justify-content: center;
}.dl-hero-btn.hvr-icon-forward{ box-shadow: 0 8px 22px rgba(9,105,218,.32); }.dl-hero-btn.hvr-icon-forward:hover{ box-shadow: 0 12px 30px rgba(9,105,218,.42); }.issue-toggle-btn.hvr-pulse{ box-shadow: 0 4px 14px rgba(220,38,38,.3); }.issue-toggle-btn.hvr-pulse:hover{ box-shadow: 0 6px 18px rgba(220,38,38,.4); }/* ============ 04 · 大眼仔风格详情（dz-* 信息表 + 下载区） ============ */
.dz-head{ display:flex; gap:20px; align-items:flex-start; }.dz-icon{
  width:92px; height:92px; flex:0 0 auto; border-radius:18px; overflow:hidden;
  display:flex; align-items:center; justify-content:center;
  background:linear-gradient(135deg,var(--primary-light),rgba(130,80,223,.12));
  border:1px solid var(--border); box-shadow:var(--shadow-card); position:relative;
}.dz-icon img{ width:100%; height:100%; object-fit:cover; }.dz-icon > i{ font-size:42px; color:var(--primary); opacity:.75; }.dz-origin{
  position:absolute; top:6px; right:6px; font-size:10.5px; font-weight:700; color:#fff;
  background:var(--grad-brand); padding:2px 8px; border-radius:999px; box-shadow:0 3px 10px rgba(9,105,218,.35);
}.dz-head-main{ flex:1; min-width:0; }.dz-title{ font-size:26px; font-weight:800; color:var(--text); margin:0 0 8px; display:flex; align-items:center; flex-wrap:wrap; gap:10px; }.dz-ver{
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace; font-size:13px; font-weight:700;
  color:var(--primary); background:var(--primary-light); border:1px solid rgba(9,105,218,.22);
  padding:2px 12px; border-radius:999px;
}.dz-meta{ display:flex; flex-wrap:wrap; gap:6px 18px; font-size:13px; color:var(--text-muted); margin-bottom:14px; }.dz-meta span{ display:inline-flex; align-items:center; gap:5px; }.dz-meta i{ color:var(--primary); opacity:.8; }.dz-info{ margin-top:22px; border:1px solid var(--border); border-radius:var(--radius-lg); overflow:hidden; background:var(--card); box-shadow:var(--shadow-card); }.dz-info-hd{ display:flex; align-items:center; gap:8px; font-size:15px; font-weight:700; color:var(--text); padding:12px 18px; border-bottom:1px solid var(--border); background:var(--bg-deep); }.dz-info-hd i{ color:var(--primary); }.dz-info-grid{ display:grid; grid-template-columns:repeat(2,1fr); }.dz-info-item{ display:flex; gap:10px; padding:11px 18px; border-bottom:1px solid var(--border); }.dz-info-item:nth-child(even){ border-right:none; }.dz-info-item span{ flex:0 0 84px; color:var(--text-weak); font-size:13px; }.dz-info-item b{ flex:1; color:var(--text); font-size:13.5px; font-weight:600; overflow-wrap:anywhere; }.dz-info-item a{ color:var(--primary); }.dz-info-wide{ grid-column:1 / -1; }@media (max-width:640px){.dz-info-grid{ grid-template-columns:1fr; }.dz-info-item{ border-right:none; } }.dz-download{ margin-top:22px; border:1px solid var(--border); border-radius:var(--radius-lg); padding:18px; background:linear-gradient(180deg,var(--card),var(--bg-deep)); box-shadow:var(--shadow-card); }.dz-dl-top{ display:flex; align-items:center; gap:16px; flex-wrap:wrap; }.dz-dl-btn{
  display:inline-flex; align-items:center; gap:9px; padding:13px 30px; border-radius:10px;
  font-size:16px; font-weight:800; color:#fff; text-decoration:none;
  background:var(--grad-brand); box-shadow:var(--shadow-btn);
  transition:all .18s ease;
}.dz-dl-btn:hover{ color:#fff; transform:translateY(-2px); filter:brightness(1.08); box-shadow:0 10px 28px rgba(9,105,218,.4); }.dz-dl-side{ display:flex; flex-direction:column; gap:6px; align-items:flex-start; }.dz-safe{ font-size:12.5px; color:var(--accent); display:inline-flex; align-items:center; gap:5px; }.dl-hero-code{ font-size:13px; color:var(--text-muted); display:inline-flex; align-items:center; gap:6px; }.dl-hero-code code{ background:var(--bg-deep); border:1px solid var(--border); padding:1px 8px; border-radius:5px; font-weight:700; color:var(--primary); }.dz-dl-list{ list-style:none; margin:14px 0 0; padding:0; border-top:1px dashed var(--border); }.dz-dl-list li{ display:flex; align-items:center; flex-wrap:wrap; gap:6px 12px; padding:11px 4px; border-bottom:1px dashed var(--border); }.dz-dl-list li:last-child{ border-bottom:none; }.dz-dl-list a{ color:var(--primary); font-weight:600; text-decoration:none; }.dz-dl-list a:hover{ color:var(--primary-dark); }.dz-host{ font-size:12px; color:var(--text-weak); display:inline-flex; align-items:center; gap:4px; }.dz-tip{ margin:12px 0 0; font-size:12.5px; color:var(--text-weak); }.dz-tip code{ background:var(--bg-deep); border:1px solid var(--border); padding:0 6px; border-radius:4px; color:var(--primary); font-weight:700; }@media (max-width:640px){.dz-head{ flex-direction:column; align-items:center; text-align:center; }.dz-head-main{ width:100%; }.dz-meta{ justify-content:center; }.dz-title{ justify-content:center; }.dz-dl-top{ justify-content:center; }
}@font-face{
  font-family:'Space Grotesk';
  src:url('../vendor/fonts/SpaceGrotesk-VF.woff2') format('woff2');
  font-weight:300 700; font-display:swap;
}/* ============ 05 · 新野兽派 · 软件列表（nb-* 网格卡片） ============ */
.nb-body{
  --nb-bg:#faf5eb; --nb-ink:#000; --nb-yellow:#ffeb3b; --nb-pink:#ff4081;
  --nb-green:#00e676; --nb-cyan:#00bcd4; --nb-lime:#8bc34a;
  background:var(--nb-bg); color:var(--nb-ink);
  font-family:'Space Grotesk','PingFang SC','Microsoft YaHei','Helvetica Neue',Arial,sans-serif;
  min-height:100vh; line-height:1.5;
}.nb-body a{ color:var(--nb-ink); text-decoration:none; }.nb-logo{ font-size:22px; font-weight:900; letter-spacing:-1px; }.nb-btn{
  display:inline-flex; align-items:center; gap:7px; font-weight:900; cursor:pointer;
  padding:8px 20px; border:3px solid #000; border-radius:8px; box-shadow:3px 3px 0 #000;
  transition:all .1s; font-size:14px; line-height:1.2;
}.nb-btn:active{ transform:translate(3px,3px); box-shadow:0 0 0 #000; }.nb-btn-green{ background:var(--nb-green); color:#000; }.nb-btn-white{ background:#fff; color:#000; }.nb-btn:hover{ filter:brightness(1.05); }.nb-hero{
  max-width:1100px; margin:24px auto 0; background:#e0f7fa;
  border:4px solid #000; border-radius:16px; padding:52px 40px;
  box-shadow:10px 10px 0 #000; text-align:center;
}.nb-tag{
  display:inline-block; background:var(--nb-pink); color:#fff; font-weight:900; font-size:13px;
  padding:4px 14px; border:2px solid #000; border-radius:6px; box-shadow:3px 3px 0 #000;
}.nb-hero-title{ font-size:52px; font-weight:900; line-height:1.08; margin:18px 0 14px; }.nb-hero-desc{ font-size:17px; font-weight:600; max-width:680px; margin:0 auto 26px; }.nb-stat{
  background:#fff; border:3px solid #000; border-radius:10px; padding:10px 18px;
  box-shadow:4px 4px 0 #000; min-width:118px;
}.nb-stat b{ display:block; font-size:22px; font-weight:900; }.nb-stat .nb-sm{ font-size:16px; }.nb-stat span{ font-size:12px; font-weight:700; }.nb-main{ max-width:1100px; margin:0 auto; padding:34px 0 60px; }.nb-tabs{ display:flex; gap:10px; flex-wrap:wrap; margin-bottom:28px; }.nb-tabs a{
  background:#fff; border:3px solid #000; border-radius:8px; padding:7px 18px; font-weight:900;
  box-shadow:3px 3px 0 #000; font-size:14px;
}.nb-tabs a.active{ background:#000; color:#fff; box-shadow:3px 3px 0 var(--nb-pink); }.nb-tabs a:hover{ transform:translate(-1px,-1px); box-shadow:4px 4px 0 #000; }.nb-section{ margin-top:10px; }.nb-sec-title{ font-size:30px; font-weight:900; margin-bottom:22px; display:flex; align-items:center; gap:12px; }.nb-count{ font-size:14px; font-weight:900; background:var(--nb-ink); color:#fff; padding:3px 12px; border-radius:999px; }.nb-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }.nb-card{
  background:#fff; border:3px solid #000; border-radius:14px; padding:24px;
  box-shadow:6px 6px 0 #000; display:flex; flex-direction:column; justify-content:space-between; gap:16px;
  transition:all .15s;
}.nb-card:hover{ transform:translate(-3px,-3px); box-shadow:9px 9px 0 #000; }.nb-card.bg-cyan{ background:#e0f7fa; }.nb-card.bg-pink{ background:#fce4ec; }.nb-card.bg-lime{ background:#f1f8e9; }.nb-card-icon{ width:78px; height:78px; object-fit:cover; border:2px solid #000; border-radius:14px; box-shadow:3px 3px 0 #000; background:#fff; display:flex; align-items:center; justify-content:center; }.nb-card-icon-fallback{ background:var(--nb-yellow); font-size:34px; color:#000; }.nb-card-tag{
  display:inline-block; font-size:12px; font-weight:900; color:#fff;
  background:var(--nb-cyan); border:2px solid #000; border-radius:6px; padding:3px 12px; box-shadow:2px 2px 0 #000;
}.nb-card-name{ font-size:20px; font-weight:900; margin:12px 0 6px; letter-spacing:-.4px; }.nb-card-desc{ font-size:13px; font-weight:600; color:#333; min-height:40px; }.nb-card-meta{ display:flex; gap:14px; font-size:12.5px; font-weight:700; margin-bottom:10px; }.nb-card-meta span{ display:inline-flex; align-items:center; gap:4px; }.nb-card-ver{ font-size:24px; font-weight:900; margin-bottom:12px; }.nb-card-actions{ display:flex; gap:10px; }.nb-card-actions .nb-btn{ flex:1; justify-content:center; }.nb-body .pagination a,.nb-body .pagination span{
  background:#fff; border:2px solid #000; color:#000; font-weight:900; border-radius:8px; margin-right:8px;
  box-shadow:2px 2px 0 #000;
}.nb-body .pagination a:hover{ transform:translate(-1px,-1px); box-shadow:3px 3px 0 #000; }.nb-body .pagination .current{ background:#000; color:#fff; box-shadow:2px 2px 0 var(--nb-pink); }.nb-body .pagination .total{ color:#000; box-shadow:none; border:2px solid #000; }.nb-body .empty-state{ color:#000; font-weight:700; }.nb-body .empty-state i{ opacity:.6; }.nb-tag{
  display:inline-flex; align-items:center; gap:6px; background:#fff; border:2.5px solid #000;
  border-radius:8px; padding:6px 14px; font-weight:900; font-size:13px; box-shadow:2px 2px 0 #000;
}.nb-tag.hot{ background:var(--nb-yellow); }.nb-tag small{ font-weight:900; background:#000; color:#fff; border-radius:999px; padding:0 7px; font-size:11px; }.nb-tag:hover{ transform:translate(-1px,-1px); box-shadow:3px 3px 0 #000; }.nb-footer{
  max-width:1100px; margin:0 auto; border-top:3px solid #000; padding:28px; text-align:center; font-weight:700;
}@media (max-width:900px){.nb-grid{ grid-template-columns:repeat(2,1fr); }.
}@media (max-width:640px){.nb-hero{ padding:34px 20px; }.nb-hero-title{ font-size:36px; }.nb-grid{ grid-template-columns:1fr; }
}/* ============ 06 · 新野兽派 · 详情页（nb-detail） ============ */
.nb-detail{
  --nb-bg:#faf5eb; --nb-ink:#000; --nb-yellow:#ffeb3b; --nb-pink:#ff4081; --nb-green:#00e676; --nb-cyan:#00bcd4;
  background:var(--nb-bg); color:var(--nb-ink);
  font-family:'Space Grotesk','PingFang SC','Microsoft YaHei','Helvetica Neue',Arial,sans-serif;
}.nb-detail a{ color:var(--nb-ink); }.nb-detail .own-main{ padding:28px 16px 56px; }.nb-detail .own-main-inner > .site-breadcrumb{
  background:#fff; border:2.5px solid var(--nb-ink); border-radius:8px; padding:8px 14px;
  box-shadow:3px 3px 0 var(--nb-ink); color:#333; font-weight:700; margin-bottom:22px;
}.nb-detail .site-breadcrumb i{ color:var(--nb-ink); }.nb-detail .site-breadcrumb a{ color:var(--nb-ink); font-weight:900; }.nb-detail .site-breadcrumb a:hover{ color:var(--nb-pink); }.nb-detail .article-card{
  background:#fff; border:3px solid var(--nb-ink); border-radius:16px;
  box-shadow:7px 7px 0 var(--nb-ink); padding:26px;
}.nb-detail .dz-icon{ background:#fff; border:3px solid var(--nb-ink); border-radius:16px; box-shadow:4px 4px 0 var(--nb-ink); }.nb-detail .dz-icon > i{ color:var(--nb-ink); opacity:.85; }.nb-detail .dz-origin{ background:var(--nb-pink); border:2px solid var(--nb-ink); border-radius:6px; box-shadow:2px 2px 0 var(--nb-ink); }.nb-detail .dz-title{ font-weight:900; letter-spacing:-.5px; color:var(--nb-ink); }.nb-detail .dz-ver{
  background:var(--nb-ink); color:#fff; border:2px solid var(--nb-ink); border-radius:6px;
  box-shadow:2px 2px 0 var(--nb-pink); font-weight:700;
}.nb-detail .dz-meta{ color:#333; font-weight:600; }.nb-detail .dz-meta i{ color:var(--nb-ink); }.nb-detail .rate-fav-bar{ color:var(--nb-ink); }.nb-detail .rate-label{ font-weight:700; }.nb-detail .star{ color:#d9d9d9; -webkit-text-stroke:1px var(--nb-ink); }.nb-detail .star.on, .nb-detail .stars-static .lit{ color:#facc15; -webkit-text-stroke:1px var(--nb-ink); }.nb-detail .stars-static i{ color:#d9d9d9; -webkit-text-stroke:1px var(--nb-ink); }.nb-detail .rate-info{ color:#333; font-weight:700; }.nb-detail .rate-info strong{ color:var(--nb-ink); }.nb-detail .rate-login-link{ color:var(--nb-pink); font-weight:900; }.nb-detail .fav-btn{
  background:#fff; border:2.5px solid var(--nb-ink); border-radius:8px; font-weight:900;
  box-shadow:3px 3px 0 var(--nb-ink); color:var(--nb-ink);
}.nb-detail .fav-btn.on{ background:var(--nb-pink); color:#fff; box-shadow:3px 3px 0 var(--nb-ink); }.nb-detail .dz-info{ background:#fff; border:3px solid var(--nb-ink); border-radius:14px; box-shadow:5px 5px 0 var(--nb-ink); overflow:hidden; }.nb-detail .dz-info-hd{ background:var(--nb-ink); color:#fff; border-bottom:3px solid var(--nb-ink); }.nb-detail .dz-info-hd i{ color:var(--nb-yellow); }.nb-detail .dz-info-item{ border-bottom:2px solid var(--nb-ink); }.nb-detail .dz-info-item span{ color:#555; font-weight:700; }.nb-detail .dz-info-item b{ color:var(--nb-ink); font-weight:900; }.nb-detail .dz-info-item a{ color:var(--nb-pink); font-weight:700; }.nb-detail .dz-download{
  background:var(--nb-yellow); border:3px solid var(--nb-ink); border-radius:14px;
  box-shadow:6px 6px 0 var(--nb-ink); padding:22px;
}.nb-detail .dz-dl-btn{
  background:var(--nb-green); color:#000; border:3px solid var(--nb-ink); border-radius:10px;
  box-shadow:4px 4px 0 var(--nb-ink); font-weight:900; font-size:17px; padding:14px 32px;
}.nb-detail .dz-dl-btn:hover{ color:#000; transform:translate(2px,2px); box-shadow:2px 2px 0 var(--nb-ink); filter:none; }.nb-detail .dz-safe{ color:var(--nb-ink); font-weight:900; font-size:13px; }.nb-detail .dl-hero-code{ color:#333; font-weight:700; }.nb-detail .dl-hero-code code{
  background:#fff; border:2px solid var(--nb-ink); color:var(--nb-ink); border-radius:6px; font-weight:900;
}.nb-detail .dl-copy{
  background:var(--nb-ink); color:#fff; border:2px solid var(--nb-ink); border-radius:6px;
  box-shadow:2px 2px 0 var(--nb-pink); font-weight:900;
}.nb-detail .dz-dl-list{ border-top:3px dashed var(--nb-ink); }.nb-detail .dz-dl-list li{ border-bottom:2px dashed var(--nb-ink); }.nb-detail .dz-dl-list a{ color:var(--nb-ink); font-weight:900; }.nb-detail .dz-dl-list a:hover{ color:var(--nb-pink); }.nb-detail .dz-host{ color:#333; font-weight:700; }.nb-detail .dz-tip{ color:#333; font-weight:600; }.nb-detail .dz-tip code{ background:#fff; border:2px solid var(--nb-ink); color:var(--nb-ink); font-weight:900; border-radius:4px; }.nb-detail .article-excerpt{
  background:#fff; border:3px solid var(--nb-ink); border-left:10px solid var(--nb-pink);
  border-radius:8px; box-shadow:4px 4px 0 var(--nb-ink); padding:12px 16px; font-weight:600; color:#333;
}.nb-detail .ex-label{ color:var(--nb-ink); font-weight:900; }.nb-detail .article-body{ color:#1a1a1a; }.nb-detail .article-body h2,.nb-detail .article-body h3{ font-weight:900; color:var(--nb-ink); }.nb-detail .article-body code{ background:#fff; border:1.5px solid var(--nb-ink); color:var(--nb-ink); font-weight:700; }.nb-detail .article-body blockquote{ background:var(--nb-yellow); border:2.5px solid var(--nb-ink); border-radius:8px; box-shadow:3px 3px 0 var(--nb-ink); }.nb-detail .article-body img{ border:3px solid var(--nb-ink); border-radius:10px; box-shadow:4px 4px 0 var(--nb-ink); }.nb-detail .section-h{
  display:inline-block; background:var(--nb-yellow); border:3px solid var(--nb-ink);
  border-radius:8px; padding:8px 18px; box-shadow:3px 3px 0 var(--nb-ink);
  font-size:21px; font-weight:900; color:var(--nb-ink);
}.nb-detail .shot-carousel .shot-main img, .nb-detail .screenshots img{
  border:3px solid var(--nb-ink); border-radius:12px; box-shadow:6px 6px 0 var(--nb-ink);
}.nb-detail .shot-thumbs img{ border:3px solid var(--nb-ink); border-radius:8px; box-shadow:2px 2px 0 var(--nb-ink); }.nb-detail .shot-thumbs img.active{ border-color:var(--nb-pink); box-shadow:3px 3px 0 var(--nb-pink); }.nb-detail .shot-nav{ background:var(--nb-ink); border:2px solid var(--nb-ink); border-radius:6px; color:#fff; box-shadow:2px 2px 0 var(--nb-pink); }.nb-detail .ver-version{
  background:var(--nb-ink); color:#fff; border-radius:6px; padding:2px 10px; font-weight:900;
  box-shadow:2px 2px 0 var(--nb-pink);
}.nb-detail .ver-date{ color:#333; font-weight:700; }.nb-detail .ver-dot{ background:var(--nb-yellow); border:2px solid var(--nb-ink); box-shadow:2px 2px 0 var(--nb-ink); }.nb-detail .ver-dot i{ color:var(--nb-ink); }.nb-detail .article-tags .t-label{ color:var(--nb-ink); font-weight:900; }.nb-detail .article-tags .tag{
  background:#fff; border:2.5px solid var(--nb-ink); border-radius:8px; box-shadow:2px 2px 0 var(--nb-ink);
  font-weight:900; color:var(--nb-ink);
}.nb-detail .article-tags .tag:hover{ background:var(--nb-yellow); transform:translate(-1px,-1px); box-shadow:3px 3px 0 var(--nb-ink); }.nb-detail .copyright-box{
  background:#fff; border:2.5px dashed var(--nb-ink); border-radius:10px; padding:14px 18px; color:#333; font-weight:600;
}.nb-detail .copyright-box strong{ color:var(--nb-ink); font-weight:900; }.nb-detail .copyright-box a{ color:var(--nb-pink); font-weight:700; }.nb-detail .related-box{ background:#fff; border:3px solid var(--nb-ink); border-radius:14px; box-shadow:6px 6px 0 var(--nb-ink); padding:20px; }.nb-detail .related-hd{ font-weight:900; color:var(--nb-ink); }.nb-detail .related-list li{ border-bottom:2px dashed var(--nb-ink); }.nb-detail .related-list a{ color:var(--nb-ink); font-weight:700; }.nb-detail .related-list .r-name{ font-weight:900; }.nb-detail .related-list .r-date{ color:#333; }.nb-detail .issue-head-text p{ color:#333; font-weight:600; }.nb-detail .issue-toggle-btn{
  background:var(--nb-ink); color:#fff; border:2.5px solid var(--nb-ink); border-radius:8px;
  box-shadow:3px 3px 0 var(--nb-pink); font-weight:900;
}.nb-detail .form-control{
  background:#fff; border:2.5px solid var(--nb-ink); border-radius:8px; color:var(--nb-ink); font-weight:600;
  box-shadow:none;
}.nb-detail .form-control:focus{ border-color:var(--nb-ink); box-shadow:3px 3px 0 var(--nb-pink); }.nb-detail .form-label{ color:var(--nb-ink); font-weight:900; }.nb-detail .btn-primary{
  background:var(--nb-green); border:3px solid var(--nb-ink); border-radius:8px; color:var(--nb-ink);
  box-shadow:4px 4px 0 var(--nb-ink); font-weight:900;
}.nb-detail .btn-primary:hover{ color:var(--nb-ink); background:var(--nb-green); transform:translate(2px,2px); box-shadow:2px 2px 0 var(--nb-ink); }.nb-detail .comment-item{ border-bottom:2px solid var(--nb-ink); }.nb-detail .c-avatar{ background:var(--nb-ink); border:2px solid var(--nb-ink); color:#fff; border-radius:8px; }.nb-detail .c-user{ font-weight:900; color:var(--nb-ink); }.nb-detail .c-time{ color:#333; font-weight:600; }.nb-detail .c-body{ color:#1a1a1a; }.nb-detail .own-side-card{ background:#fff; border:3px solid var(--nb-ink); border-radius:14px; box-shadow:6px 6px 0 var(--nb-ink); padding:18px; }.nb-detail .own-side-card h3{ font-weight:900; color:var(--nb-ink); }.nb-detail .own-side-card h3 i{ color:var(--nb-pink); }.nb-detail .own-side-list li{ border-bottom:2px dashed var(--nb-ink); }.nb-detail .own-side-list li:last-child{ border-bottom:none; }.nb-detail .own-side-list .os-name{ font-weight:900; color:var(--nb-ink); }.nb-detail .own-side-list .os-meta{ color:#333; font-weight:600; }.nb-detail .own-footer{ border-top:3px solid var(--nb-ink); background:#fff; }.nb-detail .own-footer-inner{ color:var(--nb-ink); font-weight:900; }.nb-detail .alert{ border:2.5px solid var(--nb-ink) !important; border-radius:8px !important; box-shadow:3px 3px 0 var(--nb-yellow); font-weight:700; }@media (max-width:640px){.nb-detail .article-card{ padding:18px; }.nb-detail .dz-head{ flex-direction:column; align-items:center; text-align:center; }.nb-detail .dz-head-main{ width:100%; }.nb-detail .dz-meta{ justify-content:center; }.nb-detail .dz-title{ justify-content:center; }.nb-detail .dz-dl-top{ justify-content:center; }
}/* ============ 07 · 新野兽派 · 统一外壳（nb-topbar / nb-footer） ============ */
.nb-topbar{ position:sticky; top:0; z-index:1000; background:#fff; border-bottom:3px solid #000; box-shadow:0 3px 0 rgba(255,235,59,.4); }.nb-topbar-inner{ max-width:1100px; margin:0 auto; padding:13px 26px; display:flex; align-items:center; justify-content:space-between; gap:16px; }.nb-topnav{ display:flex; gap:8px; list-style:none; margin:0; padding:0; }.nb-topnav a{
  font-weight:900; color:#000; text-decoration:none; padding:7px 16px; border:2.5px solid #000;
  border-radius:8px; background:#fff; box-shadow:2px 2px 0 #000; font-size:14px;
}.nb-topnav a.active{ background:#000; color:#fff; box-shadow:2px 2px 0 var(--nb-pink); }.nb-topnav a:hover{ transform:translate(-1px,-1px); box-shadow:3px 3px 0 #000; }.nb-hero.nb-hero-lite{ padding:30px 32px; }.nb-hero-lite .nb-hero-title{ font-size:34px; margin:12px 0 10px; }@media (max-width:640px){.nb-topbar-inner{ flex-direction:column; gap:10px; padding:12px 14px; }.nb-topnav{ gap:6px; }.nb-topnav a{ padding:6px 12px; font-size:13px; }
}/* ============ 08 · 新野兽派 · 公共面板 / 表单 / 用户中心 ============ */
.nb-panel{ background:#fff; border:3px solid #000; border-radius:14px; box-shadow:6px 6px 0 #000; padding:26px; }.nb-panel-inner{ background:var(--nb-bg); border:3px solid #000; border-radius:12px; padding:18px; margin-bottom:16px; }.nb-hint{ display:block; color:var(--nb-ink); opacity:.7; font-size:12.5px; margin-top:5px; line-height:1.7; font-weight:600; }.nb-req{ color:#ef4444; }.nb-form-grid{ display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-bottom:16px; }.nb-form-actions{ display:flex; gap:12px; flex-wrap:wrap; }.nb-tips{ margin:0; padding-left:20px; color:var(--nb-ink); opacity:.75; font-size:14px; line-height:2; font-weight:600; }.nb-radio-row{ display:flex; gap:12px; }.nb-radio{ flex:1; cursor:pointer; }.nb-radio input{ margin-right:6px; }.nb-radio span{ display:inline-flex; align-items:center; gap:6px; background:#fff; border:2.5px solid #000; border-radius:8px; padding:9px 14px; font-weight:900; box-shadow:3px 3px 0 #000; }.nb-radio input:checked + span{ background:var(--nb-yellow); }.nb-body .form-control{ background:#fff; border:2.5px solid #000; border-radius:8px; color:#000; font-weight:600; box-shadow:3px 3px 0 #000; }.nb-body .form-control:focus{ border-color:#000; box-shadow:3px 3px 0 var(--nb-pink); outline:none; }.nb-body .form-label{ display:block; margin-bottom:6px; color:#000; font-weight:900; font-size:14px; }.nb-body .btn-primary{ background:var(--nb-green); border:3px solid #000; border-radius:8px; color:#000; box-shadow:4px 4px 0 #000; font-weight:900; padding:10px 26px; width:auto; }.nb-body .btn-primary:hover{ color:#000; transform:translate(2px,2px); box-shadow:2px 2px 0 #000; }.nb-body .alert{ border:2.5px solid #000; border-radius:8px; box-shadow:3px 3px 0 var(--nb-yellow); font-weight:700; }.nb-auth{ max-width:460px; margin:0 auto; background:#fff; border:3px solid #000; border-radius:14px; box-shadow:8px 8px 0 #000; padding:34px; text-align:center; }.nb-auth h1{ font-size:28px; font-weight:900; margin:14px 0 22px; }.nb-auth .form-control{ text-align:left; }.nb-auth-foot{ margin-top:18px; font-size:13px; font-weight:700; color:var(--nb-ink); opacity:.7; }.nb-user-head{ display:flex; justify-content:space-between; align-items:center; gap:14px; flex-wrap:wrap; margin-bottom:6px; }.nb-tabs-sm{ margin-bottom:8px; }.nb-tabs-sm .nb-tab, .nb-tabs-sm a{ padding:5px 14px; font-size:13px; }.nb-list{ display:flex; flex-direction:column; gap:14px; margin-top:8px; }.nb-list-item{ display:flex; align-items:center; gap:16px; background:#fff; border:3px solid #000; border-radius:12px; box-shadow:4px 4px 0 #000; padding:14px 18px; }.nb-list-item:hover{ transform:translate(-1px,-1px); box-shadow:5px 5px 0 #000; }.nb-list-icon{ width:52px; height:52px; border-radius:10px; border:2.5px solid #000; background:var(--nb-bg); display:flex; align-items:center; justify-content:center; flex-shrink:0; overflow:hidden; font-size:24px; }.nb-list-icon img{ width:100%; height:100%; object-fit:cover; }.nb-list-main{ flex:1; min-width:0; }.nb-list-name{ margin:0 0 4px; font-size:16px; font-weight:900; }.nb-list-name a{ color:var(--nb-ink); }.nb-list-name a:hover{ color:var(--nb-cyan); }.nb-list-name small{ font-size:12px; color:var(--nb-ink); opacity:.55; margin-left:4px; }.nb-list-meta{ margin:0; font-size:12.5px; font-weight:700; color:var(--nb-ink); opacity:.65; display:flex; gap:16px; flex-wrap:wrap; }.nb-list-desc{ margin:6px 0 0; font-size:13px; color:var(--nb-ink); opacity:.7; }.nb-list-note{ margin:6px 0 0; font-size:13px; font-weight:900; color:#d32f2f; }.nb-badge{ display:inline-block; padding:2px 10px; border-radius:999px; font-size:12px; font-weight:900; border:2px solid #000; box-shadow:2px 2px 0 #000; margin-left:8px; vertical-align:middle; }.nb-badge-green{ background:var(--nb-green); }.nb-badge-yellow{ background:var(--nb-yellow); }.nb-badge-pink{ background:var(--nb-pink); }.nb-empty{ margin-top:8px; }.nb-table{ width:100%; border-collapse:collapse; }.nb-table th, .nb-table td{ border:2.5px solid #000; padding:10px 14px; text-align:left; }.nb-table th{ background:var(--nb-yellow); font-weight:900; width:30%; }.nb-avatar-row{ display:flex; align-items:center; gap:16px; margin-bottom:16px; }.nb-avatar{ width:64px; height:64px; border-radius:12px; border:2.5px solid #000; background:var(--nb-bg); display:flex; align-items:center; justify-content:center; overflow:hidden; flex-shrink:0; }.nb-avatar img{ width:100%; height:100%; object-fit:cover; }@media (max-width:768px){.nb-form-grid{ grid-template-columns:1fr; }.nb-list-item{ flex-wrap:wrap; }.nb-panel{ padding:20px; } }
/* ============ 09 · 新野兽派 · 详情页重构（nb-dl-* 清爽版） ============ */
.nb-dl-head{ display:flex; gap:22px; align-items:flex-start; }
.nb-dl-icon{ width:92px; height:92px; border-radius:16px; border:3px solid #000; background:#fff; box-shadow:6px 6px 0 #000; overflow:hidden; position:relative; display:flex; align-items:center; justify-content:center; flex-shrink:0; font-size:42px; }
.nb-dl-icon img{ width:100%; height:100%; object-fit:cover; }
.nb-dl-origin{ position:absolute; left:-1px; bottom:-1px; background:var(--nb-yellow); border:2.5px solid #000; border-radius:6px 10px 0 0; font-size:11px; font-weight:900; padding:2px 8px; }
.nb-dl-main{ flex:1; min-width:0; }
.nb-dl-title{ font-size:30px; font-weight:900; margin:0 0 8px; letter-spacing:-.5px; }
.nb-dl-ver{ display:inline-block; background:var(--nb-pink); border:2.5px solid #000; border-radius:8px; font-size:14px; font-weight:900; padding:2px 10px; margin-left:6px; vertical-align:middle; }
.nb-dl-meta{ display:flex; gap:14px; flex-wrap:wrap; font-size:13px; font-weight:700; opacity:.7; margin-bottom:14px; }
.nb-dl-meta i{ margin-right:3px; }
.nb-dl-bar{ display:flex; align-items:center; justify-content:space-between; gap:14px; flex-wrap:wrap; border-top:3px solid #000; padding-top:14px; }
.nb-dl-rating{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; font-size:13px; font-weight:700; }
.nb-dl-stars{ font-size:17px; letter-spacing:2px; }
.nb-dl-stars i.lit{ color:var(--nb-yellow); -webkit-text-stroke:1.2px #000; text-shadow:1px 1px 0 #000; }
.nb-dl-rate-link{ font-size:12px; font-weight:900; color:var(--nb-ink); border-bottom:2.5px solid #000; }
.nb-dl-fav{ font-weight:900; font-size:13px; border:2.5px solid #000; border-radius:8px; padding:5px 14px; box-shadow:3px 3px 0 #000; background:#fff; color:#000; display:inline-flex; align-items:center; gap:5px; text-decoration:none; }
.nb-dl-fav:hover{ transform:translate(1px,1px); box-shadow:1px 1px 0 #000; }
.nb-dl-fav.on{ background:var(--nb-pink); }
.nb-dl-dlbtn{ font-size:17px; padding:13px 30px; }
.nb-dl-list{ list-style:none; margin:14px 0 0; padding:0; display:flex; flex-direction:column; gap:8px; }
.nb-dl-list li{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; border:2.5px solid #000; border-radius:8px; padding:8px 14px; background:var(--nb-bg); font-weight:700; font-size:13.5px; }
.nb-dl-list a{ color:#000; font-weight:900; }
.nb-dl-list .dl-copy{ border:2px solid #000; border-radius:6px; background:#fff; color:#000; font-weight:900; font-size:12px; padding:2px 10px; box-shadow:2px 2px 0 #000; cursor:pointer; }
.nb-dl-host{ opacity:.6; font-size:12px; }
.nb-dl-tip{ margin:14px 0 0; font-size:13px; font-weight:700; background:var(--nb-bg); border:2.5px solid #000; border-radius:8px; padding:10px 14px; box-shadow:3px 3px 0 var(--nb-yellow); }
.nb-dl-tip code{ background:#fff; border:2px solid #000; border-radius:5px; padding:1px 6px; font-weight:900; color:#000; }
.nb-dl-pwd{ display:inline-flex; align-items:center; gap:6px; margin:0 3px; padding:4px 14px; background:var(--nb-yellow); border:2.5px solid #000; border-radius:8px; font-weight:900; font-size:15px; color:#000; box-shadow:3px 3px 0 #000; cursor:pointer; vertical-align:middle; transition:all .12s; }
.nb-dl-pwd:hover{ transform:translate(-1px,-1px); box-shadow:4px 4px 0 #000; }
.nb-dl-pwd.copied{ background:var(--nb-green); }
.nb-article{ margin-top:22px; line-height:1.9; font-size:15px; }
.nb-article p{ margin:0 0 14px; }
.nb-article img{ border-radius:10px; border:2.5px solid #000; margin:10px 0; }
.nb-article h2,.nb-article h3{ font-weight:900; margin:22px 0 10px; }
.nb-article ul,.nb-article ol{ padding-left:22px; margin:0 0 14px; }
.nb-article blockquote{ border-left:5px solid var(--nb-yellow); padding:8px 14px; background:var(--nb-bg); }
.nb-dl-sec{ font-size:20px; font-weight:900; margin:26px 0 14px; display:flex; align-items:center; gap:8px; }
.nb-dl-sec i{ font-size:18px; }
.nb-dl-shots{ display:grid; grid-template-columns:repeat(auto-fill,minmax(220px,1fr)); gap:14px; }
.nb-dl-shots img{ border:3px solid #000; border-radius:12px; box-shadow:4px 4px 0 #000; cursor:pointer; }
.nb-dl-vers{ display:flex; flex-direction:column; gap:12px; }
.nb-dl-ver-item{ border:2.5px solid #000; border-radius:10px; background:var(--nb-bg); padding:12px 16px; box-shadow:3px 3px 0 #000; }
.nb-dl-ver-head{ display:flex; align-items:center; gap:12px; margin-bottom:6px; }
.nb-dl-ver-tag{ background:var(--nb-cyan); border:2.5px solid #000; border-radius:6px; font-weight:900; font-size:13px; padding:2px 10px; }
.nb-dl-ver-date{ font-size:12px; font-weight:700; opacity:.6; }
.nb-dl-ver-log{ font-size:13.5px; font-weight:600; }
.nb-dl-tags{ display:flex; gap:8px; flex-wrap:wrap; margin-top:4px; }
.nb-dl-tags a{ border:2.5px solid #000; border-radius:999px; padding:3px 14px; font-weight:900; font-size:13px; background:#fff; box-shadow:3px 3px 0 #000; color:#000; text-decoration:none; }
.nb-dl-tags a:hover{ transform:translate(1px,1px); box-shadow:1px 1px 0 #000; }
.nb-dl-copy{ margin-top:22px; padding-top:14px; border-top:3px solid #000; font-size:12px; font-weight:700; opacity:.6; line-height:1.8; }
.nb-dl-copy a{ color:#000; }
.nb-dl-list-actions{ display:flex; flex-direction:column; gap:14px; margin-top:20px; }
.nb-comments-empty{ text-align:center; padding:30px 0; font-weight:900; opacity:.6; }
.nb-detail .comment-item{ border:2.5px solid #000; border-radius:10px; padding:14px 16px; margin-top:14px; background:var(--nb-bg); }
.nb-detail .comment-item .c-user{ font-weight:900; font-size:14px; }
.nb-detail .comment-item .c-time{ font-size:12px; opacity:.6; font-weight:700; }
.nb-detail .comment-item .c-body{ margin-top:8px; font-size:14px; line-height:1.7; }
@media (max-width:768px){ .nb-dl-head{ flex-direction:column; } .nb-dl-icon{ width:76px; height:76px; } .nb-dl-title{ font-size:24px; } .nb-dl-bar{ flex-direction:column; align-items:flex-start; } }
/* ============ 10 · 新野兽派 · 详情页 v2（dayanzai 式线性清爽） ============ */
/* 轻面板：白底黑边无硬阴影（辅助区块，不抢主卡） */
.nb-panel-lite{ background:#fff; border:2.5px solid #000; border-radius:12px; padding:22px; }
/* 头部 meta 精简为一行小字 */
.nb-dl-meta{ display:flex; gap:16px; flex-wrap:wrap; font-size:13px; font-weight:700; color:var(--nb-ink); opacity:.62; }
.nb-dl-meta i{ margin-right:4px; }
/* 评分收藏：低调操作行 */
.nb-dl-ops{ display:flex; align-items:center; gap:14px; flex-wrap:wrap; margin-top:12px; font-size:13px; font-weight:700; }
.nb-dl-ops .nb-dl-stars{ font-size:16px; }
.nb-dl-ops .nb-dl-rate-link{ font-size:12px; font-weight:900; color:var(--nb-ink); border-bottom:2px solid #000; text-decoration:none; }
.nb-dl-ops .nb-dl-fav{ font-size:12.5px; box-shadow:none; padding:4px 12px; }
/* 更新日志：h3 小节 + 轻列表（去黑框卡片） */
.nb-dl-vers{ display:flex; flex-direction:column; gap:10px; }
.nb-dl-ver-item{ display:flex; gap:12px; align-items:baseline; border-bottom:2px solid #000; padding-bottom:10px; }
.nb-dl-ver-item:last-child{ border-bottom:none; padding-bottom:0; }
.nb-dl-ver-tag{ font-weight:900; font-size:14px; white-space:nowrap; }
.nb-dl-ver-date{ font-size:12px; font-weight:700; opacity:.5; white-space:nowrap; }
.nb-dl-ver-log{ font-size:13.5px; font-weight:600; color:var(--nb-ink); opacity:.85; }
/* 下载区：正文后居中黄底框 */
.nb-dl-dlarea{ margin-top:26px; background:var(--nb-bg); border:3px solid #000; border-radius:14px; padding:26px 22px; text-align:center; box-shadow:6px 6px 0 var(--nb-yellow); }
.nb-dl-dlarea .nb-dl-dlbtn{ font-size:19px; padding:15px 40px; }
.nb-dl-dlarea .nb-dl-sub{ margin-top:14px; font-size:13px; font-weight:700; opacity:.7; }
.nb-dl-dlarea .nb-dl-list{ text-align:left; }
.nb-dl-dlarea .nb-dl-tip{ margin:16px 0 0; text-align:left; }
/* 主卡更宽松的留白 */
.nb-detail .nb-panel{ padding:34px; }
@media (max-width:768px){ .nb-detail .nb-panel{ padding:20px; } .nb-dl-ver-item{ flex-wrap:wrap; gap:4px 12px; } }
/* ============ 11 · 详情页按钮撞色（区分不同操作） ============ */
/* 下载地址行：循环底色，一眼区分多条链接 */
.nb-dl-list li.row-cyan{ background:#e0f7fa; }
.nb-dl-list li.row-pink{ background:#fce4ec; }
.nb-dl-list li.row-lime{ background:#f1f8e9; }
.nb-dl-list li a{ color:var(--nb-ink); }
/* 复制按钮：黄色高亮（复制动作） */
.nb-dl-list .dl-copy{ background:var(--nb-yellow); color:#000; border-color:#000; }
.nb-dl-list .dl-copy:hover{ background:var(--nb-pink); color:#fff; }
/* 收藏：粉色心 */
.nb-dl-fav i{ color:var(--nb-pink); }
.nb-dl-fav.on{ background:var(--nb-pink); }
.nb-dl-fav.on i{ color:#fff; }
/* 标签：循环四色 */
.nb-dl-tags a{ background:var(--nb-bg); }
.nb-dl-tags a.t-yellow{ background:var(--nb-yellow); }
.nb-dl-tags a.t-pink{ background:var(--nb-pink); }
.nb-dl-tags a.t-cyan{ background:var(--nb-cyan); }
.nb-dl-tags a.t-lime{ background:var(--nb-lime); }
.nb-dl-tags a:hover{ transform:translate(1px,1px); box-shadow:1px 1px 0 #000; }
/* 问题反馈开关：黄色；提交问题：粉色；发表评论：青色 */
#issueToggleBtn{ background:var(--nb-yellow); color:#000; }
.issue-form .btn-primary{ background:var(--nb-pink); }
.issue-form .btn-primary:hover{ background:var(--nb-pink); }
.comment-form .btn-primary{ background:var(--nb-cyan); color:#000; }
.comment-form .btn-primary:hover{ background:var(--nb-cyan); }
/* ============ 12 · 移动端紧凑卡片（一屏看到更多软件） ============ */
.nb-card-name a{ color:inherit; text-decoration:none; }
.nb-card-name a:hover{ color:var(--nb-ink); text-decoration:underline; }
@media (max-width:640px){
  .nb-grid{ grid-template-columns:1fr; gap:10px; }
  .nb-card{ flex-direction:row; align-items:center; gap:12px; padding:12px 14px; }
  .nb-card-icon{ width:50px; height:50px; flex:0 0 auto; border-radius:10px; box-shadow:2px 2px 0 #000; }
  .nb-card-icon-fallback{ font-size:22px; }
  .nb-card > div:nth-of-type(1){ flex:1; min-width:0; }
  .nb-card-tag{ font-size:10.5px; padding:1px 8px; }
  .nb-card-name{ font-size:16px; margin:4px 0 0; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
  .nb-card-desc{ display:none; }
  .nb-card-meta{ display:none; }
  .nb-card > div:last-child{ display:flex; align-items:center; gap:8px; }
  .nb-card-ver{ font-size:17px; margin:0; white-space:nowrap; }
  .nb-card-actions{ gap:8px; }
  .nb-card-actions .nb-btn{ flex:0 0 auto; padding:7px 12px; font-size:12.5px; }
  .nb-card-actions .nb-btn-white{ display:none; }
}
/* ============ 13 · 网盘来源徽章（一眼识别网盘下载） ============ */
.nb-drive{ display:inline-flex; align-items:center; gap:6px; border:2.5px solid #000; border-radius:8px;
  background:#fff; padding:3px 10px 3px 5px; font-weight:900; font-size:12.5px; box-shadow:2px 2px 0 #000; }
.nb-drive i{ font-style:normal; width:20px; height:20px; border-radius:5px; background:#000; color:#fff;
  display:inline-flex; align-items:center; justify-content:center; font-size:11.5px; font-weight:900; }
.nb-drive.bd i{ background:#19a7ea; }   /* 百度网盘 */
.nb-drive.lz i{ background:#0f7ff2; }   /* 蓝奏云 */
.nb-drive.ali i{ background:#1677ff; }  /* 阿里云盘 */
.nb-drive.qk i{ background:#3766f5; }   /* 夸克 */
.nb-drive.wy i{ background:#00b9f1; }   /* 腾讯微云 */
.nb-drive.ty i{ background:#ff6600; }   /* 天翼 */
.nb-drive.p123 i{ background:#ff3d3d; } /* 123云盘 */
.nb-drive.xl i{ background:#ff6600; }   /* 迅雷 */
.nb-drive.uc i{ background:#1f7aff; }   /* UC */
.nb-drive.p115 i{ background:#cfcfcf; color:#000; } /* 115 */
.nb-drive.off i{ background:var(--nb-green); color:#000; } /* 官网 */
.nb-drive.pan i{ background:var(--nb-ink); } /* 其他网盘 */
/* 主下载按钮下的来源徽章排 */
.nb-dl-drives{ display:flex; flex-wrap:wrap; justify-content:center; gap:8px; margin-top:12px; }
.nb-dl-list li .nb-drive{ box-shadow:none; }
.nb-dl-sub{ margin-top:14px; font-size:13px; font-weight:700; opacity:.75; }
.nb-dl-sub i{ margin-right:4px; color:var(--nb-pink); }
/* ============ 14 · 移动端搜索框紧凑化（顶部搜索不再巨大） ============ */
@media (max-width:640px){
  .nb-hero{ padding:26px 16px 22px; }
  .nb-hero .nb-tag{ font-size:12px; }
  .nb-hero-desc{ font-size:14.5px; margin-bottom:18px; }

}
/* ============ 15 · 顶栏唯一搜索框（整站一个搜索栏） ============ */
.nb-topsearch{ display:flex; align-items:center; gap:6px; }
.nb-topsearch input{ padding:7px 12px; font-size:13px; font-weight:700; border:2.5px solid #000;
  border-radius:8px; background:#fff; box-shadow:2px 2px 0 #000; outline:none; width:180px; color:#000; }
.nb-topsearch input:focus{ box-shadow:2px 2px 0 var(--nb-pink); }
.nb-topsearch input::placeholder{ color:#333; opacity:.55; font-weight:600; }
.nb-topsearch button{ display:inline-flex; align-items:center; justify-content:center; width:34px; height:34px;
  background:var(--nb-yellow); border:2.5px solid #000; border-radius:8px; box-shadow:2px 2px 0 #000;
  font-size:14px; cursor:pointer; flex-shrink:0; }
.nb-topsearch button:hover{ transform:translate(1px,1px); box-shadow:1px 1px 0 #000; }
@media (max-width:640px){
  .nb-topsearch{ width:100%; }
  .nb-topsearch input{ flex:1; width:auto; }
}

/* ============ 16 · 页面背景（防刷新白屏；页面切换动画已取消） ============ */
/* 背景统一为站点奶油色：加载/切换间隙不再闪白 */
html{ background:#faf5eb; }

/* ============ 17 · UI 审查修正（桌面 + 手机一致性） ============ */
/* 1) nb-main 横向留白：手机端内容不再贴屏幕边缘（覆盖首页/其他软件/搜索/标签/反馈/登录/注册/用户中心） */
.nb-main{ padding:34px clamp(14px,3vw,28px) 60px; }
/* 2) 手机端：小节标题缩小，分类 tabs 改单行横向滚动（不再折成多行） */
@media (max-width:768px){
  .nb-sec-title{ font-size:24px; margin-bottom:18px; }
  .nb-tabs{ flex-wrap:nowrap; overflow-x:auto; -webkit-overflow-scrolling:touch; padding-bottom:8px; margin-bottom:22px; }
  .nb-tabs a{ flex:0 0 auto; white-space:nowrap; }
  .nb-tabs::-webkit-scrollbar{ display:none; }
  .nb-tabs{ scrollbar-width:none; }
}
/* 3) 表格长内容换行保险（邮箱/链接不撑破面板） */
.nb-table td{ overflow-wrap:anywhere; word-break:break-word; }
/* 4) 手机端顶栏紧凑：logo/导航收小 */
@media (max-width:640px){
  .nb-topbar-inner{ gap:8px; }
  .nb-logo{ font-size:18px; letter-spacing:-.5px; }
  .nb-topnav a{ padding:5px 10px; font-size:12.5px; }
}
/* 5) 搜索页轻量 hero 手机端留白修正 */
@media (max-width:640px){
  .nb-hero.nb-hero-lite{ padding:22px 16px 20px; }
  .nb-hero-lite .nb-hero-title{ font-size:28px; }
}

/* ============ 6) 许愿池（简约 + 显眼） ============ */
.nb-layout2{ display:block; }
.nb-wish-side{ margin:0 auto 32px; }
.nb-wish-side .nb-wish-card{ max-width:560px; margin-left:auto; margin-right:auto; }

.nb-wish-card{
  background:#fff; border-radius:18px; overflow:hidden;
  border:1px solid #eceefd;
  box-shadow:0 14px 34px rgba(79,70,229,.14), 0 2px 6px rgba(0,0,0,.04);
}
.nb-wish-head{
  background:linear-gradient(135deg,#6366f1 0%,#8b5cf6 100%);
  color:#fff; padding:20px 22px; display:flex; align-items:center; gap:14px;
}
.nb-wish-head-icon{ font-size:30px; line-height:1; }
.nb-wish-title{ margin:0; font-size:22px; font-weight:800; letter-spacing:.5px; }
.nb-wish-free-badge{ background:#fff; color:#e11d48; font-size:12px; font-weight:800; padding:2px 10px; border-radius:999px; margin-left:6px; vertical-align:2px; box-shadow:0 2px 6px rgba(0,0,0,.18); }
.nb-wish-sub{ margin:3px 0 0; font-size:13px; font-weight:500; opacity:.92; }
.nb-wish-body{ padding:18px 20px 20px; }

.nb-wish-rules{ display:flex; flex-direction:column; gap:8px; background:#f6f7ff; border:1px solid #e8eafe; border-radius:12px; padding:12px 14px; margin-bottom:14px; }
.nb-wish-rule{ display:flex; gap:10px; align-items:flex-start; font-size:13px; line-height:1.45; }
.nb-wish-rule > span{ font-size:16px; line-height:1.2; }
.nb-wish-rule b{ font-weight:700; color:#312e81; display:block; }
.nb-wish-rule em{ font-style:normal; color:#6b7280; font-size:12px; }

.nb-wish-card .nb-wish-alert{ border:1px solid transparent; box-shadow:none; border-radius:10px; font-size:13.5px; margin-bottom:12px; }

.nb-wish-form label{ display:block; margin:12px 0 5px; font-weight:600; font-size:12.5px; color:#4b5563; }
.nb-wish-form label small{ font-weight:400; opacity:.7; }
.nb-wish-form .form-control{
  background:#fff; border:1.5px solid #e5e7eb; border-radius:10px;
  box-shadow:none; padding:9px 12px; font-size:14px; color:#111827; font-weight:500;
  transition:border-color .15s, box-shadow .15s;
}
.nb-wish-form .form-control:focus{ border-color:#6366f1; box-shadow:0 0 0 3px rgba(99,102,241,.15); }
.nb-wish-form textarea.form-control{ resize:vertical; }
.nb-wish-row2{ display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.nb-wish-upload{ font-size:12.5px; color:#6b7280; margin-top:8px; line-height:1.6; }
.nb-wish-upload img{ max-width:100%; max-height:130px; border:1px solid #e5e7eb; border-radius:10px; margin-top:6px; display:block; }
.nb-wish-form .btn-primary{
  background:linear-gradient(135deg,#6366f1,#8b5cf6); border:none; color:#fff;
  border-radius:12px; font-weight:700; font-size:15px; padding:12px; width:100%; margin-top:16px;
  box-shadow:0 8px 18px rgba(99,102,241,.35);
  transition:filter .15s, box-shadow .15s, transform .1s;
}
.nb-wish-form .btn-primary:hover{ color:#fff; filter:brightness(1.07); box-shadow:0 10px 22px rgba(99,102,241,.45); }
.nb-wish-form .btn-primary:active{ transform:translateY(1px); }

.nb-wish-login{ text-align:center; font-weight:600; font-size:14px; color:#374151; display:flex; flex-direction:column; gap:12px; align-items:center; padding:8px 0 2px; }
.nb-wish-login-btns{ display:flex; gap:10px; flex-wrap:wrap; justify-content:center; }
.nb-wish-login .btn-primary{ background:linear-gradient(135deg,#6366f1,#8b5cf6); border:none; border-radius:10px; font-weight:700; padding:9px 22px; color:#fff; }
.nb-wish-login .btn-primary:hover{ color:#fff; filter:brightness(1.07); }
.nb-wish-login .btn-outline-dark{ border-radius:10px; border:1.5px solid #d1d5db; color:#374151; font-weight:600; padding:9px 22px; }
.nb-wish-login .btn-outline-dark:hover{ background:#f3f4f6; color:#111827; }

.nb-wish-list{ margin-top:18px; border-top:1px solid #eceefd; padding-top:14px; }
.nb-wish-list h3{ font-size:15px; font-weight:700; margin:0 0 12px; display:flex; align-items:center; gap:10px; flex-wrap:wrap; color:#111827; }
.nb-wish-list .nb-count{ font-size:12px; font-weight:600; background:#eef2ff; color:#4338ca; padding:3px 10px; border-radius:999px; }
.nb-wish-item{ border:1px solid #f0f0f6; border-radius:10px; background:#fafaff; padding:10px 12px; margin-bottom:10px; }
.nb-wish-item:hover{ border-color:#dbe0fe; }
.nb-wish-name{ font-weight:700; font-size:14px; color:#111827; display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.nb-wish-meta{ font-size:12px; color:#9ca3af; margin-top:3px; }
.nb-wish-empty{ font-size:13px; color:#9ca3af; margin:0; }
.nb-wish-badge{ font-size:11px; font-weight:700; padding:2px 9px; border-radius:999px; border:none; }
.nb-wish-pending{ background:#fef3c7; color:#92400e; }
.nb-wish-approved{ background:#dcfce7; color:#166534; }
.nb-wish-rejected{ background:#fee2e2; color:#991b1b; }

@media (max-width:480px){
  .nb-wish-card{ border-radius:14px; }
  .nb-wish-body{ padding:16px; }
  .nb-wish-head{ padding:16px 18px; }
  .nb-wish-row2{ grid-template-columns:1fr; }
}

/* ============ 6b) 许愿池：超宽屏固定贴屏幕左侧空白（主内容保持居中不动） ============ */
@media (min-width:1800px){
  .nb-wish-side{ position:fixed; left:24px; top:76px; width:300px; margin:0; max-height:calc(100vh - 110px); overflow-y:auto; z-index:50; }
  .nb-wish-side .nb-wish-card{ max-width:none; }
}

/* ============ 7) 加群二维码（首页右侧） ============ */
.nb-qr-side{ margin:32px auto 0; max-width:320px; }
.nb-qr-card{ background:#fff; border-radius:18px; overflow:hidden; border:1px solid #eceefd; box-shadow:0 14px 34px rgba(79,70,229,.14), 0 2px 6px rgba(0,0,0,.04); text-align:center; }
.nb-qr-head{ background:linear-gradient(135deg,#6366f1,#8b5cf6); color:#fff; padding:12px 16px; font-weight:800; font-size:15px; }
.nb-qr-img{ width:200px; height:200px; object-fit:contain; margin:18px auto 4px; padding:8px; background:#fff; border-radius:12px; display:block; }
.nb-qr-tip{ font-size:12.5px; color:#6b7280; font-weight:600; margin:0 0 18px; }
@media (min-width:1800px){
  .nb-qr-side{ position:fixed; right:24px; top:76px; width:240px; max-width:none; margin:0; z-index:50; }
  .nb-qr-img{ width:180px; height:180px; }
}

/* ============ 18 · 用户中心补充（nb-list-* / nb-badge-* 等，新野兽派同款） ============ */
.nb-btn-sm{ padding:5px 12px; font-size:12.5px; }
.nb-footer-links{ font-size:13px; opacity:.75; }
.nb-user-head{ display:flex; align-items:center; justify-content:space-between; gap:14px; flex-wrap:wrap; margin-bottom:10px; }
.nb-list{ display:flex; flex-direction:column; gap:10px; }
.nb-list-item{ display:flex; align-items:center; gap:14px; padding:12px 14px; border:2.5px solid #000; border-radius:10px; background:#fff; box-shadow:3px 3px 0 #000; transition:all .12s; }
.nb-list-item:hover{ transform:translate(-1px,-1px); box-shadow:4px 4px 0 #000; }
.nb-list-icon{ width:46px; height:46px; flex:0 0 auto; border:2px solid #000; border-radius:8px; background:var(--nb-bg); display:flex; align-items:center; justify-content:center; font-size:20px; color:#000; overflow:hidden; }
.nb-list-icon img{ width:100%; height:100%; object-fit:cover; }
.nb-list-main{ flex:1; min-width:0; }
.nb-list-name{ font-weight:900; color:#000; margin:0 0 4px; }
.nb-list-name a{ color:#000; }
.nb-list-name a:hover{ color:var(--nb-pink); }
.nb-list-name small{ color:#333; font-family:ui-monospace,Menlo,Consolas,monospace; font-size:11.5px; margin:0 4px; font-weight:700; }
.nb-list-meta{ font-size:12.5px; color:#333; display:flex; gap:14px; flex-wrap:wrap; margin:0 0 4px; font-weight:600; }
.nb-list-note{ color:var(--nb-pink); font-size:13px; margin:0; font-weight:700; }
.nb-list-desc{ color:#333; font-size:13px; margin:0; font-weight:500; }
.nb-badge{ display:inline-block; font-size:11.5px; font-weight:900; padding:2px 10px; border:2px solid #000; border-radius:6px; box-shadow:1px 1px 0 #000; background:#fff; color:#000; }
.nb-badge-green{ background:var(--nb-green); }
.nb-badge-yellow{ background:var(--nb-yellow); }
.nb-badge-red,.nb-badge-pink{ background:var(--nb-pink); color:#fff; }
.nb-badge-cyan{ background:var(--nb-cyan); }
.nb-tabs-sm a{ padding:5px 12px; font-size:12.5px; }
.nb-empty{ text-align:center; padding:36px 16px; font-weight:700; }
.nb-empty i{ font-size:34px; display:block; margin-bottom:8px; opacity:.55; }
/* ============ 19 · wangEditor 容器边框统一 ============ */
#toolbar-container{ background:#fff; border:1px solid var(--border); border-radius:var(--radius) var(--radius) 0 0; }
#editor-container{ background:#fff; border:1px solid var(--border); border-top:none; border-radius:0 0 var(--radius) var(--radius); }
