/* ================================
   占星教程之家 · xingjiao 主题样式（独立原创设计）
   ================================ */

/* ---- 基础重置 ---- */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:14px;-webkit-text-size-adjust:100%}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;line-height:1.6;color:#333333;background:#f5f5f8}
a{color:#391fe3;text-decoration:none;transition:color .15s}a:hover{color:#2a16af}
img{max-width:100%;height:auto;display:block}
input,select,textarea{font-family:inherit;font-size:14px}
button{cursor:pointer;font-family:inherit}

/* ---- 容器 ---- */
.xj-container{max-width:1200px;margin:0 auto;padding:0 20px}
@media(max-width:768px){.xj-container{padding:0 12px}}

/* ---- 顶部导航栏（白底+底部边框） ---- */
.xj-header{background:#fff;border-bottom:1px solid #eae9ec;position:sticky;top:0;z-index:1000}
.xj-header-inner{display:flex;align-items:center;height:56px;gap:24px}
.xj-logo{font-size:18px;font-weight:700;color:#391fe3;white-space:nowrap}
.xj-nav{display:flex;align-items:center;gap:4px;flex:1}
.xj-nav a{padding:6px 14px;border-radius:5px;color:#555555;font-size:14px;white-space:nowrap}
.xj-nav a:hover{background:#f3f2fd;color:#391fe3}
.xj-header-right{display:flex;align-items:center;gap:10px;margin-left:auto}
.xj-btn-sm{padding:5px 14px;border-radius:5px;font-size:14px;border:1px solid #dddddd;background:#fff;color:#555555;display:inline-flex;align-items:center;gap:4px}
.xj-btn-sm:hover{border-color:#391fe3;color:#391fe3}
.xj-btn-primary{background:#391fe3;color:#fff;border-color:#391fe3}
.xj-btn-primary:hover{background:#2a16af;color:#fff;border-color:#2a16af}
.xj-btn-ghost{background:transparent}
.xj-icon{font-style:normal;font-size:13px}
.xj-search-mini{display:flex;align-items:center;border:1px solid #dddddd;border-radius:5px;overflow:hidden;background:#fff}
.xj-search-mini input{border:none;padding:5px 10px;width:140px;outline:none;font-size:14px}
.xj-search-mini button{border:none;background:#f5f5f8;padding:5px 10px;color:#666666;font-size:14px}
.xj-search-mini button:hover{background:#eae9ec}
.xj-nav-toggle{display:none;flex-direction:column;gap:4px;padding:6px;border:none;background:none}
.xj-nav-toggle span{display:block;width:22px;height:2px;background:#333333;border-radius:1px}
@media(max-width:768px){
    .xj-nav-toggle{display:flex}
    .xj-nav{position:absolute;top:56px;left:0;right:0;background:#fff;border-bottom:1px solid #eae9ec;flex-direction:column;padding:8px 20px;display:none;box-shadow:0 4px 12px rgba(0,0,0,0.06)}
    .xj-nav.open{display:flex}
    .xj-search-mini input{width:100px}
}

/* ---- Hero 搜索区（蓝色大背景） ---- */
.xj-hero{background:linear-gradient(135deg,#564aa5 0%,#746bae 100%);padding:50px 0;text-align:center;color:#fff}
.xj-hero-title{font-size:32px;font-weight:600;margin-bottom:20px;letter-spacing:2px}
.xj-hero-search{max-width:640px;margin:0 auto;display:flex;gap:0;border-radius:8px;overflow:hidden;box-shadow:0 4px 20px rgba(0,0,0,0.2)}
.xj-hero-search input{flex:1;padding:14px 20px;border:none;font-size:15px;outline:none}
.xj-hero-search button{padding:14px 32px;border:none;background:#463d80;color:#fff;font-size:15px;font-weight:500}
.xj-hero-search button:hover{background:#362d6f}
@media(max-width:768px){.xj-hero{padding:35px 0}.xj-hero-title{font-size:24px}.xj-hero-search input{padding:12px 16px}.xj-hero-search button{padding:12px 20px}}

/* ---- 栏目描述版块（六十一期：替代栏目页的搜索横幅） ----
   数据来源：后台「栏目管理 → 栏目 SEO / 栏目自定义内容」
     $cat_image   栏目图片（选填，留空则单栏铺满）
     $cat_desc    栏目描述（= 后台的栏目 SEO 描述）
     $cat_content 栏目自定义内容（富文本 HTML，入库已过 XSS 过滤）
   自定义内容里的 h2/h3/p/ul/table/img 都做了前台级排版复位，
   因为编辑器产出的标签直接进到前台，不能依赖后台样式。 */
.xj-cathero{background:linear-gradient(135deg,#efeef9 0%,#f8f7fc 100%);border-bottom:1px solid #e5e3f0;padding:32px 0}
.xj-cathero-inner{display:flex;gap:26px;align-items:flex-start}
.xj-cathero-inner.has-img .xj-cathero-media{flex:0 0 280px;max-width:280px}
.xj-cathero-media img{display:block;width:100%;height:180px;object-fit:cover;border-radius:13px;border:1px solid #e5e3f0;background:#fff}
.xj-cathero-body{flex:1;min-width:0}
.xj-cathero-kicker{display:inline-block;font-size:13px;letter-spacing:1px;color:#746bae;background:#fff;border:1px solid #e5e3f0;border-radius:1299px;padding:3px 10px;margin-bottom:10px}
.xj-cathero-title{font-size:26px;font-weight:600;color:#2f2b4a;margin:0 0 12px;letter-spacing:1px}
.xj-cathero-desc{font-size:14px;line-height:1.9;color:#625f6e}
.xj-cathero-meta{margin-top:12px;display:flex;gap:8px;flex-wrap:wrap}
.xj-cathero-chip{font-size:13px;color:#746bae;background:#fff;border:1px solid #e5e3f0;border-radius:1299px;padding:3px 10px}
.xj-cathero-custom{margin-top:18px;padding-top:16px;border-top:1px dashed #dfddec;font-size:14px;line-height:1.9;color:#53515d}
.xj-cathero-custom h2{font-size:17px;font-weight:600;color:#2f2b4a;margin:16px 0 8px;padding-bottom:6px;border-bottom:1px solid #e9e8f3}
.xj-cathero-custom h3{font-size:15px;font-weight:600;color:#37334f;margin:12px 0 6px}
.xj-cathero-custom h2:first-child,.xj-cathero-custom h3:first-child{margin-top:0}
.xj-cathero-custom p{margin:8px 0}
.xj-cathero-custom ul,.xj-cathero-custom ol{padding-left:22px;margin:8px 0}
.xj-cathero-custom li{margin:4px 0}
.xj-cathero-custom blockquote{margin:10px 0;padding:8px 14px;border-left:3px solid #a39dcc;background:#fff;color:#716d7e;border-radius:0 6px 6px 0}
.xj-cathero-custom img{max-width:100%;height:auto;border-radius:10px;margin:8px 0}
.xj-cathero-custom a{color:#463d80;text-decoration:underline}
.xj-cathero-custom table{width:100%;border-collapse:collapse;margin:12px 0;font-size:14px}
.xj-cathero-custom td,.xj-cathero-custom th{border:1px solid #e5e3f0;padding:7px 10px;text-align:left}
.xj-cathero-custom th{background:#f5f4fa;font-weight:600;color:#37334f}
.xj-cathero-custom hr{border:0;border-top:1px solid #e9e8f3;margin:14px 0}
.xj-cathero-custom pre{margin:10px 0;padding:10px 12px;background:#f5f4fa;border:1px solid #e5e3f0;border-radius:8px;overflow-x:auto;font-size:12.5px}
@media(max-width:768px){
  .xj-cathero{padding:22px 0}
  .xj-cathero-inner{flex-direction:column;gap:16px}
  .xj-cathero-inner.has-img .xj-cathero-media{flex:1 1 auto;max-width:100%}
  .xj-cathero-media img{height:150px}
  .xj-cathero-title{font-size:21px}
}

/* ---- 主内容区 ---- */
.xj-main{padding:30px 0;min-height:400px}
@media(max-width:768px){.xj-main{padding:20px 0}}

/* ---- 页脚 ---- */
.xj-footer{background:#fff;border-top:1px solid #eae9ec;padding:24px 0;margin-top:20px;text-align:center;color:#888888;font-size:14px}
.xj-footer-links{margin-top:10px;display:flex;justify-content:center;gap:20px;flex-wrap:wrap}
.xj-footer-links a{color:#888888}.xj-footer-links a:hover{color:#391fe3}
.xj-footer-copy{margin-top:10px;color:#999999;font-size:13px}

/* ---- 页面标题区 ---- */
.xj-page-head{padding:0 0 20px;border-bottom:1px solid #eae9ec;margin-bottom:24px}
.xj-page-title{font-size:22px;font-weight:600;color:#222222;margin-bottom:6px}
.xj-page-sub{color:#888888;font-size:14px}

/* ---- 分类彩色块（参考图2） ---- */
.xj-cat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:30px}
.xj-cat-card{display:flex;align-items:center;justify-content:center;gap:10px;padding:24px 16px;border-radius:10px;color:#fff;font-size:16px;font-weight:600;transition:transform .15s,box-shadow .15s;cursor:pointer}
.xj-cat-card:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,0,0,0.12)}
.xj-cat-icon{font-size:20px;opacity:.8}
.xj-cat-1{background:linear-gradient(135deg,#da6fef,#e087f2)} /* 橙 */
.xj-cat-2{background:linear-gradient(135deg,#7461ec,#24dabc)} /* 蓝 */
.xj-cat-3{background:linear-gradient(135deg,#4ae2c8,#4fe2ca)} /* 绿 */
.xj-cat-4{background:linear-gradient(135deg,#dc7af0,#d252ec)} /* 粉黄 */
.xj-cat-5{background:linear-gradient(135deg,#a58cd1,#d8c7f6)} /* 紫粉 */
.xj-cat-6{background:linear-gradient(135deg,#7866ea,#6b4ba2)} /* 紫 */
.xj-cat-7{background:linear-gradient(135deg,#18927e,#46e1c7)} /* 青绿 */
.xj-cat-8{background:linear-gradient(135deg,#d86aee,#8777ee)} /* 红紫 */
@media(max-width:768px){.xj-cat-grid{grid-template-columns:repeat(2,1fr);gap:12px}.xj-cat-card{padding:18px 12px;font-size:14px}}

/* ---- 子分类标签 ---- */
.xj-sub-tags{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:24px}
.xj-sub-tag{padding:6px 18px;border-radius:26px;border:1px solid #dddddd;background:#fff;color:#555555;font-size:14px;transition:all .15s}
.xj-sub-tag:hover,.xj-sub-tag.active{border-color:#391fe3;color:#391fe3;background:#f3f2fd}

/* ---- 产品卡片列表（参考图2/3） ---- */
.xj-post-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
@media(max-width:1100px){.xj-post-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:768px){.xj-post-grid{grid-template-columns:repeat(2,1fr);gap:14px}}
@media(max-width:480px){.xj-post-grid{grid-template-columns:1fr}}

.xj-post-card{background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06);transition:transform .15s,box-shadow .15s;border:1px solid #eae9ec}
.xj-post-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px rgba(0,0,0,0.1)}
.xj-post-thumb{height:180px;background:#f1f0f5;display:flex;align-items:center;justify-content:center;color:#bbbbbb;font-size:14px;position:relative;overflow:hidden}
.xj-post-thumb img{width:100%;height:100%;object-fit:cover}
/* 六十八期：缩略图整块可点 → 内容详情页（无图占位文字也可点） */
.xj-post-thumb a{display:block;width:100%;height:100%;color:inherit;text-decoration:none}
.xj-post-thumb a:hover img{opacity:.88}
.xj-post-body{padding:14px 16px}
.xj-post-cat{color:#dc7af0;font-size:13px;margin-bottom:6px;display:flex;align-items:center;gap:4px}
.xj-post-cat::before{content:"";width:6px;height:6px;border-radius:50%;background:#dc7af0;display:inline-block}
/* 六十八期：分类标签可点（专题 > 栏目），继承红字配色，悬停提示可跳 */
.xj-post-cat a{color:inherit;text-decoration:none}
.xj-post-cat a:hover{color:#391fe3;text-decoration:underline}
.xj-post-title{font-size:15px;font-weight:600;color:#222222;line-height:1.4;margin-bottom:8px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.xj-post-title a{color:#222222}.xj-post-title a:hover{color:#391fe3}
.xj-post-meta{display:flex;align-items:center;justify-content:space-between;color:#999999;font-size:13px;margin-top:8px;padding-top:10px;border-top:1px solid #f1f0f5}
.xj-post-date{display:flex;align-items:center;gap:4px}
.xj-post-price{display:flex;align-items:center;gap:4px;color:#dc7af0;font-weight:600;font-size:14px}
.xj-post-price::before{content:"💰";font-size:13px}
@media(max-width:768px){.xj-post-thumb{height:140px}.xj-post-body{padding:12px}}

/* ---- 详情页两栏布局（参考图3） ---- */
.xj-detail-wrap{display:grid;grid-template-columns:1fr 320px;gap:24px;align-items:start}
@media(max-width:900px){.xj-detail-wrap{grid-template-columns:1fr}}

.xj-detail-main{display:flex;flex-direction:column;gap:20px;background:transparent;padding:0;border-radius:0;box-shadow:none}

/* ---------- 资源信息横排卡片（左图右信息，内容页/支付页共用） ---------- */
.xj-post-hero{background:#fff;border-radius:10px;padding:24px;box-shadow:0 2px 8px rgba(0,0,0,0.06);display:flex;gap:24px;align-items:stretch}
.xj-hero-thumb{width:230px;min-height:290px;background:linear-gradient(180deg,#f7f7fa,#edecf3);border-radius:8px;position:relative;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:#c8c6ce;font-size:14px;overflow:hidden}
/* 六十三期：hero 封面图（详情页 / 下单页共用）——绝对定位铺满，底部「最近更新」浮层压在其上 */
.xj-hero-thumb img{position:absolute;left:0;top:0;width:100%;height:100%;object-fit:cover}
.xj-hero-thumb-bar{position:absolute;left:0;right:0;bottom:0;background:rgba(44,43,49,0.72);color:#fff;font-size:13px;padding:7px 10px;text-align:center;letter-spacing:.5px}
.xj-hero-info{flex:1;min-width:0;display:flex;flex-direction:column}
.xj-hero-info .xj-detail-title{font-size:22px;margin-bottom:10px}
.xj-hero-info .xj-detail-meta{margin-bottom:14px}
.xj-hero-fields{margin-bottom:14px}
.xj-hero-fields span{display:inline-block;margin-right:16px;color:#888888;font-size:14px}
.xj-hero-fields b{color:#555555;font-weight:600}
.xj-hero-price-row{display:flex;align-items:center;gap:10px;margin-bottom:16px;padding:12px 16px;background:#fbf2fd;border:1px solid #f3d1fa;border-radius:10px;flex-wrap:wrap}
.xj-hero-price-label{color:#999999;font-size:14px}
.xj-hero-services{display:flex;gap:18px;flex-wrap:wrap;color:#888888;font-size:14px;margin:0 0 10px}
.xj-hero-services span{display:flex;align-items:center;gap:4px}
.xj-hero-notice{color:#a3a0ad;font-size:12.5px;line-height:1.7}
.xj-post-body-card{background:#fff;border-radius:10px;padding:24px;box-shadow:0 2px 8px rgba(0,0,0,0.06)}
.xj-order-wrap{max-width:760px;margin:0 auto}
.xj-post-hero .xj-buy-card{border:1px solid #efeef3;margin:0 0 14px}
@media(max-width:700px){.xj-post-hero{flex-direction:column}.xj-hero-thumb{width:100%;min-height:180px}}

/* ---------- 付费内容区（已解锁绿卡 + 未购提示 + 支付回跳定位高亮） ---------- */
.xj-paid-box{border:1px solid #b7ebe2;background:#f7fefd;border-radius:10px;padding:18px 20px;margin-top:20px}
.xj-paid-head{display:inline-block;background:#1fbfa4;color:#fff;font-size:14px;font-weight:600;padding:5px 14px;border-radius:8px;margin-bottom:12px}
.xj-paid-body{font-size:14px;line-height:1.8;color:#444444;word-break:break-all}
.xj-paid-body p{margin-bottom:8px}
.xj-paid-copy{margin-top:12px;padding:8px 18px;border:1px solid #1fbfa4;background:#fff;color:#18937f;font-size:14px;border-radius:8px;cursor:pointer}
.xj-paid-copy:hover{background:#f2fdfb}
/* 付费引导卡：居中大价格 + 绿色购买按钮 + 找回订单提示（参考主流资源站样式） */
.xj-paid-cta{margin-top:22px;padding:34px 24px 26px;background:linear-gradient(180deg,#f2f2f3,#eae9ec);border-radius:13px;text-align:center}
.xj-paid-cta-price{font-size:15px;color:#333333;letter-spacing:.5px}
.xj-paid-cta-price strong{font-size:30px;font-weight:700;color:#c319e6;margin:0 6px;font-family:Arial,'Microsoft YaHei',sans-serif}
.xj-paid-cta-btn{display:inline-block;margin-top:18px;padding:13px 64px;border:none;border-radius:8px;font-size:16px;font-weight:700;color:#fff;letter-spacing:2px;cursor:pointer;background:linear-gradient(135deg,#2fceb3,#1cae95);box-shadow:0 4px 12px rgba(35,190,164,0.35);transition:transform .15s,box-shadow .15s,filter .15s}
.xj-paid-cta-btn:hover{filter:brightness(1.06);transform:translateY(-1px);box-shadow:0 6px 16px rgba(35,190,164,0.4)}
.xj-paid-cta-btn:active{transform:translateY(0);box-shadow:0 2px 8px rgba(35,190,164,0.3)}
.xj-paid-cta-tip{margin-top:14px;font-size:14px;color:#a19eab}
.xj-paid-cta-tip a{color:#c319e6;text-decoration:none}
.xj-paid-cta-tip a:hover{text-decoration:underline}
@keyframes m-paid-flash{0%,100%{box-shadow:0 0 0 0 rgba(31,191,164,0)}35%{box-shadow:0 0 0 6px rgba(31,191,164,0.35)}}
.xj-paid-box.paid-flash{animation:m-paid-flash 1.6s ease 2}

/* ---- 扫码支付弹窗（内容页「支付下载」点击后弹出，参考微信原生收银台）
        主题变量：默认微信绿；.pay-modal-ali 切支付宝蓝（pay.js 按所选方式切换） ---- */
.pay-mask{position:fixed;left:0;top:0;right:0;bottom:0;background:rgba(0,0,0,0.5);z-index:9999;display:flex;align-items:center;justify-content:center}
.pay-modal{width:364px;max-width:92vw;background:#fff;border-radius:10px;box-shadow:0 12px 40px rgba(0,0,0,0.25);padding:0 24px 24px;
  --pay-brand:#1cac94;--pay-brand-dk:#199a84;--pay-brand-bg:#ebf9f7;--pay-brand-bd:#cfefea;--pay-brand-tx:#3b8a7d}
.pay-modal-ali{--pay-brand:#4830e5;--pay-brand-dk:#3119cd;--pay-brand-bg:#f2f0fd;--pay-brand-bd:#d5cff9;--pay-brand-tx:#412fb3}
.pay-head{display:flex;align-items:center;justify-content:space-between;padding:18px 0 12px;font-size:15px;color:#333333}
.pay-amount{color:#cb38e9;font-size:16px;font-weight:700;font-style:normal;margin-left:2px}
.pay-modal-ali .pay-amount{color:#4830e5}
.pay-close{font-size:24px;line-height:1;color:#999999;cursor:pointer;font-weight:400}
.pay-close:hover{color:#666666}
.pay-qr-wrap{display:flex;align-items:center;justify-content:center;margin-bottom:12px;min-height:232px}
.pay-qr-wrap img,.pay-qr-wrap canvas{display:block;width:232px;height:232px;background:#fff;object-fit:contain}
.pay-caption{text-align:center;color:#888888;font-size:13.5px;margin-bottom:16px}
.pay-cap-brand{font-weight:700;font-size:16px;padding:0 1px}
.pay-cap-alipay{color:#4830e5}
.pay-cap-wx{color:#1cac94}
.pay-btn-phone{display:block;width:200px;margin:0 auto 14px;padding:11px 0;border:none;border-radius:5px;background:var(--pay-brand);color:#fff;font-size:14px;font-weight:600;cursor:pointer}
.pay-btn-phone:hover{background:var(--pay-brand-dk)}
.pay-status{display:flex;align-items:center;justify-content:center;gap:8px;background:var(--pay-brand-bg);border:1px solid var(--pay-brand-bd);border-radius:5px;color:var(--pay-brand-tx);font-size:14px;line-height:1.5;padding:10px 14px;margin:12px 0 8px;text-align:center}
.pay-status.pay-status-ok{background:#d8f3ee;border-color:#8ce0d2;color:#227a6b;font-weight:600}
.pay-status.pay-status-fail{background:#fbf1fd;border-color:#f0c6f9;color:#b233cc}
.pay-status.pay-status-expired{background:#faecfd;border-color:#f4d8fa;color:#a130b8}
.pay-spinner{width:14px;height:14px;border:2px solid var(--pay-brand-bd);border-top-color:var(--pay-brand-tx);border-radius:50%;animation:pay-spin .8s linear infinite;display:inline-block;flex:none}
@keyframes pay-spin{to{transform:rotate(360deg)}}
.pay-btn-refresh{display:block;width:200px;margin:0 auto;padding:10px 0;border:1px solid var(--pay-brand);border-radius:5px;background:#fff;color:var(--pay-brand);font-size:13.5px;cursor:pointer;transition:background .15s ease,color .15s ease}
.pay-btn-refresh:hover{background:var(--pay-brand);color:#fff}
.pay-btn-refresh:disabled{opacity:.5;cursor:not-allowed}

/* ---- 支付方式选择弹窗（点「支付下载」先选支付接口，参考收银台样式） ---- */
.pay-method-modal{padding-bottom:14px}
.pay-method-msg{display:none;margin:4px 0 2px;padding:9px 12px;background:#fbf1fd;border:1px solid #f0c6f9;border-radius:5px;color:#b233cc;font-size:14px;line-height:1.5}
.pay-method-list{display:flex;flex-direction:column;margin-top:2px}
.pay-method-item{display:flex;align-items:center;gap:14px;width:100%;padding:15px 6px;background:none;border:none;border-bottom:1px solid #f1f0f5;cursor:pointer;text-align:left;font-family:inherit;transition:background .12s ease}
.pay-method-item:last-child{border-bottom:none}
.pay-method-item:hover{background:#f7f6fc}
.pay-method-icon{width:38px;height:38px;flex:none;border-radius:12px;display:block}
.pay-method-name{flex:1;font-size:15px;color:#333333;font-weight:500}
.pay-method-arrow{width:16px;height:16px;flex:none}
.xj-detail-sidebar{display:flex;flex-direction:column;gap:16px}
.xj-sidebar-card{background:#fff;border-radius:10px;padding:16px;box-shadow:0 2px 8px rgba(0,0,0,0.06)}
.xj-sidebar-title{font-size:15px;font-weight:600;color:#222222;margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid #f1f0f5}
.xj-sidebar-list{list-style:none}
.xj-sidebar-list li{padding:8px 0;border-bottom:1px solid #f5f5f8;display:flex;align-items:center;gap:10px}
.xj-sidebar-list li:last-child{border-bottom:none}
.xj-sidebar-list .s-thumb{width:60px;height:45px;background:#f1f0f5;border-radius:5px;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:#cccccc;font-size:12px;overflow:hidden}
.xj-sidebar-list .s-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.xj-sidebar-empty{margin:6px 0 0;color:#999999;font-size:14px}
.xj-sidebar-list .s-info{flex:1;min-width:0}

/* 七十五期：详情页「上一篇 / 下一篇」内链模块（正文/购买区下方） */
.xj-post-nav{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.xj-post-nav-item{background:#fff;border-radius:10px;padding:14px 16px;box-shadow:0 2px 8px rgba(0,0,0,0.06);display:flex;flex-direction:column;gap:6px;min-width:0}
.xj-post-nav-item-next{text-align:right}
.xj-post-nav-label{font-size:13px;color:#a19eab;letter-spacing:.5px}
.xj-post-nav-item a{color:#391fe3;font-size:14px;line-height:1.6;text-decoration:none;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.xj-post-nav-item a:hover{text-decoration:underline}
.xj-post-nav-none{color:#c8c6ce;font-size:13.5px}
@media(max-width:700px){.xj-post-nav{grid-template-columns:1fr}.xj-post-nav-item-next{text-align:left}}
.xj-sidebar-list .s-title{font-size:14px;color:#333333;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.xj-sidebar-list .s-title a{color:#333333}.xj-sidebar-list .s-title a:hover{color:#391fe3}
.xj-sidebar-list .s-price{color:#dc7af0;font-size:13px;font-weight:600;margin-top:2px}

/* ---- 详情页内容 ---- */
.xj-detail-title{font-size:24px;font-weight:600;color:#222222;margin-bottom:12px}
.xj-detail-meta{display:flex;align-items:center;gap:16px;color:#888888;font-size:14px;margin-bottom:20px;flex-wrap:wrap}
.xj-detail-meta span{display:flex;align-items:center;gap:4px}
.xj-detail-price-area{display:flex;align-items:center;gap:20px;margin-bottom:20px;padding:16px;background:#fbf2fd;border-radius:10px;border:1px solid #f3d1fa}
.xj-detail-price{font-size:28px;font-weight:700;color:#dc7af0}
.xj-detail-price small{font-size:14px;color:#888888;font-weight:400}
.xj-detail-discount{display:inline-block;padding:3px 10px;background:#dc7af0;color:#fff;font-size:13px;border-radius:5px}
.xj-detail-btns{display:flex;gap:10px;margin-bottom:20px;flex-wrap:wrap}
.xj-btn-main{padding:12px 36px;border-radius:8px;border:none;font-size:15px;font-weight:600;color:#fff;background:linear-gradient(135deg,#dc7af0,#e599f4);box-shadow:0 4px 12px rgba(220,122,240,0.3)}
.xj-btn-main:hover{background:linear-gradient(135deg,#d763ee,#e086f2)}
.xj-btn-sec{padding:12px 24px;border-radius:8px;border:1px solid #dddddd;background:#fff;color:#555555;font-size:15px;display:inline-flex;align-items:center;gap:6px}
.xj-btn-sec:hover{border-color:#391fe3;color:#391fe3}
/* 开通VIP会员：金色渐变 + 皇冠，与红色支付按钮并排、醒目引导 */
.xj-btn-vip{padding:12px 24px;border-radius:8px;border:none;font-size:15px;font-weight:700;color:#fff;background:linear-gradient(135deg,#c319e6,#c319e6);box-shadow:0 4px 12px rgba(195,25,230,0.38);display:inline-flex;align-items:center;gap:6px;cursor:pointer;text-decoration:none;transition:all .15s ease}
.xj-btn-vip:hover{background:linear-gradient(135deg,#c319e6,#c319e6);color:#fff;text-decoration:none;transform:translateY(-1px);box-shadow:0 6px 16px rgba(195,25,230,0.45)}
.xj-btn-suc{background:#1fbfa4;color:#fff;border-color:#1fbfa4}
.xj-btn-suc:hover{background:#18937f;color:#fff;border-color:#18937f}
.xj-detail-content{font-size:15px;line-height:1.8;color:#444444}
.xj-detail-content p{margin-bottom:14px}
.xj-detail-content h2,.xj-detail-content h3{margin:24px 0 12px;color:#222222}
.xj-detail-content img{border-radius:8px;margin:10px 0}
.xj-detail-content blockquote{border-left:3px solid #391fe3;padding-left:14px;color:#666666;margin:14px 0;background:#f9f8fc;padding:10px 14px;border-radius:0 6px 6px 0}
.xj-detail-content ul,.xj-detail-content ol{margin:10px 0 10px 24px}
.xj-detail-content li{margin:4px 0}
.xj-detail-content a{color:#391fe3;text-decoration:underline}

.xj-detail-services{display:flex;gap:20px;margin:20px 0;padding:14px 0;border-top:1px dashed #eae9ec;border-bottom:1px dashed #eae9ec;flex-wrap:wrap;color:#888888;font-size:14px}
.xj-detail-services span{display:flex;align-items:center;gap:4px}

.xj-detail-notice{background:#f9e8fc;border:1px solid #e59af4;border-radius:8px;padding:12px 16px;color:#888888;font-size:14px;margin:16px 0;line-height:1.6}

/* ---- 购买/会员卡片 ---- */
.xj-buy-card{background:#fff;border-radius:16px;padding:26px 28px;box-shadow:0 4px 16px rgba(0,0,0,0.07);margin-top:20px;border:1px solid #f1f0f5}
.xj-buy-card h3{font-size:17px;font-weight:700;margin:0;color:#222222}
.xj-buy-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;padding-bottom:14px;border-bottom:1px dashed #eeeeee;margin-bottom:14px}
.xj-buy-price{font-size:14px;color:#888888;background:#fbf2fd;border:1px solid #f3d1fa;border-radius:1299px;padding:6px 14px;line-height:1}
.xj-buy-price strong{font-size:20px;font-weight:700;color:#d55fed;margin:0 2px}
.xj-buy-res{color:#888888;font-size:14px;margin:0 0 16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.xj-buy-btn{width:100%;padding:14px;font-size:16px;border-radius:10px;cursor:pointer;letter-spacing:2px}
.xj-buy-status{padding:14px;background:#f0fcfa;border:1px solid #8febdc;border-radius:8px;color:#18937f;font-weight:600;margin-bottom:14px}
.xj-form-group{margin-bottom:14px}
.xj-form-group label{display:block;margin-bottom:6px;font-size:14px;color:#666666;font-weight:500}
.xj-form-group input,.xj-form-group select{width:100%;padding:10px 14px;border:1px solid #d9d9d9;border-radius:5px;outline:none;font-size:14px;transition:border-color .15s}
.xj-form-group input:focus,.xj-form-group select:focus{border-color:#391fe3}

/* ---- 专题 ---- */
.xj-topic-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
@media(max-width:768px){.xj-topic-grid{grid-template-columns:repeat(2,1fr);gap:14px}}
@media(max-width:480px){.xj-topic-grid{grid-template-columns:1fr}}

.xj-topic-card{background:#fff;border-radius:10px;padding:24px;box-shadow:0 2px 8px rgba(0,0,0,0.06);border:1px solid #eae9ec;transition:transform .15s,box-shadow .15s}
.xj-topic-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px rgba(0,0,0,0.1)}
.xj-topic-name{font-size:17px;font-weight:600;color:#222222;margin-bottom:8px}
.xj-topic-summary{color:#888888;font-size:14px;line-height:1.5;margin-bottom:12px}
.xj-topic-meta{color:#391fe3;font-size:14px;font-weight:500}

/* ---- 会员套餐 ---- */
.xj-vip-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:900px;margin:0 auto}
@media(max-width:768px){.xj-vip-grid{grid-template-columns:1fr;max-width:400px}}

.xj-vip-card{background:#fff;border-radius:10px;padding:28px 24px;text-align:center;box-shadow:0 2px 8px rgba(0,0,0,0.06);border:1px solid #eae9ec;position:relative;transition:transform .15s}
.xj-vip-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px rgba(0,0,0,0.1)}
.xj-vip-card.hot{border-color:#dc7af0;box-shadow:0 4px 16px rgba(220,122,240,0.15)}
.xj-vip-flag{position:absolute;top:-1px;right:20px;background:#dc7af0;color:#fff;font-size:13px;padding:4px 12px;border-radius:0 0 4px 4px}
.xj-vip-name{font-size:18px;font-weight:600;margin-bottom:8px}
.xj-vip-price{font-size:36px;font-weight:700;color:#dc7af0;margin:10px 0}
.xj-vip-price small{font-size:14px;color:#888888;font-weight:400}
.xj-vip-days{color:#888888;font-size:14px;margin-bottom:20px}

/* ---- 表格 ---- */
.xj-table{width:100%;border-collapse:collapse;font-size:14px;background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}
.xj-table th{background:#f9f8fc;padding:12px 16px;text-align:left;font-weight:600;color:#555555;border-bottom:1px solid #eae9ec;white-space:nowrap}
.xj-table td{padding:12px 16px;border-bottom:1px solid #f1f0f5;color:#444444}
.xj-table tr:last-child td{border-bottom:none}
.xj-table tr:hover td{background:#f9f8fc}

/* ---- 表单 ---- */
.xj-form-card{background:#fff;border-radius:10px;padding:28px;box-shadow:0 2px 8px rgba(0,0,0,0.06);max-width:480px;margin:0 auto}
.xj-form-card h2{font-size:18px;font-weight:600;margin-bottom:20px;text-align:center}
.xj-form-card-wide{max-width:640px}
.xj-alert{padding:12px 16px;border-radius:8px;margin-bottom:16px;font-size:14px}
.xj-alert-error{background:#fbf2fd;border:1px solid #f2cdf9;color:#ad17cb}
.xj-alert-success{background:#f0fcfa;border:1px solid #8febdc;color:#18937f}

/* ---- 空状态 ---- */
.xj-empty{text-align:center;padding:60px 20px;color:#bbbbbb}
.xj-empty p{font-size:15px}

/* ---- 分页 ---- */
.xj-pagination{display:flex;justify-content:center;align-items:center;gap:6px;margin-top:28px;flex-wrap:wrap}
.xj-pagination a,.xj-pagination span{padding:8px 14px;border-radius:5px;border:1px solid #eae9ec;background:#fff;color:#555555;font-size:14px}
.xj-pagination a:hover{border-color:#391fe3;color:#391fe3;background:#f3f2fd}
.xj-pagination .current{background:#391fe3;color:#fff;border-color:#391fe3}

/* ---- 通用按钮 ---- */
.xj-btn{padding:10px 24px;border-radius:5px;border:1px solid #dddddd;background:#fff;color:#555555;font-size:14px;display:inline-block;text-align:center}
.xj-btn:hover{border-color:#391fe3;color:#391fe3}
.xj-btn-block{display:block;width:100%}

/* ---- 面包屑 ---- */
.xj-breadcrumb{display:flex;align-items:center;gap:8px;margin-bottom:16px;font-size:14px;color:#888888;flex-wrap:wrap}
.xj-breadcrumb a{color:#888888}.xj-breadcrumb a:hover{color:#391fe3}
.xj-breadcrumb-sep{color:#cccccc}

/* ---- 通用分页（{pagination} 输出 .pagination，爬虫与无 JS 用户的兜底入口） ---- */
.pagination{display:flex;justify-content:center;align-items:center;gap:6px;margin:26px 0 6px;flex-wrap:wrap}
.pagination a,.pagination span{padding:8px 14px;border-radius:5px;border:1px solid #eae9ec;background:#fff;color:#555555;font-size:14px;text-decoration:none}
.pagination a:hover{border-color:#391fe3;color:#391fe3;background:#f3f2fd}
.pagination .current{background:#391fe3;color:#fff;border-color:#391fe3}

/* ---- 首页 SEO 瀑布流（滚动自动加载 3 次 + 「加载更多」按钮，上限 4 次） ---- */
#wfSentinel{height:1px}
.xj-wf-bar{display:flex;justify-content:center;align-items:center;min-height:52px;margin:6px 0 2px}
.xj-wf-bar span{color:#9994b8;font-size:14px;letter-spacing:.02em}
.xj-wf-btn{padding:10px 38px;border:1px solid #391fe3;border-radius:8px;background:#fff;color:#391fe3;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s ease,color .15s ease}
.xj-wf-btn:hover{background:#391fe3;color:#fff}
.xj-post-card[data-wf]{animation:mWfIn .35s ease both}
@keyframes mWfIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.xj-post-card[data-wf]{animation:none}}

/* ---- 首页 SEO 纯文字简介（后台站点设置可编辑，仅首页第 1 页） ---- */
.xj-home-seo{background:#fff;border:1px solid #eae9ec;border-radius:10px;padding:18px 22px 20px;margin-top:28px;box-shadow:0 2px 8px rgba(0,0,0,0.06)}
.xj-home-seo-title{font-size:15px;font-weight:600;color:#222222;margin-bottom:10px}
.xj-home-seo-body{font-size:14px;line-height:1.9;color:#555555;text-align:justify}
/* 六十四期：该版块改为富文本编辑器驱动，补富文本子元素样式（与 .xj-cathero-custom 同口径，字号随 13px 基调） */
.xj-home-seo-body h2{font-size:16px;font-weight:600;color:#2f2b4a;margin:14px 0 8px;padding-bottom:6px;border-bottom:1px solid #e9e8f3}
.xj-home-seo-body h3{font-size:14px;font-weight:600;color:#37334f;margin:12px 0 6px}
.xj-home-seo-body h2:first-child,.xj-home-seo-body h3:first-child{margin-top:0}
.xj-home-seo-body p{margin:8px 0}
.xj-home-seo-body ul,.xj-home-seo-body ol{padding-left:22px;margin:8px 0}
.xj-home-seo-body li{margin:4px 0}
.xj-home-seo-body blockquote{margin:10px 0;padding:8px 14px;border-left:3px solid #a39dcc;background:#fafafc;color:#716d7e;border-radius:0 6px 6px 0}
.xj-home-seo-body img{max-width:100%;height:auto;border-radius:10px;margin:8px 0}
.xj-home-seo-body a{color:#463d80;text-decoration:underline}
.xj-home-seo-body table{width:100%;border-collapse:collapse;margin:12px 0;font-size:12.5px}
.xj-home-seo-body td,.xj-home-seo-body th{border:1px solid #e5e3f0;padding:7px 10px;text-align:left}
.xj-home-seo-body th{background:#f5f4fa;font-weight:600;color:#37334f}
.xj-home-seo-body hr{border:0;border-top:1px solid #e9e8f3;margin:14px 0}
.xj-home-seo-body pre{margin:10px 0;padding:10px 12px;background:#f5f4fa;border:1px solid #e5e3f0;border-radius:8px;overflow-x:auto;font-size:13px}

/* ---- 会员页支付方式胶囊（登录后显示） ---- */
.m-pay-type{display:flex;justify-content:center;align-items:center;gap:8px;margin:0 0 18px;font-size:14px;color:#69648b;flex-wrap:wrap}
.m-pay-type-label{color:#69648b}
.m-pay-pill{padding:6px 20px;border:1px solid #e4e2f0;border-radius:1299px;background:#fff;color:#69648b;font-size:14px;cursor:pointer;transition:all .15s ease}
.m-pay-pill:hover{border-color:#391fe3;color:#391fe3}
.m-pay-pill.active{border-color:#391fe3;color:#391fe3;background:#f3f2fd;font-weight:600}

/* ==== 友情链接（六十二期）：首页底部版块 / 全站页脚一行 / 独立页 links.html ==== */
/* 首页底部版块：与 .xj-home-seo 同款卡片视觉 */
.xj-home-links{background:#fff;border:1px solid #eae9ec;border-radius:10px;padding:18px 22px 20px;margin-top:20px;box-shadow:0 2px 8px rgba(0,0,0,0.06)}
.xj-home-links-title{font-size:15px;font-weight:600;color:#222222;margin-bottom:12px}
.xj-home-links-body{display:flex;flex-wrap:wrap;gap:8px 10px}
.xj-home-link{padding:5px 14px;border:1px solid #e4e2f0;border-radius:1299px;background:#f9f8fc;color:#4c4769;font-size:14px;transition:all .15s ease}
.xj-home-link:hover{border-color:#391fe3;background:#f3f2fd;color:#391fe3}
/* 全站页脚一行：复用 .xj-footer-links 的 flex，再允许换行（链接多时不撑破） */
.xj-footer-friend{flex-wrap:wrap;gap:8px 16px;line-height:2}
.xj-footer-friend-label{color:#aaaaaa}
/* 独立页 /links.html */
.xj-links-page{background:#fff;border:1px solid #eae9ec;border-radius:10px;padding:24px 26px 28px;margin-top:16px;box-shadow:0 2px 8px rgba(0,0,0,0.06)}
.xj-links-h1{font-size:20px;font-weight:700;color:#222222;margin-bottom:8px}
.xj-links-intro{font-size:14px;line-height:1.9;color:#666666;padding-bottom:14px;margin-bottom:16px;border-bottom:1px solid #f1f0f5}
.xj-link-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}
.xj-link-card{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid #eae9ec;border-radius:10px;background:#fff;transition:all .15s ease}
.xj-link-card:hover{border-color:#391fe3;box-shadow:0 3px 10px rgba(57,31,227,0.12);transform:translateY(-1px)}
.xj-link-logo{width:26px;height:26px;flex:0 0 26px;object-fit:contain;border-radius:6px;background:#f5f5f8}
.xj-link-text{display:flex;flex-direction:column;min-width:0}
.xj-link-name{color:#222222;font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.xj-link-card:hover .xj-link-name{color:#391fe3}
.xj-link-desc{color:#9994b8;font-size:13px;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:768px){.xj-link-grid{grid-template-columns:1fr}}

/* ==== 六十六期：前台全站登录态 ====
   导航右上角「头像 + 用户名 + 会员级别」，以及会员页底部的登录 / 注册引导卡片。
   登录态判断在 本主题 layout.html（所有前台页共用该布局），这里只管样式。 */

/* 已登录：导航右上角徽标。与 .xj-btn-sm 视觉同高，跟搜索框 / 退出按钮同一基线 */
.xj-user-chip{display:inline-flex;align-items:center;gap:8px;padding:3px 12px 3px 3px;border:1px solid #e4e2f0;border-radius:1299px;background:#fff;color:#383355;max-width:240px;transition:border-color .15s ease,box-shadow .15s ease}
.xj-user-chip:hover{border-color:#391fe3;box-shadow:0 2px 8px rgba(57,31,227,0.14)}
.xj-user-avatar{flex:0 0 28px;width:28px;height:28px;border-radius:50%;background:#eae9ec;color:#615f68;font-size:14px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;line-height:1;user-select:none}
.xj-user-avatar.is-vip{background:linear-gradient(135deg,#dc7af0,#e599f4);color:#fff;box-shadow:0 2px 6px rgba(220,122,240,0.35)}
.xj-user-meta{display:flex;flex-direction:column;min-width:0;line-height:1.25}
.xj-user-name{font-size:14px;font-weight:600;color:#222222;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:150px}
.xj-user-level{font-size:12px;color:#94919f;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:180px}
.xj-user-level.is-vip{color:#dc7af0;font-weight:600}
.xj-sep{margin:0 5px;font-style:normal;color:#cecbe1}

/* 会员中心页头：大头像 + 用户名 + 级别 */
.xj-member-id{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.xj-user-avatar-lg{flex:0 0 34px;width:34px;height:34px;font-size:15px}
.xj-member-name{font-size:15px;font-weight:600;color:#222222}
.xj-member-level{color:#94919f}
.xj-member-level.is-vip{color:#dc7af0;font-weight:600}

/* 会员页底部引导卡片 */
.xj-vip-cta{display:flex;align-items:center;justify-content:space-between;gap:22px;flex-wrap:wrap;max-width:900px;margin:26px auto 0;padding:22px 26px;border:1px solid #eae9ec;border-radius:10px;background:#fff;box-shadow:0 2px 8px rgba(0,0,0,0.06)}
.xj-vip-cta-logged{border-color:#f8e5fc;background:linear-gradient(180deg,#fffafa,#fff)}
.xj-vip-cta-body{min-width:0}
.xj-vip-cta-title{font-size:16px;font-weight:600;color:#222222;margin-bottom:6px}
.xj-vip-cta-sub{font-size:14px;color:#555555;line-height:1.8}
.xj-vip-cta-sub b{color:#222222}
.xj-vip-cta-sub b.is-vip{color:#dc7af0}
.xj-vip-cta-note{font-size:13px;color:#9994b8;margin-top:6px}
.xj-vip-cta-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}
/* 登录 = 白底蓝边（次级动作）；立即注册 = 红色主渐变（主行动点，与 .xj-btn-main 同款） */
.xj-btn-login{display:inline-block;padding:11px 30px;border:1px solid #391fe3;border-radius:8px;background:#fff;color:#391fe3;font-size:15px;font-weight:600;transition:all .15s ease}
.xj-btn-login:hover{background:#f3f2fd}
.xj-btn-reg{display:inline-block;padding:12px 32px;border:1px solid transparent;border-radius:8px;background:linear-gradient(135deg,#dc7af0,#e599f4);color:#fff;font-size:15px;font-weight:600;box-shadow:0 4px 12px rgba(220,122,240,0.3);transition:all .15s ease}
.xj-btn-reg:hover{background:linear-gradient(135deg,#d763ee,#e086f2)}
/* member.html 空态的次级按钮：此前类名 .xj-btn-sec 没有任何样式，「注册账号」是裸文字 */
.xj-btn-sec{display:inline-block;padding:10px 24px;border:1px solid #dddddd;border-radius:5px;background:#fff;color:#555555;font-size:14px;transition:all .15s ease}
.xj-btn-sec:hover{border-color:#391fe3;color:#391fe3}

/* 响应式：中窄屏先收掉徽标里的文字（留头像），再让底部卡片竖排 */
@media(max-width:900px){
    .xj-user-meta{display:none}
    .xj-user-chip{padding:3px}
    .xj-user-chip .xj-user-avatar{flex:0 0 30px;width:30px;height:30px}
}
@media(max-width:768px){
    .xj-vip-cta{flex-direction:column;align-items:stretch;text-align:center;padding:20px}
    .xj-vip-cta-actions{justify-content:center}
}


/* ============================================================
   七十二期 · 会员中心美化
   会员渐变横幅卡 / 订单表格（不换行、状态胶囊、去支付按钮）
   ============================================================ */
.xj-member-hero{display:flex;align-items:center;justify-content:space-between;gap:16px;max-width:760px;margin:0 auto 20px;padding:22px 26px;border-radius:18px;background:linear-gradient(135deg,#f2f0fd,#f8fbff);border:1px solid #e3dffb;box-sizing:border-box}
.xj-member-hero.is-vip{background:linear-gradient(135deg,#dc7af0,#dc7af0);border:none;box-shadow:0 8px 22px rgba(220,122,240,0.28)}
.xj-member-hero-left{display:flex;align-items:center;gap:14px;min-width:0}
.xj-member-hero-name{font-size:17px;font-weight:700;color:#221f37;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.xj-member-hero.is-vip .xj-member-hero-name{color:#fff}
.xj-member-hero-level{font-size:12px;padding:2px 9px;border-radius:1299px;background:#eceafc;color:#361dd8;font-weight:600;flex:none}
.xj-member-hero.is-vip .xj-member-hero-level{background:rgba(255,255,255,0.25);color:#fff}
.xj-member-hero-sub{font-size:12.5px;color:#716d7e;margin-top:5px}
.xj-member-hero.is-vip .xj-member-hero-sub{color:rgba(255,255,255,0.88)}
.xj-member-hero-warn{display:inline-block;margin-top:8px;padding:3px 10px;border-radius:8px;font-size:13px;background:#faedfd;color:#9113aa}
.xj-member-hero.is-vip .xj-member-hero-warn{background:rgba(255,255,255,0.22);color:#fff}
.xj-member-hero-btn{flex:none;padding:10px 24px;border-radius:1299px;background:linear-gradient(135deg,#dc7af0,#e599f4);color:#fff;font-weight:700;font-size:14px;text-decoration:none;box-shadow:0 4px 12px rgba(220,122,240,0.3)}
.xj-member-hero-btn:hover{background:linear-gradient(135deg,#d763ee,#e086f2);color:#fff}
.xj-member-hero.is-vip .xj-member-hero-btn{background:#fff;color:#d86bee;box-shadow:0 4px 12px rgba(0,0,0,0.12)}
.xj-member-hero.is-vip .xj-member-hero-btn:hover{background:#fdf6fe}

.xj-orders-card{max-width:860px}
.xj-orders-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:14px}
.xj-orders-head h2{text-align:left;margin-bottom:0;font-size:17px}
.xj-orders-count{font-size:12.5px;color:#a29fac}
.xj-orders-scroll{overflow-x:auto}
.xj-orders-table td{white-space:nowrap}
.xj-orders-table .is-unpaid td{background:#fffdf8}
.xj-td-no{font-family:Consolas,Menlo,monospace;font-size:12.5px;color:#716d7e;max-width:168px;overflow:hidden;text-overflow:ellipsis}
.xj-td-goods{white-space:normal !important;max-width:250px;font-size:13.5px;color:#3a3751;line-height:1.5}
.xj-goods-tag{display:inline-block;font-size:12px;padding:1px 8px;border-radius:1299px;background:#f2f0fd;color:#361dd8;margin-right:6px;font-weight:600;vertical-align:1px}
.xj-td-amount{font-weight:700;color:#d86bee}
.xj-td-amount small{font-weight:400;color:#a29fac;font-size:12px}
.xj-td-time{color:#a29fac;font-size:12.5px}
.xj-state-pill{display:inline-block;padding:2px 11px;border-radius:1299px;font-size:13px;font-weight:600}
.xj-state-pill.is-paid{background:#e6f7f4;color:#18937f}
.xj-state-pill.is-unpaid-pill{background:#f9e8fc;color:#a916c6}
.m-pay-now{padding:5px 16px;border-radius:8px;border:none;background:linear-gradient(135deg,#dc7af0,#e599f4);color:#fff;font-size:12.5px;font-weight:600;cursor:pointer}
.m-pay-now:hover{background:linear-gradient(135deg,#d763ee,#e086f2)}
.m-pay-now:disabled{opacity:.6;cursor:default}
.xj-op-muted{color:#d4d3d9}
@media(max-width:768px){
    .xj-member-hero{flex-direction:column;align-items:flex-start}
    .xj-member-hero-btn{align-self:stretch;text-align:center}
}

/* ---- 杂志式家族 ---- */
.xj-x-mhead{background:#fff;border-bottom:1px solid #d5d0ec}
.xj-x-mheadin{max-width:1180px;margin:0 auto;padding:16px 20px 10px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.xj-x-mbrand{font-size:26px;font-weight:800;color:#352a80;letter-spacing:1px}
.xj-x-mbrand::first-letter{color:#a83a8e}
.xj-x-mauth{display:flex;align-items:center;gap:8px}
.xj-x-act{padding:4px 13px;border:1px solid #d5d0ec;border-radius:99px;color:#241f42;font-size:13px;background:#fff}
.xj-x-act:hover{border-color:#4a3aa8;color:#4a3aa8}
.xj-x-hot{background:#a83a8e;border-color:#a83a8e;color:#fff}
.xj-x-ava{width:26px;height:26px;border-radius:50%;background:#4a3aa8;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:700}
.xj-x-ava.is-vip{box-shadow:0 0 0 2px #ffd54d}
.xj-x-logout{display:inline}
.xj-x-ghost{background:transparent;border:none}
.xj-x-mmini{display:flex;border:1px solid #d5d0ec;border-radius:99px;overflow:hidden}
.xj-x-mmini input{width:150px;border:none;padding:6px 14px;outline:none;font-size:13px}
.xj-x-mmini button{border:none;background:#352a80;color:#fff;padding:6px 14px;font-size:12px;letter-spacing:1px}
.xj-x-mnav{max-width:1180px;margin:0 auto;padding:0 20px;display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;border-top:1px solid #d5d0ec}
.xj-x-mnav::-webkit-scrollbar{display:none}
.xj-x-mnav a{padding:11px 13px;color:#241f42;font-size:14px;white-space:nowrap;position:relative}
.xj-x-mnav a:hover{color:#4a3aa8}
.xj-x-mnav a::after{content:'';position:absolute;left:13px;right:13px;bottom:6px;height:2px;background:#a83a8e;transform:scaleX(0);transition:.18s;transform-origin:left}
.xj-x-mnav a:hover::after{transform:scaleX(1)}
.xj-x-burger{display:none;flex-direction:column;gap:4px;padding:7px;background:none;border:none}
.xj-x-burger span{display:block;width:21px;height:2px;background:#352a80;border-radius:1px}
/* Hero */
.xj-x-mhero{background:linear-gradient(110deg,#352a80 0%,#4a3aa8 60%,#dcd7f5 130%);color:#fff;padding:38px 20px 42px;position:relative;overflow:hidden}
.xj-x-mhero::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 82% 30%,rgba(255,255,255,.14) 0 2px,transparent 3px),radial-gradient(circle at 68% 62%,rgba(255,255,255,.1) 0 2px,transparent 3px),radial-gradient(circle at 90% 74%,rgba(255,255,255,.12) 0 1.6px,transparent 2.6px),radial-gradient(circle at 12% 22%,rgba(255,255,255,.1) 0 1.6px,transparent 2.6px)}
.xj-x-mheroin{max-width:1180px;margin:0 auto;position:relative;z-index:1}
.xj-x-mherotag{display:inline-block;font-size:14px;letter-spacing:2px;background:rgba(255,255,255,.16);padding:5px 16px;border-radius:99px;margin-bottom:12px}
.xj-x-mhero h1{font-size:28px;letter-spacing:2px;margin-bottom:0}
/* 杂志列表 */
.xj-x-chips{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0 6px}
.xj-x-chip{display:inline-flex;align-items:center;gap:6px;padding:8px 17px;border-radius:4px;color:#fff;font-size:14px;font-weight:600}
.xj-x-chip span{opacity:.75;font-size:12px}
.xj-x-cc1{background:linear-gradient(135deg,#4a3aa8,#352a80)}
.xj-x-cc2{background:linear-gradient(135deg,#a83a8e,#352a80)}
.xj-x-cc3{background:linear-gradient(135deg,#dcd7f5,#4a3aa8)}
.xj-x-cc4{background:linear-gradient(135deg,#a83a8e,#dcd7f5)}
.xj-x-sechead{display:flex;align-items:baseline;gap:12px;margin:24px 0 16px;border-bottom:2px solid #241f42;padding-bottom:8px}
.xj-x-sechead h2{font-size:19px;color:#241f42}
.xj-x-sechead span{font-size:13px;color:#6f6890;margin-left:auto}
.xj-x-empty{background:#fff;border:1px dashed #d5d0ec;border-radius:10px;padding:28px 20px;text-align:center;color:#6f6890}
.xj-x-maglist{display:flex;flex-direction:column;gap:16px}
.xj-x-magrow{display:flex;gap:18px;background:#ffffff;border:1px solid #d5d0ec;border-radius:10px;overflow:hidden}
.xj-x-magrow:hover{border-color:#4a3aa8}
.xj-x-magimg{flex:0 0 250px;min-height:150px;background:#eeecfb;position:relative;overflow:hidden}
.xj-x-magimg img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.xj-x-magimg span{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:40px;color:#4a3aa8;opacity:.3}
.xj-x-magbody{padding:16px 18px 14px 0;display:flex;flex-direction:column;gap:8px;min-width:0}
.xj-x-magbody h3{font-size:17px;line-height:1.5}
.xj-x-magbody h3 a{color:#241f42}
.xj-x-magbody h3 a:hover{color:#4a3aa8}
.xj-x-magmeta{margin-top:auto;font-size:13px;color:#6f6890;display:flex;gap:14px}
.xj-x-magmeta b{color:#a83a8e}
.xj-x-cardcat{font-size:12px;color:#a83a8e;font-weight:700;letter-spacing:.5px}
.xj-x-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(225px,1fr));gap:15px}
.xj-x-card{background:#ffffff;border:1px solid #d5d0ec;border-radius:10px;overflow:hidden;display:flex;flex-direction:column;transition:transform .15s}
.xj-x-card:hover{transform:translateY(-3px)}
.xj-x-cardimg{display:block;height:125px;background:#eeecfb;overflow:hidden;position:relative}
.xj-x-cardimg img{width:100%;height:100%;object-fit:cover}
.xj-x-noimg{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:32px;color:#4a3aa8;opacity:.32;font-style:normal}
.xj-x-cardtitle{font-size:14px;color:#241f42;line-height:1.5;margin:8px 13px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:42px}
.xj-x-cardmeta{margin-top:auto;display:flex;justify-content:space-between;padding:9px 13px;font-size:13px;color:#6f6890;border-top:1px dashed #d5d0ec}
.xj-x-cardmeta b{color:#a83a8e}
.xj-x-homeseo{background:#ffffff;border:1px solid #d5d0ec;border-radius:10px;padding:22px 24px;margin-top:28px}
.xj-x-homeseo h2{font-size:17px;margin-bottom:10px;color:#241f42;display:inline-block;border-bottom:3px solid #a83a8e;padding-bottom:4px}
.xj-x-homeseobody{font-size:14px;color:#6f6890;line-height:1.9}
.xj-x-homelinks{margin-top:26px;background:#ffffff;border:1px solid #d5d0ec;border-radius:10px;padding:18px 22px}
.xj-x-homelinks h2{font-size:14px;color:#241f42;margin-bottom:10px}
.xj-x-homelinksbody{display:flex;flex-wrap:wrap;gap:8px 18px}
.xj-x-homelinksbody a{font-size:14px;color:#6f6890}
.xj-x-homelinksbody a:hover{color:#4a3aa8}
.xj-x-mfoot{background:#eeecfb;border-top:3px solid #a83a8e;margin-top:46px}
.xj-x-mfootin{max-width:1180px;margin:0 auto;padding:32px 20px;display:flex;gap:40px;flex-wrap:wrap}
.xj-x-mfootbrand{flex:1;min-width:260px}
.xj-x-mfootbrand strong{font-size:16px;display:block;margin-bottom:8px;color:#352a80}
.xj-x-mfootbrand p{font-size:13px;color:#6f6890;line-height:1.8}
.xj-x-mfootnav{display:flex;flex-direction:column;gap:8px}
.xj-x-mfootnav a{font-size:14px;color:#6f6890}
.xj-x-mfootnav a:hover{color:#4a3aa8}
.xj-x-mcopy{text-align:center;padding:14px;font-size:13px;color:#6f6890;border-top:1px solid #d5d0ec}
@media(max-width:768px){
.xj-x-mheadin{padding:12px;gap:10px}
.xj-x-mbrand{font-size:19px}
.xj-x-mmini{display:none}
.xj-x-mnav{display:none}
.xj-x-mnav.open{display:flex;flex-direction:column}
.xj-x-burger{display:flex}
.xj-x-mhero h1{font-size:23px}
.xj-x-magimg{flex:none;height:160px}
.xj-x-magbody{padding:14px}
.xj-x-mfootin{flex-direction:column;gap:16px}
}
/* ---- 品牌基调 ---- */
body{font-family:"-apple-system","Segoe UI","Microsoft YaHei","PingFang SC","Helvetica Neue",Arial,sans-serif;font-size:15px;line-height:1.7;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;}
h1,h2,h3,h4{font-family:"Noto Serif SC","Source Han Serif SC","STSong","SimSun",serif;line-height:1.35;}
input,button,textarea,select{font-family:"-apple-system","Segoe UI","Microsoft YaHei","PingFang SC","Helvetica Neue",Arial,sans-serif;}
input,button{font-size:14px;}
a{color:#4a3aa8;}a:hover{color:#352a80;}
::selection{background:#a83a8e;color:#fff;}
body{background:#f5f4fa;color:#241f42;}
