/* 媒关系自助发稿平台 · 品牌橙高端视觉 */
:root{
  --orange:#F2621D; --orange-d:#EE5A10; --orange-l:#F78244;
  --grad:linear-gradient(135deg,#F78244 0%,#F2621D 55%,#EE5A10 100%);
  --peach:#FAE8DD; --peach-d:#F7D3C2;
  --ink:#26201B; --ink2:#574E46; --grey:#9A918A; --line:#EDE4DC;
  --bg:#F7F5F2; --card:#fff; --green:#1FA36B; --red:#E03E2D; --blue:#2E6BE6;
  --radius:16px; --shadow:0 1px 2px rgba(45,30,15,.04),0 8px 28px rgba(45,30,15,.06); --shadow-lg:0 2px 6px rgba(45,30,15,.05),0 20px 56px rgba(45,30,15,.13);
}
*{margin:0;padding:0;box-sizing:border-box}
/* 画布底色跟着品牌底色走：页面间切换时不会先闪一下浏览器默认的白色。
   页面 <html> 上还内联了一份同样的底色，双保险 */
html{background:var(--bg)}
/* 跨页面导航平滑过渡：Chrome / Edge 126+ 会自动把「旧页 → 新页」交叉淡入，
   头部等位置一致的元素看起来是静止的，切换更平稳；不支持的浏览器直接忽略这条规则 */
@view-transition{navigation:auto}
@media(prefers-reduced-motion:reduce){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}
body{font-family:"HarmonyOS Sans SC","MiSans","PingFang SC","Hiragino Sans GB","Microsoft YaHei",system-ui,-apple-system,"Segoe UI",sans-serif;background:var(--bg);color:var(--ink);font-size:14px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;min-height:100vh;display:flex;flex-direction:column}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer;border:none}
input,select,textarea{font-family:inherit;font-size:14px;outline:none;border:1px solid var(--line);border-radius:8px;padding:10px 12px;background:#fff;color:var(--ink);transition:.2s}
input:focus,select:focus,textarea:focus{border-color:var(--orange);box-shadow:0 0 0 3px rgba(242,98,29,.12)}
textarea{resize:vertical;min-height:120px;width:100%}
::selection{background:rgba(242,98,29,.2)}

/* ===== 公共头部 ===== */
/* min-height：头部内容由脚本同步写入，脚本执行前的极短窗口也按整条高度占位，
   切换页面时页面内容不会「先上移、再被撑下来」，消除跳动感。
   77 = 导航条 76 + 底边线 1，与填充后的实际高度完全一致（无 1px 抖动） */
.site-header{background:rgba(255,255,255,.92);backdrop-filter:blur(14px);position:sticky;top:0;z-index:90;border-bottom:1px solid rgba(45,30,15,.07);min-height:77px}
.site-header .inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;gap:34px;padding:0 24px;height:76px}
.brand{display:flex;align-items:center;gap:10px;font-size:21px;font-weight:800;letter-spacing:1px}
.brand .logo-dot{width:34px;height:34px;border-radius:10px;background:var(--grad);display:flex;align-items:center;justify-content:center;color:#fff;font-size:15px;font-weight:900;box-shadow:0 4px 12px rgba(242,98,29,.35)}
.brand small{font-size:10px;font-weight:400;color:var(--grey);letter-spacing:2px;margin-left:2px}
.nav{display:flex;gap:8px;flex:1;height:100%;align-items:stretch}
.nav a{position:relative;display:inline-flex;align-items:center;padding:0 17px;font-size:15.5px;font-weight:600;letter-spacing:.5px;color:var(--ink2);transition:color .2s}
.nav a:hover{color:var(--orange-d)}
/* 「媒体资源」下拉菜单：六类渠道直达对应资源列表 */
.nav-drop{position:relative;display:flex;align-items:stretch}
.nav-drop>a{display:inline-flex;align-items:center;padding:0 17px;font-size:15.5px;font-weight:600;letter-spacing:.5px;color:var(--ink2);transition:color .2s;position:relative}
.nav-drop>a .caret{font-size:11px;color:var(--grey);margin-left:2px;transition:transform .2s}
.nav-drop:hover>a{color:var(--orange-d)}
.nav-drop.active>a{color:var(--orange-d)}
.nav-drop.active>a::after{content:"";position:absolute;left:17px;right:17px;bottom:20px;height:3px;border-radius:3px;background:var(--grad);opacity:1}
.nav-menu{position:absolute;top:100%;left:0;min-width:168px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow-lg);padding:8px;opacity:0;visibility:hidden;transform:translateY(8px);transition:all .18s;z-index:95}
.nav-drop:hover .nav-menu,.nav-drop:focus-within .nav-menu{opacity:1;visibility:visible;transform:none}
.nav-drop:hover>a .caret{transform:rotate(180deg)}
.nav-menu a{display:flex;align-items:center;gap:9px;padding:8px 12px;border-radius:8px;font-size:14.5px;font-weight:500;color:var(--ink2);letter-spacing:0}
.nav-menu .dm-ic{width:23px;height:23px;border-radius:7px;flex:none;display:flex;align-items:center;justify-content:center}
.nav-menu .dm-ic svg{width:14px;height:14px;display:block}
.nav-menu a::after{content:none}
.nav-menu a:hover{background:#FFF3EA;color:var(--orange-d)}
/* 当前页指示条：紧贴文字下方（不再贴页眉底边），淡入淡出不做展开动画，避免闪动 */
.nav a::after{content:"";position:absolute;left:17px;right:17px;bottom:20px;height:3px;border-radius:3px;background:var(--grad);opacity:0;transition:opacity .15s}
.nav a:hover{color:var(--orange-d)}
.nav a:hover::after,.nav a.active::after{opacity:1}
.nav a.active{color:var(--orange-d)}
/* 下拉菜单项永远不出指示条（.nav a::after / .nav a:hover::after 会穿透到菜单项，红线正好压住菜单文字） */
.nav .nav-menu a::after{content:none !important}
.header-actions{display:flex;align-items:center;gap:10px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 22px;border-radius:10px;font-size:14px;font-weight:600;transition:.2s;white-space:nowrap;letter-spacing:.5px;cursor:pointer}
.btn-primary{background:var(--grad);color:#fff;box-shadow:0 4px 14px rgba(242,98,29,.28)}
.btn-primary:hover{transform:translateY(-1px);box-shadow:0 8px 22px rgba(242,98,29,.38)}
.btn-ghost{background:#fff;border:1px solid var(--line);color:var(--ink2)}
.btn-ghost:hover{border-color:var(--orange);color:var(--orange-d)}
.btn-sm{padding:6px 12px;font-size:12.5px;border-radius:8px}
.btn-danger{background:#fff;border:1px solid #F3C1BA;color:var(--red)}
.btn-danger:hover{background:#FFF3F1}
/* 行内操作按钮：白底 + 细边框 + 圆角，和「状态标签」明显区分（一眼看出可点击） */
.btn-link{background:#fff;border:1px solid var(--line);color:var(--blue);padding:4px 11px;font-size:12.5px;border-radius:7px;font-weight:600;line-height:1.5}
.btn-link:hover{border-color:currentColor;background:#F6F9FF;transform:none!important}
.btn-link:active{background:#EEF4FF}
.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}

/* ===== 首页 ===== */
.hero{color:#fff;position:relative;overflow:hidden;background:linear-gradient(150deg,#282019 0%,#1C1611 58%,#171310 100%)}
.hero::before,.hero::after{content:"";position:absolute;border-radius:50%;pointer-events:none}
.hero::before{width:760px;height:760px;top:-300px;right:-160px;background:radial-gradient(circle,rgba(242,98,29,.34) 0%,rgba(242,98,29,.1) 45%,transparent 68%)}
.hero::after{width:520px;height:520px;bottom:-220px;left:-120px;background:radial-gradient(circle,rgba(247,130,68,.16) 0%,transparent 65%)}
.hero .inner{max-width:1200px;margin:0 auto;padding:104px 24px 112px;position:relative;z-index:1;text-align:center}
.hero h1{font-size:50px;font-weight:900;letter-spacing:3px;line-height:1.25;text-shadow:0 6px 30px rgba(0,0,0,.35)}
.hero h1 .grad-text{background:linear-gradient(100deg,#FFB48A 0%,#F78244 55%,#F2621D 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero p.sub{font-size:17.5px;margin:20px 0 40px;opacity:.78;letter-spacing:2px;font-weight:400}
.hero .cta{display:flex;gap:16px;justify-content:center}
.hero .cta .btn{padding:15px 40px;font-size:16px;border-radius:12px}
.btn-white{background:#fff;color:var(--orange-d);box-shadow:0 10px 30px rgba(0,0,0,.28)}
.hero .stats{display:flex;gap:0;justify-content:center;margin-top:68px}
.hero .stats .st{padding:0 52px;border-right:1px solid rgba(255,255,255,.14);text-align:center}
.hero .stats .st:last-child{border:none}
.hero .stats b{display:block;font-size:34px;font-weight:900;letter-spacing:1px;font-variant-numeric:tabular-nums}
.hero .stats span{font-size:13px;opacity:.6;letter-spacing:1px}
.section{width:100%;max-width:1200px;margin:0 auto;padding:76px 24px}
.sec-head{text-align:center;margin-bottom:46px}
.sec-head h2{font-size:29px;font-weight:800;letter-spacing:2px;position:relative;padding-top:22px}
.sec-head h2::before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);width:30px;height:3px;border-radius:2px;background:var(--grad)}
.sec-head p{color:var(--grey);margin-top:10px;letter-spacing:1px}
.cat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.cat-card{background:var(--card);border-radius:var(--radius);padding:30px 28px;box-shadow:var(--shadow);transition:.25s;border:1px solid rgba(45,30,15,.05);cursor:pointer}
.cat-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--peach-d)}
.cat-card .ic{width:54px;height:54px;border-radius:15px;background:linear-gradient(135deg,#FDF0E6,#FAE3D2);display:flex;align-items:center;justify-content:center;font-size:24px;margin-bottom:18px}
/* 六大渠道卡：图标为品牌识别 logo 徽章（首页与「关于我们」共用，见 assets/dict.js 的 CHANNELS） */
.cat-card .ic.chan{border-radius:15px;box-shadow:0 8px 18px -9px rgba(45,30,15,.5);transition:transform .25s}
.cat-card .ic.chan svg{width:27px;height:27px;display:block}
.chan-card:hover .ic.chan{transform:scale(1.06)}
.cat-card h3{font-size:17px;margin-bottom:6px}
.cat-card p{font-size:13px;color:var(--grey);line-height:1.7}
.flow{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.flow .fs{background:var(--card);border-radius:var(--radius);padding:26px 22px;box-shadow:var(--shadow);text-align:center;position:relative}
.flow .fs .no{width:40px;height:40px;border-radius:50%;background:var(--grad);color:#fff;font-weight:800;display:flex;align-items:center;justify-content:center;margin:0 auto 14px;font-size:16px}
.flow .fs h4{font-size:15px;margin-bottom:6px}
.flow .fs p{font-size:12.5px;color:var(--grey)}
.art-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.art-card{background:var(--card);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow);transition:.25s}
.art-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg)}
.art-card .dt{font-size:12px;color:var(--orange-d);font-weight:700;letter-spacing:1px}
.art-card h4{font-size:15px;margin:10px 0 8px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.art-card p{font-size:12.5px;color:var(--grey);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}

/* ===== 页面容器/资源页 ===== */
.page{width:100%;max-width:1200px;margin:0 auto;padding:28px 24px 80px}
.page-title{font-size:24px;font-weight:800;margin-bottom:4px}
.page-sub{color:var(--grey);font-size:13px;margin-bottom:22px}
.tabs{display:flex;gap:4px;background:#F1ECE6;border-radius:12px;padding:5px;width:fit-content;margin-bottom:22px;flex-wrap:wrap}
.tabs .tab{padding:9px 20px;border-radius:9px;font-size:14px;font-weight:600;color:var(--ink2);background:none;letter-spacing:.5px}
.tabs .tab.active{background:#fff;color:var(--orange-d);box-shadow:0 2px 8px rgba(60,35,15,.1)}
/* 会员端「增加资源」：分类页签下方的该类资源字段分组标题 */
.dyn-head{margin-top:16px;padding-top:14px;border-top:1px dashed var(--line);font-size:13px;font-weight:700;color:var(--orange-d);letter-spacing:.5px;margin-bottom:12px}
.filter-panel{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);padding:8px 22px;margin-bottom:18px}
.frow{display:flex;gap:12px;padding:11px 0;border-bottom:1px dashed var(--line);align-items:flex-start}
.frow:last-child{border:none}
.frow .fl{width:92px;flex-shrink:0;color:var(--grey);font-size:13px;padding-top:5px}
.frow .fvals{display:flex;flex-wrap:wrap;gap:4px 6px;flex:1}
.chip{padding:5px 13px;border-radius:7px;font-size:13px;color:var(--ink2);background:none;border:none;transition:.15s}
.chip:hover{color:var(--orange-d)}
.chip.on{background:var(--grad);color:#fff;font-weight:600;box-shadow:0 3px 8px rgba(242,98,29,.3)}
.mini-input{width:110px;padding:5px 9px;font-size:12.5px;border-radius:7px}
.filter-actions{display:flex;gap:10px;padding:12px 0;align-items:center}
.tbl-wrap{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);overflow:auto}
table.grid{width:100%;border-collapse:collapse;min-width:860px}
table.grid th{background:#FBF6F1;color:var(--ink2);font-size:12.5px;font-weight:600;letter-spacing:.5px;padding:13px 14px;text-align:left;white-space:nowrap;position:sticky;top:0}
table.grid td{padding:12px 14px;border-top:1px solid var(--line);font-size:13px;vertical-align:middle}
table.grid tr:hover td{background:#FFFBF8}
.mname{font-weight:600;color:var(--ink)}
/* 资源库管理两列的宽度分工（v1.0.152）：
   名称列不折行 —— 15 字以内的媒体名称一行展示全（更长的才自然换行）；
   操作列允许折行 —— 编辑 / 推荐等按钮一行放不下时折成多行，不再把名称列挤窄 */
.name-cell{white-space:nowrap}
.ops-cell .btn-link{margin:2px 8px 2px 0}
.price{color:var(--orange-d);font-weight:800;font-size:15px}
/* 后台资源库「成本」列（v1.0.167）：上游成本价，灰色小字与售价区分；
   ⚠ = 库里基准价与当前规则算出的售价不一致（前台展示的始终是实时新价） */
.cost-cell{white-space:nowrap;color:var(--grey);font-size:12.5px}
.cost-cell .cost-num{font-variant-numeric:tabular-nums}
.stale-dot{display:inline-block;margin-left:5px;padding:0 5px;border-radius:5px;font-size:11px;font-weight:700;
  color:#8A5A00;background:#FFF3D6;border:1px solid #F0D9A0;cursor:help;vertical-align:middle}
.tag{display:inline-block;padding:2px 9px;border-radius:6px;font-size:11.5px;font-weight:600;white-space:nowrap;cursor:default}
.tag-ok{background:#E6F5EE;color:var(--green)}
.tag-no{background:#FBEAE7;color:var(--red)}
.tag-orange{background:var(--peach);color:var(--orange-d)}
.tag-gray{background:#F0EDEA;color:var(--grey)}
/* 本站资源标（后台资源库）：标了「本」的是平台自建 / 会员入驻的资源，可编辑；
   没有标的是上游同步来的资源（每天自动覆盖，不可编辑） */
.tag-self{display:inline-block;margin-left:6px;padding:1px 7px;border-radius:5px;font-size:11px;font-weight:700;line-height:1.7;
  color:#1F5FA8;background:#E9F1FB;border:1px solid #C6DBF2;vertical-align:middle;cursor:default}
/* 催稿加急标（客户已催稿，媒体优先处理） */
.urgent-tag{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;margin-left:6px;border-radius:5px;
  background:linear-gradient(135deg,#FF6A2B,#E23C0F);color:#fff;font-size:11px;font-weight:700;line-height:1;vertical-align:middle;
  box-shadow:0 2px 6px rgba(226,60,15,.32)}
tr.row-urgent>td{background:#FFF6F1}
tr.row-urgent:hover>td{background:#FFEFE7}
.urge-btn{color:var(--orange-d);font-weight:700}
/* 媒体工作台 · 工单卡片 */
.work-card{position:relative;padding:18px 22px}
.work-card.work-pending{border-left:3px solid var(--orange);background:#FFFCFA}
.work-detail{margin-top:8px;font-size:12.5px;color:var(--ink2);line-height:1.9;background:#FAF7F4;border-radius:8px;padding:10px 14px}
.work-detail b{color:var(--orange-d);font-weight:600}
/* 官方认证小图标：媒体名后的小徽章（仅后台人工添加的官方媒体显示） */
.tag-official{display:inline-flex;align-items:center;gap:3px;margin-left:6px;padding:1px 7px 1px 5px;border-radius:6px;font-size:11px;font-weight:700;color:#fff;background:var(--grad);box-shadow:0 2px 6px rgba(242,98,29,.28);vertical-align:middle}
.tag-official .off-ic{position:relative;display:inline-block;width:11px;height:11px;border-radius:50%;background:rgba(255,255,255,.28);flex:0 0 11px}
.tag-official .off-ic::after{content:"";position:absolute;left:3px;top:2.5px;width:4px;height:6px;border:solid #fff;border-width:0 1.6px 1.6px 0;transform:rotate(42deg)}
/* 白名单媒体小徽章（仅后台运营勾选）：纯文字 + 蓝色描边 */
.tag-white{display:inline-block;margin-left:6px;padding:1px 7px;border-radius:5px;font-size:11px;font-weight:700;line-height:1.7;
  color:#1F6BD8;background:#F4F9FF;border:1px solid #BFD8FA;vertical-align:middle}
/* 推荐媒体小徽章（仅后台运营勾选）：纯文字「荐」+ 橙色描边 */
.tag-rec{display:inline-block;margin-left:6px;padding:1px 7px;border-radius:5px;font-size:11px;font-weight:700;line-height:1.7;
  color:#E8340C;background:#FFF5F1;border:1px solid #FFC9B2;vertical-align:middle}
/* 状态=纯文字+颜色（无底色圆角，与操作按钮区分；颜色仍由 .st-* 提供） */
.status-tag{display:inline-block;padding:0;border-radius:0;font-size:12.5px;font-weight:700;white-space:nowrap;cursor:default;background:transparent!important;box-shadow:none!important}
/* 订单申请信息（原因 / 进度）小字 */
.apply-note{font-size:11.5px;color:#8A8F98;line-height:1.6;margin-top:4px;white-space:normal;word-break:break-word}
.apply-note b{color:var(--orange-d);font-weight:600}
/* 订单号：等宽小字一行显示，不换行，点击可复制 */.ord-no{font-family:ui-monospace,Consolas,"Courier New",monospace;font-size:12px;color:var(--ink2);white-space:nowrap;cursor:pointer}
.ord-no:hover{color:var(--orange-d);text-decoration:underline dotted}
/* 自有资源审核：会员没填的字段提示（平台可帮忙补充） */
.miss-tip{font-size:11px;color:#C77400;margin-top:4px;line-height:1.6}
/* 「纯展示」字段值（上游同步媒体的编辑表单：这些字段每天被同步覆盖，只看不改） */
.ro-val{padding:9px 12px;font-size:13.5px;line-height:1.6;color:var(--ink2);min-height:40px;
  background:#F7F5F2;border:1px dashed var(--line);border-radius:8px;word-break:break-word}
/* 备注列：固定 2 行高度（内容少的也占满 2 行，保证各行行高统一）；
   展示不下时截断，并在右下角常显「展开 ▾」提示（否则用户不知道可以点开看全文）；
   整格可点，点击弹出全文弹窗 */
.rmk-wrap{position:relative}
.rmk-2l{font-size:12px;color:var(--grey);line-height:1.5;height:36px;overflow:hidden;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;word-break:break-all}
.rmk-wrap.is-more{cursor:pointer}
.rmk-wrap.is-more:hover .rmk-2l{color:var(--orange-d)}
.rmk-tip{display:none;position:absolute;right:0;bottom:0;padding:0 2px 0 16px;
  font-size:11px;line-height:1.6;font-weight:600;color:var(--orange-d);white-space:nowrap;
  background:linear-gradient(90deg,rgba(255,255,255,0) 0%,#fff 42%)}
.rmk-wrap.is-more .rmk-tip{display:block}
.rmk-wrap.is-more:hover .rmk-tip{text-decoration:underline}
/* 备注全文弹窗：长文本可滚动，保留换行 */
.rmk-full{font-size:13.5px;line-height:1.85;color:var(--ink2);white-space:pre-wrap;
  word-break:break-word;max-height:54vh;overflow:auto}
/* 稿件列表：标题下的单行摘要标签（售后 / 改稿 / 催稿），详细内容点「详情」查看弹窗 */
.mini-tags{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin-top:5px}
.mini-tag{display:inline-block;padding:1px 7px;border-radius:5px;font-size:11px;line-height:1.7;font-weight:600;white-space:nowrap;background:#F0EDEA;color:var(--grey);cursor:default}
.mini-tag.warn{background:#FDF0E3;color:#C77400}
.mini-tag.ok{background:#E6F5EE;color:var(--green)}
.mini-tag.no{background:#FBEAE7;color:var(--red)}
.mini-tag.gray{background:#F0EDEA;color:var(--grey)}
.mini-more{font-size:11px;color:var(--blue);background:#fff;border:1px solid var(--line);border-radius:5px;padding:0 7px;line-height:1.7;font-weight:600}
.mini-more:hover{border-color:var(--blue);background:#F6F9FF}
/* 邀请链接 / 邀请码：无框直接展示，复制按钮紧跟内容后面 */
.inv-line{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:2px 0}
.inv-val{font-size:13px;color:var(--ink);word-break:break-all;user-select:all}
.inv-val.code{font-weight:800;letter-spacing:2px;color:var(--orange-d);font-size:16px}
/* 财务流水：账户标识（收益钱包 / 发稿余额） */
.ac-tag{display:inline-block;margin-top:4px;padding:1px 7px;border-radius:5px;font-size:11px;font-weight:600;line-height:1.7;cursor:default}
.ac-income{background:#E6F5EE;color:var(--green)}
.ac-balance{background:#EDF2FB;color:var(--blue)}
.mini-more:hover{text-decoration:underline}
.st-pending{background:#FFF3E3;color:#C77400}
.st-processing{background:#EDF2FB;color:var(--blue)}
.st-published{background:#E6F5EE;color:var(--green)}
.st-refund_requested{background:#FDECEA;color:var(--red)}
.st-refund_refused{background:#F0EDEA;color:var(--grey)}
/* 改稿处理状态：橙=编辑待处理 / 绿=编辑已处理 / 红=编辑拒绝处理 */
.st-revise-pending{background:#FDF0E3;color:var(--orange-d)}
.st-revise-done{background:#E6F5EE;color:var(--green)}
.st-revise-refused{background:#FDECEA;color:var(--red)}
.st-withdrawn{background:#F0EDEA;color:var(--grey)}
.st-refunded{background:#E6F5EE;color:var(--green)}
.st-open{background:#FFF3E3;color:#C77400}
.st-closed{background:#F0EDEA;color:var(--grey)}
.st-done{background:#E6F5EE;color:var(--green)}
.st-rejected{background:#FBEAE7;color:var(--red)}
.st-approved{background:#E6F5EE;color:var(--green)}
/* 定时提交：到点前媒体与平台都看不到该稿件（蓝字提示，与订单状态并列展示） */
.st-sched{color:var(--blue)}
/* 定时提交（发稿页）/ 定时发布（后台资讯表单）：勾选 + 时间选择 */
.sched-box{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:14px;padding:10px 14px;background:#F7F8FA;border-radius:10px}
.sched-ck{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--ink2);cursor:pointer;user-select:none;flex:0 0 auto}
.sched-ck input[type=checkbox]{width:16px;height:16px;accent-color:var(--orange);cursor:pointer;margin:0;flex:0 0 16px}
.sched-box input[type=datetime-local]{padding:7px 10px;border:1px solid var(--line);border-radius:8px;font-size:13px;color:var(--ink2);background:#fff;flex:0 0 auto}
.sched-box input[type=datetime-local]:disabled{background:#F1F2F4;color:#A8ADB5;cursor:not-allowed}
.sched-box .hint{font-size:12px;line-height:1.7}
.empty-tip{text-align:center;padding:60px 0;color:var(--grey)}

/* ===== 会员收藏 / 拉黑（最左小红心列 + 备注后的拉黑按钮 + 搜索行收藏/拉黑开关） ===== */
.ck-cell{white-space:nowrap}
.ck-cell .media-ck{vertical-align:middle}
/* 收藏列（整表最左）：表头一个灰色小心形，行内一颗可点的心 */
.heart-th{width:36px;text-align:center}
.heart-th svg{fill:none;stroke:#C9BDB3;stroke-width:1.7;stroke-linejoin:round;vertical-align:middle}
.heart-cell{text-align:center}
/* 小红心：不点亮 = 灰色描边空心；点亮 = 红色实心；悬停变红提示可点 */
.btn-heart{display:inline-block;vertical-align:middle;padding:3px;border:0;background:none;line-height:0;cursor:pointer;transition:.18s}
.btn-heart svg{fill:none;stroke:var(--grey);stroke-width:1.7;stroke-linejoin:round;transition:.18s}
.btn-heart:hover svg{stroke:var(--red);transform:scale(1.12)}
.btn-heart.on svg{fill:var(--red);stroke:var(--red)}
.btn-heart:disabled{opacity:.45;cursor:default}
/* 拉黑按钮（备注列后）：「我拉黑的媒体」视图里显示「取消拉黑」 */
.blk-cell{white-space:nowrap}
.btn-blk{padding:3px 10px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--grey);font-size:12px;line-height:18px;transition:.18s}
.btn-blk:hover{border-color:var(--red);color:var(--red)}
.btn-blk.on{border-color:var(--red);background:rgba(224,62,45,.07);color:var(--red)}
.btn-blk:disabled{opacity:.45;cursor:default}
.cart-bar{position:fixed;bottom:26px;left:50%;transform:translateX(-50%);background:var(--ink);color:#fff;border-radius:14px;padding:12px 20px;display:none;align-items:center;gap:18px;box-shadow:var(--shadow-lg);z-index:80;min-width:480px}
.cart-bar.show{display:flex}
.cart-bar .sum{font-size:15px}
.cart-bar .sum b{color:#FFB48A;font-size:20px}
.link{color:var(--blue)}
.link:hover{text-decoration:underline}
/* 媒体案例小标签（列表里点「案例」看示例稿） */
.case-link{display:inline-block;margin-left:6px;padding:1px 7px;border-radius:6px;font-size:11px;font-weight:600;
  color:var(--orange-d);background:var(--peach);border:1px solid #F6D9C6;text-decoration:none;white-space:nowrap;vertical-align:middle}
.case-link:hover{background:#F9DCC9;color:var(--orange-d)}
/* 稿件管理：媒体名可点开案例 / 标题可点进文章页 */
.cell-link{color:var(--blue);text-decoration:none}
.cell-link:hover{text-decoration:underline}
.case-hint{font-size:11px;color:#9AA0A6;margin-left:6px;white-space:nowrap}
/* 联系客服弹窗（改稿未被处理时引导沟通） */
.kf-box{margin-top:6px;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.kf-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;font-size:14px}
.kf-row+.kf-row{border-top:1px dashed var(--line)}
.kf-row span{color:#7B6E66;flex:1;min-width:0}
.kf-row b{color:var(--ink);font-size:16px;letter-spacing:.5px}
.kf-row .btn{flex:none}

/* ---------- 只读信息行：展示内容 + 复制按钮同一行（全局统一，不用输入框） ---------- */
.copy-row{display:flex;align-items:center;gap:10px;border:1px solid var(--line);background:#FCFBF9;border-radius:10px;padding:9px 10px 9px 14px}
.copy-text{flex:1;min-width:0;font-size:13px;color:var(--ink);word-break:break-all;user-select:all}
.copy-text.code{font-weight:800;letter-spacing:1.5px;color:var(--orange-d);font-size:15px}
.copy-row .btn{flex:none}

/* ===== 登录页 ===== */
/* ---------- 2026-10-11 登录 / 注册：左右分栏紧凑版（表单不再一长条） ---------- */
.auth-page{width:100%;max-width:960px;margin:38px auto;padding:0 22px}
.auth-card{display:grid;grid-template-columns:330px 1fr;background:var(--card);border-radius:20px;box-shadow:var(--shadow-lg);overflow:hidden}
.auth-brand{position:relative;overflow:hidden;background:var(--grad);color:#fff;padding:36px 32px;display:flex;flex-direction:column}
.auth-brand::before,.auth-brand::after{content:"";position:absolute;border-radius:50%;background:rgba(255,255,255,.10);pointer-events:none}
.auth-brand::before{width:150px;height:150px;right:-40px;top:-56px}
.auth-brand::after{width:250px;height:250px;right:-90px;bottom:-120px}
.ab-logo{width:60px;height:60px;border-radius:50%;background:#fff;padding:4px;margin-bottom:16px;position:relative;z-index:1;box-shadow:0 6px 18px rgba(0,0,0,.14)}
.ab-name{font-size:22px;font-weight:800;letter-spacing:2px;position:relative;z-index:1}
.ab-slogan{font-size:14px;margin-top:7px;opacity:.94;letter-spacing:.5px;position:relative;z-index:1}
.ab-points{list-style:none;margin:26px 0 0;padding:0;position:relative;z-index:1}
.ab-points li{font-size:13px;padding:6px 0 6px 20px;position:relative;opacity:.95}
.ab-points li::before{content:"";position:absolute;left:0;top:14px;width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.85)}
.ab-foot{margin-top:auto;padding-top:22px;font-size:11.5px;opacity:.78;letter-spacing:.6px;position:relative;z-index:1}
.auth-form{padding:30px 34px 24px}
/* 会员登录 / 注册（单栏居中版，去掉橙色品牌侧栏） */
.auth-page.auth-simple{max-width:460px;margin:60px auto 70px}
.auth-card.single{grid-template-columns:1fr;border-radius:18px;box-shadow:0 18px 50px rgba(58,32,14,.10)}
.auth-simple .auth-form{padding:38px 38px 30px}
.auth-top{text-align:center;margin-bottom:26px}
/* 登录 / 注册卡片顶部：欢迎语 + 切换链接（登录↔注册） */
.auth-simple .auth-top{padding-bottom:20px;margin-bottom:20px;border-bottom:1px solid var(--line)}
.auth-top h2{font-size:21px;font-weight:800;letter-spacing:1.5px;color:var(--ink)}
.auth-top .auth-switch{margin-top:9px;font-size:13px}
.auth-logo{height:42px;width:auto;display:inline-block}
.auth-tag{font-size:12.5px;color:var(--grey);letter-spacing:.6px;margin-top:12px}
.auth-simple .sub-tabs{justify-content:center;gap:26px;border-bottom:1px solid var(--line)}
.auth-simple .sub-tabs .st{font-size:14.5px;padding:0 4px 11px}
.auth-form .sub-tabs{margin-bottom:20px}
.auth-form .form-item{margin-bottom:13px}
.auth-form .form-item label{font-size:12.5px;margin-bottom:5px}
.auth-form .form-grid{gap:13px 18px}
.auth-form .form-grid .form-item{margin-bottom:0}
.auth-form input{padding:11px 13px}
/* 密码框「显示 / 隐藏」小眼睛（登录 / 注册 / 找回密码 / 会员中心改密共用） */
.pwd-wrap{position:relative;display:block}
.pwd-wrap > input{padding-right:44px}
.pwd-eye{position:absolute;top:1px;right:1px;bottom:1px;width:38px;display:flex;align-items:center;justify-content:center;border:0;background:none;color:#9A9186;cursor:pointer;padding:0;transition:color .15s}
.pwd-eye:hover{color:var(--orange-d)}
.pwd-eye svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.auth-form .form-err{margin:-2px 0 8px}
/* 注册页用户协议勾选行 */
.agree-row{display:flex;align-items:center;gap:7px;margin:2px 0 12px;font-size:13px;color:var(--ink2)}
.agree-row input[type=checkbox]{width:16px;height:16px;accent-color:var(--orange);cursor:pointer;flex:0 0 16px;margin:0}
.agree-row label{cursor:pointer;user-select:none}
.agree-row a{color:var(--orange-d);font-weight:600;cursor:pointer}
.agree-row a:hover{text-decoration:underline}
/* 登录页「记住密码 / 忘记密码」一行两端对齐（位置在登录按钮正上方） */
.login-ext{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 14px;font-size:13px;color:var(--ink2)}
.login-ext .chk{display:flex;align-items:center;gap:7px;cursor:pointer;user-select:none}
.login-ext .chk input[type=checkbox]{width:16px;height:16px;accent-color:var(--orange);cursor:pointer;flex:0 0 16px;margin:0}
.login-ext a{color:var(--orange-d);font-weight:600;cursor:pointer;white-space:nowrap}
.login-ext a:hover{text-decoration:underline}
/* 找回密码页：两步流程提示条 */
.fp-steps{display:flex;align-items:center;gap:10px;margin:2px 0 18px}
.fp-step{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;color:var(--grey);white-space:nowrap}
.fp-step i{width:19px;height:19px;border-radius:50%;background:#EFEAE5;color:#9C8F87;font-style:normal;
  font-size:11.5px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;flex:0 0 19px}
.fp-step.on{color:var(--orange-d);font-weight:600}
.fp-step.on i{background:var(--orange);color:#fff}
.fp-line{flex:1;height:1px;background:var(--line)}
/* 用户协议弹窗正文：固定高度内滚动 */
.agree-body{max-height:52vh;overflow-y:auto;border:1px solid var(--line);border-radius:12px;padding:16px 18px;background:#FCFBFA;line-height:1.9;font-size:13.5px;color:var(--ink2)}
.agree-body p{margin:0 0 10px}
.agree-body p.t{font-weight:700;color:var(--ink);margin-bottom:4px}
@media(max-width:860px){
  .auth-page{margin:22px auto}
  .auth-card{grid-template-columns:1fr}
  .auth-brand{padding:24px 26px 20px}
  .ab-logo{width:48px;height:48px;margin-bottom:12px}
  .ab-name{font-size:19px}
  .ab-points{display:none}
  .ab-foot{margin-top:0;padding-top:12px}
  .auth-form{padding:24px 22px 20px}
  .auth-form .form-grid{grid-template-columns:1fr}
}
.form-item{margin-bottom:16px}
.form-item label{display:block;font-size:13px;color:var(--ink2);margin-bottom:6px;font-weight:500}
.form-item input{width:100%}
/* 只读数值展示（如钱包转化页的账号余额 / 收益钱包）：无边框无底色，避免看起来像可填的输入框 */
.ro-val{display:block;font-size:17px;font-weight:800;color:var(--ink);letter-spacing:.2px;padding:1px 0 0;font-variant-numeric:tabular-nums}
.ro-val.green{color:var(--green)}
.ro-val.grey{color:var(--grey);font-weight:700;font-size:15px}
/* 账号信息页：资料总览（左侧标签 + 右侧数值，纯展示） */
.ac-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.ac-grid .card{margin:0}
.kv{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:9px 0;border-bottom:1px dashed var(--line);font-size:13.5px}
.kv:last-child{border-bottom:none}
.kv .k{color:var(--grey);flex:0 0 auto}
.kv .v{font-weight:600;text-align:right;word-break:break-all}
.kv .v.money{color:var(--orange-d);font-weight:800;font-variant-numeric:tabular-nums}
.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px;letter-spacing:.3px}
@media(max-width:900px){.ac-grid{grid-template-columns:1fr}}
/* 提现页顶部数值卡（收益钱包 / 账号余额）：只读展示，非输入框 */
.fin-nums{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px}
.fin-num{background:#FBF6F1;border-radius:12px;padding:13px 16px}
.fin-num .lb{font-size:12.5px;color:var(--grey);margin-bottom:5px}
.fin-num .ro-val{font-size:23px;line-height:1.25}
.fin-num .ro-val.grey{font-size:21px}
@media(max-width:640px){.fin-nums{grid-template-columns:1fr}}
.code-row{display:flex;gap:10px}
.code-row input{flex:1}
.code-row .btn{flex-shrink:0}
.auth-switch{text-align:center;margin-top:18px;font-size:13.5px;color:var(--grey)}
/* ---------- 后台登录页 ---------- */
.adm-login-body{background:var(--bg)}
/* ===== 后台登录页（深色大气版，独立于前台橙色风格） ===== */
.adm-page{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:46px 20px;
  background:#141B24;background-image:radial-gradient(900px 480px at 50% -10%,rgba(90,120,165,.32),transparent 62%),
  radial-gradient(700px 420px at 12% 108%,rgba(70,95,135,.22),transparent 60%)}
.adm-card{width:100%;max-width:412px;background:#fff;border-radius:16px;box-shadow:0 30px 90px rgba(0,0,0,.42);padding:38px 36px 30px;text-align:center}
.adm-logo{width:58px;height:58px;border-radius:14px;object-fit:contain;background:#F4F6F9;padding:6px;box-shadow:0 6px 18px rgba(20,27,36,.12)}
.adm-title{font-size:22px;font-weight:800;color:#1B2430;letter-spacing:3px;margin-top:18px}
.adm-sub{font-size:12.5px;color:#828B96;margin-top:8px;letter-spacing:.5px}
.adm-fields{margin-top:26px;text-align:left}
.adm-fields .form-item{margin-bottom:14px}
.adm-fields .form-item label{font-size:12.5px;color:#5A6472;margin-bottom:6px;display:block}
.adm-fields input{width:100%;padding:12px 13px;border:1px solid #DDE2E9;border-radius:10px;font-size:14px;background:#FBFCFD;color:#1B2430;transition:.18s}
.adm-fields input:focus{outline:none;border-color:#3D5673;background:#fff;box-shadow:0 0 0 3px rgba(61,86,115,.12)}
.adm-btn{width:100%;padding:13px;border:none;border-radius:10px;background:#1B2430;color:#fff;font-size:14.5px;font-weight:700;letter-spacing:3px;cursor:pointer;transition:.2s;margin-top:6px}
.adm-btn:hover{background:#2A3746}
.adm-btn:disabled{opacity:.6;cursor:not-allowed}
.adm-page .pw-toggle{color:#5A6472}
.adm-page .pw-toggle:hover{background:#EEF1F5}
.adm-page .form-err{font-size:12.5px;color:#D64541;min-height:18px;margin:2px 0 8px;text-align:left}
.adm-copy{margin-top:26px;font-size:11.5px;color:rgba(255,255,255,.34);letter-spacing:.6px}
.adm-head{margin-bottom:22px}
.adm-title{font-size:21px;font-weight:800;color:var(--ink);letter-spacing:1px}
.adm-sub{font-size:13px;color:var(--grey);margin-top:6px}
.adm-note{margin-top:16px;font-size:12.5px;color:var(--grey);line-height:1.75;background:#FBF6F1;border:1px solid var(--line);border-radius:10px;padding:11px 14px}
.pw-wrap{position:relative}
.pw-wrap input{padding-right:60px;width:100%}
.pw-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);font-size:12.5px;color:var(--orange-d);background:none;border:none;cursor:pointer;padding:4px 8px;border-radius:6px}
.pw-toggle:hover{background:var(--peach)}
.auth-switch a{color:var(--orange-d);font-weight:600;cursor:pointer}
.form-err{color:var(--red);font-size:12.5px;min-height:18px;margin:-6px 0 8px}
.agree{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--grey);margin:6px 0 16px}

/* ===== 控制台（会员中心/后台） ===== */
.console{display:flex;min-height:100vh}
.sidebar{width:216px;background:#221B16;color:#CBBFB6;flex-shrink:0;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow-y:auto}
.sidebar::-webkit-scrollbar{width:8px}
.sidebar::-webkit-scrollbar-thumb{background:rgba(255,255,255,.14);border-radius:4px}
.sidebar::-webkit-scrollbar-track{background:transparent}
.sidebar .brand{color:#fff;padding:20px 20px 16px;font-size:17px}
.sidebar .brand .logo-dot{width:30px;height:30px;font-size:13px;border-radius:9px}
.side-group{padding:10px 14px}
.side-group .gt{font-size:11.5px;color:#87786D;padding:8px 10px 6px;letter-spacing:1px}
.side-group a{display:flex;align-items:center;gap:9px;padding:9px 12px;border-radius:9px;font-size:13.5px;margin-bottom:2px;color:#CBBFB6}
.side-group a:hover{background:rgba(255,255,255,.06);color:#fff}
.side-group a.active{background:var(--grad);color:#fff;font-weight:600;box-shadow:0 4px 12px rgba(242,98,29,.35)}
.side-group a .si{display:inline-flex;flex:0 0 17px;width:17px;height:17px;opacity:.85}
.side-group a .si .bi{width:17px;height:17px;vertical-align:0}
.side-group a.active .si{opacity:1}
.side-group a .bcount{margin-left:auto;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--red);color:#fff;font-size:11px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;line-height:1}
.side-group a.active .bcount{background:#fff;color:var(--orange-d)}
/* 统一线性图标基类（stroke 跟随文字颜色，尺寸随字号） */
.bi{width:1.05em;height:1.05em;vertical-align:-0.16em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
.btn .bi{margin-right:2px}
.console-main{flex:1;background:var(--bg);min-width:0}
.console-topbar{height:58px;background:rgba(255,255,255,.92);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:18px;padding:0 26px;position:sticky;top:0;z-index:50}
.console-topbar .tb-title{font-size:16.5px;font-weight:800;color:var(--ink);letter-spacing:.5px;position:relative;padding-left:13px}
.console-topbar .tb-title::before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:16px;border-radius:2px;background:var(--grad)}
.console-topbar .tb-right{display:flex;align-items:center;gap:14px}
.console-topbar .who{font-size:13px;color:var(--ink2);background:#F8F4F0;border:1px solid var(--line);border-radius:999px;padding:7px 15px;display:inline-flex;align-items:center;gap:4px;white-space:nowrap}
.console-topbar .who b{color:var(--orange-d)}
.console-topbar .topbar-logout{font-size:13px;color:var(--orange-d);background:#FFF6EE;border:1px solid var(--peach-d);border-radius:999px;padding:7px 15px;display:inline-flex;align-items:center;gap:4px;white-space:nowrap;cursor:pointer;text-decoration:none;transition:all .15s}
.console-topbar .topbar-logout:hover{background:var(--peach);border-color:var(--orange);color:#C94500}
/* 顶栏消息铃铛（会员中心） */
.topbar-bell{position:relative;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;
  border-radius:50%;color:var(--ink2);cursor:pointer;transition:all .15s;text-decoration:none}
.topbar-bell:hover,.topbar-bell.active{background:#FFF3EA;color:var(--orange-d)}
.topbar-bell .bell-badge{position:absolute;top:0;right:0;min-width:16px;height:16px;padding:0 4px;
  border-radius:9px;background:var(--red);color:#fff;font-size:10.5px;font-weight:700;line-height:16px;
  text-align:center;border:1.5px solid #fff;box-sizing:border-box;font-variant-numeric:tabular-nums}

/* ---------- 消息通知列表（会员中心） ---------- */
.nt-list{display:grid;gap:12px}
.nt-item{background:#fff;border:1px solid var(--line);border-radius:14px;padding:15px 18px;cursor:pointer;transition:all .15s}
.nt-item:hover{border-color:var(--peach-d);box-shadow:var(--shadow-sm)}
.nt-item.unread{border-color:#F3D6C2;background:#FFFBF7}
.nt-head{display:flex;align-items:center;gap:10px}
.nt-title{font-size:13.5px;color:var(--ink);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nt-item.unread .nt-title{font-weight:700}
.nt-time{font-size:11.5px;color:var(--grey);white-space:nowrap}
.nt-dot{width:8px;height:8px;border-radius:50%;background:var(--red);flex:none}
.nt-body{margin-top:8px;font-size:12.5px;color:var(--ink2);line-height:1.9;word-break:break-all}
.console-body{padding:26px 30px;max-width:1180px}
.card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);padding:24px;margin-bottom:20px}
.card h3{font-size:16px;margin-bottom:16px;display:flex;align-items:center;gap:8px}
.card h3::before{content:"";width:4px;height:16px;border-radius:2px;background:var(--grad)}
.stat-row{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:22px}
.stat-card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);padding:22px 24px;position:relative;overflow:hidden}
.stat-card::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(130px 80px at 100% 0,rgba(242,98,29,.10),rgba(242,98,29,0) 72%)}
.stat-card .lb{font-size:13px;color:var(--grey)}
.stat-card .vl{font-size:28px;font-weight:900;margin-top:6px;color:var(--ink)}
.stat-card .vl.small{font-size:20px;padding-top:5px}
.stat-card .vl .u{font-size:13px;font-weight:400;color:var(--grey)}
.stat-card.hl{background:var(--grad)}
.stat-card.hl .lb,.stat-card.hl .vl{color:#fff}
/* 高亮卡里的小字（如「合计 ¥xxx」）不能再用灰字，橙底上看不见 */
.stat-card.hl .hint{color:rgba(255,255,255,.78)}
.stat-card.hl::after{background:radial-gradient(150px 90px at 100% 0,rgba(255,255,255,.22),rgba(255,255,255,0) 72%)}
/* 工作台看盘表：数字列带比例条便于横向对比，末行合计加底 */
.cell-bar{min-width:132px;white-space:nowrap}
.cell-bar b{font-weight:700;color:var(--ink)}
.bar-track{display:inline-block;width:70px;height:8px;border-radius:4px;background:#F2E9E2;overflow:hidden;vertical-align:middle;margin-right:9px}
.bar-fill{display:block;height:100%;min-width:3px;border-radius:4px;background:var(--grad)}
table.grid tr.row-total>td{background:#FBF6F1;font-weight:700;color:var(--ink)}
/* ---------- 会员中心 · 工作台身份分区（发稿方 / 收稿方） ----------
   两种身份各占一张卡：自己的概览数字 + 自己的快捷入口，一眼看清「我以什么身份在操作」 */
.id-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:20px}
@media(max-width:1080px){.id-grid{grid-template-columns:1fr}}
.id-card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px 22px 18px;border-top:3px solid var(--orange)}
.id-card.media{border-top-color:var(--green)}
.id-head{display:flex;align-items:center;gap:10px;margin-bottom:8px;flex-wrap:wrap}
.id-head h3{font-size:16.5px;font-weight:800;color:var(--ink);margin:0}
.id-card .id-head h3::before{content:none}
.id-badge{font-size:11.5px;font-weight:800;letter-spacing:.5px;color:#fff;background:var(--grad);border-radius:999px;padding:3px 11px 4px;flex:0 0 auto}
.id-card.media .id-badge{background:linear-gradient(135deg,#2FBE83,#1FA36B)}
.id-sub{font-size:12.5px;color:var(--grey);line-height:1.8;margin:0 0 14px}
.id-nums{display:grid;grid-template-columns:repeat(auto-fit,minmax(104px,1fr));gap:10px;margin-bottom:16px}
.id-num{background:#FBF6F1;border-radius:12px;padding:11px 13px}
.id-num .lb{font-size:12px;color:var(--grey);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.id-num .vl{font-size:21px;font-weight:900;color:var(--ink);margin-top:4px;line-height:1.25;font-variant-numeric:tabular-nums}
.id-num .vl.small{font-size:16px;padding-top:4px}
.id-num .vl.danger{color:var(--red)}
.id-num .vl .u{font-size:12.5px;font-weight:400;color:var(--grey)}
/* 工作台上的会员等级徽章：跟随等级颜色（等级是发稿方身份，只在发稿方卡片里出现） */
.id-num .lv-tag{font-size:13px;padding:4px 11px;margin-top:2px}
.id-acts{display:flex;gap:10px;flex-wrap:wrap}
.id-empty{background:#F8FBF9;border:1px dashed #CFE5DA;border-radius:12px;padding:14px 16px}
.id-empty p{font-size:13px;color:var(--ink2);line-height:1.9;margin:0 0 12px}
/* 页面标题后的身份标签：明确当前页属于哪一侧（发稿方 = 客户视角 / 收稿方 = 媒体视角） */
.view-head h2 .vh-tag{margin-left:9px;font-size:11.5px;font-weight:800;letter-spacing:.5px;border-radius:999px;padding:3px 10px 4px;vertical-align:middle;white-space:nowrap}
.view-head h2 .vh-tag.pub{color:var(--orange-d);background:#FFF1E8}
.view-head h2 .vh-tag.rcv{color:#1B8B5B;background:#E9F7F0}
/* 侧栏分组标题的身份副标 + 一句说明 */
.side-group .gt{display:flex;align-items:center;gap:6px}
.side-group .gt-tag{font-size:10px;font-weight:700;letter-spacing:0;color:#FFB48A;background:rgba(242,98,29,.16);border-radius:5px;padding:1px 6px}
.side-group .gs{font-size:10.5px;color:#7C6C61;padding:0 10px 7px;margin-top:-3px;line-height:1.55}
/* 侧栏接稿引导：未入驻 / 无收益的纯客户只看到这一个低调入口（v1.0.91 身份渐进解锁） */
.side-guide{display:block;margin:12px 14px 6px;padding:11px 13px;border:1px dashed rgba(255,255,255,.18);border-radius:11px;color:#CBBFB6;transition:background .16s,border-color .16s}
.side-guide:hover{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.32)}
.side-guide b{display:block;font-size:12.5px;font-weight:700;color:#E9A97A;margin-bottom:3px;line-height:1.5}
.side-guide span{display:block;font-size:10.5px;color:#8E7C70;line-height:1.65}
.side-guide.active{background:rgba(242,98,29,.16);border-color:rgba(242,98,29,.55);border-style:solid}
/* 工作台收稿方卡：未入驻时标注「可选」，避免让纯发稿客户觉得功能多 */
.id-opt{font-size:11px;color:#87786D;border:1px solid #E5DCD4;border-radius:999px;padding:2px 9px 3px;flex:0 0 auto}
.id-card.slim .id-empty p{margin-bottom:12px}
.view-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}
.view-head h2{font-size:21px;font-weight:800;white-space:nowrap}
/* 标题说明跟在标题后占满剩余空间，避免说明太长把标题挤到换行 */
.view-head > .hint{flex:1;min-width:0;padding-left:16px}
.view-head .ops{display:flex;gap:10px}
.sub-tabs{display:flex;gap:2px;border-bottom:2px solid var(--line);margin-bottom:18px}
.sub-tabs .st{padding:10px 14px;font-size:13.5px;font-weight:600;color:var(--grey);border:none;background:none;position:relative;white-space:nowrap;flex:0 0 auto}
.sub-tabs .st.active{color:var(--orange-d)}
.sub-tabs .st.active::after{content:"";position:absolute;left:14px;right:14px;bottom:-2px;height:3px;border-radius:2px;background:var(--grad)}
/* 页签里的数量（我的媒体按分类查看：全部 5 / 新闻媒体 3） */
.sub-tabs .st .st-num{margin-left:5px;font-size:11.5px;font-weight:600;color:#B3A79E;font-variant-numeric:tabular-nums}
.sub-tabs .st.active .st-num{color:var(--orange-d);opacity:.7}
.search-row input,.search-row select{width:auto}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 22px}
.form-grid.one{grid-template-columns:1fr;gap:14px}
.form-grid .full{grid-column:1/-1}
/* 只读展示项（后台会员详情等「纯展示」字段）：去掉边框与底色、按普通文字排版，
   一眼区别于旁边可编辑的输入框（父级 label 已说明这行是什么，值不再需要框起来） */
.ro,.ro:disabled,.ro[disabled]{background:transparent!important;border-color:transparent!important;color:var(--ink);font-weight:600;padding:10px 0;cursor:default;opacity:1;
  -webkit-text-fill-color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ro:focus{box-shadow:none!important}
/* ===== 媒体表单（后台新增/编辑媒体、会员端增加资源共用）：分区标题 + 紧凑栅格 =====
   同一套字段在窄弹窗里一长条排下来很显冗长，这里用小标题把「基本信息 / 价格与规格 / 其他」
   分开，并把标签与字段的间距收紧，视觉上短一截。 */
.mform .msec{display:flex;align-items:center;gap:10px;margin:20px 0 12px;font-size:12.5px;font-weight:700;color:var(--orange-d);letter-spacing:.4px}
.mform .msec::after{content:"";flex:1;height:1px;background:var(--line)}
.mform .msec:first-child{margin-top:0}
.mform .form-grid{gap:12px 18px}
.mform .form-item{margin-bottom:0}
.mform .form-item label{font-size:12.5px;margin-bottom:5px;color:var(--ink2)}
.mform .form-item .hint{font-weight:400}
.mform .form-grid+.form-grid{margin-top:12px}
.hint{font-size:12px;color:var(--grey)}
.hint.red{color:var(--red)}
/* 规则说明（邀请推广等） */
.rule-list{margin:0;padding-left:20px;color:var(--ink2);font-size:13.5px;line-height:1.9}
.rule-list li{margin-bottom:6px}
.rule-list li b{color:var(--orange-d)}
.tip-banner{background:linear-gradient(135deg,#FFF6EE,#FDEBDD);border:1px solid var(--peach-d);border-radius:12px;padding:13px 18px;font-size:13px;color:var(--orange-d);margin-bottom:20px}
.modal-mask{position:fixed;inset:0;background:rgba(25,15,8,.45);backdrop-filter:blur(3px);z-index:200;display:none;align-items:center;justify-content:center}
.modal-mask.show{display:flex}
.modal{background:#fff;border-radius:18px;padding:30px;width:460px;max-width:92vw;max-height:86vh;overflow-y:auto;box-shadow:var(--shadow-lg)}
.modal h3{font-size:17px;margin-bottom:18px}
.modal.modal-wide{width:920px;max-width:96vw}
/* 资讯分类管理弹窗 */
.ac-row{border:1px solid var(--line);border-radius:12px;padding:12px 14px;margin-bottom:10px;background:#FFFDFB}
.ac-h{display:flex;align-items:center;justify-content:space-between;gap:10px}
.ac-h b{font-size:14px;color:var(--ink)}
.ac-ops{white-space:nowrap}
.ac-subs{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.ac-sub{display:inline-flex;align-items:center;gap:6px;background:var(--peach);color:var(--orange-d);border-radius:7px;padding:3px 6px 3px 10px;font-size:12.5px;font-weight:600}
.ac-sub button{border:none;background:rgba(255,255,255,.75);color:var(--orange-d);width:17px;height:17px;line-height:15px;border-radius:50%;font-size:12px;cursor:pointer;padding:0}
.ac-sub button:hover{background:var(--red);color:#fff}
.ac-add{display:flex;gap:8px;align-items:center;margin-top:14px}
/* ===== 发稿向导（步骤条 / 稿件条 / 底部操作栏 / 确认弹窗） ===== */
.pub-steps{display:flex;align-items:center;gap:14px;margin-bottom:18px;flex-wrap:wrap}
.pub-steps em{flex:0 0 52px;height:2px;border-radius:2px;background:var(--line)}
.pub-steps em.done{background:var(--orange)}
.pstep{display:flex;align-items:center;gap:9px;font-size:14px;font-weight:600;color:var(--grey)}
.pstep i{width:26px;height:26px;border-radius:50%;background:#F1EAE4;color:var(--grey);font-style:normal;font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center}
.pstep.on{color:var(--ink)}
.pstep.on i{background:var(--grad);color:#fff;box-shadow:0 4px 12px rgba(242,98,29,.35)}
.pstep.done{color:var(--orange-d)}
.pstep.done i{background:var(--peach);color:var(--orange-d)}
.pub-doc{background:#FFFBF6;border:1px solid var(--peach-d);border-radius:12px;padding:12px 16px;margin-bottom:18px;font-size:14px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.pub-doc .lb{font-size:12px;color:var(--orange-d);background:var(--peach);border-radius:6px;padding:2px 8px;font-weight:600}
.cart-bar .btn-bar{background:rgba(255,255,255,.14);color:#fff}
.cart-bar .btn-bar:hover{background:rgba(255,255,255,.24)}
.modal-foot{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}
.cf-doc{background:#FFFBF6;border:1px solid var(--peach-d);border-radius:12px;padding:12px 14px;margin-bottom:14px}
.cf-doc .lb{display:block;font-size:12px;color:var(--grey);margin-bottom:4px}
.cf-list{margin-bottom:14px}
.cf-h{font-size:12.5px;color:var(--grey);margin-bottom:8px}
.cf-list ul{max-height:168px;overflow:auto;border:1px solid var(--line);border-radius:10px;padding:6px 14px;background:#FDFBF9}
.cf-list li{display:flex;justify-content:space-between;gap:12px;padding:6px 0;border-bottom:1px dashed var(--line);font-size:13px}
.cf-list li:last-child{border-bottom:none}
.cf-list li.more{color:var(--grey);justify-content:center}
.cf-rows{border-top:1px solid var(--line);padding-top:12px}
.cf-r{display:flex;justify-content:space-between;align-items:center;padding:5px 0;font-size:14px}
.cf-r span{color:var(--ink2)}
.cf-r b.cf-red{color:var(--red)}
.cf-warn{background:#FEF0EE;border:1px solid #F6C9C3;color:var(--red);border-radius:10px;padding:10px 14px;font-size:13px;margin-top:12px}
/* ===== 稿件导入（Word / 图片自动上传） ===== */
.imp-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.imp-row .hint{margin:0}
.hint.ok{color:var(--green)}
.hint.err{color:var(--red)}
.imp-drop{border:1.5px dashed #E3D6C9;border-radius:12px;padding:24px 18px;text-align:center;color:var(--grey);font-size:13px;background:#FFFCFA;transition:.2s;cursor:pointer;user-select:none}
.imp-drop:hover,.imp-drop.over{border-color:var(--orange);color:var(--orange-d);background:var(--peach)}
.imp-drop b{color:var(--orange-d);font-weight:600}
/* ===== 富文本正文编辑器（发稿稿件 / 后台资讯共用） ===== */
.rte{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff}
.rte-bar{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:8px 10px;background:#FBF7F3;border-bottom:1px solid var(--line)}
.rte-b{border:1px solid transparent;background:#fff;border-radius:8px;padding:5px 10px;font-size:12.5px;color:var(--ink2);cursor:pointer;line-height:1.7;transition:.2s}
.rte-b:hover{border-color:var(--orange);color:var(--orange-d)}
.rte-b:disabled{opacity:.45;cursor:not-allowed}
.rte-b b{font-weight:800}
.rte-b i{font-style:italic}
.rte-sep{width:1px;height:16px;background:var(--line);margin:0 4px}
.rte-tip{margin-left:auto;font-size:12px;color:var(--grey);text-align:right;max-width:100%}
.rte-body{min-height:260px;max-height:520px;overflow:auto;padding:16px 18px;font-size:14px;line-height:2;color:var(--ink2);outline:none;transition:.2s}
.rte-body.over{background:var(--peach)}
.rte-body:empty::before{content:attr(data-ph);color:#B9AEA4}
.rte-body img{max-width:100%;height:auto;border-radius:8px;margin:6px 0;display:block}
.rte-body p{margin:0 0 10px}
.rte-body h3{font-size:15.5px;font-weight:700;color:var(--ink);margin:14px 0 8px}
.rte-body ul,.rte-body ol{padding-left:22px;margin:0 0 10px}
.rte-body li{margin-bottom:4px}
.rte-body blockquote{border-left:3px solid var(--orange);background:#FFFBF5;padding:8px 14px;border-radius:0 8px 8px 0;margin:0 0 10px}
.rte .imp-drop{margin:12px;border-radius:10px;padding:16px 14px;font-size:12.5px}
.rte-preview{max-height:60vh;overflow:auto;font-size:14px;line-height:2;color:var(--ink2);border:1px solid var(--line);border-radius:12px;padding:16px 18px;background:#fff}
.rte-preview img{max-width:100%;height:auto;border-radius:8px;margin:6px 0}
.rte-preview h3{font-size:15.5px;color:var(--ink);margin:12px 0 8px}
.rte-preview blockquote{border-left:3px solid var(--orange);background:#FFFBF5;padding:8px 14px;border-radius:0 8px 8px 0;margin:0 0 10px}
/* ---- 富文本编辑器扩展（v1.0.19：完整工具条 / 状态栏 / 源码模式 / 颜色弹出 / 视频） ---- */
.rte-b svg{display:block}
.rte-b u{text-decoration-thickness:1.5px;text-underline-offset:2px}
.rte-sel{border:1px solid var(--line);background:#fff;border-radius:8px;padding:5px 6px;font-size:12.5px;color:var(--ink2);cursor:pointer;max-width:110px;outline:none;transition:.2s}
.rte-sel:hover{border-color:var(--orange)}
.rte-popwrap{position:relative;display:inline-flex}
.rte-cbtn{display:inline-flex;flex-direction:column;align-items:center;gap:2px;font-weight:800;line-height:1;padding:4px 9px}
.rte-cbar{width:16px;height:4px;border-radius:2px;display:block}
.rte-pop{position:absolute;top:calc(100% + 6px);left:0;z-index:60;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow-lg);padding:10px;display:flex;flex-direction:column;gap:8px}
.rte-pop[hidden]{display:none}
.rte-pop-grid{display:grid;grid-template-columns:repeat(6,20px);gap:6px}
.rte-sw{width:20px;height:20px;border-radius:6px;border:1px solid rgba(0,0,0,.14);cursor:pointer;padding:0}
.rte-sw:hover{transform:scale(1.12)}
.rte-pop-more{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;color:var(--grey)}
.rte-pop-more input{width:34px;height:24px;border:1px solid var(--line);border-radius:6px;padding:0;background:#fff;cursor:pointer}
.rte-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:5px 12px;background:#FBF7F3;border-top:1px solid var(--line);font-size:11.5px;color:#A39689;flex-wrap:wrap}
.rte-path{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:55%}
.rte-path u{text-decoration:none;color:var(--orange-d);cursor:default}
.rte-count{white-space:nowrap}
.rte-count.over{color:#B3261E;font-weight:600}
.rte-src{display:block;width:100%;min-height:300px;max-height:520px;overflow:auto;border:0;outline:none;padding:16px 18px;font-family:Consolas,Menlo,monospace;font-size:12.5px;line-height:1.9;color:var(--ink2);background:#fff;resize:vertical}
.rte-src[hidden]{display:none}
.rte.srcmode .rte-b:not(.rte-src-b){opacity:.4;pointer-events:none}
.rte.srcmode .rte-src-b{border-color:var(--orange);color:var(--orange-d);background:var(--peach)}
.rte-body video,.rte-preview video,.art-body video,.dv-card video{max-width:100%;border-radius:8px;margin:6px 0;display:block}
.rte-body span,.rte-preview span{font-size:inherit}
.toast{position:fixed;top:90px;left:50%;transform:translateX(-50%) translateY(-16px);background:var(--ink);color:#fff;padding:11px 24px;border-radius:11px;font-size:13.5px;z-index:300;opacity:0;transition:.3s;pointer-events:none;box-shadow:var(--shadow-lg);max-width:80vw}
.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
.toast.err{background:#B3261E}
.toast.ok{background:#1F7A50}
.pager{display:flex;gap:8px;justify-content:center;margin-top:34px;flex-wrap:wrap;align-items:center}
/* ===== 页脚（深墨四列 · 圆形 LOGO，与页眉字标不重复） ===== */
.footer{background:#191410;color:#A39689;margin-top:auto;border-top:3px solid transparent;position:relative}
.footer::before{content:"";position:absolute;top:-3px;left:0;right:0;height:3px;background:var(--grad)}
.footer .inner{max-width:1200px;margin:0 auto;padding:52px 24px 44px;display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:36px}
.footer b{color:#F5EFE9;font-size:14.5px;font-weight:700;letter-spacing:1px}
.footer .f-brand .f-logo-row{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.footer .f-logo{width:46px;height:46px;border-radius:50%;display:block;box-shadow:0 6px 18px rgba(242,98,29,.3)}
.footer .f-name{display:block;font-size:21px;font-weight:800;color:#fff;letter-spacing:2px;line-height:1.2}
.footer .f-en{display:block;font-size:9.5px;font-weight:600;color:#8D7B6C;letter-spacing:3.5px;margin-top:3px}
.footer .f-slogan{font-size:13.5px;color:#E8DED4;font-weight:600;letter-spacing:1px;margin:2px 0 8px}
.footer .f-cats,.footer p{font-size:12.5px;margin-top:7px;line-height:1.9}
.footer .f-col a{display:block;font-size:13px;color:#A39689;margin-top:9px;transition:color .2s}
.footer .f-col a:hover{color:var(--orange-l)}
.footer .foot-bar{border-top:1px solid rgba(255,255,255,.07)}
.footer .foot-bar .inner{display:block;padding:18px 24px;text-align:center;font-size:12px;color:#7C6F63;letter-spacing:1px}
.qr-box{background:var(--peach);border:2px dashed var(--orange);border-radius:14px;padding:26px;text-align:center;margin:14px 0}
.qr-box .big{font-size:40px}
input[type=checkbox]{width:auto;accent-color:var(--orange)}
.status-pipeline{display:flex;gap:0;margin-bottom:22px;background:var(--card);border-radius:var(--radius);padding:18px 10px;box-shadow:var(--shadow)}
.status-pipeline .sp{flex:1;text-align:center;position:relative}
.status-pipeline .sp::before{content:"";position:absolute;top:15px;left:0;right:0;height:2px;background:var(--line)}
.status-pipeline .sp:first-child::before{left:50%}
.status-pipeline .sp:last-child::before{right:50%}
.status-pipeline .sp i{position:relative;z-index:1;display:inline-flex;width:32px;height:32px;border-radius:50%;background:#fff;border:2px solid var(--line);align-items:center;justify-content:center;font-style:normal;font-size:13px;font-weight:700;color:var(--grey)}
.status-pipeline .sp.done i{background:var(--grad);border-color:transparent;color:#fff}
.status-pipeline .sp span{display:block;font-size:12px;color:var(--grey);margin-top:6px}
.copy-bar{cursor:pointer;color:var(--blue)}
@media(max-width:900px){.cat-grid,.art-grid,.flow,.stat-row{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr}.cart-bar{min-width:0;width:94vw}.hero h1{font-size:34px}.footer .inner{grid-template-columns:1fr 1fr;gap:26px}}
@media(max-width:640px){.footer .inner{grid-template-columns:1fr}.site-header{min-height:65px}.site-header .inner{gap:16px;height:64px}.brand-lockup{height:30px;width:102px}.nav{overflow-x:auto;scrollbar-width:none}.nav::-webkit-scrollbar{display:none}.nav a{padding:0 10px;font-size:14px;white-space:nowrap}.nav a::after{left:10px;right:10px;bottom:16px}}


/* ---------- 品牌标识（页眉字标组合 / 侧栏方形图标） ---------- */
/* 页眉字标：固定宽高（462×136，比例 3.397），加载前后占位不变，防止头部重建时 LOGO 闪动/消失 */
.brand-lockup{height:38px;width:129px;display:block;position:relative;z-index:1}
.brand-mark{width:32px;height:32px;flex:0 0 32px;border-radius:9px;background:#fff;padding:2px;display:block}
.sidebar .brand{gap:9px;white-space:nowrap;align-items:center}
/* 侧栏顶部徽标：「媒关系」+小标签，替代易折行的长文字 */
.bc-badge{font-size:11px;line-height:1;color:#D8CCC2;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.15);border-radius:6px;padding:4px 8px;margin-left:2px;font-weight:500;letter-spacing:1px}
.tbl-wrap{overflow-x:auto}

/* ---------- 2026-10-11：资讯封面卡 / 翻页 / 搜索行 / 关于我们 ---------- */
.art-card .cover{height:150px;border-radius:10px;background:#F1EAE4 center/cover no-repeat;margin-bottom:14px}
.art-list{grid-template-columns:repeat(4,1fr)}
.pager{display:flex;gap:8px;justify-content:center;margin-top:34px;flex-wrap:wrap}
.pager .pg{min-width:36px;height:36px;line-height:34px;padding:0 12px;border:1px solid #EADFD6;border-radius:9px;background:#fff;color:var(--ink2);font-size:13.5px;text-decoration:none;text-align:center;transition:.2s}
.pager .pg:hover{border-color:var(--orange);color:var(--orange-d)}
.pager .pg.on{background:var(--orange);border-color:var(--orange);color:#fff;font-weight:700}
.pager .pg{cursor:pointer}
.pager .pg.on{cursor:default}
.pager .pg.pg-off{color:#C7BCB3;background:#F7F3EF;border-color:#EFE7DF;cursor:not-allowed}
.pager .pg.pg-off:hover{border-color:#EFE7DF;color:#C7BCB3}
/* 表格下方翻页条（前台资源表 / 会员中心 / 后台列表统一，间距小一点） */
.pager.tbl-pager{margin-top:18px}
.pager .pg-info{margin-left:10px;font-size:13px;color:var(--grey);line-height:36px}
.pager .pg-dots{line-height:36px;color:var(--grey)}
/* 搜索行（媒体列表 · 紧跟筛选面板「我的收藏 / 我拉黑的媒体」一行之后）：
   做成醒目的操作条——浅橙底 + 描边卡片，数量统计加粗橙色突出 */
.search-row{display:flex;align-items:center;gap:14px;margin-bottom:20px;flex-wrap:wrap;padding:13px 16px;background:#FFF6EF;border:1.5px solid #F6DCC8;border-radius:14px}
#f-count{font-size:13.5px;font-weight:700;color:var(--orange-d);white-space:nowrap}
.search-box{display:flex;align-items:center;gap:2px;background:#fff;border:1.5px solid #EADFD6;border-radius:11px;padding:4px 6px 4px 14px;flex:0 1 420px;transition:.2s}
.search-box:focus-within{border-color:var(--orange);box-shadow:0 0 0 3px rgba(242,98,29,.1)}
.search-box .s-ic{color:#B9A99D;flex:0 0 auto}
.search-box input{flex:1;min-width:120px;border:0;outline:0;background:transparent;font-size:14px;padding:8px 8px;color:var(--ink)}
.search-box input::placeholder{color:#B9A99D}
/* 特殊类目行里「我的收藏 / 我拉黑的媒体」芯片的数量徽章（会员中心专属项，v1.0.156 起） */
.chip .fv-cnt{display:inline-block;min-width:18px;height:18px;padding:0 5px;margin-left:6px;border-radius:999px;background:#F3EDE7;color:#9A8C80;font-size:11px;line-height:18px;text-align:center;font-weight:600;font-style:normal;vertical-align:1px}
.chip.on .fv-cnt{background:var(--orange);color:#fff}
/* 栏目头图：深棕底 + 光传播主题背景图（AI 生成，无版权问题），上下压暗保证白字可读 */
.about-banner{position:relative;overflow:hidden;padding:104px 24px;text-align:center;color:#fff;
  background:#1C1611 url(brand/about-banner.jpg) center 42%/cover no-repeat}
.about-banner::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(180deg,rgba(18,13,9,.5) 0%,rgba(18,13,9,.16) 46%,rgba(18,13,9,.55) 100%)}
.about-banner .inner{position:relative;z-index:1}
.about-banner h1{font-size:34px;font-weight:800;letter-spacing:2px;text-shadow:0 4px 26px rgba(0,0,0,.45)}
.about-banner p{margin-top:12px;font-size:15.5px;opacity:.92;text-shadow:0 2px 14px rgba(0,0,0,.4)}
.about-page{padding-top:34px}
.about-sec{margin-bottom:44px}
.about-sec h2{font-size:20px;font-weight:800;display:flex;align-items:center;gap:10px;margin-bottom:18px}
.about-sec h2 span{width:6px;height:20px;border-radius:3px;background:var(--orange);display:inline-block}
.about-body{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);padding:28px 30px;font-size:14.5px;line-height:2.1;color:var(--ink2)}
.about-body p{margin-bottom:6px}
.about-ch-tip{font-size:13.5px;color:var(--grey);margin:-10px 0 18px 16px}
.about-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.about-stats .as{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);text-align:center;padding:28px 12px}
.about-stats .as b{display:block;font-size:21px;color:var(--orange-d)}
.about-stats .as span{display:block;margin-top:8px;font-size:13px;color:var(--grey)}
.art-detail-page{max-width:860px}
.art-body{font-size:15px;line-height:2.1;color:var(--ink2)}
@media(max-width:900px){.art-list,.about-stats{grid-template-columns:1fr 1fr}.about-banner h1{font-size:26px}}

/* ---------- 2026-10-12：新闻资讯列表 / 详情顶部头图 ---------- */
.art-banner{position:relative;overflow:hidden;border-radius:16px;margin-bottom:20px;padding:34px 38px;
  background:linear-gradient(120deg,#282019 0%,#1C1611 58%,#171310 100%);color:#fff;box-shadow:var(--shadow)}
.art-banner::before{content:"";position:absolute;width:560px;height:560px;top:-280px;right:-140px;border-radius:50%;pointer-events:none;
  background:radial-gradient(circle,rgba(242,98,29,.42) 0%,rgba(242,98,29,.12) 46%,transparent 70%)}
.art-banner::after{content:"";position:absolute;inset:0;pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);
  background-size:32px 32px;
  -webkit-mask-image:linear-gradient(112deg,#000 0%,rgba(0,0,0,.22) 56%,transparent 76%);
  mask-image:linear-gradient(112deg,#000 0%,rgba(0,0,0,.22) 56%,transparent 76%)}
.art-banner .bn-in{position:relative;z-index:1;max-width:780px}
.art-banner h1{font-size:27px;font-weight:900;letter-spacing:2px;line-height:1.45;text-shadow:0 4px 22px rgba(0,0,0,.34)}
.art-banner p{margin-top:10px;font-size:14px;opacity:.72;letter-spacing:.6px}
.art-banner .bn-art{position:absolute;right:36px;top:50%;transform:translateY(-50%);width:128px;height:128px;z-index:1;opacity:.95;pointer-events:none}
/* 详情页头图（2026-10-12 改版）：图上不放标题 / 分类 / 时间，标题区一律挪到图下。
   有配图：文章首图铺满（干净、不压字），只加极轻的上下压边做质感；
   无配图：品牌暗底 + 橙色光晕 + 细网格 + 与内容相关的主题线稿，自动生成「高大上」头图。 */
.art-hero{position:relative;overflow:hidden;height:340px;border-radius:16px;margin-bottom:18px;
  background:linear-gradient(118deg,#241C16 0%,#1B1511 56%,#140F0C 100%);
  box-shadow:0 18px 40px -22px rgba(24,19,15,.55)}
.art-hero.has-img{background-position:center;background-size:cover}
.art-hero.has-img::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(180deg,rgba(20,15,12,.16) 0%,transparent 28%,transparent 70%,rgba(20,15,12,.24) 100%)}
.art-hero.gen::before{content:"";position:absolute;width:760px;height:760px;top:-380px;right:-200px;border-radius:50%;pointer-events:none;
  background:radial-gradient(circle,rgba(242,98,29,.44) 0%,rgba(242,98,29,.12) 44%,transparent 68%)}
.art-hero.gen::after{content:"";position:absolute;inset:0;pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);
  background-size:34px 34px;
  -webkit-mask-image:linear-gradient(112deg,#000 0%,rgba(0,0,0,.26) 58%,transparent 78%);
  mask-image:linear-gradient(112deg,#000 0%,rgba(0,0,0,.26) 58%,transparent 78%)}
.art-hero .hero-deco{position:absolute;inset:0;z-index:1;display:flex;align-items:center;justify-content:flex-end;
  padding-right:7%;pointer-events:none}
.art-hero .hero-art{width:236px;height:236px;opacity:.62}
.art-hero .hero-glow{position:absolute;left:0;right:0;bottom:0;height:3px;z-index:1;pointer-events:none;
  background:linear-gradient(90deg,transparent 0%,#F2621D 24%,#F78244 60%,transparent 100%)}
/* 头图下方的文章标题区：分类标签 / 标题 / 时间 + 阅读量 */
.art-head{padding:0 2px 18px;margin-bottom:22px;border-bottom:1px solid var(--line)}
.art-head .art-cat-tag{margin-bottom:12px}
.art-head h1{font-size:30px;font-weight:900;letter-spacing:.6px;line-height:1.42;color:var(--ink)}
.art-head-meta{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:14px;font-size:13.5px;color:var(--grey)}
.art-head-meta .art-date{color:var(--grey)}
.art-banner .bn-meta{position:relative;z-index:1;display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:14px;font-size:13px}
.art-banner .bn-meta .art-date,.art-banner .art-views{color:rgba(255,255,255,.74);font-weight:400}
.art-banner .art-cat-tag{background:rgba(255,255,255,.16);color:#fff;border:1px solid rgba(255,255,255,.28)}
@media(max-width:760px){
  .art-banner{padding:24px 22px;border-radius:14px}
  .art-banner h1{font-size:21px;letter-spacing:1px}
  .art-banner .bn-art{display:none}
  .art-hero{height:190px;border-radius:14px;margin-bottom:14px}
  .art-hero .hero-deco{padding-right:5%}
  .art-hero .hero-art{width:150px;height:150px;opacity:.5}
  .art-head{padding-bottom:14px;margin-bottom:18px}
  .art-head h1{font-size:21px;letter-spacing:.2px}
}

/* ---------- 2026-10-11：资讯横向列表（小图封面 + 右侧信息） ---------- */
.art-list-h{display:flex;flex-direction:column;gap:16px}
.art-row{display:flex;gap:22px;align-items:stretch;background:var(--card);border-radius:var(--radius);padding:16px 20px;box-shadow:var(--shadow);text-decoration:none;transition:.25s}
.art-row:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}
.art-row .thumb{width:240px;height:150px;flex:0 0 240px;border-radius:10px;background:#F1EAE4 center/cover no-repeat}
.art-row .info{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center}
.art-row .info h4{font-size:17px;font-weight:700;color:var(--ink);line-height:1.5;margin-bottom:8px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.art-row:hover .info h4{color:var(--orange-d)}
.art-row .info p{font-size:13.5px;color:var(--grey);line-height:1.85;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.art-row .meta{display:flex;justify-content:space-between;align-items:center;margin-top:14px;font-size:12.5px;color:var(--orange-d);font-weight:600}
.art-row .meta .more{color:var(--grey);font-weight:400}
.art-row:hover .meta .more{color:var(--orange-d)}
/* 分类 / 发布时间 / 阅读量：横向排列并留出间距（原先文字紧挨在一起） */
.art-row .meta .meta-l{display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap;min-width:0}
.art-row .meta .art-date{font-weight:400;color:var(--grey)}
/* 阅读量（列表 / 相关阅读 / 详情共用） */
.art-views{display:inline-flex;align-items:center;gap:4px;font-weight:400;color:var(--grey);white-space:nowrap}
.art-views svg{flex:none;opacity:.7}
/* 资讯列表与页面容器同宽对齐（不再收窄），页码条居中 */
.art-list-page{max-width:100%;margin:0}

/* ---------- 2026-10-12：首页资讯改一行两条（小缩略图 + 右标题） ---------- */
.art-grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.art-mini{display:flex;gap:14px;align-items:center;background:var(--card);border-radius:var(--radius);padding:12px 14px;box-shadow:var(--shadow);text-decoration:none;transition:.25s;min-width:0}
.art-mini:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}
.art-mini .thumb{width:104px;height:72px;flex:0 0 104px;border-radius:8px;background:#F1EAE4 center/cover no-repeat}
.art-mini .info{flex:1;min-width:0}
.art-mini .info h4{margin:0 0 8px;font-size:14.5px;font-weight:700;color:var(--ink);line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.art-mini:hover .info h4{color:var(--orange-d)}
.art-mini .am-meta{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--grey)}
.art-mini .am-meta .art-cat-tag{font-size:11.5px;padding:1px 8px}
@media(max-width:760px){.art-grid2{grid-template-columns:1fr}.art-mini .thumb{width:88px;height:62px;flex:0 0 88px}}
@media(max-width:700px){
  .art-row{gap:14px;padding:12px 14px}
  .art-row .thumb{width:120px;height:80px;flex:0 0 120px}
  .art-row .info h4{font-size:15px;-webkit-line-clamp:2}
  .art-row .info p{display:none}
}

/* ---------- 2026-10-11：新闻资讯分类导航（只保留一级分类） ---------- */
.art-cat-bar{margin-bottom:20px}
.art-cat-bar .tabs{margin-bottom:0}
.art-cat-tag{display:inline-block;background:var(--peach);color:var(--orange-d);border-radius:6px;padding:2px 9px;font-size:12px;font-weight:600;text-decoration:none;letter-spacing:.3px}
a.art-cat-tag:hover{background:var(--grad);color:#fff}
.art-cats{margin-bottom:12px}
.art-detail-page .art-cats{margin-top:-6px}

/* ---------- 2026-10-11：资讯面包屑导航（每一级可点回对应分类） ---------- */
.crumb{display:flex;flex-wrap:wrap;align-items:center;gap:7px;font-size:13.5px;line-height:1.5;margin:14px 0 18px;color:var(--grey)}
.crumb a{color:var(--grey);transition:color .18s}
.crumb a:hover{color:var(--orange-d);text-decoration:underline;text-underline-offset:3px}
.crumb .sep{font-style:normal;color:#D8CCC2;font-size:13px}
.crumb .cur{color:var(--ink);font-weight:600;max-width:min(460px,56vw);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* 窄屏防溢出：固定 460px 会把手机端整页撑出横向滚动（min 取小值，桌面端不受影响） */
.art-detail-page .crumb{margin:0 0 14px}

/* ---------- 2026-10-11：相关阅读文字列表（一行一篇，无图） ---------- */
.art-lines{display:block;margin-top:8px}
.art-line{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 2px;border-bottom:1px solid var(--line);transition:.18s}
.art-line:last-child{border-bottom:none;padding-bottom:4px}
.art-line .t{flex:1;min-width:0;font-size:14.5px;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.art-line:hover .t{color:var(--orange-d)}
.art-line .m{flex:none;display:inline-flex;align-items:center;gap:10px;font-size:12.5px;color:var(--grey)}
@media(max-width:700px){.crumb .cur{max-width:100%}.art-line .t{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}}

/* ---------- 2026-10-11：筛选排序（正序 / 倒序，对齐参考站「排序」行） ----------
   表格表头不支持点击排序，排序入口只有筛选面板里的「排序」行这一处 */
.chip.sortbtn{display:inline-flex;align-items:center;gap:2px}
.ars{display:inline-flex;flex-direction:column;gap:2px;margin-left:4px;line-height:0}
.ar{width:0;height:0;border-left:3.5px solid transparent;border-right:3.5px solid transparent}
.ar.up{border-bottom:5px solid #C9B7A9}
.ar.dn{border-top:5px solid #C9B7A9}
.chip.on .ar.up.act{border-bottom-color:#fff}
.chip.on .ar.dn.act{border-top-color:#fff}
.chip.on .ar.up:not(.act){border-bottom-color:rgba(255,255,255,.5)}
.chip.on .ar.dn:not(.act){border-top-color:rgba(255,255,255,.5)}

/* ---------- 2026-10-11：后台管理员与角色权限（账号独立 + 分级权限） ---------- */
.console-topbar .who .who-role{font-style:normal;margin-left:6px;padding:1px 8px;border-radius:6px;font-size:11.5px;
  color:var(--orange-d);background:var(--peach);border:1px solid #F6D9C6}
.st-found{background:linear-gradient(90deg,var(--orange),#F78244);color:#fff}
.role-card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px 22px;margin-bottom:14px}
.role-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}
.role-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:14px}
.role-title b{font-size:15px;color:var(--ink)}
.role-key{font-style:normal;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:11.5px;color:var(--grey);
  background:#F5F1ED;border:1px solid var(--line);border-radius:6px;padding:1px 7px}
.perm-cloud{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}
.perm-tag{font-size:11.5px;color:#B0A69E;background:#F6F2EE;border:1px solid var(--line);border-radius:7px;padding:3px 10px}
.perm-tag.on{color:var(--orange-d);background:var(--peach);border-color:#F3D6C2;font-weight:600}
/* 危险权限（资金 / 密钥 / 权限本身）：未勾选也标红提示，勾上后底色更重 */
.perm-tag.risky{color:#B23B32;background:#FDF1EF;border-color:#F2D2CD}
.perm-tag.risky.on{color:#fff;background:var(--red);border-color:var(--red)}
.perm-groups{display:grid;gap:12px}
.perm-grp{border:1px solid var(--line);border-radius:10px;padding:12px 14px;background:#FCFAF8}
.perm-grp-t{font-size:12.5px;font-weight:600;color:var(--grey);margin-bottom:8px}
.perm-opts{display:flex;flex-wrap:wrap;gap:10px 18px}
.perm-opt{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--ink2);cursor:pointer}
.perm-opt input{width:15px;height:15px;accent-color:var(--orange)}
.perm-opt.risky{color:#B23B32}
.perm-opt.risky input{accent-color:var(--red)}
.perm-risk{font-style:normal;font-size:10.5px;color:#B23B32;background:#FDF1EF;border:1px solid #F2D2CD;
  border-radius:5px;padding:0 5px;margin-left:4px}
/* 仅创始人权限（如「管理员与角色」）：置灰锁定，前端不可勾选，接口层也会剔除 */
.perm-tag.locked{color:#8A7F76;background:#F2EEE9;border-color:#E2DAD2}
.perm-opt.locked{color:#9C928A;opacity:.72;cursor:not-allowed}
.perm-opt.locked input{accent-color:#B0A69E}
/* 角色卡片上的高危权限统计：一眼看出哪个角色握有危险权限 */
.role-risk{font-size:11.5px;color:#B23B32;background:#FDF1EF;border:1px solid #F2D2CD;
  border-radius:6px;padding:1px 8px;font-weight:600}
.role-safe{font-size:11.5px;color:#3E7D5A;background:#EFF7F1;border:1px solid #D6E8DC;
  border-radius:6px;padding:1px 8px}
/* 高危权限清单：勾选即提示后果，保存前再确认一次 */
.risk-box{margin-top:10px;border:1px solid #F2D2CD;background:#FDF7F6;border-radius:10px;
  padding:10px 14px;font-size:12.5px;color:#8E3B33;line-height:1.7}
.risk-box b{color:#B23B32}
.risk-box ul{margin:6px 0 0;padding-left:18px}
.risk-box.ok{border-color:#D6E8DC;background:#F4FAF6;color:#3E7D5A}

/* ---------- 后台「业务配置」分组卡片 ---------- */
.biz-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}
.biz-col{border:1px solid var(--line);border-radius:12px;padding:14px 16px;background:#FCFAF8}
.biz-col .biz-t{font-size:13px;font-weight:700;color:var(--orange-d);margin-bottom:12px;
  padding-bottom:8px;border-bottom:1px dashed var(--line)}
.biz-col .form-item{margin-bottom:10px}
.biz-col .form-item input[type=number],.biz-col .form-item input[type=text]{width:100%}
.note-card h3{font-size:14px}
.tip-list{margin:0;padding-left:18px;color:var(--ink2);font-size:13px;line-height:2}

/* ---------- 在线充值（支付宝 / 微信支付） ---------- */
.pay-grid{display:grid;grid-template-columns:1.35fr .9fr;gap:18px;align-items:start}
@media(max-width:900px){.pay-grid{grid-template-columns:1fr}}
.pay-card h3,.pay-side h3{margin-bottom:12px}
.pay-now{background:#FBF6F1;border:1px solid var(--line);border-radius:10px;padding:12px 14px;font-size:13.5px;color:var(--ink2);margin-bottom:16px;line-height:1.9}
.pay-now b{color:var(--orange-d);font-size:18px}
.pay-now .hint{display:block;margin-top:2px}
.pay-amt-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.pay-amt{background:#fff;border:1px solid var(--line);border-radius:9px;padding:11px 0;font-size:14px;font-weight:600;color:var(--ink2);cursor:pointer;transition:.16s}
.pay-amt:hover{border-color:var(--orange);color:var(--orange-d)}
.pay-amt.on{border-color:var(--orange);color:var(--orange-d);background:#FEF3EC;box-shadow:0 0 0 3px rgba(242,98,29,.1)}
.pay-unit{color:var(--grey);font-size:13px;align-self:center;padding:0 4px}
.pay-chs{display:flex;gap:12px;flex-wrap:wrap}
.pay-ch{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:9px;padding:10px 16px;cursor:pointer;font-size:13.5px;color:var(--ink2);transition:.16s}
.pay-ch:hover{border-color:var(--orange)}
.pay-ch input{width:15px;height:15px;accent-color:var(--orange)}
.pay-ch:has(input:checked){border-color:var(--orange);background:#FEF3EC;color:var(--orange-d);font-weight:600}
.btn-block{display:block;width:100%;margin-top:6px;padding:12px 0;font-size:15px}
.pay-empty{border:1px dashed var(--line);border-radius:10px;padding:16px;text-align:center;background:#FCFAF8}
.pay-empty b{display:block;margin-bottom:6px;color:var(--ink)}
.pay-recs{display:flex;flex-direction:column;gap:10px}
.pay-rec{border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:#fff}
.pay-rec-top{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:2px}
.pay-rec .ord-no{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:11.5px;color:var(--grey)}
.pay-st{font-size:11.5px;padding:2px 8px;border-radius:20px;font-weight:600;background:#F0EDEA;color:var(--grey);white-space:nowrap}
.pay-st-pending{background:#FFF3E6;color:#C97A14}
.pay-st-paid{background:#E6F5EE;color:var(--green)}
.pay-st-closed{background:#F0EDEA;color:var(--grey)}
.pay-qr{display:flex;justify-content:center;padding:6px 0 10px}
.pay-qr img{width:220px;height:220px;border:1px solid var(--line);border-radius:12px;background:#fff;padding:8px}
.pay-qr-amt{text-align:center;font-size:14px;color:var(--ink2);margin-bottom:6px}
.pay-qr-amt b{color:var(--orange-d);font-size:18px}
.pay-qr-st{text-align:center;font-size:13.5px;color:var(--grey);min-height:22px;line-height:1.8}
.pay-ok{color:var(--green)}
.pay-qr-acts{display:flex;justify-content:center;gap:10px;margin-top:14px}

/* ---------- 后台：在线支付设置 ---------- */
.pay-adm-head{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:6px}
.pay-badges{display:flex;gap:8px;flex-wrap:wrap}
.pay-badge{font-size:11.5px;font-weight:600;padding:3px 10px;border-radius:20px;background:#F0EDEA;color:var(--grey);border:1px solid var(--line)}
.pay-badge.on{background:#E6F5EE;color:var(--green);border-color:#CDEBDC}
.pay-badge.on.demo{background:#FFF3E6;color:#C97A14;border-color:#F6E0C6}
/* 开关已开、但关键参数还没填齐（比"未启用"更准确的状态，避免误以为勾选没保存） */
.pay-badge.warn{background:#FFF7E6;color:#C97A14;border-color:#F0DDB4}
.adm-pay-cols{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:16px}
@media(max-width:1080px){.adm-pay-cols{grid-template-columns:1fr}}
.adm-pay-col{border:1px solid var(--line);border-radius:12px;padding:14px 16px 6px;background:#FCFAF8}
.adm-pay-col .form-item{margin-bottom:10px}
.adm-pay-col .form-item label{font-size:12.5px;color:var(--grey)}
.adm-pay-t{display:flex;align-items:center;gap:8px;font-weight:700;font-size:14px;color:var(--ink);margin-bottom:12px;cursor:pointer}
.adm-pay-t input{width:15px;height:15px;accent-color:var(--orange)}
.pay-inline{display:inline-flex;align-items:center;gap:7px;font-size:13px;color:var(--ink2);cursor:pointer;margin:4px 0 10px}
.pay-inline input{width:15px;height:15px;accent-color:var(--orange)}
.pay-inline .red{color:var(--red)}
textarea.pay-key,input.pay-key{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:12px;width:100%;margin-bottom:4px}
.pay-key-clear{margin-bottom:10px}
.pay-key-clear.on{color:var(--red);border-color:#F3C1BA;background:#FBEAE7}
.pay-demo-row{margin-top:14px;padding:12px 14px;border:1px dashed #F3C1BA;border-radius:10px;background:#FFF9F5}
.pay-demo-row .pay-inline{font-weight:700;color:var(--ink)}
.pay-diag{margin-top:16px}
.pay-diag h4{font-size:13.5px;color:var(--ink);margin-bottom:10px}
.pay-diag-sec{margin-bottom:12px;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff}
.pay-diag-sec > b{display:block;padding:9px 14px;background:#FBF6F1;font-size:12.5px;color:var(--ink2)}
.pay-diag-row{display:flex;align-items:center;gap:10px;padding:8px 14px;border-top:1px solid var(--line);font-size:12.5px}
.pay-diag-ok{width:18px;height:18px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0}
.pay-diag-ok.y{background:#E6F5EE;color:var(--green)}
.pay-diag-ok.n{background:#FBEAE7;color:var(--red)}
.pay-diag-name{width:150px;flex-shrink:0;color:var(--ink2)}
.pay-diag-val{color:var(--grey);word-break:break-all;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:11.5px}

/* 后台 · 短信「发送测试短信」结果 */
.sms-test-box{margin-top:18px;padding-top:16px;border-top:1px dashed var(--line)}
.sms-test-res{margin-top:12px;border:1px solid var(--line);border-radius:10px;padding:12px 14px;background:#fff;font-size:12.5px}
.sms-test-res.ok{border-color:#BFE3D2;background:#F4FBF7}
.sms-test-res.err{border-color:#F0C8C0;background:#FEF7F5}
.sms-test-h{font-weight:700;margin-bottom:6px}
.sms-test-res.ok .sms-test-h{color:var(--green)}
.sms-test-res.err .sms-test-h{color:var(--red)}
.sms-test-line{color:var(--ink2);margin-bottom:6px}
.sms-test-line code{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:12px;background:rgba(45,30,15,.06);padding:1px 5px;border-radius:4px}
.sms-test-note{color:var(--ink2);line-height:1.75}
.sms-test-raw{margin:8px 0 0;padding:8px 10px;background:rgba(45,30,15,.05);border-radius:8px;font-size:11px;
  color:var(--grey);white-space:pre-wrap;word-break:break-all;max-height:120px;overflow:auto}

/* ---------- 后台：新手引导「去哪申请、怎么拿 Key」（可折叠） ---------- */
/* 用原生 <details>：不依赖 JS，默认收起不占屏，点标题展开分步教程。
   放在每块配置卡的顶部，方便第一次接手的新手照着点。 */
.key-steps{margin:4px 0 16px;border:1px dashed #D5E1F2;border-radius:12px;background:#F6FAFF;overflow:hidden}
.key-steps>summary{cursor:pointer;padding:11px 15px;font-size:12.5px;font-weight:700;color:var(--blue);list-style:none;display:flex;align-items:center;gap:7px;user-select:none}
.key-steps>summary::-webkit-details-marker{display:none}
.key-steps>summary::before{content:"▸";font-size:10px;transition:transform .15s;display:inline-block}
.key-steps[open]>summary::before{transform:rotate(90deg)}
.key-steps>summary .ks-tag{font-weight:400;font-size:11px;color:var(--grey);margin-left:auto}
.key-steps .ks-body{padding:0 16px 14px;font-size:12.5px;line-height:2;color:var(--ink2)}
.key-steps .ks-body ol{margin:0;padding-left:20px}
.key-steps .ks-body ul{margin:4px 0 4px;padding-left:20px}
.key-steps .ks-body li{margin-bottom:2px}
.key-steps .ks-body code{background:#E8F0FB;color:#2A5CA8;padding:1px 6px;border-radius:4px;font-size:11.5px;font-family:ui-monospace,Menlo,Consolas,monospace}
.key-steps .ks-body b{color:var(--ink)}
.key-steps .ks-tip{margin-top:10px;padding:9px 13px;border-radius:9px;background:#FFF7E6;color:#8A6210;font-size:12px;line-height:1.95}
.key-steps .ks-tip.warn{background:#FDECE9;color:#A33A2B}
.key-steps .ks-goto{display:inline-flex;align-items:center;gap:4px;color:var(--blue);font-weight:600;word-break:break-all}
.key-steps .ks-sec-t{font-weight:700;color:var(--ink);margin:10px 0 2px}

/* ---------- 登录：密码 / 验证码 子页签 ---------- */
.auth-simple .sub-tabs.sub-mini{gap:18px;margin-top:-6px;margin-bottom:16px;border-bottom:1px solid var(--line)}
.auth-simple .sub-tabs.sub-mini .st{font-size:13.5px;padding:0 2px 9px}
.auth-simple .sub-tabs.sub-mini .st.active::after{left:2px;right:2px;height:2px}
.code-row .btn{min-width:118px;justify-content:center;white-space:nowrap}
.code-row .btn[disabled]{opacity:.6;cursor:default}

/* ---------- 登录 / 注册页：无页头版（去掉 LOGO 与文案后收紧留白） ---------- */
.auth-nohead .auth-form{padding:30px 34px 26px}
.auth-nohead .sub-tabs.sub-mini{margin-top:0;margin-bottom:18px}

/* ---------- 图形验证码（登录页 / 后台登录页共用） ---------- */
.cap-img{flex:none;height:44px;width:auto;border:1px solid var(--line);border-radius:9px;background:#FBF7F3;cursor:pointer;display:block;transition:.15s}
.cap-img:hover{border-color:var(--orange)}
.cap-img:active{transform:scale(.98)}
.cap-refresh{color:var(--orange-d);font-weight:600;cursor:pointer}
.cap-refresh:hover{text-decoration:underline}
.adm-page .cap-img{height:46px;border-color:#DDE2E9}
.adm-page .cap-refresh{color:#3D5673}
.adm-page .hint{color:#8A939E;font-size:12px}

/* ---------- 后台 · 上游资源对接 ---------- */
.up-kv{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px 20px}
.up-kv > div{background:#FCFAF8;border:1px solid var(--line);border-radius:10px;padding:10px 14px}
.up-kv span{display:block;font-size:12px;color:var(--grey);margin-bottom:3px}
.up-kv b{font-size:13.5px;color:var(--ink);font-weight:700;word-break:break-all}
.up-cmd{border:1px solid var(--line);border-radius:10px;padding:10px 14px;background:#FCFAF8;margin-bottom:10px}
.up-cmd-t{font-size:12.5px;color:var(--ink2);margin-bottom:7px}
.up-cmd-row{display:flex;align-items:center;gap:10px}
.up-cmd-row code{flex:1;min-width:0;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:12px;
  color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:8px;padding:8px 10px;overflow-x:auto;white-space:nowrap}
.up-ok,.up-err,.up-run{border-radius:10px;padding:12px 16px;font-size:13px;line-height:1.7}
.up-ok{background:#E9F7F0;border:1px solid #C6E8D7;color:#15653F}
.up-err{background:#FDECEC;border:1px solid #F3C7C3;color:#9B2C1E}
.up-run{background:#FFF6E5;border:1px solid #F0DCB0;color:#8A5A00}
.up-ok pre,.up-err pre,.up-run pre{font-family:ui-monospace,Menlo,Consolas,monospace}

/* ==================== 价格规则（成本价区间 × 会员等级） ==================== */
#pr-table{min-width:720px}
#pr-table th,#pr-table td{padding:8px 10px}
#pr-table input[type=number],#pr-table input[type=text]{width:100%;box-sizing:border-box;padding:7px 9px;
  border:1px solid var(--line);border-radius:8px;font-size:13px;color:var(--ink);background:#fff}
#pr-table input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px rgba(242,98,29,.10)}
.pr-test{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:16px;padding:12px 14px;
  background:#FCFAF8;border:1px solid var(--line);border-radius:10px;font-size:13px;color:var(--ink2)}
.pr-test input{width:110px;padding:7px 10px;border:1px solid var(--line);border-radius:8px;font-size:13px;color:var(--ink)}
.pr-test b{color:var(--brand)}
/* 会员等级管理 */
.lv-row{display:grid;grid-template-columns:56px 1fr 170px 1fr 110px 74px;gap:10px;align-items:center;
  padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#FCFAF8;margin-bottom:10px}
.lv-row input{width:100%;box-sizing:border-box;padding:7px 10px;border:1px solid var(--line);border-radius:8px;font-size:13px;color:var(--ink)}
.lv-row input[type=color]{padding:2px;height:34px}
/* 会员等级徽章（v1.0.153 重设计）：等级颜色只做「小圆点 + 同色浅底 + 同色描边」，
   文字用等级色——比原来的纯色实心药丸清爽，长等级名也不会在色块里挤成两行。
   旧浏览器不认 color-mix 时自动回退到浅灰底 + 描边，仍可读 */
.lv-tag{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:3px 11px;border-radius:999px;font-size:12px;font-weight:700;line-height:1.6;
  color:var(--lvc,#888780);background:#F0EDEA;border:1px solid var(--line);white-space:nowrap;
  background:color-mix(in srgb,var(--lvc,#888780) 11%,#fff);border-color:color-mix(in srgb,var(--lvc,#888780) 30%,transparent)}
.lv-dot{flex:0 0 auto;width:7px;height:7px;border-radius:50%;background:var(--lvc,#888780)}
.lv-head{display:grid;grid-template-columns:56px 1fr 170px 1fr 110px 74px;gap:10px;padding:0 12px 8px;
  font-size:12.5px;color:var(--ink2);font-weight:600}

/* 我的媒体：合并「我的资源」后统计卡为 5 张（我的资源 / 已上架 / 待审核 / 未通过 / 已下架） */
.stat-row.c5{grid-template-columns:repeat(5,1fr)}
@media(max-width:900px){.stat-row.c5{grid-template-columns:1fr 1fr}}

/* ==================== v1.0.93 会员中心视觉精修 ==================== */
/* 视图进入动效：切换页面时内容轻微上浮淡入，避免硬切 */
@keyframes mgxRise{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
#view > *{animation:mgxRise .28s cubic-bezier(.22,.7,.3,1) both}
@media(prefers-reduced-motion:reduce){#view > *{animation:none}}

/* 账号信息页：左「账号资料」+ 右「稿件统计 / 收益与提现」双卡堆叠 */
.ac-grid{align-items:start}
.ac-col{display:flex;flex-direction:column;gap:18px}
.ac-col .card{margin:0}
.kv-sub{margin:14px 0 2px;padding-top:13px;border-top:1px solid var(--line);
  font-size:12px;font-weight:700;color:var(--grey);letter-spacing:.6px}

/* 工作台：常用功能（财务与推广）+ 最近稿件 */
.dash-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:18px;align-items:start}
@media(max-width:1100px){.dash-grid{grid-template-columns:1fr}}
.qk-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
@media(max-width:640px){.qk-grid{grid-template-columns:repeat(2,1fr)}}
.qk{display:flex;flex-direction:column;align-items:center;gap:9px;padding:15px 6px 13px;border-radius:13px;
  background:#FBF7F3;border:1px solid transparent;transition:all .18s;cursor:pointer}
.qk:hover{background:#FFF3EA;border-color:var(--peach-d);transform:translateY(-2px);box-shadow:0 6px 16px rgba(242,98,29,.10)}
.qk .qic{width:38px;height:38px;border-radius:12px;display:flex;align-items:center;justify-content:center;
  background:#fff;color:var(--orange);box-shadow:0 2px 6px rgba(45,30,15,.07);transition:all .18s}
.qk:hover .qic{background:var(--grad);color:#fff}
.qk .qic .bi{width:19px;height:19px;vertical-align:0}
.qk > span:last-child{font-size:12.5px;font-weight:600;color:var(--ink2)}
.rc-row{display:flex;align-items:center;gap:10px;padding:11px 4px;border-bottom:1px dashed var(--line);transition:background .15s}
.rc-row:hover{background:#FBF7F3}
.rc-row:last-of-type{border-bottom:none}
.rc-t{flex:1;min-width:0;font-size:13.5px;font-weight:600;color:var(--ink);
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rc-row:hover .rc-t{color:var(--orange-d)}
.rc-card .status-tag{flex:0 0 auto}
.rc-time{font-size:12px;color:var(--grey);white-space:nowrap;font-variant-numeric:tabular-nums}
.rc-more{display:inline-block;margin-top:12px;font-size:13px;font-weight:600;color:var(--orange-d)}
.rc-more:hover{text-decoration:underline}
.dash-foot{text-align:center;font-size:12.5px;color:var(--grey);padding:2px 0 22px}

/* 表格备注列：单行省略（完整内容看 title 悬浮提示），行高更整齐 */
.td-note{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}

/* ==================== v1.0.94 前台新栏目：发稿案例 / 价格与权益 / 帮助中心 ==================== */
/* 发稿案例墙 */
.case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
@media(max-width:960px){.case-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.case-grid{grid-template-columns:1fr}}
.case-card{display:block;background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px 22px;transition:all .2s}
.case-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg)}
.case-card .cc-media{display:flex;align-items:center;gap:7px;font-size:12.5px;font-weight:600;color:var(--orange-d);margin-bottom:9px}
.case-card .cc-dot{width:7px;height:7px;border-radius:50%;background:var(--grad);flex:0 0 7px}
.case-card h3{font-size:14.5px;line-height:1.55;color:var(--ink);font-weight:600;margin:0;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:44px}
.case-card .cc-foot{display:flex;align-items:center;justify-content:space-between;margin-top:12px;padding-top:12px;border-top:1px dashed var(--line);font-size:12px;color:var(--grey)}
.case-card .cc-foot b{color:var(--orange-d);font-weight:600}
.case-card:hover .cc-foot b{text-decoration:underline}
.case-cta{text-align:center;margin-top:34px;background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);padding:30px 24px}
.case-cta p{font-size:14.5px;color:var(--ink2);margin-bottom:16px}
.case-cta p b{color:var(--orange-d)}
.case-cta .btn{margin:0 6px}
/* 价格与权益：会员等级卡 */
.lv-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
@media(max-width:960px){.lv-cards{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.lv-cards{grid-template-columns:1fr}}
.lv-card{position:relative;background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);text-align:center;padding:30px 18px 26px;border:1.5px solid transparent}
.lv-card.mine{border-color:var(--orange)}
.lv-card .lv-mine{position:absolute;top:12px;right:12px;background:#FFF1E8;color:var(--orange-d);font-size:11.5px;font-weight:700;border-radius:999px;padding:3px 10px}
.lv-card .lv-badge{width:52px;height:52px;border-radius:16px;margin:0 auto 14px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:19px;font-weight:800;letter-spacing:1px}
.lv-card h3{font-size:16.5px;font-weight:800;margin:0 0 8px}
.lv-card .lv-gate{font-size:13px;color:var(--ink2)}
.lv-card .lv-gate b{color:var(--orange-d)}
.lv-card .lv-benefit{font-size:12.5px;color:var(--grey);margin-top:6px}
/* 帮助中心 FAQ 手风琴 */
.faq-list{max-width:860px}
.faq{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:12px;overflow:hidden}
.faq summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:17px 22px;font-size:15px;font-weight:600;color:var(--ink)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-size:19px;color:var(--orange-d);font-weight:400;transition:transform .2s;flex:0 0 auto}
.faq[open] summary::after{transform:rotate(45deg)}
.faq[open] summary{color:var(--orange-d)}
.faq-body{padding:0 22px 18px;font-size:13.5px;line-height:1.9;color:var(--ink2)}
.faq-body b{color:var(--orange-d)}

/* 三个账户标签：发稿余额 / 收稿收益 / 邀请奖励（财务报表、资金流水共用） */
.ac-bounty{background:#FDF3E3;color:#B57A16}
/* 提现页三个账户数值卡（收稿收益 / 邀请奖励 / 发稿余额） */
.fin-nums.three{grid-template-columns:repeat(3,1fr)}
@media(max-width:820px){.fin-nums.three{grid-template-columns:1fr}}

/* 开票资料行（会员端「申请开票」）：左侧抬头概要 + 右侧编辑/删除 */
.inv-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px dashed var(--line)}
.inv-row:last-child{border-bottom:0;padding-bottom:0}
.inv-main{min-width:0;flex:1;font-size:13.5px;line-height:1.7}
.inv-main .tag{margin-left:6px}
.inv-ops{display:flex;gap:4px;white-space:nowrap;flex:0 0 auto}
.inv-ops .btn-link{padding:2px 6px;font-size:12.5px}
/* 发票类型 / 默认资料的单选多选行（form-item 里的 input 默认 100% 宽，这里要还原） */
.radio-row{display:flex;gap:20px;flex-wrap:wrap;padding:8px 0}
.radio{display:inline-flex;align-items:center;gap:7px;cursor:pointer;font-size:13.5px;color:var(--ink2)}
.radio input{width:auto;margin:0;padding:0;flex:0 0 auto;accent-color:var(--orange)}

/* 转化页：转出账户 → 发稿余额 对照卡（钱包转化 / 赏金转化共用） */
.cv-flow{display:grid;grid-template-columns:1fr auto 1fr;gap:14px;align-items:center;margin:0 0 18px}
.cv-box{border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px;background:#FCFAF8;min-width:0}
.cv-box.to{border-color:var(--peach-d);background:#FFF7F1}
.cv-box .lb{font-size:12.5px;color:var(--grey)}
.cv-box .vl{font-size:22px;font-weight:800;margin-top:3px;color:var(--ink);letter-spacing:.3px;word-break:break-all}
.cv-box.to .vl{color:var(--orange-d)}
.cv-arrow{font-size:18px;font-weight:700;color:var(--orange);text-align:center}
@media(max-width:640px){.cv-flow{grid-template-columns:1fr;gap:8px}.cv-arrow{transform:rotate(90deg)}}

/* ===== 工作台：顶部余额条（只放当前余额；累计金额在「账号信息」页） ===== */
.bal-bar{display:flex;align-items:center;gap:28px;flex-wrap:wrap;margin-bottom:20px}
.bal-title{font-size:13px;font-weight:600;color:var(--grey);white-space:nowrap}
.bal-nums{display:flex;gap:34px;flex-wrap:wrap;flex:1;min-width:0}
.bal-num .lb{font-size:12.5px;color:var(--grey)}
.bal-num .vl{font-size:24px;font-weight:900;color:var(--ink);margin-top:2px;line-height:1.2;font-variant-numeric:tabular-nums}
.bal-num .vl.orange{color:var(--orange-d)}
.bal-num .hint{margin-top:3px}
.bal-ops{display:flex;align-items:center;gap:14px;white-space:nowrap}
.bal-more{font-size:12.5px;color:var(--orange-d);text-decoration:none}
@media(max-width:640px){.bal-bar{gap:16px}.bal-nums{gap:22px}}
/* ===== 工作台：常用功能（三项一行铺满） ===== */
.qk-grid.three{grid-template-columns:repeat(3,1fr)}
/* ===== 账号信息：数值分组（账户余额 / 累计发生） ===== */
.num-t{font-size:13px;font-weight:600;color:var(--grey);margin:0 0 10px}
.stat-row.c2{grid-template-columns:repeat(2,1fr)}
.stat-row.c3{grid-template-columns:repeat(3,1fr)}
@media(max-width:900px){.stat-row.c2,.stat-row.c3{grid-template-columns:1fr 1fr}}

/* ===== 媒体详情页（/media/{id}.html，SSR） ===== */
.media-detail-page{max-width:980px}
.crumb-line{font-size:13px;color:var(--grey);margin:16px 0 12px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.crumb-line a{color:var(--grey)}
.crumb-line a:hover{color:var(--orange-d)}
.crumb-line b{color:var(--ink);font-weight:600}
.md-main{padding:24px 26px}
.md-head{display:flex;justify-content:space-between;gap:26px;align-items:flex-start;flex-wrap:wrap}
.md-head h1{font-size:24px;font-weight:800;margin:0}
.md-sub{font-size:13px;color:var(--grey);margin:8px 0 0}
.md-cat{display:inline-block;background:#F2621D14;color:var(--orange-d);font-weight:700;font-size:12px;padding:2px 9px;border-radius:20px;margin-right:6px}
.md-price-box{background:#FFF8F3;border:1px solid #F2621D22;border-radius:12px;padding:16px 20px;min-width:230px;text-align:center}
.md-price em{font-style:normal;font-size:28px;font-weight:800;color:var(--orange-d)}
.md-price span{font-size:13px;color:var(--grey);margin-left:4px}
.md-price-note{font-size:12px;color:var(--grey);margin-top:4px}
.md-cta{display:flex;gap:10px;justify-content:center;margin-top:12px}
.md-attrs{margin-top:18px}
.md-attrs th{width:130px;text-align:right;font-weight:600;color:var(--grey);white-space:nowrap;padding:9px 14px 9px 0;vertical-align:top;border-bottom:1px dashed #E8E0D8;font-size:13px}
.md-attrs td{padding:9px 0;border-bottom:1px dashed #E8E0D8;font-size:13.5px}
.md-promise{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:18px;font-size:13px}
.md-promise span{background:#F2621D0D;color:var(--orange-d);font-weight:600;padding:5px 12px;border-radius:20px}
.rel-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.rel-item{display:flex;flex-direction:column;gap:4px;border:1px solid #EFE9E2;border-radius:10px;padding:11px 13px;text-decoration:none}
.rel-item:hover{border-color:var(--orange);box-shadow:0 2px 10px #F2621D14}
.rel-item b{font-size:13.5px;color:var(--ink);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rel-item span{font-size:13px;color:var(--orange-d);font-weight:700}
@media(max-width:900px){.rel-grid{grid-template-columns:repeat(2,1fr)}.md-head{flex-direction:column}}

/* ===== 媒体名称 → 详情页内链（前台资源列表） ===== */
a.mname-link{color:var(--ink);text-decoration:none}
a.mname-link:hover{color:var(--orange-d);text-decoration:underline}
