/* CardMost 全站样式 v2 —— 移植自设计原型：枪灰底 / 金色 / 红涨绿跌 / 等宽数字 */
:root{--bg:#0C0F16;--surface:#141922;--s2:#1B212C;--s3:#222A37;--line:#28313F;--line2:#333E4E;
--ink:#E8ECF3;--ink2:#AAB3C4;--muted:#79839A;--faint:#5A6273;--gold:#E8B341;--gold2:#F6CF6E;
--up:#FF4D4F;--down:#17C08A;--down-dim:rgba(23,192,138,.12);--r:12px;
--mono:ui-monospace,'JetBrains Mono',Consolas,monospace}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);
font:14px/1.65 "Noto Sans SC",system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none;transition:color .15s}a:hover{color:var(--gold)}
.wrap{max-width:1180px;margin:0 auto;padding:0 20px}
.mono{font-family:var(--mono)}.muted{color:var(--muted)}.small{font-size:12px}
h1{font-size:24px;margin:22px 0 14px;letter-spacing:.01em}
h2{font-size:16px;margin:30px 0 13px;display:flex;align-items:center;gap:9px}
h2::before{content:"";width:3px;height:15px;background:linear-gradient(180deg,var(--gold),transparent);border-radius:2px}
/* ---- 顶栏 ---- */
.topbar{position:sticky;top:0;z-index:40;background:rgba(12,15,22,.88);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;gap:18px;height:58px}
.brand{font-weight:800;font-size:17px;letter-spacing:.02em}.brand b{color:var(--gold)}.brand small{color:var(--faint);font-weight:400}
.links{display:flex;gap:3px;flex:1;overflow-x:auto;scrollbar-width:none}.links::-webkit-scrollbar{display:none}
.links a{padding:7px 12px;border-radius:8px;color:var(--ink2);font-size:13px;white-space:nowrap}
.links a:hover{background:var(--s2);color:var(--ink)}
.tools{display:flex;gap:8px;align-items:center}
.sel{background:var(--surface);border:1px solid var(--line2);color:var(--ink2);border-radius:8px;padding:6px 9px;font-size:12px;cursor:pointer}
.sel:hover{border-color:var(--line)}
/* ---- 按钮 ---- */
.btn{display:inline-block;padding:9px 17px;border-radius:9px;border:none;cursor:pointer;font-weight:700;font-size:13px;
background:linear-gradient(135deg,var(--gold),var(--gold2));color:#141005;box-shadow:0 4px 14px -6px rgba(232,179,65,.5);transition:.15s}
.btn:hover{filter:brightness(1.07);transform:translateY(-1px)}
.btn.ghost{background:var(--surface);color:var(--ink2);border:1px solid var(--line2);box-shadow:none}
.btn.ghost:hover{color:var(--ink);border-color:var(--line)}
.btn.ok{background:linear-gradient(135deg,var(--down),#0fa876);color:#03271c;box-shadow:0 4px 14px -6px rgba(23,192,138,.5)}
.btn.danger{background:var(--up);color:#fff;box-shadow:none}
.btn.big{width:100%;padding:13px;font-size:15px;margin-top:14px}
/* ---- Hero ---- */
.hero{padding:52px 0 8px;position:relative}
.hero::before{content:"";position:absolute;top:-60px;left:-10%;width:52%;height:300px;pointer-events:none;
background:radial-gradient(ellipse at 30% 20%,rgba(232,179,65,.09),transparent 65%)}
.hero h1{font-size:34px;line-height:1.32;margin:0;font-weight:800}
.hero h1 em{font-style:normal;color:var(--gold)}
.hero .sub{color:var(--ink2);max-width:600px;margin:12px 0 0}
.chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.chip{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border:1px solid var(--line2);border-radius:8px;font-size:12px;color:var(--ink2);background:rgba(20,25,34,.6)}
.chip::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--down)}
.ctarow{display:flex;gap:11px;margin-top:22px;flex-wrap:wrap}
/* ---- 数据条 ---- */
.statstrip{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:26px 0 4px}
.stat{background:var(--surface);border:1px solid var(--line);border-radius:11px;padding:14px 16px;position:relative;overflow:hidden}
.stat::after{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--gold),transparent)}
.stat .l{color:var(--muted);font-size:11px;letter-spacing:.04em}
.stat .v,.stat b{display:block;font-family:var(--mono);font-size:20px;font-weight:700;color:var(--gold);margin-top:6px}
.stat b i{font-style:normal;font-size:11px;color:var(--faint)}
.stat small{color:var(--muted);font-size:11px}
/* ---- 卡片/网格 ---- */
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r)}
.pad{padding:18px 20px}.narrow{max-width:420px;margin:34px auto}
.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:14px 0}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:14px 0}
.cat{padding:17px 18px;transition:.16s;position:relative;overflow:hidden;display:block}
.cat::before{content:"";position:absolute;top:0;left:0;bottom:0;width:3px;background:var(--ac,var(--gold));opacity:.85}
.cat:hover{transform:translateY(-3px);border-color:var(--line2);box-shadow:0 14px 30px -18px rgba(0,0,0,.8)}
.cat h3{margin:0 0 6px;font-size:14.5px}.cat p{margin:0;font-size:12px;color:var(--muted)}
.cat .arr{position:absolute;right:14px;top:16px;color:var(--faint);transition:.15s}
.cat:hover .arr{color:var(--gold);transform:translateX(3px)}
.safe{padding:16px 17px}
.safe b{display:flex;align-items:center;gap:8px;font-size:13.5px}
.safe b::before{content:"✓";color:var(--down);font-size:12px;width:18px;height:18px;border:1px solid rgba(23,192,138,.5);border-radius:6px;display:inline-flex;align-items:center;justify-content:center;background:var(--down-dim)}
.safe p{margin:8px 0 0;font-size:12px;color:var(--muted);line-height:1.6}
/* ---- 行列表 ---- */
.rows{display:flex;flex-direction:column;gap:9px}
.row{display:flex;align-items:center;gap:14px;padding:12px 15px;background:var(--surface);border:1px solid var(--line);border-radius:11px;transition:.14s}
.row:hover{border-color:var(--line2);transform:translateX(2px)}
.row .grow{flex:1;min-width:0}
.row .tile{width:46px;height:36px;border-radius:8px;border:1px solid;flex:0 0 auto;
background-image:linear-gradient(135deg,rgba(255,255,255,.08),transparent)}
.price{font-family:var(--mono);font-weight:700;font-size:14px}
.tag{display:inline-block;padding:3px 9px;border:1px solid var(--line2);border-radius:7px;font-size:11.5px;color:var(--ink2)}
.tagok{color:var(--down);font-weight:700;font-size:11.5px}
/* ---- 流程 ---- */
.flow{counter-reset:s}
.flow .f{display:flex;gap:12px;padding:11px 0;border-bottom:1px dashed var(--line);font-size:13px;color:var(--ink2)}
.flow .f:last-child{border:none}
.flow .f::before{counter-increment:s;content:counter(s);width:22px;height:22px;flex:0 0 auto;border:1px solid var(--gold);color:var(--gold);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-family:var(--mono)}
/* ---- 表单/摘要 ---- */
.field{display:block;margin:12px 0;font-size:13px;color:var(--ink2)}
.field input,.field select{display:block;width:100%;margin-top:6px;background:var(--bg);border:1px solid var(--line2);border-radius:9px;padding:11px 12px;color:var(--ink);font-size:14px;transition:.15s}
.field input:focus,.field select:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(232,179,65,.12)}
.inline{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.inline input,.inline select{background:var(--bg);border:1px solid var(--line2);border-radius:9px;padding:9px 11px;color:var(--ink)}
.skus{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:9px}
.sku{display:flex;gap:9px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:10px;cursor:pointer;background:var(--s2);transition:.13s}
.sku:hover{border-color:var(--line2)}
.sku:has(input:checked){border-color:var(--gold);box-shadow:0 0 0 2px rgba(232,179,65,.16);background:rgba(232,179,65,.05)}
.sku span{flex:1;font-size:12.5px}.sku b{font-family:var(--mono)}
.insrow{display:flex;gap:10px;align-items:flex-start;margin:16px 0;padding:13px;border:1px solid rgba(232,179,65,.35);background:rgba(232,179,65,.05);border-radius:10px;cursor:pointer;font-size:12.5px;transition:.14s}
.insrow:hover{border-color:rgba(232,179,65,.6)}
/* ---- 状态时间轴 ---- */
.steps{display:flex;margin:20px 0;overflow-x:auto;padding-bottom:4px}
.step{flex:1;min-width:88px;text-align:center;position:relative;font-size:12px;color:var(--muted)}
.step::before{content:"";position:absolute;top:9px;left:-50%;right:50%;height:2px;background:var(--line2)}
.step:first-child::before{display:none}
.step i{display:block;width:18px;height:18px;border-radius:50%;border:2px solid var(--line2);background:var(--surface);margin:0 auto 7px;position:relative;z-index:1;transition:.2s}
.step.ok i{border-color:var(--down);background:var(--down)}.step.ok::before{background:var(--down)}
.step.now{color:var(--gold);font-weight:700}.step.now i{border-color:var(--gold);box-shadow:0 0 0 4px rgba(232,179,65,.14)}
.step.bad{color:var(--up)}.step.bad i{border-color:var(--up)}
/* ---- 表格/杂项 ---- */
table.list,table.kv{width:100%;border-collapse:collapse;font-size:13px}
table.list td,table.kv td{padding:10px 8px;border-bottom:1px solid var(--line)}
table.list tr:hover td{background:rgba(255,255,255,.015)}
table.kv td:first-child{color:var(--muted);width:180px}
.codes code{display:block;background:var(--bg);border:1px dashed var(--gold);padding:9px 13px;border-radius:8px;margin:8px 0;font-family:var(--mono);color:var(--gold);letter-spacing:.03em}
.flash{padding:12px 15px;border-radius:10px;margin:14px 0;font-size:13px}
.flash.ok{background:var(--down-dim);border:1px solid rgba(23,192,138,.4);color:var(--down)}
.flash.err{background:rgba(255,77,79,.1);border:1px solid rgba(255,77,79,.4);color:var(--up)}
.crumb{font-size:12.5px;color:var(--muted);margin-top:16px}.crumb a:hover{color:var(--gold)}
.foot{border-top:1px solid var(--line);margin-top:52px;padding:24px 20px;color:var(--faint);font-size:12px;text-align:center}
.pagination{display:flex;gap:6px;margin:16px 0;font-size:13px}
.pagination a,.pagination span{padding:6px 11px;border:1px solid var(--line);border-radius:8px}
.pagination a:hover{border-color:var(--gold)}
::selection{background:rgba(232,179,65,.3)}
@media(max-width:860px){.grid4{grid-template-columns:1fr 1fr}.statstrip{grid-template-columns:1fr 1fr}.links{display:none}.hero h1{font-size:26px}.grid2{grid-template-columns:1fr}}
/* ---- v2.1 原型同构组件 ---- */
.ticker{display:flex;gap:26px;overflow-x:auto;padding:9px 2px;border-bottom:1px dashed var(--line);font-size:12px;scrollbar-width:none;margin-top:2px}
.ticker::-webkit-scrollbar{display:none}
.ti{white-space:nowrap;color:var(--muted)}.ti b{font-weight:600;color:var(--ink2);margin-right:6px}
.ti i{font-style:normal}.ti .gold{color:var(--gold)}
.herog{display:grid;grid-template-columns:1.15fr .85fr;gap:26px;align-items:center}
.engine{padding:16px 18px;position:relative;overflow:hidden}
.engine::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 80% 0%,rgba(232,179,65,.07),transparent 60%);pointer-events:none}
.ehead{display:flex;justify-content:space-between;align-items:center;font-size:13px;font-weight:700}
.live{font-size:10px;color:var(--down);letter-spacing:.08em;animation:pulse 2s infinite}
@keyframes pulse{50%{opacity:.45}}
.egrid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:13px 0}
.egrid>div{background:var(--s2);border:1px solid var(--line);border-radius:9px;padding:9px 10px;text-align:center}
.egrid small{display:block;font-size:10.5px;color:var(--muted)}
.egrid b{font-size:17px;margin-top:3px;display:block;color:var(--gold)}
.efeed{border-top:1px dashed var(--line);padding-top:9px;display:flex;flex-direction:column;gap:6px;min-height:104px}
.fe{display:flex;gap:10px;font-size:12px;align-items:center}
.fe b{color:var(--gold);font-weight:600;margin-left:auto}
.fe.empty{color:var(--faint);justify-content:center;padding-top:30px}
.insbanner{margin-top:12px;padding:12px 16px;border:1px solid rgba(232,179,65,.35);background:rgba(232,179,65,.05);border-radius:11px;font-size:12.5px;color:var(--ink2);line-height:1.7}
.insbanner b{color:var(--gold)}
.easyrow{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:12px}
.easy{padding:12px 15px;font-size:12.5px;color:var(--ink2)}
.dualh{margin:0 0 4px;font-size:15px;color:var(--gold)}
@media(max-width:860px){.herog{grid-template-columns:1fr}.easyrow{grid-template-columns:1fr}}
/* ---- v2.2 后台侧边栏 / 公告条 ---- */
.ashell{display:flex;min-height:100vh}
.anav{width:198px;flex:0 0 198px;background:var(--surface);border-right:1px solid var(--line);padding:18px 12px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;gap:3px;overflow-y:auto}
.abrand{font-weight:800;font-size:16px;padding:0 10px 14px}.abrand b{color:var(--gold)}
.abrand small{display:block;color:var(--faint);font-weight:400;font-size:10.5px;margin-top:2px;letter-spacing:.06em}
.anav>a{display:block;padding:9px 12px;border-radius:8px;color:var(--ink2);font-size:13px;position:relative;transition:.13s}
.anav>a:hover{background:var(--s2);color:var(--ink)}
.anav>a.on{background:var(--s2);color:var(--gold);font-weight:700}
.anav>a.on::before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:3px;border-radius:2px;background:var(--gold)}
.agroup{font-size:10px;color:var(--faint);letter-spacing:.1em;padding:14px 12px 5px}
.aspace{flex:1}
.ame{font-size:11px;color:var(--muted);padding:0 12px 8px}
.amain{flex:1;padding:22px 28px 50px;max-width:1150px;min-width:0}
.annbar{background:rgba(232,179,65,.08);border-bottom:1px solid rgba(232,179,65,.3);color:var(--gold2);font-size:12.5px;padding:8px 0;text-align:center}
@media(max-width:860px){.ashell{flex-direction:column}.anav{width:100%;height:auto;position:static;flex-direction:row;flex-wrap:wrap;border-right:none;border-bottom:1px solid var(--line)}.aspace,.agroup,.ame{display:none}}
/* ---- v2.3 列表信息条 / 价格矩阵 ---- */
.lhead{display:grid;grid-template-columns:2.2fr 1.2fr 1fr 1fr .9fr;gap:14px;padding:4px 15px 8px;font-size:11px;color:var(--faint);letter-spacing:.04em}
.lrow{display:grid;grid-template-columns:2.2fr 1.2fr 1fr 1fr .9fr;gap:14px;align-items:center;padding:12px 15px;background:var(--surface);border:1px solid var(--line);border-radius:11px;transition:.14s;margin-bottom:9px}
.lrow:hover{border-color:var(--line2);transform:translateX(2px)}
.lc{min-width:0;font-size:13px}.lc.item{display:flex;gap:12px;align-items:center}
.lc.item b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lc.item small{display:block;margin-top:2px}
.ta-r{text-align:right}.disc{color:var(--down);font-family:var(--mono);font-size:12px;font-weight:700}
.mxwrap{overflow-x:auto;margin:6px 0 4px}
table.mx{border-collapse:separate;border-spacing:7px;min-width:520px}
table.mx th{font-size:12px;color:var(--muted);font-weight:600;text-align:left;padding:2px 6px}
.mcell{display:flex;flex-direction:column;gap:2px;align-items:center;padding:10px 14px;border:1px solid var(--line);border-radius:10px;background:var(--s2);cursor:pointer;transition:.13s;min-width:96px}
.mcell:hover{border-color:var(--line2)}
.mcell input{display:none}
.mcell.on{border-color:var(--gold);background:rgba(232,179,65,.07);box-shadow:0 0 0 2px rgba(232,179,65,.16)}
.mcell b{font-size:13.5px}.mcell i{font-style:normal}
.sumbox{margin-top:16px;border:1px dashed var(--line2);border-radius:11px;padding:12px 16px}
.sumbox .srow{display:flex;justify-content:space-between;align-items:baseline;padding:5px 0;font-size:13px;color:var(--ink2)}
.sumbox .tot{border-top:1px dashed var(--line);margin-top:5px;padding-top:10px}
.sumbox .gold{color:var(--gold);font-size:17px}
@media(max-width:820px){.lhead{display:none}.lrow{grid-template-columns:1.6fr 1fr auto}.lc:nth-child(2),.lc:nth-child(3){display:none}}
/* ---- v2.4 搜索 ---- */
.tsearch{margin-left:auto}
.tsearch input{width:170px;background:var(--bg);border:1px solid var(--line2);border-radius:9px;padding:8px 12px 8px 30px;color:var(--ink);font-size:12.5px;transition:.18s;
background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='13' height='13' fill='none' stroke='%2379839A' stroke-width='2'%3E%3Ccircle cx='5.5' cy='5.5' r='4.5'/%3E%3Cpath d='M9 9l3 3'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:10px center}
.tsearch input:focus{outline:none;border-color:var(--gold);width:230px}
.hsearch{display:flex;gap:9px;margin-top:20px;max-width:560px}
.hsearch input{flex:1;background:var(--surface);border:1px solid var(--line2);border-radius:11px;padding:13px 16px;color:var(--ink);font-size:14px}
.hsearch input:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(232,179,65,.12)}
.hhints{margin-top:10px;font-size:12px;color:var(--faint)}
.hhints a{color:var(--muted);margin-right:14px;border-bottom:1px dashed var(--line2);padding-bottom:1px}
.hhints a:hover{color:var(--gold);border-color:var(--gold)}
@media(max-width:860px){.tsearch{display:none}.hsearch{max-width:none}}
/* ---- v2.5 四大市场 · 原型逐字移植（docs/设计原型.html） ---- */
:root{--disp:"Noto Sans SC",system-ui,sans-serif;--radius:12px;--surface-2:var(--s2);--line-2:var(--line2)}
.section{padding:34px 0}
.rank-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;flex-wrap:wrap;gap:12px}
.eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);font-weight:600}
.h-sec{font-family:var(--disp);font-size:20px;font-weight:600;letter-spacing:.01em;margin:0}
h2.h-sec::before{content:none}
.cats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.cat{padding:18px;border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);position:relative;overflow:hidden;cursor:pointer;transition:.18s}
.cat:hover{transform:translateY(-3px);border-color:var(--line-2);box-shadow:0 12px 30px -14px rgba(0,0,0,.7)}
.cat::before{content:"";position:absolute;inset:0 0 auto 0;width:auto;height:2px;background:var(--accent,var(--gold));opacity:.85}
.cat-ic{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;background:var(--surface-2);border:1px solid var(--line-2);margin-bottom:14px;color:var(--accent,var(--gold))}
.cat h4{margin:0 0 4px;font-size:15.5px;font-weight:600}
.cat .cd{font-size:12px;color:var(--muted);min-height:32px}
.mfoot{display:flex;gap:18px;margin-top:14px;border-top:1px dashed var(--line-2);padding-top:12px}
.mfoot .n{font-size:11px;color:var(--faint)}
.mfoot .n b{display:block;font-family:var(--mono);color:var(--ink);font-size:14px;font-weight:600;margin-top:2px}
.mgua{display:flex;justify-content:space-between;align-items:center;margin-top:13px;padding-top:12px;border-top:1px dashed var(--line)}
.vbadge{display:inline-flex;align-items:center;gap:4px;font-size:10.5px;padding:2px 7px;border-radius:5px;background:var(--down-dim);color:var(--down);font-weight:600}
.msell{font-size:12px;font-weight:700;color:var(--down);cursor:pointer}
.msell:hover{text-decoration:underline;color:var(--down)}
@media(max-width:1020px){.cats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.cats{grid-template-columns:1fr}}
/* ---- v3.0 会员中心 ---- */
.mshell{display:grid;grid-template-columns:244px minmax(0,1fr);gap:22px;margin:20px 0 10px;align-items:start}
.mside{position:sticky;top:76px}
.mid{display:flex;gap:12px;align-items:center;padding:16px;border:1px solid var(--line);border-radius:14px;background:
radial-gradient(120% 140% at 0% 0%,rgba(232,179,65,.10),transparent 55%),var(--surface)}
.mava{width:46px;height:46px;border-radius:12px;flex:0 0 auto;display:grid;place-items:center;font-weight:800;font-size:19px;color:#141005;background:linear-gradient(135deg,var(--gold),var(--gold2));box-shadow:0 6px 16px -8px rgba(232,179,65,.6)}
.minfo{flex:1;min-width:0}.minfo b{display:block;font-size:14.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.minfo>span{font-size:11px}
.mbadges{display:flex;gap:6px;margin-top:6px;flex-wrap:wrap}
.mbadges .tag{padding:1px 7px;font-size:10.5px}
.ring{position:relative;width:44px;height:44px;flex:0 0 auto}
.ring svg{width:44px;height:44px;transform:rotate(-90deg)}
.ring circle{fill:none;stroke-width:3.5;stroke-linecap:round}
.ring .bgc{stroke:var(--line2)}
.ring .fgc{stroke:var(--gold);transition:stroke-dasharray .6s}
.ring i{position:absolute;inset:0;display:grid;place-items:center;font-style:normal;font-family:var(--mono);font-size:12px;font-weight:700;color:var(--gold)}
.mnav{display:flex;flex-direction:column;gap:3px;margin-top:12px;padding:8px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.mnav a{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:9px;color:var(--ink2);font-size:13px;transition:.13s}
.mnav a svg{width:16px;height:16px;flex:0 0 auto}
.mnav a:hover{background:var(--s2);color:var(--ink)}
.mnav a.on{background:var(--s2);color:var(--gold);font-weight:700;box-shadow:inset 3px 0 0 var(--gold)}
.mlogout{margin-top:12px}
.mmain h1{margin-top:2px}
.assetgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:14px 0}
.acard{padding:15px 17px;border:1px solid var(--line);border-radius:13px;background:var(--surface);position:relative;overflow:hidden}
.acard::before{content:"";position:absolute;inset:0 0 auto 0;height:2px;background:var(--ac,var(--gold));opacity:.8}
.acard small{font-size:11px;color:var(--muted);letter-spacing:.03em}
.acard b{display:block;font-family:var(--mono);font-size:21px;margin-top:7px}
.acard b i{font-style:normal;font-size:11px;color:var(--faint);font-weight:400}
.qact{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:6px 0 4px}
.qa{display:flex;gap:11px;align-items:center;padding:13px 15px;border:1px solid var(--line);border-radius:12px;background:var(--surface);transition:.15s;font-size:13px;font-weight:600}
.qa svg{width:17px;height:17px;color:var(--gold)}
.qa:hover{transform:translateY(-2px);border-color:var(--line2);color:var(--ink)}
.pill{display:inline-block;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:700;border:1px solid}
.pill.run{color:var(--gold);border-color:rgba(232,179,65,.45);background:rgba(232,179,65,.08)}
.pill.ok{color:var(--down);border-color:rgba(23,192,138,.45);background:var(--down-dim)}
.pill.wait{color:var(--muted);border-color:var(--line2);background:var(--s2)}
.pill.bad{color:var(--up);border-color:rgba(255,77,79,.45);background:rgba(255,77,79,.08)}
.orow{display:grid;grid-template-columns:minmax(0,2fr) .9fr .9fr auto;gap:14px;align-items:center;padding:13px 16px;background:var(--surface);border:1px solid var(--line);border-radius:12px;margin-bottom:9px;transition:.13s}
.orow:hover{border-color:var(--line2)}
.orow .ot b{display:block;font-size:13.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.orow .ot small{color:var(--faint);font-family:var(--mono);font-size:11px}
.mtabs{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0}
.mtab{padding:7px 14px;border:1px solid var(--line2);border-radius:9px;font-size:12.5px;color:var(--ink2);transition:.13s}
.mtab:hover{color:var(--ink)}
.mtab.on{border-color:var(--gold);color:var(--gold);background:rgba(232,179,65,.07);font-weight:700}
.mtab .c{font-family:var(--mono);font-size:10.5px;color:var(--faint);margin-left:5px}
.mtab.on .c{color:var(--gold)}
.dephex{display:flex;gap:10px;align-items:center;background:var(--bg);border:1px dashed var(--gold);border-radius:10px;padding:12px 14px;font-family:var(--mono);font-size:13px;color:var(--gold);letter-spacing:.02em;flex-wrap:wrap}
.dephex .cp{margin-left:auto;cursor:pointer;font-size:11.5px;color:var(--ink2);border:1px solid var(--line2);border-radius:7px;padding:5px 11px;font-family:"Noto Sans SC"}
.dephex .cp:hover{color:var(--gold);border-color:var(--gold)}
.lentry{display:grid;grid-template-columns:26px minmax(0,1.4fr) 1fr 1fr;gap:12px;align-items:center;padding:11px 14px;border-bottom:1px solid var(--line);font-size:12.5px}
.lentry:last-child{border:none}
.lentry .io{width:24px;height:24px;border-radius:7px;display:grid;place-items:center;font-weight:800;font-size:13px}
.lentry .io.in{color:var(--down);background:var(--down-dim)}
.lentry .io.out{color:var(--up);background:rgba(255,77,79,.1)}
.secitem{display:flex;gap:12px;align-items:flex-start;padding:13px 0;border-bottom:1px dashed var(--line)}
.secitem:last-child{border:none}
.secitem svg{width:17px;height:17px;color:var(--gold);flex:0 0 auto;margin-top:2px}
@media(max-width:960px){.mshell{grid-template-columns:1fr}.mside{position:static}.mnav{flex-direction:row;overflow-x:auto}.mnav a{white-space:nowrap}.mlogout{display:none}.assetgrid,.qact{grid-template-columns:1fr 1fr}.orow{grid-template-columns:minmax(0,1.4fr) auto}.orow .oc2,.orow .oc3{display:none}}
.catgrp{font-size:12px;color:var(--gold);border-bottom:1px solid var(--line);padding:8px 2px 5px;margin-top:4px;letter-spacing:.03em}
.catgrp b{font-weight:700}
/* ---- 顶栏「饰品道具」下拉 ---- */
.links .navdrop{position:relative;display:inline-flex;align-items:center;vertical-align:middle}
.links .navdrop>a{display:inline-flex;align-items:center;gap:3px}
.ndar{font-style:normal;font-size:9px;opacity:.6;line-height:1;position:relative;top:1px}
.links .navmenu{display:none;position:absolute;top:calc(100% + 6px);left:0;min-width:132px;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:6px;z-index:1000;box-shadow:0 14px 34px -14px rgba(0,0,0,.75)}
/* 展开由 JS(fixed) 控制 */
.links .navmenu a{display:block;padding:8px 12px;border-radius:7px;font-size:13px;color:var(--ink2);white-space:nowrap}
.links .navmenu a:hover{background:var(--s2);color:var(--gold)}
