/* chenchenba.com — 共用样式（手机优先） */
:root{
  --bg:#FBF8F4;
  --paper:#FFFFFF;
  --ink:#26221E;
  --ink-2:#5C544C;
  --ink-3:#8C8279;
  --line:#E8E0D6;
  --accent:#B8623C;
  --accent-soft:#FBEDE5;
  --green:#4A6B5A;
  --green-soft:#EAF0EA;
  --amber:#8A6A20;
  --amber-soft:#FBF3DF;
  --tabbar-h:60px;
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;}
html,body{margin:0;padding:0;}
body{
  background:var(--bg);color:var(--ink);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;
  font-size:16px;line-height:1.65;
  padding-bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom));
}
a{color:inherit;text-decoration:none;}
img{max-width:100%;}

/* ---------- 顶栏 ---------- */
.topbar{
  position:sticky;top:0;z-index:50;
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  height:58px;padding:0 16px;
  background:var(--paper);border-bottom:1px solid var(--line);
}
.brand{display:flex;align-items:center;gap:10px;min-width:0;}
.logo{
  width:36px;height:36px;border-radius:10px;flex:none;
  background:var(--accent);color:#fff;
  display:flex;align-items:center;justify-content:center;
  font-size:18px;font-weight:600;
}
.brand-text{display:flex;flex-direction:column;line-height:1.2;min-width:0;}
.brand-text b{font-size:16px;}
.brand-text i{font-style:normal;font-size:11px;color:var(--ink-3);}
.topnav{display:none;gap:22px;font-size:15px;}
.topnav a{color:var(--ink-2);padding:6px 2px;}
.topnav a.on{color:var(--accent);font-weight:600;}
.login-btn{
  flex:none;font-size:14px;padding:7px 14px;border-radius:18px;
  background:var(--accent);color:#fff;font-weight:500;
}
.login-btn.ghost{background:var(--accent-soft);color:var(--accent);}

/* ---------- 主体 ---------- */
main{max-width:1100px;margin:0 auto;padding:18px 16px 28px;}
@media (min-width:768px){main{padding:28px 28px 40px;}}

.hero{
  background:var(--paper);border:1px solid var(--line);border-radius:16px;
  padding:26px 20px;margin-bottom:18px;
}
.hero h1{margin:0 0 6px;font-size:22px;line-height:1.35;letter-spacing:-.3px;}
.hero p{margin:0 0 12px;color:var(--ink-2);font-size:15px;}
.pill{
  display:inline-block;font-size:12px;padding:4px 10px;border-radius:12px;
  background:var(--green-soft);color:var(--green);font-weight:500;
}

.grid{display:grid;grid-template-columns:1fr;gap:14px;}
.card{
  position:relative;display:flex;align-items:center;gap:14px;
  background:var(--paper);border:1px solid var(--line);border-radius:14px;
  padding:18px;transition:transform .12s ease;
}
.card:active{transform:scale(.985);}
.card .ico{
  width:48px;height:48px;border-radius:12px;flex:none;
  display:flex;align-items:center;justify-content:center;
  font-size:22px;background:var(--accent-soft);color:var(--accent);
}
.card .tx{min-width:0;flex:1;}
.card .tx b{display:block;font-size:16.5px;margin-bottom:2px;}
.card .tx span{display:block;font-size:13.5px;color:var(--ink-3);line-height:1.5;}
.card .arrow{flex:none;color:var(--ink-3);font-size:18px;}
.card.wide{padding:20px 18px;}
.card .ico.g{background:var(--green-soft);color:var(--green);}
.card .ico.a{background:var(--amber-soft);color:var(--amber);}

.soon{
  position:absolute;top:12px;right:14px;
  font-size:11px;padding:3px 8px;border-radius:10px;
  background:var(--amber-soft);color:var(--amber);font-weight:500;
}

/* ---------- 标签页（学习页） ---------- */
.tabs{
  display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;margin-bottom:16px;
  scrollbar-width:none;
}
.tabs::-webkit-scrollbar{display:none;}
.tabs button{
  flex:none;font-size:15px;padding:9px 18px;border-radius:20px;
  border:1px solid var(--line);background:var(--paper);color:var(--ink-2);
}
.tabs button.on{background:var(--ink);color:#fff;border-color:var(--ink);}
.tabpane{display:none;}
.tabpane.on{display:block;}
.pane-title{font-size:17px;font-weight:600;margin:4px 0 12px;}

/* ---------- 空状态 ---------- */
.empty{
  border:1.5px dashed var(--line);border-radius:14px;
  padding:34px 20px;text-align:center;color:var(--ink-3);
  background:transparent;
}
.empty b{display:block;font-size:15.5px;color:var(--ink-2);margin-bottom:4px;}
.empty span{font-size:13.5px;}

/* ---------- 按钮 ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-size:15.5px;font-weight:500;border:none;border-radius:12px;
  padding:12px 22px;min-height:46px;cursor:pointer;
  background:var(--accent);color:#fff;width:100%;
}
.btn.ghost{background:var(--accent-soft);color:var(--accent);}
.btn.gray{background:var(--paper);color:var(--ink-2);border:1px solid var(--line);}
.btn-print{
  width:100%;margin-top:10px;padding:11px;border-radius:10px;
  border:1.5px dashed var(--accent);background:transparent;
  color:var(--accent);font-size:14.5px;font-weight:500;
}

/* ---------- 表单 ---------- */
.field{margin-bottom:14px;}
.field label{display:block;font-size:13.5px;color:var(--ink-2);margin-bottom:6px;}
.field input{
  width:100%;padding:12px 14px;font-size:16px;
  border:1px solid var(--line);border-radius:12px;background:var(--paper);
  color:var(--ink);outline:none;
}
.field input:focus{border-color:var(--accent);}

/* ---------- 下拉选择 ---------- */
.field select,.field input[type="month"]{
  width:100%;padding:12px 14px;font-size:16px;
  border:1px solid var(--line);border-radius:12px;background:var(--paper);
  color:var(--ink);outline:none;appearance:none;-webkit-appearance:none;
  background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%238C8279' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 14px center;
}
.field select:focus,.field input[type="month"]:focus{border-color:var(--accent);}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.form-note{font-size:13px;color:var(--ink-3);margin:0 0 14px;line-height:1.6;}

/* ---------- 登录页 ---------- */
.apply-tip{
  margin-top:22px;border:1px solid var(--line);border-radius:14px;
  background:var(--paper);padding:18px;
}
.apply-tip b{font-size:15px;}
.apply-tip p{font-size:13.5px;color:var(--ink-2);margin:6px 0 12px;}
.done-box{border:1px solid var(--line);border-radius:16px;background:var(--paper);padding:30px 22px;}
.done-box h2{margin:0 0 8px;}
.done-box p{color:var(--ink-2);font-size:14px;margin:0 0 18px;}

/* ---------- 申请引导页 ---------- */
.steps{max-width:560px;margin:0 auto;}
.step-item{
  display:flex;gap:14px;background:var(--paper);
  border:1px solid var(--line);border-radius:14px;padding:18px;margin-bottom:14px;
}
.step-no{
  flex:none;width:32px;height:32px;border-radius:50%;
  background:var(--accent);color:#fff;font-weight:600;font-size:15px;
  display:flex;align-items:center;justify-content:center;
}
.step-body{min-width:0;flex:1;}
.step-body b{font-size:15.5px;}
.step-body p{margin:5px 0 0;font-size:13.5px;color:var(--ink-2);}
.qr-row{display:flex;gap:14px;margin-top:12px;}
.qr{flex:1;text-align:center;}
.qr-box{
  aspect-ratio:1;border:1.5px dashed var(--line);border-radius:12px;
  display:flex;align-items:center;justify-content:center;
  color:var(--ink-3);font-size:12px;background:var(--bg);
}
.qr i{display:block;font-style:normal;font-size:12px;color:var(--ink-3);margin-top:6px;}
.apply-note{
  max-width:560px;margin:6px auto 0;border-radius:14px;
  background:var(--green-soft);padding:16px 18px;
}
.apply-note b{font-size:14px;color:var(--green);}
.apply-note p{margin:6px 0 0;font-size:13px;color:var(--green);line-height:1.7;}

/* ---------- 我的页 ---------- */
.acct-info{border:1px solid var(--line);border-radius:14px;background:var(--paper);overflow:hidden;}
.acct-row{display:flex;justify-content:space-between;gap:14px;padding:13px 16px;border-bottom:1px solid var(--line);font-size:14px;}
.acct-row:last-child{border-bottom:none;}
.acct-row span{color:var(--ink-3);flex:none;}
.acct-row b{font-weight:500;text-align:right;}
.acct-row.top b{font-weight:400;font-size:13px;line-height:1.6;}
.acct-actions{max-width:520px;margin:22px auto 0;}
.child-card.on{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);}
.demo-hint{font-size:12.5px;color:var(--ink-3);text-align:center;margin-top:18px;}

/* ---------- 素材页 ---------- */
.demo-bar{
  display:flex;align-items:center;gap:8px;flex-wrap:wrap;
  font-size:13px;color:var(--ink-2);
  border:1px dashed var(--amber);border-radius:12px;
  background:var(--amber-soft);padding:10px 14px;margin-bottom:12px;
}
.demo-bar button{
  font-size:13px;padding:6px 14px;border-radius:16px;
  border:1px solid var(--amber);background:transparent;color:var(--amber);
}
.demo-bar button.on{background:var(--amber);color:#fff;}
.role-banner{border-radius:12px;padding:12px 16px;font-size:13.5px;margin-bottom:14px;line-height:1.6;}
.role-banner b{display:block;font-size:14.5px;margin-bottom:2px;}
.role-banner a{color:var(--accent);text-decoration:underline;}
.role-banner.guest{background:var(--amber-soft);color:var(--amber);}
.role-banner.member{background:var(--green-soft);color:var(--green);}

.material-wrap{display:flex;justify-content:center;}
.sheet{
  position:relative;width:100%;max-width:640px;
  background:#fff;border:1px solid var(--line);border-radius:8px;
  padding:26px 22px 18px;overflow:hidden;
}
.sheet-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:16px;}
.sheet-head b{font-size:17px;}
.sheet-head span{font-size:12px;color:var(--ink-3);}
.zi-rows{display:grid;gap:12px;}
.zi-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;}
.tian{
  position:relative;aspect-ratio:1;background:#fff;
  border:1.5px solid #C9BFB2;border-radius:4px;
  display:flex;align-items:center;justify-content:center;
  background-image:
    linear-gradient(to right,transparent 49.6%,#E4DCD0 49.6%,#E4DCD0 50.4%,transparent 50.4%),
    linear-gradient(to bottom,transparent 49.6%,#E4DCD0 49.6%,#E4DCD0 50.4%,transparent 50.4%);
}
.tian span{font-size:min(15vw,72px);font-weight:400;color:var(--ink);line-height:1;}
.tian.faint span{color:rgba(38,34,30,.22);}
.sheet-foot{
  display:flex;align-items:center;gap:8px;margin-top:18px;padding-top:12px;
  border-top:1px solid var(--line);font-size:11.5px;color:var(--ink-3);
}
.foot-logo{
  flex:none;width:20px;height:20px;border-radius:6px;background:var(--accent);color:#fff;
  font-size:11px;display:flex;align-items:center;justify-content:center;
}
.wm-note{font-size:12.5px;color:var(--ink-3);text-align:center;margin-top:10px;line-height:1.6;}

/* 水印层 */
#watermark{position:absolute;inset:0;pointer-events:none;z-index:5;overflow:hidden;}
.wm-item{
  position:absolute;font-size:13px;color:rgba(90,80,70,.10);
  transform:rotate(-28deg);white-space:nowrap;font-weight:500;
}
.material{user-select:none;-webkit-user-select:none;}

/* ---------- 打印规则 ---------- */
@media print{
  body{background:#fff;padding:0;}
  .no-print,.topbar,.tabbar,footer,.demo-bar,.role-banner{display:none!important;}
  main{padding:0;max-width:none;}
  .material-wrap{display:block;}
  .sheet-canvas{max-width:none;width:100%;border:none;border-radius:0;}
  @page{size:A4 portrait;margin:0;}
}

/* ---------- Canvas 素材纸 ---------- */
.sheet-canvas{
  width:100%;max-width:640px;display:block;
  background:#fff;border:1px solid var(--line);border-radius:8px;
  user-select:none;-webkit-user-select:none;
}

/* ---------- 反馈页 ---------- */
textarea{
  width:100%;padding:12px 14px;font-size:16px;font-family:inherit;
  border:1px solid var(--line);border-radius:12px;background:var(--paper);
  color:var(--ink);outline:none;resize:vertical;
}
textarea:focus{border-color:var(--accent);}
.type-pills{display:flex;gap:8px;flex-wrap:wrap;}
.type-pills button{
  font-size:14.5px;padding:9px 18px;border-radius:20px;
  border:1px solid var(--line);background:var(--paper);color:var(--ink-2);
}
.type-pills button.on{background:var(--ink);color:#fff;border-color:var(--ink);}
.fb-item{
  border:1px solid var(--line);border-radius:12px;background:var(--paper);
  padding:12px 14px;margin-bottom:10px;
}
.fb-item b{
  display:inline-block;font-size:11.5px;padding:2px 8px;border-radius:8px;
  background:var(--accent-soft);color:var(--accent);margin-bottom:6px;
}
.fb-item span{display:block;font-size:14px;line-height:1.6;}
.fb-item i{display:block;font-style:normal;font-size:12px;color:var(--ink-3);margin-top:6px;}

/* ---------- 管理后台 ---------- */
.kpi-row{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:16px;}
.kpi{border:1px solid var(--line);border-radius:14px;background:var(--paper);padding:16px 18px;}
.kpi span{display:block;font-size:12.5px;color:var(--ink-3);margin-bottom:4px;}
.kpi b{font-size:22px;font-weight:600;letter-spacing:-.3px;}
.admin-grid{display:grid;grid-template-columns:1fr;gap:14px;}
.panel{border:1px solid var(--line);border-radius:14px;background:var(--paper);padding:18px;}
.panel h3{margin:0 0 12px;font-size:15px;}
.bar-row{display:flex;align-items:center;gap:10px;margin-bottom:9px;}
.bar-label{flex:none;width:110px;font-size:12.5px;color:var(--ink-2);
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:right;}
.bar-track{flex:1;height:14px;border-radius:7px;background:var(--bg);overflow:hidden;}
.bar-fill{height:100%;border-radius:7px;}
.bar-row b{flex:none;width:28px;font-size:12.5px;text-align:left;}
.gen-row{display:flex;gap:10px;margin-bottom:12px;}
.gen-row select{
  flex:1;padding:10px 12px;font-size:14.5px;border:1px solid var(--line);
  border-radius:10px;background:var(--paper);color:var(--ink);
}
.code-list{display:grid;grid-template-columns:1fr;gap:8px;max-height:260px;overflow:auto;}
.code-item{
  display:flex;justify-content:space-between;align-items:center;gap:10px;
  border:1px dashed var(--line);border-radius:10px;padding:9px 12px;font-size:13.5px;
}
.code-item b{letter-spacing:.08em;color:var(--accent);}
.code-item span{color:var(--ink-3);font-size:12.5px;}

@media (min-width:768px){
  .kpi-row{grid-template-columns:repeat(4,1fr);}
  .admin-grid{grid-template-columns:1fr 1fr;}
}

/* ---------- 后台时间段选择 ---------- */
.range-bar{
  display:flex;align-items:center;gap:8px;flex-wrap:wrap;
  border:1px solid var(--line);border-radius:12px;background:var(--paper);
  padding:12px 14px;margin-bottom:16px;font-size:13.5px;color:var(--ink-2);
}
.range-bar .rg-btn{
  font-size:13px;padding:6px 14px;border-radius:16px;
  border:1px solid var(--line);background:var(--bg);color:var(--ink-2);
}
.range-bar .rg-btn.on{background:var(--ink);color:#fff;border-color:var(--ink);}
.range-bar input[type="date"]{
  padding:6px 8px;font-size:13px;border:1px solid var(--line);
  border-radius:8px;background:var(--bg);color:var(--ink);
}
.range-bar .rg-custom{margin-left:6px;}
.legend{font-size:12px;color:var(--ink-2);margin-top:6px;}
.lg{display:inline-block;width:18px;height:3px;border-radius:2px;vertical-align:middle;margin-right:4px;}
.lg-a{background:#B8623C;}
.lg-b{background:#4A6B5A;}

/* ---------- 留言板 ---------- */
.fb-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px;flex-wrap:wrap;}
.fb-head i{font-style:normal;font-size:12px;color:var(--ink-3);}
.fb-item.hot{border-color:var(--accent);}
.fb-item.hot .fb-head b{background:var(--accent);color:#fff;}
.like-btn{
  margin-top:10px;font-size:13px;padding:6px 14px;border-radius:16px;
  border:1px solid var(--accent);background:transparent;color:var(--accent);
}
.like-btn em{font-style:normal;font-weight:600;margin-left:2px;}
.like-btn.done{background:var(--accent-soft);color:var(--accent);border-style:solid;}

/* ---------- 底部标签栏（手机） ---------- */
.tabbar{
  position:fixed;left:0;right:0;bottom:0;z-index:60;
  display:grid;grid-template-columns:repeat(5,1fr);
  height:calc(var(--tabbar-h) + env(safe-area-inset-bottom));
  padding-bottom:env(safe-area-inset-bottom);
  background:var(--paper);border-top:1px solid var(--line);
}
.tabbar a{
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;
  font-size:11px;color:var(--ink-3);
}
.tabbar a svg{width:23px;height:23px;stroke:currentColor;fill:none;stroke-width:1.7;}
.tabbar a.on{color:var(--accent);}

/* ---------- Toast ---------- */
#toast{
  position:fixed;left:50%;bottom:calc(var(--tabbar-h) + 24px);z-index:99;
  transform:translateX(-50%) translateY(16px);
  background:rgba(38,34,30,.92);color:#fff;
  font-size:14px;padding:10px 18px;border-radius:22px;
  opacity:0;pointer-events:none;transition:all .22s ease;max-width:82vw;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
#toast.show{opacity:1;transform:translateX(-50%) translateY(0);}

/* ---------- 页脚 ---------- */
footer{
  max-width:1100px;margin:8px auto 0;padding:18px 16px 10px;
  color:var(--ink-3);font-size:12.5px;text-align:center;
}

/* ============ 平板 ≥768px ============ */
@media (min-width:768px){
  body{padding-bottom:40px;}
  .tabbar{display:none;}
  .topnav{display:flex;}
  .login-btn{margin-left:4px;}
  .topbar{padding:0 28px;height:64px;}
  .hero{padding:36px 32px;}
  .hero h1{font-size:26px;}
  .grid{grid-template-columns:1fr 1fr;}
  .grid.keep1{grid-template-columns:1fr;}
  #toast{bottom:32px;}
}

/* ============ 桌面 ≥1080px ============ */
@media (min-width:1080px){
  .grid{grid-template-columns:repeat(3,1fr);}
  .hero{padding:44px 40px;}
  .hero h1{font-size:30px;}
  main{padding:36px 28px 48px;}
}

/* ---------- 后台 v3：详情链接 / 用户表 / 编辑表单 / 徽章 ---------- */
.panel-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap;}
.panel-head h3{margin:0 0 6px;}
.detail-link,.kpi-link{font-size:12px;color:#B8623C;text-decoration:none;white-space:nowrap;}
.kpi-link{display:inline-block;margin-top:6px;font-size:12px;}
.badge{display:inline-block;padding:1px 8px;border-radius:9px;font-size:12px;margin-left:6px;vertical-align:1px;}
.badge-vip{background:#FBF3E4;color:#A8632A;border:1px solid #E8CFA5;font-weight:600;}
.badge-std{background:#F0EEE9;color:#6B655E;border:1px solid #DCD6CC;}
.code-item{flex-wrap:wrap;gap:8px;align-items:center;}
.code-item .code-id{min-width:150px;}
.code-item .code-meta{display:flex;flex-direction:column;gap:2px;font-size:12px;color:#8C8279;flex:1;min-width:130px;}
.code-item .code-actions{display:flex;gap:6px;}
.st-ok{color:#4A6B5A;}
.st-used{color:#8C8279;}
.st-dead{color:#B0453C;}
.mini-btn{border:1px solid #B8623C;background:#fff;color:#B8623C;border-radius:8px;padding:4px 10px;font-size:12px;cursor:pointer;white-space:nowrap;}
.mini-btn:hover{background:#B8623C;color:#fff;}
.mini-btn.gray{border-color:#CFC9C0;color:#6B655E;}
.mini-btn.gray:hover{background:#6B655E;color:#fff;}
.mini-btn:disabled{opacity:.4;cursor:default;}
.mini-btn:disabled:hover{background:#fff;color:#CFC9C0;}
.tbl{width:100%;border-collapse:collapse;font-size:13px;}
.tbl th{font-weight:600;color:#6B655E;border-bottom:2px solid #E8E0D6;padding:8px;text-align:left;white-space:nowrap;}
.tbl td{border-bottom:1px solid #F0EAE2;padding:8px;text-align:left;white-space:nowrap;}
.tbl-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;}
.edit-row td{background:#FBF8F3;}
.edit-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;align-items:end;width:100%;}
.edit-form label{font-size:12px;color:#8C8279;display:block;margin-bottom:3px;}
.edit-form select,.edit-form input{width:100%;padding:7px 9px;border:1px solid #DCD6CC;border-radius:8px;font-size:13px;background:#fff;}
.pager{display:flex;gap:10px;align-items:center;justify-content:center;margin-top:14px;font-size:13px;color:#6B655E;flex-wrap:wrap;}
.stat-chips{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px;}
.stat-chips span{background:#F0EEE9;border-radius:9px;padding:4px 12px;font-size:13px;color:#6B655E;}
.u-bar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px;align-items:center;}
.u-bar input,.u-bar select{padding:8px 10px;border:1px solid #DCD6CC;border-radius:8px;font-size:13px;background:#fff;}
.gen-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center;}

/* ---------- 反馈类型配色 / 回复界面 / 导出勾选 ---------- */
.fb-tag{display:inline-block;padding:2px 9px;border-radius:9px;font-size:12px;font-weight:600;margin-right:6px;}
.tag-xq{background:#FBE9E2;color:#B8623C;}   /* 提需求 · 橙 */
.tag-bug{background:#FBE2E2;color:#B0453C;}  /* 报 BUG · 红 */
.tag-sc{background:#E4EFE8;color:#4A6B5A;}   /* 求素材 · 绿 */
.tag-qt{background:#E9ECF2;color:#4A5B7A;}   /* 其他 · 蓝灰 */
.type-pills button.on[data-type="提需求"]{background:#B8623C;}
.type-pills button.on[data-type="报 BUG"]{background:#B0453C;}
.type-pills button.on[data-type="求素材"]{background:#4A6B5A;}
.type-pills button.on[data-type="其他"]{background:#5A6B84;}
.fb-reply{margin-top:8px;padding:8px 12px;background:#F2EEE6;border-left:3px solid #B8623C;border-radius:0 8px 8px 0;font-size:13px;color:#4A443C;line-height:1.6;}
.fb-reply b{display:block;font-size:12px;color:#B8623C;margin-bottom:2px;}
.fb-reply i{display:block;font-style:normal;font-size:12px;color:#8C8279;margin-top:2px;}
.reply-row{display:flex;gap:8px;margin-top:10px;align-items:flex-start;}
.reply-row textarea{flex:1;padding:8px 10px;border:1px solid #DCD6CC;border-radius:8px;font-size:13px;resize:vertical;font-family:inherit;}
.reply-row .mini-btn{margin-top:2px;padding:7px 14px;}
.like-btn{cursor:pointer;}
.exp-opts{display:flex;flex-direction:column;gap:6px;}
.exp-opts label{display:flex;align-items:center;gap:7px;font-size:13px;color:#4A443C;}
.exp-opts input{accent-color:#B8623C;}

/* ---------- 类型配色 v2（提需求蓝 / 报BUG红 / 求素材绿 / 其他紫，pill 常态带色） ---------- */
.tag-xq{background:#E9ECF2;color:#4A5B84;}
.tag-bug{background:#FBE2E2;color:#B0453C;}
.tag-sc{background:#E4EFE8;color:#4A6B5A;}
.tag-qt{background:#F0E9F2;color:#7A5B84;}
.type-pills button[data-type="提需求"]{color:#4A5B84;}
.type-pills button[data-type="报 BUG"]{color:#B0453C;}
.type-pills button[data-type="求素材"]{color:#4A6B5A;}
.type-pills button[data-type="其他"]{color:#7A5B84;}
.type-pills button.on[data-type="提需求"]{background:#4A5B84;border-color:#4A5B84;color:#fff;}
.type-pills button.on[data-type="报 BUG"]{background:#B0453C;border-color:#B0453C;color:#fff;}
.type-pills button.on[data-type="求素材"]{background:#4A6B5A;border-color:#4A6B5A;color:#fff;}
.type-pills button.on[data-type="其他"]{background:#7A5B84;border-color:#7A5B84;color:#fff;}

/* ---------- 备份提醒横幅 ---------- */
#backup-banner{max-width:1100px;margin:0 auto 14px;}
.bk-warn,.bk-ok{border-radius:12px;padding:10px 16px;font-size:14px;line-height:1.6;}
.bk-warn{background:#FDF2EC;border:1px solid #E8C4A8;color:#A8542C;}
.bk-ok{background:#EEF4EF;border:1px solid #C9DCCE;color:#4A6B5A;}
th.sortable:hover{color:#B8623C;}
th.sortable{user-select:none;}

/* ---------- 无码用户徽章 + KPI 5 列 ---------- */
.badge-nocoded{background:#EFEDEA;color:#8C8279;border:1px dashed #C9C2B8;}
@media (min-width:768px){
  .kpi-row{grid-template-columns:repeat(5,1fr);}
}

/* ---------- 登录页等级对比 / 权限编辑器 ---------- */
.pm-yes{color:#4A6B5A;font-weight:700;}
.pm-no{color:#C9C2B8;}
.perm-cell{display:inline-flex;align-items:center;gap:4px;font-size:13px;color:#6B655E;white-space:nowrap;}
.perm-cell input{accent-color:#B8623C;}
