/* =========================================================
   家属服务平台 · PC 独立版 全局设计系统
   风格基准：小包公红 #e42626 + 直角(border-radius:0) + 深色页脚
   前台 / 后台 共用同一套令牌
   ========================================================= */
:root{
  /* 品牌色 */
  --red:#e42626;
  --red-2:#ee3131;
  --red-3:#c81e1e;
  --red-soft:#fff1f1;
  /* 中性 */
  --ink:#172237;        /* 主文字 深蓝黑 */
  --ink-2:#3a4256;
  --gray:#6b7280;
  --gray-2:#9aa3b2;
  --line:#e6e9ef;
  --bg:#f5f7fa;         /* 浅灰底 */
  --bg-2:#eef1f6;
  --white:#ffffff;
  --dark:#14182a;       /* 深色页脚 */
  --dark-2:#1d2238;
  /* 语义 */
  --ok:#1a9e5c;
  --warn:#e08a00;
  --err:#e42626;
  --info:#2f6fed;
  /* 圆角：全局直角 */
  --radius:0;
  --radius-sm:0;
  /* 间距 4 基准 */
  --s1:4px; --s2:8px; --s3:12px; --s4:16px; --s5:20px;
  --s6:24px; --s8:32px; --s10:40px; --s12:48px; --s16:64px;
  /* 阴影 */
  --sh-1:0 1px 2px rgb(20 24 42 / .06);
  --sh-2:0 6px 18px rgb(20 24 42 / .08);
  --sh-3:0 12px 32px rgb(20 24 42 / .12);
  /* 字体 */
  --ff:'PingFang SC','Microsoft YaHei','Hiragino Sans GB',system-ui,-apple-system,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;
  --fs-xs:12px; --fs-sm:13px; --fs-base:14px; --fs-md:15px; --fs-lg:16px;
  --fs-xl:18px; --fs-2xl:22px; --fs-3xl:28px; --fs-4xl:36px;
  --maxw:1200px;
}

*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;}
body{
  margin:0;font-family:var(--ff);font-size:var(--fs-base);line-height:1.6;
  color:var(--ink);background:var(--bg);
  -webkit-font-smoothing:antialiased;
}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
h1,h2,h3,h4,h5{margin:0;color:var(--ink);line-height:1.3;font-weight:700;}
p{margin:0 0 var(--s4);}
ul,ol{margin:0;padding:0;list-style:none;}
button,input,select,textarea{font-family:inherit;font-size:inherit;}

/* ---------- 布局 ---------- */
.container{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 var(--s5);}
.main{padding:var(--s10) 0 var(--s16);min-height:60vh;}
.row{display:flex;flex-wrap:wrap;gap:var(--s5);}

/* ---------- 顶部导航 ---------- */
.pc-header{background:var(--white);border-bottom:3px solid var(--red);position:sticky;top:0;z-index:50;}
.pc-header-inner{max-width:var(--maxw);margin:0 auto;padding:0 var(--s5);height:64px;
  display:flex;align-items:center;gap:var(--s6);}
.pc-logo{display:flex;align-items:center;gap:10px;font-weight:800;font-size:18px;color:var(--ink);white-space:nowrap;}
.pc-logo .dot{width:12px;height:12px;background:var(--red);display:inline-block;}
.pc-nav{display:flex;align-items:center;gap:var(--s2);flex:1;flex-wrap:wrap;}
.pc-nav a{padding:8px 12px;color:var(--ink-2);font-weight:500;border-bottom:2px solid transparent;transition:.15s;}
.pc-nav a:hover{color:var(--red);}
.pc-nav a.active{color:var(--red);border-bottom-color:var(--red);}
.pc-nav-right{margin-left:auto;display:flex;align-items:center;gap:var(--s3);}
.pc-user-chip{display:flex;align-items:center;gap:8px;color:var(--ink-2);}
.pc-user-chip .av{width:32px;height:32px;background:var(--red);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;}

/* ---------- 按钮（全直角） ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:11px 22px;border:1px solid transparent;border-radius:var(--radius);
  font-weight:600;font-size:var(--fs-base);cursor:pointer;transition:.15s;user-select:none;white-space:nowrap;}
.btn:focus-visible{outline:2px solid var(--red);outline-offset:2px;}
.btn:disabled{opacity:.55;cursor:not-allowed;}
.btn-primary{background:var(--red);color:#fff;}
.btn-primary:hover:not(:disabled){background:var(--red-3);}
.btn-outline{background:#fff;color:var(--red);border-color:var(--red);}
.btn-outline:hover:not(:disabled){background:var(--red-soft);}
.btn-ghost{background:transparent;color:var(--ink-2);border-color:var(--line);}
.btn-ghost:hover:not(:disabled){border-color:var(--red);color:var(--red);}
.btn-block{width:100%;}
.btn-sm{padding:7px 14px;font-size:var(--fs-sm);}
.btn-lg{padding:14px 30px;font-size:var(--fs-lg);}

/* ---------- 表单 ---------- */
.field{margin-bottom:var(--s5);}
.field>label{display:block;font-weight:600;margin-bottom:8px;color:var(--ink);}
.field .hint{font-size:var(--fs-sm);color:var(--gray);margin-top:6px;}
.input,.select,.textarea{width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius);
  background:#fff;color:var(--ink);transition:.15s;}
.input:focus,.select:focus,.textarea:focus{outline:none;border-color:var(--red);box-shadow:0 0 0 3px rgb(228 38 38 / .12);}
.textarea{resize:vertical;min-height:120px;}
.checks{display:flex;align-items:center;gap:8px;}
.checks input{width:16px;height:16px;accent-color:var(--red);}
.err-text{color:var(--err);font-size:var(--fs-sm);margin-top:6px;}

/* 支付方式选择卡片 */
.pay-methods{display:flex;gap:var(--s4);flex-wrap:wrap;}
.pay-method-card{
  position:relative;display:flex;align-items:center;justify-content:center;
  min-width:152px;padding:16px 28px;border:2px solid var(--line);background:#fff;
  cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .15s;
}
.pay-method-card:hover{border-color:var(--red-2);transform:translateY(-1px);}
.pay-method-card input[type="radio"]{
  position:absolute;opacity:0;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);
}
.pay-method-card img{height:38px;width:auto;max-width:130px;object-fit:contain;display:block;}
.pay-method-card::after{
  content:"✓";position:absolute;top:6px;right:8px;width:20px;height:20px;
  display:flex;align-items:center;justify-content:center;background:var(--red);color:#fff;
  font-size:12px;font-weight:700;opacity:0;transform:scale(.8);transition:opacity .15s,transform .15s;
}
.pay-method-card:has(input:checked),
.pay-method-card.selected{border-color:var(--red);box-shadow:0 0 0 3px var(--red-soft);}
.pay-method-card:has(input:checked)::after,
.pay-method-card.selected::after{opacity:1;transform:scale(1);}
.pay-method-card:focus-within{outline:2px solid var(--red);outline-offset:2px;}

/* 充值金额选择卡片 */
.amount-methods{display:flex;gap:12px;flex-wrap:wrap;}
.amount-card{
  position:relative;display:inline-flex;align-items:center;justify-content:center;
  min-width:96px;padding:12px 20px;border:2px solid var(--line);background:#fff;
  cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .15s;
}
.amount-card:hover{border-color:var(--red-2);transform:translateY(-1px);}
.amount-card input[type="radio"]{
  position:absolute;opacity:0;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);
}
.amount-card .amount-num{font-weight:600;font-size:var(--fs-base);color:var(--ink);}
.amount-card .amount-badge{
  position:absolute;top:-8px;right:-8px;z-index:2;
  background:var(--red);color:#fff;font-size:11px;font-weight:700;
  padding:2px 7px;white-space:nowrap;
  box-shadow:0 2px 4px rgba(228,38,38,.25);
}
.amount-card::after{
  content:"✓";position:absolute;top:6px;left:8px;width:18px;height:18px;
  display:flex;align-items:center;justify-content:center;background:var(--red);color:#fff;
  font-size:10px;font-weight:700;opacity:0;transform:scale(.8);transition:opacity .15s,transform .15s;
}
.amount-card:has(input:checked),
.amount-card.selected{border-color:var(--red);box-shadow:0 0 0 3px var(--red-soft);}
.amount-card:has(input:checked)::after,
.amount-card.selected::after{opacity:1;transform:scale(1);}
.amount-card:focus-within{outline:2px solid var(--red);outline-offset:2px;}
@media (max-width:640px){
  .pay-method-card{min-width:calc(50% - 8px);padding:14px 18px;}
  .pay-method-card img{height:34px;max-width:110px;}
  .amount-card{min-width:calc(33.333% - 8px);padding:10px 14px;}
  .amount-card .amount-badge{font-size:10px;padding:1px 5px;top:-6px;right:-6px;}
}

/* ---------- 卡片 ---------- */
.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--sh-1);}
.card-pad{padding:var(--s6);}
.card-title{font-size:var(--fs-xl);font-weight:700;margin-bottom:var(--s4);padding-left:12px;border-left:4px solid var(--red);}

/* ---------- 标签 / 徽章 ---------- */
.tag{display:inline-block;padding:2px 10px;font-size:var(--fs-xs);border-radius:var(--radius);
  background:var(--red-soft);color:var(--red-3);border:1px solid #ffd9d9;font-weight:600;}
.tag-gray{background:var(--bg-2);color:var(--gray);border-color:var(--line);}
.tag-ok{background:#e7f7ee;color:var(--ok);border-color:#bfe9cf;}
.tag-warn{background:#fdf2e0;color:var(--warn);border-color:#f6dcae;}
.tag-err{background:#fde8e8;color:var(--err);border-color:#f5c2c2;}

/* ---------- 提示 ---------- */
.alert{padding:12px 16px;border-left:4px solid var(--red);background:var(--red-soft);color:var(--red-3);border-radius:var(--radius);margin-bottom:var(--s5);}
.alert-ok{border-left-color:var(--ok);background:#e7f7ee;color:var(--ok);}
.alert-warn{border-left-color:var(--warn);background:#fdf2e0;color:var(--warn);}

/* ---------- 表格 ---------- */
.table{width:100%;border-collapse:collapse;background:#fff;font-size:var(--fs-base);}
.table th,.table td{padding:14px 16px;text-align:left;border-bottom:1px solid var(--line);}
.table th{background:var(--bg);font-weight:700;color:var(--ink-2);white-space:nowrap;}
.table tr:hover td{background:#fcfcfd;}
.table .op a{color:var(--red);margin-right:12px;}

/* ---------- 分页 ---------- */
.pager{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:var(--s6);}
.pager a,.pager span{padding:8px 14px;border:1px solid var(--line);background:#fff;color:var(--ink-2);text-decoration:none;border-radius:0;}
.pager a.active,.pager a:hover{border-color:var(--red);color:var(--red);}
.pager .pager-nav.disabled{opacity:.45;pointer-events:none;}
.pager-jump{display:inline-flex;align-items:center;gap:6px;margin-left:6px;color:var(--ink-2);}
.pager-jump .pager-input{width:68px;padding:7px 8px;border:1px solid var(--line);border-radius:0;font-size:14px;color:var(--ink);}

/* ---------- 加载 ---------- */
.spinner{width:18px;height:18px;border:2px solid rgb(228 38 38 / .3);border-top-color:var(--red);
  border-radius:50%;animation:spin .7s linear infinite;display:inline-block;}
@keyframes spin{to{transform:rotate(360deg);}}

/* ---------- 深色页脚（新版：与首页 index.php 一致） ---------- */
.layout-footer{background:#1c1c1f;min-height:300px;position:relative;width:100%;}
.footer-bar{max-width:1000px;width:100%;margin:0 auto;padding:0 24px;}
.footer-info{display:flex;justify-content:space-between;padding-top:30px;flex-wrap:wrap;gap:24px;}
.footer-left{max-width:260px;}
.footer-right{display:flex;flex-wrap:wrap;gap:60px;}
.footer-info-title{color:#fff;font-size:16px;font-weight:400;margin-bottom:20px;}
.company-info{color:#ccc;font-size:14px;margin-bottom:16px;line-height:1.5;}
.ftr-item{margin-right:0;}
.ftr-product{min-width:220px;}
.product-links{display:grid;grid-template-columns:repeat(2,1fr);gap:0 40px;}
.product-link{color:#ccc;display:block;font-size:14px;line-height:1.2;margin-bottom:16px;text-decoration:none;transition:.15s;}
.product-link:hover{color:#fff;}
.ftr-code{margin-right:0;text-align:center;}
.we-code{width:70px;margin:0 auto;}
.we-code img{width:100%;display:block;}
.code-img-desc{color:#999;font-size:12px;margin-top:12px;}
.footer-line{background:hsla(0,0%,100%,.2);bottom:40px;display:inline-block;height:1px;left:0;position:absolute;width:100%;}
.footer-number{bottom:0;line-height:40px;position:absolute;width:100%;text-align:center;}
.word-smaller{color:#999;text-decoration:none;font-size:12px;}
.word-smaller:hover{color:#ccc;}

@media (max-width:900px){
  .layout-footer{height:auto;padding-bottom:60px;}
  .footer-bar{padding:0 20px;}
  .footer-info{padding-top:24px;gap:30px;}
  .footer-left{max-width:100%;width:100%;}
  .footer-right{gap:40px;}
  .footer-line{bottom:50px;}
  .footer-number{position:static;line-height:1.8;padding-top:20px;}
  .ftr-code{display:none;}
  .product-links{grid-template-columns:1fr;}
}
.pc-footer{background:var(--dark);color:#c7cde0;padding:var(--s12) 0 var(--s8);margin-top:var(--s16);}
.pc-footer-inner{max-width:var(--maxw);margin:0 auto;padding:0 var(--s5);display:flex;flex-wrap:wrap;gap:var(--s10);justify-content:space-between;}
.pc-footer .brand{color:#fff;font-weight:800;font-size:18px;margin-bottom:10px;}
.pc-footer .cols{display:flex;gap:var(--s10);flex-wrap:wrap;}
.pc-footer .col h5{color:#fff;font-size:var(--fs-base);margin-bottom:12px;}
.pc-footer .col a{display:block;color:#aeb6cc;padding:4px 0;font-size:var(--fs-sm);}
.pc-footer .col a:hover{color:#fff;}
.pc-footer .copy{width:100%;border-top:1px solid var(--dark-2);margin-top:var(--s10);padding-top:var(--s5);
  color:#8a93ad;font-size:var(--fs-sm);text-align:center;}

/* ---------- 用户中心布局 ---------- */
.uc{display:grid;grid-template-columns:240px 1fr;gap:var(--s6);align-items:start;}
.uc-side{background:#fff;border:1px solid var(--line);box-shadow:var(--sh-1);position:sticky;top:88px;}
.uc-side .uhead{padding:var(--s5);border-bottom:1px solid var(--line);display:flex;align-items:center;gap:12px;}
.uc-side .uc-avatar{position:relative;width:44px;height:44px;border-radius:50%;overflow:hidden;cursor:pointer;background:var(--red);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.uc-side .uc-avatar-img{width:100%;height:100%;object-fit:cover;display:block;}
.uc-side .uc-avatar-text{color:#fff;font-weight:700;font-size:14px;letter-spacing:1px;}
.uc-side .uc-avatar-mask{position:absolute;inset:0;background:rgba(0,0,0,.55);color:#fff;font-size:12px;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s;}
.uc-side .uc-avatar:hover .uc-avatar-mask{opacity:1;}
.uc-side .uname{font-weight:700;color:var(--ink);}
.uc-side .uid{font-size:var(--fs-xs);color:var(--gray);}
.uc-menu{padding:var(--s3);}
.uc-menu a{display:flex;align-items:center;gap:10px;padding:11px 14px;color:var(--ink-2);border-radius:var(--radius);font-weight:500;}
.uc-menu a:hover{background:var(--red-soft);color:var(--red);}
.uc-menu a.active{background:var(--red);color:#fff;}
.uc-main{min-width:0;}
.uc-panel{display:flex;flex-direction:column;min-height:720px;padding:var(--s5);}
.uc-panel > h1.card-title{margin:0 0 var(--s4);}


/* ---------- 统计卡 ---------- */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--s5);}
.stat{background:#fff;border:1px solid var(--line);box-shadow:var(--sh-1);padding:var(--s5);}
.stat .num{font-size:var(--fs-3xl);font-weight:800;color:var(--red);}
.stat .lbl{color:var(--gray);font-size:var(--fs-sm);margin-top:4px;}

/* 邮寄详细 */
.mailing-list{flex-direction:column;gap:var(--s4);}
.mailing-card{border-left:3px solid var(--red);}
.mailing-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 16px;margin-top:var(--s4);}
.mailing-grid .k{display:block;color:var(--gray);font-size:var(--fs-xs);}
.mailing-grid .v{display:block;color:var(--ink);font-size:var(--fs-base);font-weight:600;word-break:break-all;line-height:1.5;}
.mail-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s5);}
@media (max-width:900px){
  .mail-stats{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:640px){
  .mail-stats{grid-template-columns:1fr;}
}

/* ---------- 登录/注册 居中卡 ---------- */
.auth-wrap{min-height:calc(100vh - 64px);display:flex;align-items:center;justify-content:center;padding:var(--s10) var(--s5);background:linear-gradient(180deg,#fff 0%,var(--bg) 100%);}
.auth-card{width:100%;max-width:440px;background:#fff;border:1px solid var(--line);box-shadow:var(--sh-2);border-top:4px solid var(--red);}
.auth-card .pad{padding:var(--s8) var(--s8) var(--s6);}
.auth-card h1{font-size:var(--fs-2xl);margin-bottom:6px;}
.auth-card .sub{color:var(--gray);margin-bottom:var(--s6);}

/* 认证页 Tab 切换（密码登录 / 验证码登录） */
.auth-tabs{display:flex;border-bottom:2px solid var(--line);margin-bottom:var(--s6);}
.auth-tab{flex:1;padding:10px 0;background:none;border:none;cursor:pointer;
  font-size:var(--fs-lg);font-weight:600;color:var(--gray);
  border-bottom:2px solid transparent;margin-bottom:-2px;transition:.15s;}
.auth-tab:hover{color:var(--red);}
.auth-tab.active{color:var(--red);border-bottom-color:var(--red);}

/* 验证码行：输入框 + 发送按钮并排（含禁用态） */
.code-row{display:flex;gap:10px;align-items:stretch;}
.code-row .code-input{flex:1;min-width:0;}
.code-row .code-send{flex:none;white-space:nowrap;padding:0 18px;font-size:var(--fs-sm);}
.code-row .code-send:disabled{opacity:.6;cursor:not-allowed;
  background:var(--bg-2);color:var(--gray-2);border-color:var(--line);}

/* ---------- 响应式 ---------- */
@media (max-width:900px){
  .uc{grid-template-columns:1fr;}
  .uc-side{position:static;}
  .uc-menu{display:flex;flex-wrap:wrap;gap:8px;}
  .stats{grid-template-columns:repeat(2,1fr);}
  .pc-nav{display:none;}
}
@media (max-width:640px){
  .container{padding:0 var(--s4);}
  .pc-header-inner{gap:var(--s3);height:56px;}
  .stats{grid-template-columns:1fr 1fr;}
  .auth-card .pad{padding:var(--s6) var(--s5);}
  .table{display:block;overflow-x:auto;white-space:nowrap;}
}

/* =========================================================
   首页（PC 聚合首页）
   ========================================================= */
/* Hero */
.hero{background:var(--red);color:#fff;position:relative;overflow:hidden;}
.hero::after{content:"";position:absolute;right:-90px;top:-90px;width:380px;height:380px;
  background:radial-gradient(circle,rgb(255 255 255 / .14),transparent 70%);}
.hero::before{content:"";position:absolute;left:-60px;bottom:-120px;width:320px;height:320px;
  background:radial-gradient(circle,rgb(0 0 0 / .12),transparent 70%);}
.hero-inner{max-width:var(--maxw);margin:0 auto;padding:calc(var(--s16) + 8px) var(--s5) var(--s12);position:relative;z-index:1;}
.hero h1{color:#fff;font-size:46px;line-height:1.25;font-weight:800;max-width:820px;letter-spacing:-.5px;}
.hero .hl{position:relative;display:inline-block;}
.hero .hl::after{content:"";position:absolute;left:0;right:0;bottom:6px;height:10px;background:rgb(255 255 255 / .28);z-index:-1;}
.hero p.lead{color:rgb(255 255 255 / .92);font-size:18px;margin-top:var(--s5);max-width:640px;line-height:1.7;}
.hero-cta{display:flex;gap:var(--s4);margin-top:var(--s8);flex-wrap:wrap;}
.hero .btn-light{background:#fff;color:var(--red);border-color:#fff;}
.hero .btn-light:hover{background:var(--red-soft);}
.hero .btn-outline{background:transparent;color:#fff;border-color:rgb(255 255 255 / .65);}
.hero .btn-outline:hover{background:rgb(255 255 255 / .14);border-color:#fff;}

/* 区块通用 */
.section{padding:var(--s12) 0;scroll-margin-top:80px;}
.section-head{text-align:center;margin-bottom:var(--s8);}
.section-head h2{font-size:var(--fs-3xl);font-weight:800;}
.section-head p{color:var(--gray);margin-top:var(--s3);font-size:var(--fs-lg);}
.section-head .bar{width:48px;height:4px;background:var(--red);margin:var(--s4) auto 0;}

/* 核心服务网格 */
.feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s5);}
.feat{background:#fff;border:1px solid var(--line);box-shadow:var(--sh-1);padding:var(--s6);transition:.18s;display:block;position:relative;}
.feat::after{content:"";position:absolute;left:0;top:0;width:100%;height:3px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:.2s;}
.feat:hover{box-shadow:var(--sh-2);transform:translateY(-3px);}
.feat:hover::after{transform:scaleX(1);}
.feat .ic{width:56px;height:56px;border:1px solid var(--red);color:var(--red);display:flex;align-items:center;justify-content:center;margin-bottom:var(--s4);}
.feat .ic svg{width:28px;height:28px;}
.feat h3{font-size:var(--fs-xl);margin-bottom:8px;}
.feat p{color:var(--gray);font-size:var(--fs-sm);margin:0;line-height:1.6;}
.feat .more{margin-top:var(--s4);color:var(--red);font-weight:600;font-size:var(--fs-sm);display:inline-flex;align-items:center;gap:6px;}

/* 服务流程 */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s8);counter-reset:s;}
.step{background:#fff;border:1px solid var(--line);padding:var(--s8) var(--s6) var(--s6);position:relative;margin-top:18px;}
.step .n{counter-increment:s;position:absolute;top:-18px;left:var(--s6);width:38px;height:38px;background:var(--red);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:var(--fs-lg);}
.step .n::before{content:counter(s);}
.step h3{font-size:var(--fs-lg);margin-bottom:10px;}
.step p{color:var(--gray);font-size:var(--fs-sm);margin:0;line-height:1.7;}

/* 最新答疑 */
.qa-row{display:flex;flex-direction:column;}
.qa-item{display:flex;align-items:center;gap:var(--s4);padding:var(--s4) 0;border-bottom:1px solid var(--line);transition:.15s;}
.qa-item:hover{background:var(--red-soft);}
.qa-item .qico{flex:0 0 auto;width:32px;height:32px;background:var(--red);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:var(--fs-base);}
.qa-item .qt{flex:1;color:var(--ink);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.qa-item:hover .qt{color:var(--red);}
.qa-item .qmeta{color:var(--gray-2);font-size:var(--fs-sm);white-space:nowrap;}

/* CTA 深底条 */
.cta-band{background:var(--dark);color:#fff;text-align:center;padding:var(--s12) var(--s5);}
.cta-band h2{color:#fff;font-size:var(--fs-3xl);font-weight:800;}
.cta-band p{color:#aeb6cc;margin:var(--s3) 0 var(--s6);font-size:var(--fs-lg);}

/* 响应式补充 */
@media (max-width:900px){
  .feat-grid,.steps{grid-template-columns:1fr;}
  .hero h1{font-size:32px;}
  .hero p.lead{font-size:16px;}
}

/* =========================================================
   智能工具（减刑查询 / 判刑预测）
   ========================================================= */
.tool-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--s6);align-items:start;}
.tool-grid .card-pad{padding:var(--s6);}

.checks-group{display:flex;gap:var(--s5);flex-wrap:wrap;}
.checks-group .checks{cursor:pointer;}
.checks-grid{display:flex;gap:10px 22px;flex-wrap:wrap;}
.checks-grid .checks{cursor:pointer;min-width:84px;}

/* 费用条 */
.pricebar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;
  border-top:1px solid var(--line);padding-top:var(--s5);margin-top:var(--s2);}
.pricebar .fee{font-size:24px;font-weight:800;color:var(--red);margin-left:8px;}

/* 结果区 */
.result-col{position:sticky;top:88px;}
.result-idle{color:var(--gray);}
.result-body{font-size:var(--fs-base);line-height:1.85;color:var(--ink-2);white-space:normal;
  max-height:62vh;overflow:auto;padding-right:6px;}
.result-body strong{color:var(--red);font-weight:700;}

/* 结果关键数据卡片（顶部美化结果表，横排卡片布局） */
.result-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:10px;
  align-items:start;
  margin:0 0 var(--s5);
}
.rg-card{
  background:#fff;
  border:1px solid var(--line);
  padding:10px 12px;
  min-height:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.rg-label{
  font-size:var(--fs-xs);
  color:var(--gray);
  margin-bottom:4px;
}
.rg-value{
  font-size:var(--fs-sm);
  color:var(--ink);
  font-weight:600;
  line-height:1.45;
  word-break:break-word;
}
.rg-card-hl{
  grid-column:1 / -1;
  background:var(--red);
  border-color:var(--red);
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:12px 20px;
  min-height:56px;
  overflow:visible;
}
.rg-card-hl .rg-label,
.rg-card-hl .rg-value{
  color:#fff;
}
.rg-card-hl .rg-label{
  display:none;
}
.rg-card-hl .rg-value{
  font-weight:700;
  font-size:var(--fs-base);
  line-height:1.5;
  text-align:center;
}
.rg-badge{
  position:absolute;
  left:-14px;
  top:-18px;
  z-index:2;
  pointer-events:none;
  background:linear-gradient(135deg,#ffaa00,#ff7a00);
  color:#fff;
  font-size:12px;
  font-weight:700;
  padding:4px 10px;
  border-radius:4px;
  transform:rotate(-8deg);
  box-shadow:0 2px 6px rgba(0,0,0,.25);
  white-space:nowrap;
  text-shadow:0 1px 1px rgba(0,0,0,.2);
}
@media (max-width:900px){
  .result-grid{grid-template-columns:repeat(2, 1fr);}
}
@media (max-width:640px){
  .result-grid{grid-template-columns:1fr;gap:8px;}
  .rg-badge{padding:3px 8px;font-size:11px;left:-10px;top:-12px;}
  .rg-card-hl{padding-left:16px;padding-right:16px;min-height:52px;}
}

/* 蓝色思考中 spinner */
.thinking-spinner{
  width:22px;height:22px;
  border:3px solid #dbeafe;
  border-top-color:#3b82f6;
  border-radius:50%;
  animation:rg-spin 1s linear infinite;
  display:inline-block;
  vertical-align:middle;
  flex:none;
}
@keyframes rg-spin{
  to{ transform:rotate(360deg); }
}

@media (max-width:900px){
  .tool-grid{grid-template-columns:1fr;}
  .result-col{position:static;}
  .result-body{max-height:none;}
}

/* =========================================================
   内容页（文章中心 / 罪名数据库）
   ========================================================= */
.container.narrow{max-width:880px;}

/* 页头红色横幅（仿问题答疑） */
.red-hero{background:var(--red);color:#fff;padding:44px 48px;margin-bottom:var(--s6);display:flex;align-items:center;justify-content:space-between;gap:var(--s5);flex-wrap:wrap;}
.red-hero .rh-text{flex:1;min-width:280px;}
.red-hero h1{color:#fff;margin:0 0 10px;font-size:30px;font-weight:700;letter-spacing:1px;}
.red-hero p{color:#fff;margin:0;opacity:.94;font-size:15px;max-width:640px;line-height:1.7;}
.red-hero .rh-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:#fff;color:var(--red);border:2px solid #fff;padding:12px 26px;font-size:15px;font-weight:700;cursor:pointer;white-space:nowrap;transition:.15s;}
.red-hero .rh-btn:hover{background:var(--red-soft);border-color:var(--red-soft);}
@media(max-width:900px){
  .red-hero{padding:30px 24px;flex-direction:column;align-items:flex-start;}
  .red-hero .rh-btn{align-self:flex-start;}
}

/* 工具条：搜索 + 分类 */
.art-toolbar{margin-bottom:var(--s6);}
.art-search{display:flex;gap:var(--s3);margin-bottom:var(--s4);}
.art-search .input{flex:1;}
.art-chips{display:flex;gap:8px;flex-wrap:wrap;}
.art-chip{padding:7px 16px;border:1px solid var(--line);background:#fff;color:var(--ink-2);font-size:var(--fs-sm);font-weight:500;transition:.15s;}
.art-chip:hover{border-color:var(--red);color:var(--red);}
.art-chip.active{background:var(--red);color:#fff;border-color:var(--red);}

/* 文章列表（横向卡片，与问题答疑一致） */
.art-list{display:grid;gap:12px;}
.art-card{
  display:flex;align-items:stretch;gap:16px;background:#fff;
  border:1px solid var(--line);border-left:4px solid var(--red);
  padding:16px 18px;box-shadow:var(--sh-1);transition:.18s;
}
.art-card:hover{border-color:var(--red);box-shadow:var(--sh-2);transform:translateY(-1px);}
.art-card .art-ico{
  flex:0 0 40px;width:40px;height:40px;background:var(--red-soft);color:var(--red);
  font-size:22px;font-weight:700;display:flex;align-items:center;justify-content:center;align-self:flex-start;
}
.art-card .art-body{flex:1;min-width:0;}
.art-card .ac-title{font-size:var(--fs-lg);font-weight:600;color:var(--ink);margin:0 0 8px;line-height:1.55;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.art-card:hover .ac-title{color:var(--red);}
.art-card .ac-excerpt{color:var(--gray);font-size:var(--fs-sm);margin:0 0 8px;line-height:1.6;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.art-card .ac-meta{display:flex;gap:var(--s4);align-items:center;color:var(--gray-2);font-size:var(--fs-sm);flex-wrap:wrap;}
.art-card .ac-arrow{font-size:24px;color:var(--gray-2);flex:0 0 auto;align-self:center;}
.art-card:hover .ac-arrow{color:var(--red);}

/* 面包屑 */
.crumb{font-size:var(--fs-sm);color:var(--gray);margin:var(--s5) 0 var(--s4);}
.crumb a:hover{color:var(--red);}
.crumb span{color:var(--ink-2);}

/* 文章 / 罪名 详情卡 */
.ad-card{background:#fff;border:1px solid var(--line);border-left:4px solid var(--red);box-shadow:var(--sh-1);padding:var(--s8);}
.ad-title{font-size:var(--fs-3xl);font-weight:800;line-height:1.4;margin:0 0 var(--s4);padding-left:14px;border-left:4px solid var(--red);letter-spacing:-.3px;}
.ad-meta{display:flex;gap:10px;align-items:center;color:var(--gray-2);font-size:var(--fs-sm);margin-bottom:var(--s6);flex-wrap:wrap;}
.ad-meta .dot-sep{color:var(--line);}
.ad-q{background:var(--bg);border-left:4px solid var(--red);padding:var(--s5) var(--s6);margin:0 0 var(--s6);}
.ad-sub{font-size:var(--fs-md);font-weight:700;color:var(--ink);margin:0 0 12px;padding-left:12px;border-left:4px solid var(--red);line-height:1.4;}
.ad-q-text{margin:0;color:var(--ink-2);line-height:1.85;}
.ad-report{background:#fff;border:1px solid var(--line);border-top:3px solid var(--red);box-shadow:var(--sh-1);padding:26px 28px;margin:0 0 var(--s6);font-size:15.5px;line-height:1.85;color:var(--ink-2);}
.ad-answer{color:var(--ink-2);line-height:1.85;font-size:15.5px;word-break:break-word;}
.ad-answer p{margin:0 0 12px;}
.ad-answer h1,.ad-answer h2,.ad-answer h3,.ad-answer h4{margin:22px 0 10px;color:var(--ink);}
.ad-answer h3{font-size:17px;color:var(--red);padding-left:11px;border-left:4px solid var(--red);}
.ad-answer h3:first-child{margin-top:0;}
.ad-answer img{max-width:100%;height:auto;margin:var(--s4) 0;}
.ad-answer table{border-collapse:collapse;width:100%;margin:var(--s4) 0;}
.ad-answer td,.ad-answer th{border:1px solid var(--line);padding:8px 10px;}

/* 相关推荐 */
.ad-rel{margin-top:var(--s8);}
.ad-rel-list{background:#fff;border:1px solid var(--line);box-shadow:var(--sh-1);}
.ad-rel-list li{border-bottom:1px solid var(--line);}
.ad-rel-list li:last-child{border-bottom:none;}
.ad-rel-list a{display:block;padding:var(--s4) var(--s5);color:var(--ink-2);font-weight:500;transition:.15s;}
.ad-rel-list a:hover{background:var(--red-soft);color:var(--red);padding-left:var(--s6);}

/* 罪名列表（横向卡片，与问题答疑一致） */
.crime-list{display:grid;gap:12px;}
.crime-card{
  display:flex;align-items:stretch;gap:16px;background:#fff;
  border:1px solid var(--line);border-left:4px solid var(--red);
  padding:16px 18px;box-shadow:var(--sh-1);transition:.18s;
}
.crime-card:hover{border-color:var(--red);box-shadow:var(--sh-2);transform:translateY(-1px);}
.crime-card .crime-ico{
  flex:0 0 40px;width:40px;height:40px;background:var(--red-soft);color:var(--red);
  font-size:18px;font-weight:700;display:flex;align-items:center;justify-content:center;align-self:flex-start;
}
.crime-card .crime-body{flex:1;min-width:0;}
.crime-card .crime-name{font-size:var(--fs-lg);font-weight:600;color:var(--ink);margin:0 0 8px;line-height:1.55;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.crime-card:hover .crime-name{color:var(--red);}
.crime-card .crime-chap{font-size:var(--fs-xs);color:var(--gray-2);margin:0 0 8px;}
.crime-card .crime-note{font-size:var(--fs-xs);color:var(--red-3);background:var(--red-soft);padding:2px 8px;display:inline-block;}
.crime-card .crime-arrow{font-size:24px;color:var(--gray-2);flex:0 0 auto;align-self:center;}
.crime-card:hover .crime-arrow{color:var(--red);}

/* 罪名详情属性行 */
.cd-rows{margin-top:var(--s5);}
.cd-row{display:grid;grid-template-columns:140px 1fr;gap:var(--s5);padding:var(--s5) 0;border-bottom:1px solid var(--line);}
.cd-row:last-child{border-bottom:none;}
.cd-k{font-weight:700;color:var(--ink);}
.cd-v{color:var(--ink-2);line-height:1.8;}
.muted{color:var(--gray-2);}

/* 响应式 */
@media (max-width:900px){
  .cd-row{grid-template-columns:110px 1fr;gap:var(--s3);}
}
@media (max-width:640px){
  .ad-card{padding:var(--s6) var(--s5);}
  .art-card .ac-excerpt{display:none;}
  .crime-card .crime-note{display:none;}
}

/* =========================================================
   套餐购买 · 卡片选择 / 权益 / 模糊试用
   ========================================================= */
.fee{font-size:22px;font-weight:800;color:var(--red);}

/* 列表就地展开（点击标题在下方显示内容，不跳独立页） */
.art-card{display:block;cursor:default;}
.art-card:hover{transform:none;}
.art-head{display:flex;align-items:stretch;gap:16px;width:100%;background:none;border:none;padding:16px 18px;cursor:pointer;font:inherit;color:inherit;text-align:left;transition:.18s;}
.art-head:hover{background:var(--red-soft);}
.art-head:hover .ac-title{color:var(--red);}
.art-head:hover .ac-arrow{color:var(--red);}
.art-detail{border-top:1px solid var(--line);padding:var(--s5) var(--s6);display:none;}
.art-card.open .art-detail{display:block;}
.art-card.open{border-color:var(--red);}
.ac-arrow{transition:transform .2s;}
.art-card.open .ac-arrow{transform:rotate(90deg);}

.crime-card{display:block;cursor:default;}
.crime-card:hover{transform:none;}
.crime-head{display:flex;align-items:stretch;gap:16px;width:100%;background:none;border:none;padding:16px 18px;cursor:pointer;font:inherit;color:inherit;text-align:left;transition:.18s;}
.crime-head:hover{background:var(--red-soft);}
.crime-head:hover .crime-name{color:var(--red);}
.crime-head:hover .crime-arrow{color:var(--red);}
.crime-detail{border-top:1px solid var(--line);padding:var(--s5) var(--s6);display:none;}
.crime-card.open .crime-detail{display:block;}
.crime-card.open{border-color:var(--red);}
.crime-arrow{transition:transform .2s;}
.crime-card.open .crime-arrow{transform:rotate(90deg);}

.art-viewlink,.crime-viewlink{display:inline-block;margin-top:var(--s5);color:var(--red);font-weight:600;font-size:var(--fs-sm);text-decoration:none;}
.art-viewlink:hover,.crime-viewlink:hover{text-decoration:underline;}

.pkg-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(220px,1fr));
  gap:var(--s4);
}
.pkg-card{
  position:relative;
  border:2px solid var(--line);
  background:var(--white);
  padding:var(--s5);
  cursor:pointer;
  transition:border-color .15s, box-shadow .15s, transform .15s;
  outline:none;
}
.pkg-card:hover{border-color:var(--red-2);box-shadow:var(--sh-2);}
.pkg-card.selected{border-color:var(--red);box-shadow:0 0 0 3px var(--red-soft);}
.pkg-card .pkg-name{font-size:var(--fs-lg);font-weight:700;color:var(--ink);}
.pkg-card .pkg-price{font-size:var(--fs-3xl);font-weight:800;color:var(--red);margin:var(--s2) 0 var(--s3);}
.pkg-card .pkg-gain{font-size:var(--fs-sm);color:var(--gray);min-height:40px;line-height:1.6;}
.pkg-card .pkg-check{
  margin-top:var(--s4);text-align:center;font-size:var(--fs-sm);font-weight:700;
  color:var(--gray-2);border:1px solid var(--line);padding:6px 0;
}
.pkg-card.selected .pkg-check{background:var(--red);color:#fff;border-color:var(--red);}

/* 购买确认条 */
.buy-bar{
  position:sticky;bottom:16px;
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  background:var(--white);border:1px solid var(--line);box-shadow:var(--sh-3);
  padding:var(--s4) var(--s5);margin-top:var(--s6);
}
.buy-bar-info{font-size:var(--fs-md);color:var(--ink);}
.buy-bar-price{color:var(--red);font-weight:800;margin-left:6px;}

/* 权益网格（概览页 / 我的权益） */
.rights-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s4);
}
.rights-item{
  border:1px solid var(--line);background:var(--bg);padding:var(--s4) var(--s5);
  transition:border-color .15s, box-shadow .15s;
}
.rights-item:hover{border-color:var(--red-2);box-shadow:var(--sh-1);}
.rights-label{font-weight:700;color:var(--ink);font-size:var(--fs-md);}
.rights-desc{font-size:var(--fs-lg);font-weight:700;color:var(--red);margin:6px 0 4px;}
.rights-desc.rights-warn{color:var(--warn);}
.rights-extra{font-size:var(--fs-xs);color:var(--gray);}

/* 模糊试用结果 + 解锁遮罩 */
.blurry{
  filter:blur(7px);
  user-select:none;
  pointer-events:none;
}
.result-wrap{position:relative;}
.unlock-mask{
  position:absolute;inset:0;
  display:flex;align-items:center;justify-content:center;
  background:linear-gradient(180deg, rgba(245,247,250,.55), rgba(245,247,250,.92));
  text-align:center;
}
.unlock-inner{padding:var(--s6);}

@media (max-width:900px){
  .rights-grid{grid-template-columns:1fr;}
  .pkg-grid{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:640px){
  .pkg-grid{grid-template-columns:1fr;}
}


/* ===== 代寄资讯 · 资讯类型选择 ===== */
.topic-grid{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}
.topic-card{
  display:inline-flex;align-items:center;gap:6px;
  padding:8px 14px;border:1px solid var(--line);
  background:#fff;cursor:pointer;font-size:var(--fs-sm);color:var(--ink);
  user-select:none;transition:border-color .15s ease,background .15s ease,color .15s ease;
}
.topic-card input{accent-color:var(--red);margin:0;cursor:pointer}
.topic-card.sel{border-color:var(--red);background:#fff5f5;color:var(--red);font-weight:600}
.topic-card input:disabled{opacity:.4;cursor:not-allowed}
.topic-custom{border-style:dashed}
.custom-box{display:none}

/* ===== AI 写信入口 · 醒目标识 ===== */
.ai-writer-bar{
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:14px 16px;border:2px solid var(--red);background:#fff;
  cursor:pointer;transition:background .15s ease,box-shadow .15s ease;
}
.ai-writer-bar:hover,.ai-writer-bar:focus{
  background:#fff5f5;box-shadow:0 4px 12px rgba(228,38,38,.10);
}
.ai-writer-left{
  display:flex;align-items:center;gap:12px;
}
.ai-writer-icon{
  display:inline-block;width:40px;height:40px;border-radius:50%;background:#fff5f5;
  object-fit:cover;flex-shrink:0;
}
.ai-writer-title{
  font-size:var(--fs-lg);font-weight:800;color:var(--ink);line-height:1.3;
}
.ai-writer-desc{
  font-size:var(--fs-sm);color:var(--gray);margin-top:2px;
}
.ai-writer-bar .btn-primary.btn-sm{
  min-width:88px;
}
.char-count{
  font-size:var(--fs-sm);color:var(--gray);white-space:nowrap;
}
.char-count.ok{color:var(--success,#10b981);font-weight:600;}

@media (max-width:640px){
  .ai-writer-bar{flex-wrap:wrap;}
  .ai-writer-desc{display:none;}
}

/* ===== 判刑预测 · 上下布局 / 罪名匹配 / 省市区联动 ===== */
.select{
  display:block;width:100%;
  padding:var(--s3) var(--s4);
  border:1px solid var(--line);
  background:#fff;
  font-size:var(--fs-base);
  color:var(--ink);
  border-radius:0;
  outline:none;appearance:none;
  -webkit-appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b7280' d='M6 8L1 3h10z'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 12px center;
}
.select:focus{border-color:var(--red);box-shadow:0 0 0 3px rgba(228,38,38,.08);}
.predict-top{
  background:#fff;border:1px solid var(--line);border-left:4px solid var(--red);
  box-shadow:var(--sh-1);
  padding:var(--s5) var(--s6);
  margin-bottom:var(--s6);
}
.predict-top-inner{}
.predict-top-title{font-size:var(--fs-lg);font-weight:700;color:var(--ink);margin-bottom:8px;}
.predict-top-desc{color:var(--gray);font-size:var(--fs-sm);}
.predict-form{width:100%;}
.predict-form .field{margin-bottom:var(--s5);}
.predict-form label{font-weight:600;margin-bottom:10px;display:block;}
.predict-form .input-lg{font-size:var(--fs-lg);padding:var(--s4);}
.loading-gif{width:40px;height:40px;object-fit:contain;display:inline-block;vertical-align:middle;}
.region-row{display:flex;gap:var(--s4);}
.region-row select{flex:1;min-width:0;}
#crime_name{width:100%;}
@media (max-width:640px){
  .region-row{flex-direction:column;gap:var(--s3);}
  .predict-form .row{flex-direction:column;gap:var(--s3);}
}

/* ===== 代收信件（用户端） ===== */
.recv-box{background:#fff;border:1px solid #eef0f3;border-left:4px solid var(--red);border-radius:0;padding:var(--s5);margin-bottom:var(--s5);box-shadow:var(--shadow-sm);}
.recv-box-title{font-weight:700;color:var(--ink);margin-bottom:var(--s4);font-size:var(--fs-lg);}
.recv-row{display:flex;align-items:center;gap:12px;padding:8px 0;font-size:var(--fs-base);}
.recv-label{color:var(--gray);min-width:64px;flex:none;}
.recv-value{flex:1;word-break:break-all;}
.btn-copy{padding:var(--s1) var(--s3);font-size:var(--fs-sm);color:var(--red);background:#fff;border:1px solid var(--red);cursor:pointer;transition:all .15s;flex:none;}
.btn-copy:hover{background:#fff5f5;}
.recv-tip{background:#fff7f7;border:1px solid #f3c9c9;border-radius:0;padding:var(--s5);margin-bottom:var(--s5);}
.recv-tip-h{font-weight:700;color:var(--red);margin-bottom:var(--s3);font-size:var(--fs-lg);}
.recv-tip p{margin:0 0 10px;color:var(--ink);}
.recv-tip ul{margin:0 0 6px;padding-left:20px;color:var(--ink);}
.recv-tip li{margin:6px 0;line-height:1.7;}
.recv-hl{color:var(--red);font-weight:700;}
.recv-sub{color:var(--gray);font-size:var(--fs-sm);}
.recv-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--s5);}
.recv-card{border:1px solid #eef0f3;background:#fff;border-radius:0;overflow:hidden;box-shadow:var(--shadow-sm);transition:box-shadow .2s,transform .2s;}
.recv-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px);}
.recv-card-img{aspect-ratio:3/4;background:#f5f7fa;display:flex;align-items:center;justify-content:center;overflow:hidden;}
.recv-card-img img{width:100%;height:100%;object-fit:cover;cursor:zoom-in;}
.recv-noimg{color:var(--gray);font-size:var(--fs-sm);}
.recv-card-meta{padding:var(--s4);}
.recv-idx{font-weight:700;color:var(--red);font-size:var(--fs-lg);margin-bottom:6px;}
.recv-date{color:var(--ink);font-size:var(--fs-sm);}
.recv-from,.recv-note{color:var(--gray);font-size:var(--fs-sm);margin-top:4px;}
@media (max-width:640px){ .recv-grid{grid-template-columns:1fr 1fr;gap:var(--s3);} }

/* ===== 通用「购买套餐」弹窗（次数用完引导） ===== */
.buy-modal-mask{position:fixed;inset:0;background:rgba(20,30,55,.5);display:flex;align-items:center;justify-content:center;z-index:200;}
.buy-modal{background:#fff;width:100%;max-width:380px;padding:26px 24px 24px;position:relative;border-top:3px solid var(--red);box-shadow:0 12px 40px rgba(20,30,55,.28);text-align:center;}
.buy-modal-close{position:absolute;top:8px;right:14px;border:0;background:transparent;font-size:22px;line-height:1;color:#9aa3b2;cursor:pointer;}
.buy-modal-close:hover{color:var(--red);}
.buy-modal-icon{font-size:34px;margin-bottom:8px;}
.buy-modal-title{font-size:17px;font-weight:700;color:var(--ink);margin-bottom:10px;}
.buy-modal-text{color:#5a6478;font-size:14px;line-height:1.7;margin-bottom:18px;text-align:left;}
.buy-modal-text b{color:var(--red);}
.buy-modal-icon.success{display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;margin:0 auto 10px;font-size:32px;background:#e6f7ee;border:2px solid #10b981;color:#10b981;}
.buy-modal-icon.error{display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;margin:0 auto 10px;font-size:32px;background:#fff1f1;border:2px solid var(--red);color:var(--red);}
.buy-modal-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;}
.buy-modal-actions .btn{min-width:110px;}
@media (max-width:480px){ .buy-modal-actions .btn{flex:1;} }

/* ===== 失信查询（更多查询 → 失信查询） ===== */
.credit-layout{display:grid;grid-template-columns:1fr;gap:var(--s6);align-items:start;}
.credit-form{margin:0;}
.credit-form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s4) var(--s5);margin-bottom:var(--s5);}
.balance-bar{display:flex;align-items:center;gap:8px;background:var(--bg-2);padding:10px 14px;margin-bottom:var(--s5);font-size:var(--fs-sm);color:var(--gray);}
.balance-bar .fee{font-size:var(--fs-lg);}
.credit-guide{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;background:#fff;border:1px solid var(--line);padding:var(--s8) var(--s6);margin-bottom:var(--s6);text-align:center;color:var(--gray);font-size:var(--fs-lg);}
.ce-icon{width:64px;height:64px;border-radius:50%;background:var(--bg-2);display:flex;align-items:center;justify-content:center;font-size:30px;color:var(--red);}
.credit-guide .ce-icon{width:96px;height:96px;font-size:52px;background:var(--bg-2);}

.credit-result-box{margin-bottom:var(--s6);}
.credit-result-head{display:flex;align-items:center;gap:18px;padding:var(--s5) var(--s6);border:1px solid var(--line);margin-bottom:var(--s5);}
.credit-result-head .crh-icon{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:28px;flex:none;}
.credit-result-head .crh-title{font-size:var(--fs-lg);font-weight:700;margin-bottom:4px;}
.credit-result-head .crh-sub{font-size:var(--fs-sm);color:var(--gray);}
.credit-result-found{background:#fff7f7;border-color:#f3c9c9;}
.credit-result-found .crh-icon{background:#fde8e8;color:var(--red);}
.credit-result-found .crh-title{color:var(--red);}
.credit-result-clean{background:#f3fbf7;border-color:#b9e9d3;}
.credit-result-clean .crh-icon{background:#e7f7ee;color:#10b981;}
.credit-result-clean .crh-title{color:#059669;}

.credit-cards{display:block;}
.credit-card{border-left:4px solid var(--red);}
.cc-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:var(--s4);padding-bottom:var(--s4);border-bottom:2px solid var(--line);}
.cc-name{font-size:var(--fs-xl);font-weight:800;color:var(--ink);}
.cc-tag{display:inline-block;padding:4px 12px;font-size:var(--fs-sm);background:var(--red);color:#fff;flex:none;font-weight:600;}
.cc-list{list-style:none;margin:0;padding:0;display:block;}
.cc-list li{display:flex;align-items:flex-start;gap:var(--s6);padding:14px 0;border-bottom:1px solid var(--line);font-size:var(--fs-base);line-height:1.5;}
.cc-list li:last-child{border-bottom:none;}
.cc-list li span{color:var(--gray);width:120px;flex-shrink:0;text-align:left;}
.cc-list li b{color:var(--ink);font-weight:600;flex:1;text-align:left;word-break:break-word;}
@media (max-width:860px){
  .credit-form-grid{grid-template-columns:1fr;}
  .cc-list li{gap:var(--s4);}
  .cc-list li span{width:96px;}
}

/* ===== 企业查询（更多查询 → 企业查询） ===== */
.company-card{border-left:4px solid var(--red);}
.company-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-bottom:var(--s4);margin-bottom:var(--s4);border-bottom:2px solid var(--line);flex-wrap:wrap;}
.company-name{font-size:var(--fs-xl);font-weight:800;color:var(--ink);word-break:break-word;}
.company-status{display:inline-block;padding:4px 14px;font-size:var(--fs-sm);font-weight:700;flex:none;border:1px solid transparent;white-space:nowrap;}
.company-status.st-ok{background:#e7f7ee;color:#059669;border-color:#b9e9d3;}
.company-status.st-bad{background:#fde8e8;color:var(--red);border-color:#f3c9c9;}
.company-status.st-warn{background:#fff7e6;color:#b7791f;border-color:#f3d9a8;}
.company-status.st-unknown{background:var(--bg-2);color:var(--gray);border-color:var(--line);}
.company-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0 var(--s8);margin-bottom:var(--s4);}
.company-grid .kv{display:flex;align-items:flex-start;gap:var(--s4);padding:13px 0;border-bottom:1px dashed var(--line);font-size:var(--fs-base);line-height:1.5;}
.company-grid .kv span{color:var(--gray);width:96px;flex-shrink:0;text-align:left;}
.company-grid .kv b{color:var(--ink);font-weight:600;flex:1;text-align:left;word-break:break-word;}
.company-row{display:flex;align-items:flex-start;gap:var(--s4);padding:13px 0;border-top:1px solid var(--line);font-size:var(--fs-base);line-height:1.7;}
.company-row span{color:var(--gray);width:96px;flex-shrink:0;text-align:left;}
.company-row b{color:var(--ink);font-weight:500;flex:1;text-align:left;word-break:break-word;}

.company-form{margin:0;}
.company-form-row{display:flex;gap:var(--s4);align-items:stretch;}
.company-form-row .input{flex:1;min-width:0;}
.company-form-row .btn{flex:none;white-space:nowrap;padding-left:var(--s8);padding-right:var(--s8);}
.balance-line{margin-top:var(--s4);font-size:var(--fs-sm);color:var(--gray);}
.balance-line b{color:var(--ink);}
@media (max-width:860px){
  .company-grid{grid-template-columns:1fr;gap:0;}
  .company-grid .kv span,.company-row span{width:84px;}
}
@media (max-width:640px){
  .company-form-row{flex-direction:column;}
  .company-form-row .btn{width:100%;}
}

/* ===== 用户中心「详细流水」页面内展示 ===== */
.flow-section{
  background:#fff;
  border:1px solid var(--line);
  border-top:3px solid var(--red);
  padding:0 0 22px;
  margin-top:var(--s6);
}
.flow-head{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;padding:20px 24px 0;border-bottom:none;}
.flow-title{font-size:18px;font-weight:800;color:var(--ink);}
.flow-sub{font-size:var(--fs-sm);color:var(--gray);}
.flow-tabs{display:flex;gap:12px;padding:16px 24px 12px;flex-wrap:wrap;}
.flow-tab{display:inline-flex;align-items:center;justify-content:center;min-width:120px;padding:11px 28px;font-size:var(--fs-base);font-weight:600;color:var(--red);text-decoration:none;border:1px solid var(--red);background:#fff;transition:all .15s;}
.flow-tab:hover{background:#fff0f0;color:var(--red);}
.flow-tab.active{background:var(--red);color:#fff;border-color:var(--red);}
.flow-panel{padding:8px 24px 4px;min-height:120px;}
.flow-empty{padding:40px 0;text-align:center;color:var(--gray);font-size:var(--fs-base);}
.flow-table{width:100%;border-collapse:collapse;font-size:var(--fs-base);}
.flow-table th{text-align:left;padding:11px 12px;background:var(--bg-2);color:var(--ink-2);font-weight:600;font-size:var(--fs-sm);white-space:nowrap;}
.flow-table td{padding:12px;border-bottom:1px solid var(--line);color:var(--ink);vertical-align:middle;}
.flow-table tbody tr:hover{background:var(--bg);}
.flow-mono{font-family:'JetBrains Mono',ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--fs-sm);color:var(--ink-2);}
.flow-amt{font-weight:700;color:var(--red);white-space:nowrap;}
.flow-badge{display:inline-block;padding:3px 10px;font-size:var(--fs-xs);font-weight:600;white-space:nowrap;}
.flow-badge.ok{background:#e6f7ee;color:var(--ok);}
.flow-badge.wait{background:#fff4e0;color:var(--warn);}
.flow-pages{display:flex;justify-content:center;align-items:center;gap:6px;flex-wrap:wrap;padding-top:18px;}
.fp-btn{min-width:34px;height:34px;padding:0 10px;display:inline-flex;align-items:center;justify-content:center;font-size:var(--fs-sm);color:var(--ink-2);text-decoration:none;border:1px solid var(--line);background:#fff;transition:all .15s;}
.fp-btn:hover{border-color:var(--red);color:var(--red);}
.fp-btn.current{background:var(--red);border-color:var(--red);color:#fff;font-weight:700;}
@media (max-width:640px){
  .flow-section{margin-top:var(--s4); border-left:none; border-right:none;}
  .flow-head,.flow-tabs,.flow-panel{padding-left:12px;padding-right:12px;}
  .flow-head{padding-top:14px;}
  .flow-title{font-size:16px;}
  .flow-sub{font-size:12px;}
  .flow-tabs{padding:10px 12px; gap:8px;}
  .flow-tab{min-width:0; flex:1; padding:8px 0; font-size:13px; font-weight:600;}
  .flow-panel{padding:0 12px 8px;}
  .flow-table th,.flow-table td{padding:0;}
  /* 移动端：流水表格转纵向卡片 */
  .flow-table,
  .flow-table thead,
  .flow-table tbody,
  .flow-table tr,
  .flow-table td{display:block; width:100%; box-sizing:border-box;}
  .flow-table thead{display:none;}
  .flow-table tr{
    display:grid;
    grid-template-columns:repeat(3, 1fr);
    gap:5px 8px;
    padding:10px 0;
    border-bottom:1px solid var(--line);
  }
  .flow-table td{
    border-bottom:none;
    font-size:12px;
    color:var(--ink-2);
    line-height:1.35;
    grid-column:1/-1;
    word-break:break-word;
  }
  .flow-table td::before{
    content:attr(data-label);
    display:block;
    font-size:10px;
    color:var(--gray);
    margin-bottom:1px;
    font-weight:400;
  }
  .flow-table td[data-label="时间"],
  .flow-table td[data-label="状态"]{grid-column:span 1;}
  .flow-table td[data-label="时间"]::before,
  .flow-table td[data-label="状态"]::before{display:none;}
  .flow-table td[data-label="时间"]{
    color:var(--ink);
    font-weight:600;
  }
  .flow-table td[data-label="状态"]{text-align:right;}
  .flow-table td[data-label="订单号"],
  .flow-table td[data-label="套餐名称"],
  .flow-table td[data-label="登录 IP"]{
    grid-column:1/-1;
  }
  .flow-table td[data-label="订单号"],
  .flow-table td[data-label="登录 IP"]{font-size:11px; word-break:break-all; color:var(--ink-2);}
  .flow-table td[data-label="充值金额"],
  .flow-table td[data-label="赠送"],
  .flow-table td[data-label="实际到账"],
  .flow-table td[data-label="支付方式"]{
    grid-column:span 1;
  }
  .flow-table td[data-label="扣费金额"]{
    grid-column:1/-1;
    text-align:right;
  }
  .flow-body-recharge td[data-label="时间"]{grid-column:1/3;}
  .flow-body-recharge td[data-label="状态"]{grid-column:3/4;}
  .flow-amt{font-size:12px; white-space:nowrap;}
  .flow-mono{font-size:11px;}
  .flow-badge{font-size:10px; padding:2px 6px;}
  .flow-pages{padding-top:12px; gap:4px;}
  .fp-btn{min-width:28px; height:28px; padding:0 8px; font-size:12px;}
}

/* ===== 公开服务落地页（SEO 内容页） ===== */
.landing{background:#f5f7fa;padding:var(--s8) 0 var(--s12);}
.landing .container{max-width:960px;}
.crumb{font-size:var(--fs-sm);color:var(--gray);margin-bottom:var(--s5);}
.crumb a{color:var(--gray);text-decoration:none;}
.crumb a:hover{color:var(--red);}
.crumb i{margin:0 8px;font-style:normal;color:#c5ccd6;}
.landing-h1{font-size:var(--fs-3xl);font-weight:700;color:var(--ink);margin:0 0 var(--s3);line-height:1.3;}
.landing-lead{font-size:var(--fs-lg);color:#3a4456;line-height:1.8;margin:0 0 var(--s7);}
.landing-card{background:#fff;border:1px solid var(--line);border-radius:0;padding:var(--s6);margin-bottom:var(--s5);}
.landing-card h2{font-size:var(--fs-xl);font-weight:700;color:var(--ink);margin:0 0 var(--s4);padding-left:12px;border-left:4px solid var(--red);}
.landing-card p,.landing-card li{font-size:var(--fs-base);color:#3a4456;line-height:1.9;margin:0 0 var(--s3);}
.landing-card ul{padding-left:22px;margin:0 0 var(--s3);}
.landing-card li{margin-bottom:8px;}
.landing-cta{background:var(--red);color:#fff;text-align:center;padding:var(--s6);margin:var(--s6) 0;display:block;text-decoration:none;border-radius:0;}
.landing-cta:hover{background:#c81e1e;}
.landing-cta .t{font-size:var(--fs-xl);font-weight:700;display:block;margin-bottom:6px;}
.landing-cta .s{font-size:var(--fs-sm);opacity:.92;}
.faq-item{border-bottom:1px solid var(--line);padding:var(--s4) 0;}
.faq-item:last-child{border-bottom:none;}
.faq-q{font-size:var(--fs-lg);font-weight:600;color:var(--ink);margin:0 0 var(--s2);}
.faq-q:before{content:"Q：";color:var(--red);font-weight:700;}
.faq-a{font-size:var(--fs-base);color:#3a4456;line-height:1.9;margin:0;}
.faq-a:before{content:"A：";color:var(--gray);font-weight:700;}
.landing-rel{display:flex;flex-wrap:wrap;gap:12px;margin-top:var(--s3);}
.landing-rel a{display:inline-block;padding:8px 16px;border:1px solid var(--line);background:#fff;color:var(--ink);text-decoration:none;font-size:var(--fs-sm);}
.landing-rel a:hover{border-color:var(--red);color:var(--red);}
@media (max-width:640px){
  .landing{padding:var(--s6) 0 var(--s8);}
  .landing-card{padding:var(--s5) var(--s4);}
  .landing-h1{font-size:var(--fs-2xl);}
}
