/* ===== Aero Jumplist 论坛模板样式 ===== */
/* 配色: 主色#4A90D9 / 背景#A6CAE6渐变 / 表面rgba(255,255,255,0.85) / 文字#1A1A1A / 跳转列表rgba(30,30,50,0.85) */

* { margin:0; padding:0; box-sizing:border-box; }

:root{
  --aj-primary:#4A90D9;
  --aj-accent:#2B7CD3;
  --aj-bg1:#A6CAE6;
  --aj-bg2:#C7DCEC;
  --aj-surface:rgba(255,255,255,0.85);
  --aj-text:#1A1A1A;
  --aj-jl:rgba(30,30,50,0.85);
  --aj-border:rgba(74,144,217,0.3);
}

.aj-body{
  font-family:"Segoe UI","Noto Sans SC",sans-serif;
  background:linear-gradient(160deg,var(--aj-bg1),var(--aj-bg2));
  background-attachment:fixed;
  color:var(--aj-text); font-size:14px; line-height:1.6;
  min-height:100vh;
}
a{ color:var(--aj-primary); text-decoration:none; }
a:hover{ text-decoration:underline; }

/* === 顶部 Aero 毛玻璃导航 === */
.aj-topbar{
  position:sticky; top:0; z-index:100;
  background:linear-gradient(180deg,rgba(255,255,255,0.55),rgba(167,201,230,0.45));
  backdrop-filter:blur(18px) saturate(160%); -webkit-backdrop-filter:blur(18px) saturate(160%);
  border-bottom:1px solid rgba(255,255,255,0.5);
  box-shadow:0 2px 10px rgba(30,60,100,0.12);
}
.aj-topbar-inner{ max-width:1280px; margin:0 auto; display:flex; align-items:center; gap:18px; padding:8px 18px; }
.aj-logo-link{ flex-shrink:0; }
.aj-logo{ height:34px; }
.aj-search{ display:flex; align-items:center; flex:1; max-width:520px; background:rgba(255,255,255,0.7); border:1px solid rgba(255,255,255,0.8); border-radius:18px; overflow:hidden; box-shadow:inset 0 1px 3px rgba(30,60,100,0.1); }
.aj-search-input{ flex:1; border:none; outline:none; background:transparent; padding:7px 14px; font-size:13px; }
.aj-search-go{ display:flex; align-items:center; justify-content:center; width:36px; height:32px; background:linear-gradient(180deg,var(--aj-primary),var(--aj-accent)); }
.aj-search-go svg{ width:15px; height:15px; }
.aj-user{ position:relative; display:flex; align-items:center; gap:6px; padding:4px 10px; background:rgba(255,255,255,0.5); border-radius:18px; cursor:pointer; }
.aj-userava{ width:28px; height:28px; border-radius:50%; border:2px solid #fff; }
.aj-username{ font-size:13px; color:#333; }
.aj-userarrow{ font-size:10px; color:#666; }
.aj-usermenu{ position:absolute; top:42px; right:0; min-width:130px; background:var(--aj-jl); border-radius:6px; padding:6px 0; display:none; box-shadow:0 6px 20px rgba(0,0,0,0.25); }
.aj-user:hover .aj-usermenu{ display:block; }
.aj-usermenu a{ display:block; padding:7px 16px; color:#fff; font-size:13px; }
.aj-usermenu a:hover{ background:rgba(74,144,217,0.4); text-decoration:none; }
.aj-menu-sep{ border-top:1px solid rgba(255,255,255,0.2); margin-top:4px; padding-top:11px !important; }

/* === 布局 === */
.aj-layout{ max-width:1280px; margin:14px auto; display:flex; gap:14px; padding:0 14px; }
.aj-jumplist{ width:230px; flex-shrink:0; position:sticky; top:64px; align-self:flex-start; max-height:calc(100vh - 80px); overflow-y:auto; }

/* === 跳转列表 === */
.aj-jl-section{ background:var(--aj-jl); backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px); border-radius:8px; margin-bottom:10px; overflow:hidden; box-shadow:0 4px 14px rgba(20,30,50,0.2); border:1px solid rgba(255,255,255,0.1); }
.aj-jl-head{ display:flex; align-items:center; gap:6px; padding:9px 12px; font-size:12px; color:rgba(255,255,255,0.7); text-transform:uppercase; letter-spacing:0.5px; border-bottom:1px solid rgba(255,255,255,0.1); }
.aj-jl-ico{ width:14px; height:14px; flex-shrink:0; }
.aj-pin{ margin-left:auto; font-size:13px; opacity:0.6; }
.aj-jl-list{ list-style:none; }
.aj-jl-list > li{ position:relative; }
.aj-jl-item{ display:flex; align-items:center; gap:8px; padding:7px 12px; border-bottom:1px solid rgba(255,255,255,0.05); }
.aj-jl-item a{ color:rgba(255,255,255,0.9); font-size:13px; flex:1; }
.aj-jl-item:hover a{ color:#fff; text-decoration:none; }
.aj-jl-item:hover{ background:rgba(74,144,217,0.25); }
.aj-jl-item.active{ background:linear-gradient(90deg,rgba(74,144,217,0.4),transparent); border-left:3px solid var(--aj-primary); }
.aj-jl-item.active a{ color:#fff; font-weight:600; }
.aj-jl-dot{ width:8px; height:8px; border-radius:50%; flex-shrink:0; box-shadow:0 0 4px currentColor; }
.aj-jl-count{ font-size:11px; color:rgba(255,255,255,0.5); }

/* 悬停弹出最近帖子 */
.aj-popup{ display:none; position:absolute; left:100%; top:0; margin-left:8px; min-width:200px; background:rgba(30,30,50,0.95); border:1px solid rgba(74,144,217,0.4); border-radius:6px; padding:8px 10px; z-index:50; box-shadow:0 6px 24px rgba(0,0,0,0.4); }
.aj-jl-item:hover .aj-popup{ display:block; }
.aj-popup h4{ font-size:11px; color:var(--aj-primary); margin-bottom:5px; text-transform:uppercase; }
.aj-popup a{ display:block; padding:4px 0; color:rgba(255,255,255,0.85); font-size:12px; border-bottom:1px solid rgba(255,255,255,0.08); }
.aj-popup a:last-child{ border-bottom:none; }
.aj-popup a:hover{ color:#fff; text-decoration:none; }

.aj-jl-recent li, .aj-jl-tasks li{ padding:6px 12px; border-bottom:1px solid rgba(255,255,255,0.05); }
.aj-jl-recent a{ color:rgba(255,255,255,0.75); font-size:12px; display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.aj-jl-tasks a{ display:flex; align-items:center; gap:6px; color:rgba(255,255,255,0.9); font-size:13px; }
.aj-jl-recent li:hover, .aj-jl-tasks li:hover{ background:rgba(74,144,217,0.2); }

/* === 主内容 === */
.aj-main{ flex:1; min-width:0; }
.aj-banner{ border-radius:10px; overflow:hidden; box-shadow:0 6px 20px rgba(30,60,100,0.2); border:1px solid rgba(255,255,255,0.5); margin-bottom:14px; }
.aj-banner-img{ width:100%; display:block; }

/* 统计条 */
.aj-statbar{ display:flex; gap:10px; margin-bottom:16px; }
.aj-stat-item{ flex:1; background:var(--aj-surface); backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px); border:1px solid rgba(255,255,255,0.5); border-radius:8px; padding:12px; text-align:center; box-shadow:0 2px 8px rgba(30,60,100,0.08); }
.aj-stat-item b{ display:block; font-size:22px; color:var(--aj-primary); }
.aj-stat-item span{ font-size:12px; color:#666; }

.aj-block-title{ font-size:17px; margin-bottom:12px; padding-left:10px; border-left:4px solid var(--aj-primary); color:var(--aj-text); }

/* 板块卡片网格 */
.aj-cards{ display:grid; grid-template-columns:repeat(auto-fill,minmax(220px,1fr)); gap:12px; margin-bottom:18px; }
.aj-card{ background:var(--aj-surface); backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px); border:1px solid rgba(255,255,255,0.5); border-radius:10px; overflow:hidden; transition:transform .2s, box-shadow .2s; box-shadow:0 2px 8px rgba(30,60,100,0.08); }
.aj-card:hover{ transform:translateY(-4px); box-shadow:0 8px 24px rgba(30,60,100,0.2); text-decoration:none; }
.aj-card-top{ height:80px; display:flex; align-items:center; justify-content:center; }
.aj-card-top svg{ width:42px; height:42px; }
.aj-card-body{ padding:12px 14px; }
.aj-card-body h3{ font-size:15px; color:var(--aj-text); display:flex; align-items:center; gap:6px; }
.aj-card-body p{ font-size:12px; color:#777; margin:4px 0 8px; min-height:34px; }
.aj-card-stat{ display:flex; gap:12px; font-size:11px; color:#999; }
.aj-card-latest{ font-size:11px; color:var(--aj-primary); margin-top:6px; padding-top:6px; border-top:1px dashed #D5E2EF; }
.aj-hot{ font-size:10px; background:#E74C3C; color:#fff; padding:1px 5px; border-radius:3px; }

/* 底部双栏 */
.aj-bottom-grid{ display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.aj-panel{ background:var(--aj-surface); backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px); border:1px solid rgba(255,255,255,0.5); border-radius:8px; padding:14px; box-shadow:0 2px 8px rgba(30,60,100,0.08); }
.aj-panel-title{ font-size:14px; margin-bottom:10px; color:var(--aj-text); padding-bottom:6px; border-bottom:1px solid #E0E8F0; }
.aj-hotlist{ list-style:none; }
.aj-hotlist li{ display:flex; align-items:center; gap:8px; padding:5px 0; font-size:13px; }
.aj-rank{ width:20px; height:20px; background:rgba(74,144,217,0.2); color:#666; border-radius:3px; text-align:center; line-height:20px; font-size:12px; flex-shrink:0; }
.aj-rank.r1{ background:#E74C3C; color:#fff; }
.aj-rank.r2{ background:#F39C12; color:#fff; }
.aj-rank.r3{ background:#27AE60; color:#fff; }
.aj-hotlist li a{ flex:1; color:#444; }
.aj-hot-replies{ font-size:11px; color:#aaa; }
.aj-gallery{ display:grid; grid-template-columns:1fr 1fr 1fr; gap:6px; }
.aj-gallery img{ width:100%; border-radius:5px; border:1px solid rgba(255,255,255,0.5); }

/* === 列表页 === */
.aj-crumb{ padding:6px 0; font-size:13px; color:#555; }
.aj-crumb a{ color:var(--aj-primary); }
.aj-crumb span{ margin:0 4px; color:#aaa; }
.aj-main-flex{ display:flex; gap:14px; }
.aj-list-area{ flex:1; min-width:0; }
.aj-side{ width:240px; flex-shrink:0; }

.aj-board-info{ display:flex; align-items:center; gap:14px; background:var(--aj-surface); backdrop-filter:blur(10px); border:1px solid rgba(255,255,255,0.5); border-radius:8px; padding:14px; margin-bottom:12px; }
.aj-board-ico{ width:54px; height:54px; flex-shrink:0; }
.aj-board-ico svg{ width:100%; height:100%; }
.aj-board-text{ flex:1; }
.aj-board-text h1{ font-size:19px; }
.aj-board-text p{ font-size:12px; color:#777; margin-top:3px; }
.aj-post-btn{ display:flex; align-items:center; gap:5px; padding:8px 18px; background:linear-gradient(180deg,var(--aj-primary),var(--aj-accent)); color:#fff; border-radius:5px; font-size:14px; box-shadow:0 3px 8px rgba(74,144,217,0.3); }
.aj-post-btn:hover{ text-decoration:none; filter:brightness(1.1); }
.aj-post-btn svg{ width:14px; height:14px; }

.aj-thread-list{ background:var(--aj-surface); backdrop-filter:blur(10px); border:1px solid rgba(255,255,255,0.5); border-radius:8px; overflow:hidden; }
.aj-thread{ display:flex; align-items:center; gap:12px; padding:11px 14px; border-bottom:1px solid #E8EFF5; }
.aj-thread:last-child{ border-bottom:none; }
.aj-thread:hover{ background:rgba(74,144,217,0.08); }
.aj-thread-ava{ width:40px; height:40px; border-radius:6px; flex-shrink:0; }
.aj-thread-main{ flex:1; min-width:0; }
.aj-thread-title{ font-size:14px; }
.aj-thread-title a{ color:var(--aj-text); }
.aj-thread-title a:hover{ color:var(--aj-primary); }
.aj-tag-top{ display:inline-block; background:#E74C3C; color:#fff; font-size:10px; padding:1px 5px; border-radius:3px; margin-right:6px; }
.aj-tag-ess{ display:inline-block; background:#F39C12; color:#fff; font-size:10px; padding:1px 5px; border-radius:3px; margin-right:6px; }
.aj-thread-meta{ font-size:11px; color:#999; margin-top:3px; }
.aj-thread-stat{ width:60px; text-align:center; flex-shrink:0; }
.aj-thread-stat b{ display:block; font-size:16px; color:var(--aj-primary); }
.aj-thread-stat span{ font-size:10px; color:#aaa; }
.aj-thread-last{ display:flex; align-items:center; gap:6px; width:130px; flex-shrink:0; }
.aj-thread-ava-sm{ width:26px; height:26px; border-radius:4px; }
.aj-thread-last div{ font-size:11px; color:#888; }
.aj-thread-time{ color:#bbb !important; }

/* 分页 */
.aj-pager{ display:flex; gap:4px; justify-content:center; padding:16px 0; flex-wrap:wrap; }
.aj-pg{ padding:5px 11px; background:var(--aj-surface); border:1px solid var(--aj-border); color:#444; border-radius:4px; font-size:13px; }
.aj-pg:hover{ background:var(--aj-primary); color:#fff; text-decoration:none; border-color:var(--aj-primary); }
.aj-pg.active{ background:var(--aj-primary); color:#fff; border-color:var(--aj-primary); }
.aj-pg.disabled{ opacity:0.5; pointer-events:none; }
.aj-pg-ellipsis{ padding:5px 4px; color:#999; }

/* 侧边栏 */
.aj-side-panel{ background:var(--aj-surface); backdrop-filter:blur(10px); border:1px solid rgba(255,255,255,0.5); border-radius:8px; padding:14px; margin-bottom:12px; }
.aj-side-panel h3{ font-size:14px; margin-bottom:10px; padding-bottom:6px; border-bottom:1px solid #E0E8F0; }
.aj-side-note{ font-size:12px; color:#777; line-height:1.7; }
.aj-mod{ display:flex; align-items:center; gap:8px; padding:6px 0; }
.aj-mod img{ width:34px; height:34px; border-radius:5px; }
.aj-mod b{ font-size:13px; display:block; }
.aj-mod-badge{ font-size:10px; background:var(--aj-primary); color:#fff; padding:1px 6px; border-radius:3px; }
.aj-side-hot{ list-style:none; counter-reset:sh; }
.aj-side-hot li{ counter-increment:sh; padding:5px 0 5px 22px; position:relative; font-size:13px; }
.aj-side-hot li::before{ content:counter(sh); position:absolute; left:0; top:5px; width:16px; height:16px; background:var(--aj-primary); color:#fff; font-size:10px; border-radius:3px; text-align:center; line-height:16px; }
.aj-side-stat{ list-style:none; }
.aj-side-stat li{ font-size:13px; color:#666; padding:3px 0; }
.aj-side-ava{ width:64px; height:64px; border-radius:8px; display:block; margin:0 auto 8px; }
.aj-side-thumb{ width:100%; border-radius:5px; }

/* === 详情页 === */
.aj-dtitle{ font-size:21px; margin:6px 0 4px; }
.aj-dmeta{ font-size:12px; color:#888; margin-bottom:14px; padding-bottom:8px; border-bottom:1px solid var(--aj-border); }
.aj-floor{ display:flex; background:var(--aj-surface); backdrop-filter:blur(10px); border:1px solid rgba(255,255,255,0.5); border-radius:8px; overflow:hidden; margin-bottom:10px; }
.aj-floor-op{ border-color:var(--aj-primary); box-shadow:0 0 0 1px rgba(74,144,217,0.2); }
.aj-floor-bar{ width:130px; flex-shrink:0; background:linear-gradient(180deg,rgba(74,144,217,0.12),rgba(74,144,217,0.05)); padding:14px 10px; text-align:center; border-right:1px solid #E0E8F0; }
.aj-floor-ava{ width:56px; height:56px; border-radius:8px; }
.aj-floor-user{ margin-top:6px; }
.aj-floor-user b{ font-size:13px; display:block; }
.aj-lv{ font-size:11px; color:var(--aj-primary); }
.aj-floor-content{ flex:1; padding:12px 16px; }
.aj-floor-top{ display:flex; gap:12px; align-items:center; padding-bottom:8px; border-bottom:1px dashed #DDE5EC; margin-bottom:10px; }
.aj-floor-num{ font-size:11px; color:#fff; background:var(--aj-primary); padding:1px 8px; border-radius:3px; }
.aj-floor-time{ font-size:11px; color:#aaa; }
.aj-floor-content p{ margin-bottom:10px; line-height:1.8; }
.aj-dimg{ max-width:100%; border-radius:5px; border:1px solid #E0E8F0; }
.aj-floor-act{ display:flex; gap:8px; padding-top:8px; border-top:1px dashed #DDE5EC; }
.aj-floor-act button{ padding:3px 12px; font-size:12px; border:1px solid #DDE5EC; background:#fff; color:#555; border-radius:4px; cursor:pointer; }
.aj-floor-act button:hover{ background:var(--aj-primary); color:#fff; border-color:var(--aj-primary); }

.aj-reply{ background:var(--aj-surface); backdrop-filter:blur(10px); border:1px solid rgba(255,255,255,0.5); border-radius:8px; padding:14px; margin-top:14px; }
.aj-reply h3{ font-size:15px; margin-bottom:10px; }
.aj-reply textarea{ width:100%; height:120px; padding:10px; border:1px solid #DDE5EC; border-radius:5px; font-size:13px; resize:vertical; outline:none; font-family:inherit; }
.aj-reply textarea:focus{ border-color:var(--aj-primary); box-shadow:0 0 0 2px rgba(74,144,217,0.15); }
.aj-reply-tool{ display:flex; gap:6px; align-items:center; margin-top:8px; }
.aj-tool-btn{ padding:4px 10px; font-size:12px; border:1px solid #DDE5EC; background:#fff; border-radius:3px; cursor:pointer; }
.aj-reply-submit{ margin-left:auto; padding:7px 22px; background:linear-gradient(180deg,var(--aj-primary),var(--aj-accent)); color:#fff; border:none; border-radius:5px; font-size:14px; cursor:pointer; }

/* === 搜索页 === */
.aj-search-hero{ background:var(--aj-surface); backdrop-filter:blur(10px); border:1px solid rgba(255,255,255,0.5); border-radius:10px; padding:24px; text-align:center; margin-bottom:14px; }
.aj-search-hero h1{ font-size:20px; margin-bottom:14px; }
.aj-search-hero-box{ display:flex; gap:8px; max-width:560px; margin:0 auto; }
.aj-search-hero-input{ flex:1; padding:9px 14px; font-size:14px; border:2px solid var(--aj-primary); border-radius:6px; outline:none; }
.aj-search-hero-btn{ display:flex; align-items:center; gap:5px; padding:0 22px; background:linear-gradient(180deg,var(--aj-primary),var(--aj-accent)); color:#fff; border:none; border-radius:6px; font-size:14px; cursor:pointer; }
.aj-search-hero-btn svg{ width:14px; height:14px; }
.aj-search-meta{ font-size:13px; color:#777; margin-top:12px; }
.aj-filter{ display:flex; align-items:center; gap:6px; flex-wrap:wrap; background:var(--aj-surface); backdrop-filter:blur(10px); border:1px solid rgba(255,255,255,0.5); border-radius:8px; padding:10px 12px; margin-bottom:12px; }
.aj-filter-label{ font-size:13px; color:#555; }
.aj-ftag{ padding:3px 11px; font-size:12px; border:1px solid #DDE5EC; background:#fff; color:#555; border-radius:14px; cursor:pointer; }
.aj-ftag:hover{ border-color:var(--aj-primary); color:var(--aj-primary); }
.aj-ftag.active{ background:var(--aj-primary); color:#fff; border-color:var(--aj-primary); }
.aj-filter-sort{ margin-left:auto; font-size:12px; color:#666; }
.aj-filter-sort select{ padding:2px 6px; border-radius:3px; }
.aj-results{ background:var(--aj-surface); backdrop-filter:blur(10px); border:1px solid rgba(255,255,255,0.5); border-radius:8px; padding:6px 16px; }
.aj-result{ padding:13px 0; border-bottom:1px solid #E8EFF5; }
.aj-result:last-child{ border-bottom:none; }
.aj-result h3 a{ font-size:15px; color:var(--aj-primary); }
.aj-result p{ font-size:13px; color:#666; margin:5px 0; line-height:1.7; }
.aj-result p em{ color:var(--aj-primary); font-style:normal; font-weight:600; background:#FFF3D6; padding:0 2px; }
.aj-result-meta{ display:flex; gap:14px; font-size:11px; color:#aaa; }
.aj-rboard{ color:var(--aj-primary) !important; }
.aj-hot-tags{ display:flex; flex-wrap:wrap; gap:6px; }
.aj-htag{ padding:3px 12px; font-size:12px; background:rgba(74,144,217,0.15); color:var(--aj-primary); border-radius:14px; }
.aj-htag:hover{ background:var(--aj-primary); color:#fff; text-decoration:none; }

/* === 页脚 === */
.aj-footer{ background:var(--aj-jl); backdrop-filter:blur(14px); color:rgba(255,255,255,0.8); padding:14px 18px; margin-top:14px; }
.aj-footer-inner{ max-width:1280px; margin:0 auto; display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:8px; font-size:12px; }
.aj-footer-links a{ color:rgba(255,255,255,0.8); }
.aj-footer-stat{ color:rgba(255,255,255,0.6); }

@media (max-width:980px){
  .aj-jumplist{ display:none; }
  .aj-bottom-grid{ grid-template-columns:1fr; }
  .aj-main-flex{ flex-direction:column; }
  .aj-side{ width:100%; }
}

/* ===== CMS 扩展样式 ===== */

/* 文章内容 */
.aj-post-content{ line-height:1.8; font-size:14px; color:var(--aj-text); }
.aj-post-content p{ margin-bottom:10px; }
.aj-post-content img{ max-width:100%; border-radius:5px; border:1px solid #E0E8F0; }
.aj-post-content a{ color:var(--aj-primary); }
.aj-post-content h1,.aj-post-content h2,.aj-post-content h3{ margin:14px 0 8px; }
.aj-post-content ul,.aj-post-content ol{ margin:8px 0 12px 20px; }
.aj-post-content pre{ background:var(--aj-jl); color:#fff; padding:12px; border-radius:5px; overflow-x:auto; margin:10px 0; }
.aj-post-content blockquote{ border-left:4px solid var(--aj-primary); padding:8px 14px; margin:10px 0; background:rgba(74,144,217,0.08); border-radius:0 5px 5px 0; }

/* 明确的textarea样式（确保CMS评论框一致） */
.aj-reply-textarea{ width:100%; height:120px; padding:10px; border:1px solid #DDE5EC; border-radius:5px; font-size:13px; resize:vertical; outline:none; font-family:inherit; background:#fff; color:var(--aj-text); }
.aj-reply-textarea:focus{ border-color:var(--aj-primary); box-shadow:0 0 0 2px rgba(74,144,217,0.15); }

/* CMS分页 */
.jv-pagination{ display:flex; align-items:center; gap:4px; flex-wrap:wrap; padding:16px 0; justify-content:center; }
.jv-page-info{ font-size:13px; color:#888; margin-right:12px; }
.jv-pagination a{ display:inline-flex; align-items:center; justify-content:center; min-width:36px; height:32px; padding:0 11px; font-size:13px; font-weight:500; cursor:pointer; background:var(--aj-surface); border:1px solid var(--aj-border); border-radius:4px; color:#444; transition:all .2s; text-decoration:none; }
.jv-pagination a:hover{ border-color:var(--aj-primary); color:var(--aj-primary); background:rgba(74,144,217,0.08); }
.jv-pagination a.active{ background:var(--aj-primary); color:#fff; border-color:var(--aj-primary); }
.jv-pagination a.disabled{ color:#bbb; border-color:transparent; cursor:not-allowed; pointer-events:none; opacity:.5; }
.jv-page-dots{ display:inline-flex; align-items:center; justify-content:center; min-width:36px; height:32px; color:#999; font-size:13px; }

/* CMS评论系统 */
.comment-section{ margin-top:0; }
.comment-form-area{ margin-bottom:20px; }
.comment-login-notice{ background:var(--aj-surface); border:1px solid var(--aj-border); border-radius:6px; }
.comment-list{ display:flex; flex-direction:column; }
.comment-item{ display:flex; gap:14px; padding:16px 0; border-bottom:1px solid #E8EFF5; }
.comment-item:last-child{ border-bottom:none; }
.comment-avatar{ flex-shrink:0; width:40px; height:40px; border-radius:6px; background:var(--aj-primary); color:#fff; font-size:16px; font-weight:700; display:flex; align-items:center; justify-content:center; }
.comment-main{ flex:1; min-width:0; }
.comment-head{ display:flex; align-items:center; gap:8px; margin-bottom:6px; flex-wrap:wrap; }
.comment-author{ font-size:14px; font-weight:600; color:var(--aj-text); }
.comment-reply-to{ font-size:12px; color:#999; }
.comment-reply-to::before{ content:'\2192'; margin-right:3px; }
.comment-time{ font-size:12px; color:#999; margin-left:auto; }
.comment-content{ font-size:14px; color:#444; line-height:1.7; word-break:break-word; }
.comment-content img{ max-width:100%; border-radius:4px; }
.comment-actions{ margin-top:8px; }
.comment-reply-btn{ display:inline-flex; align-items:center; height:26px; padding:0 12px; border:none; background:transparent; color:#777; font-size:12px; cursor:pointer; transition:all .2s; }
.comment-reply-btn:hover{ color:var(--aj-primary); }
.comment-reply-form{ margin-top:10px; display:flex; flex-direction:column; gap:8px; }
.comment-reply-input{ width:100%; border:1px solid #DDE5EC; padding:10px 14px; font-size:13px; line-height:1.5; resize:vertical; min-height:60px; font-family:inherit; background:#fff; color:var(--aj-text); border-radius:5px; transition:border-color .2s; }
.comment-reply-input:focus{ border-color:var(--aj-primary); background:#fff; outline:none; box-shadow:0 0 0 2px rgba(74,144,217,0.15); }
.comment-reply-submit{ align-self:flex-end; display:inline-flex; align-items:center; height:30px; padding:0 16px; border:1px solid var(--aj-primary); background:var(--aj-primary); color:#fff; font-size:12px; font-weight:600; cursor:pointer; border-radius:4px; transition:all .2s; }
.comment-reply-submit:hover{ background:var(--aj-accent); border-color:var(--aj-accent); }
.comment-reply-submit:disabled{ opacity:.6; cursor:not-allowed; }
.comment-replies{ margin-left:54px; padding-left:16px; border-left:2px solid #E8EFF5; display:flex; flex-direction:column; }
.comment-reply-item{ display:flex; gap:10px; padding:12px 0; border-bottom:1px solid #E8EFF5; }
.comment-reply-item:last-child{ border-bottom:none; }
.comment-reply-item .comment-avatar{ width:32px; height:32px; font-size:13px; }
.comment-reply-item .comment-author{ font-size:13px; }
.comment-reply-item .comment-content{ font-size:13px; }
.comment-empty{ text-align:center; padding:32px 16px; color:#999; font-size:14px; }
.comment-empty p{ margin:0; }
.comment-load-more{ display:flex; justify-content:center; padding:16px 0; }
.comment-load-more-btn{ display:inline-flex; align-items:center; justify-content:center; height:36px; padding:0 28px; border:1px solid var(--aj-primary); background:#fff; color:var(--aj-primary); font-size:13px; font-weight:600; cursor:pointer; border-radius:4px; transition:all .2s; }
.comment-load-more-btn:hover{ background:var(--aj-primary); color:#fff; }
