/* =========================================================================
   matrix.global 路 D銆岃建閬?Orbit銆嶄富棰?   娣辩┖搴?#05070D / 鍗婇€忔槑鐜荤拑鍗?/ 钖勮嵎缁?#3EE8B5 / 钃濈传娓愬彉 / 杞ㄩ亾鐜?& 鐐归樀
   绛夊澶у啓鏍囩 路 230px 鍒嗙粍渚ф爮 路 1440脳900 浼樺寲
   ========================================================================= */
@font-face{
  font-family:'Inter';
  font-style:normal;
  font-weight:100 900;
  font-display:swap;
  src:url('../../vendor/inter-latin.woff2') format('woff2');
}
:root{
  --o-bg:#05070D;
  --o-bg-2:#070B14;
  --o-panel:rgba(18,26,42,.62);
  --o-panel-solid:#0E1524;
  --o-line:rgba(120,180,255,.14);
  --o-line-strong:rgba(120,180,255,.28);
  --o-ink:#E8EDF7;
  --o-muted:#8A94A6;
  --o-dim:#5C6678;
  --o-mint:#3EE8B5;
  --o-mint-2:#4BE3B0;
  --o-blue:#5B8CFF;
  --o-violet:#8B5CF6;
  --o-rose:#F472B6;
  --o-amber:#F5B84B;
  --o-red:#FF7A7A;
  --o-grad:linear-gradient(115deg,#8B5CF6,#5B8CFF 55%,#3EE8B5);
  --o-glow:0 0 24px rgba(62,232,181,.18);
  --o-shadow:0 18px 46px rgba(0,0,0,.42);
  --o-r:14px;
  --font:Inter,"Helvetica Neue","PingFang SC",Roboto,"Source Han Sans","Microsoft YaHei",-apple-system,BlinkMacSystemFont,sans-serif;
  --mono:Consolas,"SF Mono","Cascadia Mono",monospace;
  color-scheme:dark;
}
*{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%}
body{
  background:var(--o-bg);color:var(--o-ink);font-family:var(--font);
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow:hidden;
}
body::before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:0;
  background:
    radial-gradient(760px 520px at 82% 10%,rgba(62,232,181,.09),transparent 70%),
    radial-gradient(820px 560px at 8% -6%,rgba(91,140,255,.11),transparent 70%),
    radial-gradient(700px 500px at 52% 112%,rgba(139,92,246,.08),transparent 72%),
    linear-gradient(rgba(120,180,255,.042) 1px,transparent 1px),
    linear-gradient(90deg,rgba(120,180,255,.042) 1px,transparent 1px);
  background-size:auto,auto,auto,64px 64px,64px 64px;
  mask-image:linear-gradient(#000 62%,rgba(0,0,0,.45) 100%);
}
body::after{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:0;opacity:.5;
  background-image:radial-gradient(rgba(120,180,255,.16) 1px,transparent 1px);
  background-size:26px 26px;
  mask-image:radial-gradient(720px 560px at 78% 24%,#000,transparent 76%);
}
#app{height:100%;position:relative;z-index:1}
[v-cloak]{display:none!important}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font-family:inherit}
button{cursor:pointer}
::selection{background:rgba(62,232,181,.24);color:#F4FFFB}
::-webkit-scrollbar{width:8px;height:8px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:rgba(120,180,255,.16);border-radius:8px}
::-webkit-scrollbar-thumb:hover{background:rgba(120,180,255,.28)}

/* ---------- utilities ---------- */
.row{display:flex;align-items:center}
.col{display:flex;flex-direction:column}
.grow{flex:1;min-width:0}
.mono{font-family:var(--mono)}
.muted{color:var(--o-muted)}
.dim{color:var(--o-dim)}
.mint{color:var(--o-mint)}
.amber{color:var(--o-amber)}
.rose{color:var(--o-rose)}
.blue{color:var(--o-blue)}
.violet{color:var(--o-violet)}
.center{display:flex;align-items:center;justify-content:center}
.w-full{width:100%}
.gap6{gap:6px}.gap8{gap:8px}.gap10{gap:10px}.gap12{gap:12px}.gap14{gap:14px}.gap18{gap:18px}
.mt6{margin-top:6px}.mt8{margin-top:8px}.mt10{margin-top:10px}.mt12{margin-top:12px}.mt14{margin-top:14px}.mt16{margin-top:16px}.mt20{margin-top:20px}
.mb6{margin-bottom:6px}.mb8{margin-bottom:8px}.mb10{margin-bottom:10px}.mb12{margin-bottom:12px}.mb14{margin-bottom:14px}
.nowrap{white-space:nowrap}
.elip{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.label{
  font-family:var(--mono);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;
  color:var(--o-dim);font-weight:500;
}
.hint{font-size:12px;line-height:1.7;color:var(--o-dim)}
.note{font-family:var(--mono);font-size:11px;letter-spacing:.05em;color:var(--o-dim)}
.err-line{display:flex;align-items:flex-start;gap:6px;font-size:12.5px;line-height:1.55;color:#FF9DBF}
.err-line::before{content:"!";flex:none;width:14px;height:14px;border-radius:50%;background:rgba(244,114,182,.16);color:#FF9DBF;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;margin-top:1px}
.ok-line{font-size:12.5px;color:#7FF3D4;display:flex;align-items:center;gap:6px}
.warn-line{font-size:12.5px;color:#FFD58A}
.code{
  font-family:var(--mono);font-size:12px;line-height:1.6;color:#BFD0E6;
  background:rgba(0,0,0,.34);border:1px solid var(--o-line);border-radius:7px;padding:7px 9px;
  word-break:break-all;
}

/* ---------- app shell ---------- */
.app{display:flex;height:100vh;overflow:hidden}
.side{
  width:230px;flex:none;display:flex;flex-direction:column;padding:16px 13px 14px;
  border-right:1px solid rgba(120,180,255,.09);
  background:linear-gradient(180deg,#080E19 0%,#060A12 100%);
  position:relative;z-index:4;
}
.side::after{
  content:"";position:absolute;right:-1px;top:0;bottom:0;width:1px;
  background:linear-gradient(180deg,rgba(62,232,181,.25),transparent 28%,transparent 72%,rgba(91,140,255,.2));
  pointer-events:none;
}
.side-brand{display:flex;align-items:center;gap:11px;padding:4px 8px 18px}
.side-brand .nm{font-size:17px;font-weight:750;letter-spacing:.05em;line-height:1.2}
.side-brand .sub{font-family:var(--mono);font-size:9.5px;letter-spacing:.22em;color:var(--o-dim);margin-top:3px}
.logo-o{
  width:26px;height:26px;flex:none;position:relative;border-radius:50%;
  border:1.5px solid rgba(62,232,181,.92);box-shadow:0 0 16px rgba(62,232,181,.26);
}
.logo-o::before{content:"";position:absolute;inset:5px;border-radius:50%;border:1px solid rgba(91,140,255,.7);transform:rotate(40deg)}
.logo-o::after{content:"";position:absolute;inset:9px;border-radius:50%;background:var(--o-mint);box-shadow:0 0 11px var(--o-mint)}
.logo-o.lg{width:34px;height:34px}
.logo-o.lg::before{inset:7px}
.logo-o.lg::after{inset:12px}
.logo-o.sm{width:20px;height:20px}
.logo-o.sm::before{inset:4px}
.logo-o.sm::after{inset:7px}

.nav-group{
  font-family:var(--mono);font-size:9.5px;letter-spacing:.24em;text-transform:uppercase;
  color:var(--o-dim);padding:15px 12px 7px;
}
.nav-item{
  display:flex;align-items:center;gap:10px;height:36px;padding:0 11px;margin-bottom:2px;
  border-radius:9px;font-size:13.8px;color:#93A1B8;position:relative;cursor:pointer;
  transition:color .16s,background .16s;user-select:none;
}
.nav-item .nav-ic{width:16px;height:16px;flex:none;opacity:.72;display:flex}
.nav-item .nav-ic svg{width:16px;height:16px}
.nav-item:hover{color:#D7E3F5;background:rgba(255,255,255,.03)}
.nav-item.on{
  color:var(--nav-active-fg,#DFFBF6);
  font-weight:700;
  background:var(--nav-active-bg,linear-gradient(90deg,rgba(62,232,181,.15),rgba(62,232,181,.02)));
  box-shadow:inset 0 0 0 1px var(--nav-active-bg,rgba(47,107,255,.18));
}
.nav-item.on .nav-ic{opacity:1;color:var(--nav-active-fg,var(--o-mint));filter:drop-shadow(0 0 6px rgba(47,107,255,.35))}
.nav-item.on::before{
  content:"";position:absolute;left:0;top:9px;bottom:9px;width:2px;border-radius:2px;
  background:var(--nav-active-fg,var(--o-mint));box-shadow:0 0 10px currentColor;
}
.nav-badge{
  margin-left:auto;font-family:var(--mono);font-size:10.5px;line-height:1;
  background:rgba(245,184,75,.14);color:var(--o-amber);padding:3px 6px;border-radius:20px;
}
.side-foot{margin-top:auto;border-top:1px solid rgba(120,180,255,.08);padding-top:12px}
.quota-mini{
  background:rgba(255,255,255,.025);border:1px solid rgba(120,180,255,.09);
  border-radius:10px;padding:10px 11px;margin-bottom:10px;
}
.quota-mini .k{display:flex;justify-content:space-between;font-family:var(--mono);font-size:9.5px;letter-spacing:.12em;color:var(--o-dim);text-transform:uppercase}
.quota-mini .k b{color:#B9C9E2;font-weight:600}
.quota-mini .bar{height:4px;border-radius:4px;background:rgba(255,255,255,.07);margin-top:8px;overflow:hidden}
.quota-mini .bar i{display:block;height:100%;background:linear-gradient(90deg,var(--o-mint),var(--o-blue));border-radius:4px;transition:width .4s}
.user-chip{display:flex;align-items:center;gap:9px;padding:5px 4px;border-radius:9px;cursor:pointer}
.user-chip:hover{background:rgba(255,255,255,.03)}
.avatar{
  width:30px;height:30px;flex:none;border-radius:50%;display:flex;align-items:center;justify-content:center;
  font-family:var(--mono);font-size:11px;font-weight:700;color:#F4FFFB;
  background:linear-gradient(135deg,var(--o-violet),var(--o-blue));
  box-shadow:0 0 0 1px rgba(255,255,255,.1),0 4px 14px rgba(60,80,180,.35);
  text-transform:uppercase;
}
.user-chip .nm{font-size:12.5px;color:#CBD8EC;max-width:128px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}
.user-chip .rl{font-family:var(--mono);font-size:9.5px;letter-spacing:.08em;color:var(--o-dim);margin-top:2px;max-width:128px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.main{flex:1;display:flex;flex-direction:column;min-width:0}
.topbar{
  height:58px;flex:none;display:flex;align-items:center;gap:14px;padding:0 22px;
  border-bottom:1px solid rgba(120,180,255,.09);
  background:rgba(8,13,22,.6);backdrop-filter:blur(16px);position:relative;z-index:3;
}
.crumb{font-size:13.5px;color:var(--o-dim);white-space:nowrap}
.crumb b{color:var(--o-ink);font-weight:600}
.zone-chip{
  display:inline-flex;align-items:center;gap:7px;height:25px;padding:0 10px;border-radius:20px;
  font-family:var(--mono);font-size:10px;letter-spacing:.14em;color:#8FEBD4;text-transform:uppercase;
  border:1px solid rgba(62,232,181,.24);background:rgba(62,232,181,.06);white-space:nowrap;
}
.zone-chip i{width:6px;height:6px;border-radius:50%;background:var(--o-mint);box-shadow:0 0 8px var(--o-mint);animation:blink 2.6s ease-in-out infinite}
.search-box{
  margin-left:auto;display:flex;align-items:center;gap:8px;width:250px;height:33px;
  border:1px solid var(--o-line);border-radius:9px;padding:0 11px;background:rgba(6,10,18,.55);
  color:var(--o-dim);font-size:13px;transition:.16s;
}
.search-box:focus-within{border-color:rgba(62,232,181,.42);box-shadow:0 0 0 3px rgba(62,232,181,.06)}
.search-box svg{width:14px;height:14px;flex:none;opacity:.8}
.search-box input{flex:1;min-width:0;background:transparent;border:0;outline:0;color:var(--o-ink);font-size:13px}
.search-box input::placeholder{color:#515C74}
.top-acts{display:flex;align-items:center;gap:8px}
.top-user{display:flex;flex-direction:column;align-items:flex-end;gap:1px;max-width:172px;line-height:1.25;padding:0 2px}
.top-user .em{font-size:12px;color:#C9D6EA;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:172px}
.top-user .tn{font-family:var(--mono);font-size:9.5px;letter-spacing:.08em;color:var(--o-dim);white-space:nowrap}
@media (max-width:1300px){.top-user{display:none}}
.icon-btn{
  width:33px;height:33px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;
  border:1px solid var(--o-line);background:rgba(255,255,255,.02);color:var(--o-muted);position:relative;
  transition:.16s;
}
.icon-btn:hover{color:#DCE6F7;border-color:var(--o-line-strong);background:rgba(255,255,255,.05)}
.icon-btn svg{width:15px;height:15px}
.icon-btn .red-dot{position:absolute;right:7px;top:7px;width:6px;height:6px;border-radius:50%;background:var(--o-rose);box-shadow:0 0 8px rgba(244,114,182,.9)}
.menu-btn{display:none}

.content{flex:1;overflow:auto;padding:20px 24px 26px;min-height:0;position:relative}
.page{display:flex;flex-direction:column;gap:14px;min-height:100%}
.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;flex-wrap:wrap;flex-direction:row}
.page-head h1{font-size:23px;font-weight:750;letter-spacing:-.01em;line-height:1.2}
.page-head .sub{font-size:13px;color:var(--o-dim);margin-top:5px;line-height:1.5}
.page-acts{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.head-line{display:flex;align-items:center;gap:12px}

/* ---------- buttons ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:7px;
  height:34px;padding:0 14px;border-radius:9px;border:1px solid transparent;
  font-size:13.5px;font-weight:600;letter-spacing:.01em;color:#CBD9EF;background:transparent;
  white-space:nowrap;transition:transform .15s,box-shadow .15s,background .15s,border-color .15s;
}
.btn svg{width:14px;height:14px;flex:none}
.btn-primary{
  background:var(--btn-primary-bg,linear-gradient(120deg,#2F6BFF,#5B8CFF));color:var(--btn-primary-fg,#fff);
  box-shadow:0 6px 18px rgba(15,35,60,.18);
}
.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 10px 26px rgba(15,35,60,.26)}
.btn-grad{
  background:linear-gradient(115deg,rgba(139,92,246,.9),rgba(91,140,255,.92) 55%,rgba(62,232,181,.9));
  color:#04121F;font-weight:700;box-shadow:0 8px 24px rgba(91,140,255,.22);
}
.btn-grad:hover:not(:disabled){transform:translateY(-1px)}
.btn-ghost,.btn-line{border-color:var(--o-line-strong);background:rgba(255,255,255,.02);color:#CBD9EF}
.btn-ghost:hover:not(:disabled),.btn-line:hover:not(:disabled){border-color:rgba(120,180,255,.45);background:rgba(255,255,255,.05);color:#E8EDF7}
.btn-danger{border-color:rgba(244,114,182,.36);background:rgba(244,114,182,.08);color:#FFA8D0}
.btn-danger:hover:not(:disabled){background:rgba(244,114,182,.14);border-color:rgba(244,114,182,.55)}
.btn-sm{height:28px;padding:0 10px;font-size:12.5px;border-radius:7px}
.btn-sm svg{width:12px;height:12px}
.btn-lg{height:44px;font-size:14.5px;border-radius:10px;padding:0 18px}
.btn-icon{width:34px;padding:0}
.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important;box-shadow:none}
.btn .spin{border-top-color:currentColor}
.link{color:var(--o-mint);font-weight:600;cursor:pointer}
.link:hover{text-decoration:underline;text-underline-offset:3px}

/* ---------- card / panel ---------- */
.card{
  position:relative;background:var(--o-panel);border:1px solid var(--o-line);border-radius:var(--o-r);
  backdrop-filter:blur(14px);box-shadow:0 10px 30px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.03);
  display:flex;flex-direction:column;min-width:0;
}
.card.hover:hover{border-color:var(--o-line-strong);box-shadow:0 14px 38px rgba(0,0,0,.32)}
.card-h{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px 0}
.card-h .t{font-size:14px;font-weight:650;letter-spacing:.01em;color:#DCE6F7}
.card-h .m{font-family:var(--mono);font-size:10px;letter-spacing:.16em;color:var(--o-dim);text-transform:uppercase}
.card-h .acts{display:flex;align-items:center;gap:6px}
.card-b{padding:14px 16px 16px;flex:1;min-height:0}
.card-b.tight{padding:10px 12px 12px}
.card-b.flush{padding:0}
.card-foot{padding:10px 16px;border-top:1px solid rgba(120,180,255,.07);display:flex;align-items:center;justify-content:space-between;gap:10px}
.sect{margin-top:0}
.section-h{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border-bottom:1px solid rgba(120,180,255,.08)}
.section-h .t{font-size:13.5px;font-weight:650;color:#DCE6F7}
.section-h .m{font-family:var(--mono);font-size:10px;letter-spacing:.14em;color:var(--o-dim);text-transform:uppercase}
.center-note{display:flex;align-items:center;justify-content:center;gap:10px;padding:40px;color:var(--o-dim);font-size:13px}

/* ---------- pills / status ---------- */
.pill{
  display:inline-flex;align-items:center;gap:5px;height:20px;padding:0 8px;border-radius:20px;
  font-family:var(--mono);font-size:10px;letter-spacing:.05em;line-height:1;
  border:1px solid rgba(120,180,255,.16);background:rgba(255,255,255,.04);color:#A9B8CE;
}
.pill.ok{background:rgba(62,232,181,.1);color:#7FF3D4;border-color:rgba(62,232,181,.22)}
.pill.warn{background:rgba(245,184,75,.11);color:#FFD58A;border-color:rgba(245,184,75,.24)}
.pill.err{background:rgba(244,114,182,.1);color:#FFA8D0;border-color:rgba(244,114,182,.24)}
.pill.info{background:rgba(91,140,255,.12);color:#9FB8FF;border-color:rgba(91,140,255,.26)}
.pill.violet{background:rgba(139,92,246,.13);color:#C4B0FF;border-color:rgba(139,92,246,.28)}
.tag{
  display:inline-flex;align-items:center;height:19px;padding:0 7px;border-radius:6px;
  font-size:11px;color:#A9B8CE;background:rgba(255,255,255,.04);border:1px solid rgba(120,180,255,.1);
}
.sdot{width:6px;height:6px;border-radius:50%;flex:none;display:inline-block}
.sdot.ok{background:var(--o-mint);box-shadow:0 0 7px rgba(62,232,181,.75)}
.sdot.warn{background:var(--o-amber);box-shadow:0 0 7px rgba(245,184,75,.7)}
.sdot.err{background:var(--o-rose);box-shadow:0 0 7px rgba(244,114,182,.7)}
.sdot.info{background:var(--o-blue);box-shadow:0 0 7px rgba(91,140,255,.7)}
.sdot.dim{background:var(--o-dim)}
.pico{
  display:inline-flex;align-items:center;justify-content:center;flex:none;
  width:26px;height:26px;border-radius:8px;color:#fff;
  font-family:var(--mono);font-size:10.5px;font-weight:700;letter-spacing:.02em;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.14),0 3px 10px rgba(0,0,0,.28);
}
.pico.sm{width:20px;height:20px;border-radius:6px;font-size:9px}
.pico.lg{width:36px;height:36px;border-radius:10px;font-size:13px}
.pico.xl{width:44px;height:44px;border-radius:12px;font-size:15px}

/* ---------- forms ---------- */
.field{display:flex;flex-direction:column;gap:7px;min-width:0}
.field .lbl{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:13px;color:#A9B4C7;font-weight:500}
.field .lbl em{font-style:normal;font-family:var(--mono);font-size:9.5px;letter-spacing:.16em;color:var(--o-dim);text-transform:uppercase;font-weight:400}
.inp{
  width:100%;height:40px;border-radius:10px;padding:0 12px;outline:0;
  background:rgba(6,10,18,.72);border:1px solid var(--o-line);color:var(--o-ink);font-size:14px;
  transition:border-color .16s,box-shadow .16s;color-scheme:dark;
}
.inp::placeholder{color:#505A72}
.inp:focus{border-color:rgba(62,232,181,.55);box-shadow:0 0 0 3px rgba(62,232,181,.08)}
.inp:disabled{opacity:.6}
.inp.sm{height:32px;font-size:13px;border-radius:8px}
.inp-wrap{position:relative;display:flex;align-items:center}
.inp-wrap>.lead{position:absolute;left:12px;display:flex;color:var(--o-dim);pointer-events:none}
.inp-wrap>.lead svg{width:15px;height:15px}
.inp-wrap .inp.has-lead{padding-left:37px}
.inp-wrap .inp.has-trail{padding-right:44px}
.inp-wrap>.trail{position:absolute;right:5px;display:flex;align-items:center}
.inp-wrap>.trail .eye{
  width:30px;height:30px;border:0;background:transparent;color:var(--o-dim);
  display:flex;align-items:center;justify-content:center;border-radius:7px;
}
.inp-wrap>.trail .eye:hover{color:var(--o-mint);background:rgba(255,255,255,.04)}
.inp-wrap>.trail .eye svg{width:16px;height:16px}
textarea.inp{height:auto;min-height:110px;padding:11px 12px;line-height:1.7;resize:vertical}
select.inp{appearance:none;padding-right:30px;cursor:pointer;
  background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 16 16' fill='none' stroke='%238A94A6' stroke-width='1.6'%3E%3Cpath d='M4 6l4 4 4-4'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 11px center;
}
select.inp option{background:#0B1220;color:#E8EDF7}
.check{display:flex;align-items:flex-start;gap:8px;font-size:12.5px;line-height:1.55;color:var(--o-muted);cursor:pointer;user-select:none}
.check input{
  appearance:none;width:15px;height:15px;flex:none;margin-top:1px;border-radius:4px;cursor:pointer;
  border:1px solid rgba(120,180,255,.4);background:rgba(6,10,18,.8);position:relative;
}
.check input:checked{background:var(--o-mint);border-color:var(--o-mint)}
.check input:checked::after{content:"\2713";position:absolute;inset:0;color:#03221F;font-size:11px;font-weight:800;display:flex;align-items:center;justify-content:center}
.check .lk{color:#9FB8FF;cursor:pointer}
.check .lk:hover{text-decoration:underline;text-underline-offset:2px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.form-col{display:flex;flex-direction:column;gap:12px}
.seg{display:inline-flex;padding:3px;border:1px solid var(--o-line);border-radius:9px;background:rgba(255,255,255,.02)}
.seg button{height:26px;padding:0 11px;border:0;background:transparent;color:var(--o-muted);font-size:12.5px;border-radius:6px;transition:.15s;white-space:nowrap}
.seg button:hover{color:#DCE6F7}
.seg button.on{background:var(--tab-active-bg,rgba(47,107,255,.14));color:var(--tab-active-fg,#DFFBF6);box-shadow:inset 0 0 0 1px var(--tab-active-line,rgba(47,107,255,.22))}
.seg button:disabled{opacity:.5;cursor:not-allowed}

/* ---------- KPI ---------- */
.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.kpi{
  position:relative;overflow:hidden;padding:14px 15px 13px;border-radius:13px;
  background:linear-gradient(180deg,rgba(18,26,42,.72),rgba(10,16,27,.56));
  border:1px solid var(--o-line);box-shadow:inset 0 1px 0 rgba(255,255,255,.03),0 8px 26px rgba(0,0,0,.18);
}
.kpi .sp{position:absolute;left:0;top:15px;bottom:15px;width:3px;border-radius:3px;background:var(--o-mint);box-shadow:0 0 14px rgba(62,232,181,.55)}
.kpi.warn .sp{background:var(--o-amber);box-shadow:0 0 14px rgba(245,184,75,.5)}
.kpi.err .sp{background:var(--o-rose);box-shadow:0 0 14px rgba(244,114,182,.5)}
.kpi.info .sp{background:var(--o-blue);box-shadow:0 0 14px rgba(91,140,255,.55)}
.kpi.violet .sp{background:var(--o-violet);box-shadow:0 0 14px rgba(139,92,246,.5)}
.kpi .k{font-size:11.5px;color:var(--o-muted);display:flex;align-items:center;justify-content:space-between;gap:8px}
.kpi .k .lab{font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;color:var(--o-dim)}
.kpi .v{font-family:var(--mono);font-size:28px;font-weight:600;letter-spacing:-.02em;margin-top:5px;line-height:1.1;color:#F0F5FE}
.kpi .v small{font-family:var(--font);font-size:12px;color:var(--o-dim);font-weight:500;margin-left:4px;letter-spacing:0}
.kpi .d{font-size:11.5px;color:var(--o-dim);margin-top:5px;display:flex;align-items:center;gap:5px}
.kpi .d em{font-style:normal;color:var(--o-mint)}
.kpi .bg-ico{position:absolute;right:10px;bottom:6px;opacity:.1}
.kpi .bg-ico svg{width:42px;height:42px}

/* ---------- grids ---------- */
.grid12{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:14px}
.s2{grid-column:span 2}.s3{grid-column:span 3}.s4{grid-column:span 4}.s5{grid-column:span 5}
.s6{grid-column:span 6}.s7{grid-column:span 7}.s8{grid-column:span 8}.s9{grid-column:span 9}.s12{grid-column:span 12}

/* ---------- table ---------- */
.tbl{display:flex;flex-direction:column;min-width:0}
.tr{
  display:grid;align-items:center;gap:10px;padding:10px 14px;min-height:44px;
  border-bottom:1px solid rgba(120,180,255,.065);font-size:13px;color:#C9D6EA;
}
.tr:last-child{border-bottom:0}
.tr.hd{
  min-height:32px;padding:7px 14px;background:rgba(255,255,255,.017);
  font-family:var(--mono);font-size:9.5px;letter-spacing:.15em;text-transform:uppercase;color:var(--o-dim);
}
.tr:not(.hd):hover{background:rgba(255,255,255,.022)}
.tr .tt{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#D5E1F3}
.tr .tm{font-size:12px;color:var(--o-muted);white-space:nowrap}
.tr .num{font-family:var(--mono);font-size:12px;color:#A9B8CE;white-space:nowrap}
.tr.click{cursor:pointer}
.tbl-scroll{overflow:auto;flex:1;min-height:0}
.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;padding:36px 20px;text-align:center;color:var(--o-dim);font-size:13px;line-height:1.7}
.empty .e-ico{width:44px;height:44px;border-radius:14px;border:1px solid var(--o-line);background:rgba(255,255,255,.02);display:flex;align-items:center;justify-content:center;font-size:21px;color:#3A4A68}
.loading{display:flex;align-items:center;justify-content:center;gap:10px;padding:34px;color:var(--o-dim);font-size:13px}

/* ---------- spinner ---------- */
.spin{
  width:13px;height:13px;flex:none;border-radius:50%;display:inline-block;
  border:1.6px solid rgba(120,180,255,.25);border-top-color:var(--o-mint);
  animation:spin .7s linear infinite;
}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes blink{0%,100%{opacity:.35}50%{opacity:1}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes popIn{from{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}
@keyframes slideIn{from{opacity:0;transform:translateX(14px)}to{opacity:1;transform:none}}
@keyframes pulseS{0%,100%{opacity:.25;transform:scale(.7)}50%{opacity:1;transform:scale(1)}}
@keyframes orbitSpin{to{transform:rotate(360deg)}}

/* ---------- modal ---------- */
.mask{
  position:fixed;inset:0;z-index:90;display:flex;align-items:center;justify-content:center;padding:26px;
  background:rgba(3,5,10,.74);backdrop-filter:blur(7px);animation:fadeIn .16s ease;
}
.modal{
  width:560px;max-width:100%;max-height:88vh;display:flex;flex-direction:column;overflow:hidden;
  background:linear-gradient(180deg,#0D1422,#09101B);border:1px solid var(--o-line-strong);
  border-radius:16px;box-shadow:0 34px 90px rgba(0,0,0,.62),inset 0 1px 0 rgba(255,255,255,.05);
  animation:popIn .18s ease;position:relative;
}
.modal::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(62,232,181,.5),transparent);opacity:.5}
.modal.sm{width:440px}.modal.lg{width:720px}.modal.xl{width:900px}
.modal-h{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:17px 20px 14px;border-bottom:1px solid rgba(120,180,255,.08)}
.modal-h h3{font-size:16.5px;font-weight:700;letter-spacing:.01em;line-height:1.4}
.modal-h p{font-size:12.5px;color:var(--o-dim);margin-top:5px;line-height:1.6}
.modal-x{
  width:28px;height:28px;flex:none;border-radius:8px;border:1px solid transparent;background:transparent;
  color:var(--o-dim);display:flex;align-items:center;justify-content:center;font-size:14px;
}
.modal-x:hover{color:#E8EDF7;background:rgba(255,255,255,.05);border-color:var(--o-line)}
.modal-b{padding:18px 20px;overflow:auto;flex:1;min-height:0}
.modal-f{padding:13px 20px;border-top:1px solid rgba(120,180,255,.08);display:flex;align-items:center;justify-content:flex-end;gap:8px;background:rgba(0,0,0,.16)}

/* ---------- toast ---------- */
.toast-wrap{position:fixed;right:22px;bottom:22px;z-index:120;display:flex;flex-direction:column;gap:8px;max-width:370px}
.toast{
  display:flex;align-items:flex-start;gap:9px;padding:11px 14px;border-radius:10px;
  background:linear-gradient(180deg,#0E1726,#0A111D);border:1px solid var(--o-line-strong);
  border-left:3px solid var(--o-blue);font-size:13px;line-height:1.55;color:#DCE6F7;
  box-shadow:0 18px 44px rgba(0,0,0,.5);animation:slideIn .2s ease;
}
.toast.ok{border-left-color:var(--o-mint)}
.toast.err{border-left-color:var(--o-rose)}
.toast.warn{border-left-color:var(--o-amber)}
.toast .t-ic{font-family:var(--mono);font-weight:700;font-size:12px;margin-top:1px}
.toast.ok .t-ic{color:var(--o-mint)}.toast.err .t-ic{color:var(--o-rose)}.toast.warn .t-ic{color:var(--o-amber)}.toast.info .t-ic{color:var(--o-blue)}

/* ---------- popover ---------- */
.popover{
  position:absolute;right:0;top:42px;z-index:80;width:290px;padding:8px;
  background:linear-gradient(180deg,#0D1523,#0A101B);border:1px solid var(--o-line-strong);
  border-radius:12px;box-shadow:0 24px 60px rgba(0,0,0,.6);animation:popIn .14s ease;
}
.popover .pv-h{display:flex;align-items:center;justify-content:space-between;padding:6px 8px 9px;border-bottom:1px solid rgba(120,180,255,.08);margin-bottom:4px}
.popover .pv-h .t{font-size:13px;font-weight:650;color:#DCE6F7}
.popover .pv-row{display:flex;gap:9px;align-items:flex-start;padding:8px 8px;border-radius:8px;cursor:default}
.popover .pv-row:hover{background:rgba(255,255,255,.03)}
.popover .pv-row .tt{font-size:12.5px;color:#C9D6EA;line-height:1.5}
.popover .pv-row .tm{font-family:var(--mono);font-size:9.5px;color:var(--o-dim);margin-top:3px}
.popover .pv-u{padding:9px 8px;border-top:1px solid rgba(120,180,255,.08);margin-top:4px}
.popover .pv-u .em{font-size:12.5px;color:#DCE6F7;word-break:break-all}
.popover .pv-u .tn{font-family:var(--mono);font-size:10px;color:var(--o-dim);margin-top:4px;word-break:break-all}

/* ---------- boot ---------- */
.boot{height:100vh;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:14px;color:var(--o-dim);font-size:13px}
.boot .logo-o{width:44px;height:44px}
.boot .logo-o::before{inset:9px}.boot .logo-o::after{inset:15px}

/* =========================================================================
   AUTH 路 宸﹀彸鍒嗘爮锛圫ocialEcho 涓氬姟娴佺▼ + D 杞ㄩ亾瑙嗚锛?   ========================================================================= */
.auth{position:relative;display:grid;grid-template-columns:1.02fr .98fr;height:100vh;overflow:hidden}
.auth-left{
  position:relative;display:flex;flex-direction:column;padding:28px 42px 24px;overflow:hidden;
  border-right:1px solid rgba(120,180,255,.08);
  background:
    radial-gradient(620px 480px at 30% 18%,rgba(139,92,246,.13),transparent 70%),
    radial-gradient(700px 520px at 82% 84%,rgba(62,232,181,.09),transparent 72%),
    linear-gradient(180deg,#060A12,#05070D);
}
.auth-left::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background-image:radial-gradient(rgba(120,180,255,.18) 1px,transparent 1px);
  background-size:30px 30px;
  mask-image:radial-gradient(560px 520px at 46% 42%,#000,transparent 78%);
}
.auth-left::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(rgba(120,180,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(120,180,255,.05) 1px,transparent 1px);
  background-size:72px 72px;
  mask-image:linear-gradient(transparent,#000 30%,#000 70%,transparent);
}
.auth-brand{position:relative;z-index:2;display:flex;align-items:center;gap:12px}
.auth-brand .nm{font-size:18px;font-weight:750;letter-spacing:.06em}
.auth-brand .sub{font-family:var(--mono);font-size:9.5px;letter-spacing:.24em;color:var(--o-dim);margin-top:3px}
.auth-brand .zone-chip{margin-left:12px}
.orbit-stage{position:relative;z-index:2;flex:1;min-height:300px;display:flex;align-items:center;justify-content:center}
.orbit-visual{position:relative;width:470px;height:470px;max-width:min(470px,80%);max-height:100%}
.orbit-ring{position:absolute;border:1px solid rgba(120,180,255,.15);border-radius:50%}
.orbit-ring.r1{inset:0}
.orbit-ring.r2{inset:58px;border-style:dashed;border-color:rgba(120,180,255,.13);animation:orbitSpin 80s linear infinite}
.orbit-ring.r3{inset:116px;border-color:rgba(62,232,181,.2);animation:orbitSpin 56s linear infinite reverse}
.orbit-ring.r4{inset:174px;border-color:rgba(139,92,246,.18)}
.orbit-dot{position:absolute;width:6px;height:6px;border-radius:50%;background:var(--o-blue);box-shadow:0 0 10px rgba(91,140,255,.9);top:-3px;left:50%}
.orbit-core{
  position:absolute;left:50%;top:50%;width:150px;height:150px;transform:translate(-50%,-50%);
  border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;
  background:radial-gradient(circle at 34% 28%,#132a45,#081120 72%);
  border:1px solid rgba(62,232,181,.48);
  box-shadow:0 0 0 12px rgba(62,232,181,.035),0 0 70px rgba(62,232,181,.16),inset 0 0 30px rgba(62,232,181,.06);
}
.orbit-core .k{font-family:var(--mono);font-size:9.5px;letter-spacing:.24em;color:var(--o-mint);opacity:.9}
.orbit-core .v{font-size:21px;font-weight:750;letter-spacing:.06em}
.orbit-core .s{font-family:var(--mono);font-size:10px;letter-spacing:.14em;color:var(--o-dim)}
.onode{
  position:absolute;left:50%;top:50%;--a:0deg;--r:210px;
  width:42px;height:42px;margin:-21px 0 0 -21px;border-radius:12px;
  transform:rotate(var(--a)) translateY(calc(-1 * var(--r))) rotate(calc(-1 * var(--a)));
  background:rgba(11,19,34,.92);border:1px solid rgba(120,180,255,.24);
  display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;color:#B7C8E2;
  box-shadow:0 8px 22px rgba(0,0,0,.4),inset 0 1px 0 rgba(255,255,255,.05);backdrop-filter:blur(6px);
}
.onode.hot{border-color:rgba(62,232,181,.55);color:var(--o-mint);box-shadow:0 0 26px rgba(62,232,181,.2)}
.onode.warm{border-color:rgba(245,184,75,.4);color:var(--o-amber)}
.opulse{position:absolute;width:8px;height:8px;border-radius:50%;background:var(--o-mint);box-shadow:0 0 14px var(--o-mint);animation:pulseS 3.6s ease-in-out infinite}
.float-card{
  position:absolute;z-index:3;padding:11px 14px;border-radius:11px;backdrop-filter:blur(10px);
  background:rgba(13,22,38,.9);border:1px solid rgba(120,180,255,.2);box-shadow:0 22px 54px rgba(0,0,0,.45);
}
.float-card .l{font-family:var(--mono);font-size:9.5px;letter-spacing:.18em;color:var(--o-dim);text-transform:uppercase}
.float-card .v{font-family:var(--mono);font-size:21px;font-weight:600;margin-top:4px;letter-spacing:.01em}
.float-card .v small{font-family:var(--font);font-size:11.5px;color:var(--o-muted);margin-left:3px;font-weight:500}
.float-card .d{font-family:var(--mono);font-size:10px;color:var(--o-dim);margin-top:5px}

.auth-tag{position:relative;z-index:2;padding-bottom:8px}
.auth-tag .eyebrow{display:flex;align-items:center;gap:11px;font-family:var(--mono);font-size:10px;letter-spacing:.24em;color:var(--o-mint);text-transform:uppercase;margin-bottom:15px}
.auth-tag .eyebrow::before{content:"";width:32px;height:1px;background:var(--o-mint);opacity:.7}
.auth-tag h1{font-size:36px;line-height:1.22;font-weight:800;letter-spacing:-.02em}
.auth-tag h1 .grad{background:linear-gradient(96deg,var(--o-mint) 4%,var(--o-blue) 52%,var(--o-violet) 100%);-webkit-background-clip:text;background-clip:text;color:transparent;display:inline-block}
.auth-tag .sub{font-size:13.5px;line-height:1.85;color:var(--o-muted);margin-top:12px;max-width:500px}
.tag-dots{display:flex;gap:7px;margin-top:18px}
.tag-dots i{width:7px;height:7px;border-radius:20px;background:rgba(120,180,255,.25);transition:.3s;cursor:pointer}
.tag-dots i.on{width:24px;background:var(--o-mint);box-shadow:0 0 12px rgba(62,232,181,.55)}
.auth-meta{position:relative;z-index:2;display:flex;align-items:center;gap:16px;margin-top:18px;padding-top:14px;border-top:1px solid rgba(120,180,255,.09);font-family:var(--mono);font-size:10px;letter-spacing:.14em;color:var(--o-dim);text-transform:uppercase}
.auth-meta .dot{width:4px;height:4px;border-radius:50%;background:var(--o-dim)}
.auth-right{position:relative;display:flex;align-items:center;justify-content:center;padding:30px 34px;overflow:auto}
.auth-right::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(420px 380px at 70% 30%,rgba(91,140,255,.07),transparent 72%);
}
.lang-switch{position:absolute;top:20px;right:26px;z-index:5;display:flex;align-items:center;gap:7px;color:var(--o-muted);font-size:12.5px}
.lang-switch svg{width:14px;height:14px;opacity:.8}
.lang-switch button{background:transparent;border:0;color:var(--o-dim);font-size:12.5px;padding:3px 4px;border-radius:5px}
.lang-switch button.on{color:#DFFBF6;background:rgba(255,255,255,.05)}
.lang-switch .sep{color:rgba(120,180,255,.25);font-size:11px}
.auth-card{
  position:relative;z-index:2;width:430px;max-width:100%;padding:28px 30px 22px;border-radius:18px;
  background:linear-gradient(180deg,rgba(18,26,42,.8),rgba(9,15,25,.76));
  border:1px solid var(--o-line-strong);backdrop-filter:blur(22px);
  box-shadow:0 34px 90px rgba(0,0,0,.5),inset 0 1px 0 rgba(255,255,255,.05);
}
.auth-card::before{content:"";position:absolute;left:18px;right:18px;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(62,232,181,.55),transparent);opacity:.7}
.auth-card h2{font-size:26px;font-weight:800;letter-spacing:-.01em;line-height:1.25}
.auth-card .cap{font-size:12.5px;color:var(--o-dim);margin-top:5px;line-height:1.6}
.auth-form{display:flex;flex-direction:column;gap:13px;margin-top:20px}
.auth-form .field .lbl{font-size:13px}
.auth-form .inp{height:43px}
.auth-form .code-row{display:flex;gap:8px;align-items:stretch}
.auth-form .code-row .inp-wrap{flex:1;min-width:0}
.auth-form .code-btn{
  height:43px;padding:0 13px;flex:none;border-radius:10px;font-size:13px;font-weight:600;
  border:1px solid rgba(62,232,181,.4);background:rgba(62,232,181,.1);color:#9FF4DE;
}
.auth-form .code-btn:hover:not(:disabled){background:rgba(62,232,181,.16);border-color:rgba(62,232,181,.6)}
.auth-form .code-btn:disabled{opacity:.5;cursor:not-allowed}
.devcode{
  display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:8px;font-size:12px;color:#9FF4DE;
  background:rgba(62,232,181,.07);border:1px dashed rgba(62,232,181,.32);cursor:pointer;line-height:1.5;
}
.devcode:hover{background:rgba(62,232,181,.12)}
.devcode .mono{font-size:13px;letter-spacing:.18em;color:#DFFBF6;font-weight:700}
.auth-or{display:flex;align-items:center;gap:12px;color:var(--o-dim);font-size:12px;margin:3px 0}
.auth-or::before,.auth-or::after{content:"";flex:1;height:1px;background:rgba(120,180,255,.12)}
.google-btn{
  width:100%;height:43px;border-radius:10px;display:flex;align-items:center;justify-content:center;gap:9px;
  border:1px solid var(--o-line-strong);background:rgba(255,255,255,.025);color:#DCE6F7;font-size:13.5px;font-weight:600;
  transition:.16s;
}
.google-btn:hover:not(:disabled){border-color:rgba(120,180,255,.5);background:rgba(255,255,255,.05)}
.google-btn:disabled{opacity:.55;cursor:not-allowed}
.google-btn svg{width:17px;height:17px;flex:none}
.auth-foot{text-align:center;font-size:13px;color:var(--o-muted);margin-top:18px}
.auth-foot .link{margin-left:4px}
.auth-legal{font-size:11px;line-height:1.7;color:var(--o-dim);text-align:center;margin-top:14px}
.auth-api{font-family:var(--mono);font-size:9.5px;letter-spacing:.08em;color:#3E4A5E;text-align:center;margin-top:10px}
.auth-loading{display:flex;align-items:center;justify-content:center;gap:9px;font-size:13px;color:var(--o-muted);padding:30px}
.auth-notice{
  display:flex;gap:9px;align-items:flex-start;padding:10px 12px;border-radius:9px;font-size:12.5px;line-height:1.6;
  background:rgba(91,140,255,.08);border:1px solid rgba(91,140,255,.22);color:#BFD0E6;
}
.pw-meter{display:flex;gap:4px;margin-top:2px}
.pw-meter i{height:3px;flex:1;border-radius:3px;background:rgba(255,255,255,.08);transition:.2s}
.pw-meter i.on{background:var(--o-mint)}

/* =========================================================================
   OVERVIEW
   ========================================================================= */
.trend-wrap{display:flex;flex-direction:column;gap:8px;flex:1;min-height:0}
.trend-chart{width:100%;height:126px;display:block}
.trend-legend{display:flex;align-items:center;gap:14px;font-size:11.5px;color:var(--o-muted)}
.trend-legend i{width:16px;height:3px;border-radius:3px;background:var(--o-mint);display:inline-block;margin-right:5px;vertical-align:middle}
.donut-wrap{display:flex;align-items:center;gap:16px;flex:1;min-height:0}
.donut{
  width:112px;height:112px;flex:none;border-radius:50%;position:relative;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 0 34px rgba(62,232,181,.1);
}
.donut::before{content:"";position:absolute;inset:15px;border-radius:50%;background:#0A111D;border:1px solid rgba(120,180,255,.07)}
.donut b{position:relative;font-family:var(--mono);font-size:20px;font-weight:600}
.donut b small{display:block;font-family:var(--font);font-size:9.5px;letter-spacing:.14em;color:var(--o-dim);text-align:center;margin-top:2px;font-weight:500}
.legend-list{display:flex;flex-direction:column;gap:6px;flex:1;min-width:0}
.legend-row{display:flex;align-items:center;gap:7px;font-size:12px;color:#B9C8DF}
.legend-row i{width:7px;height:7px;border-radius:2px;flex:none}
.legend-row .nm{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--o-muted)}
.legend-row b{font-family:var(--mono);font-size:11px;color:#DCE6F7;font-weight:600}
.legend-row em{font-style:normal;font-family:var(--mono);font-size:10px;color:var(--o-dim);width:18px;text-align:right}
.hbars{display:flex;flex-direction:column;gap:9px;flex:1;justify-content:center}
.hbar-row{display:flex;align-items:center;gap:9px;font-size:12px;color:var(--o-muted)}
.hbar-row .nm{width:74px;flex:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hbar-row .bar{flex:1;height:5px;border-radius:5px;background:rgba(255,255,255,.06);overflow:hidden}
.hbar-row .bar i{display:block;height:100%;border-radius:5px;background:linear-gradient(90deg,var(--o-mint),var(--o-blue))}
.hbar-row b{font-family:var(--mono);font-size:11px;color:#DCE6F7;width:42px;text-align:right;font-weight:500}
.health{display:flex;align-items:center;gap:16px}
.health-ring{
  width:92px;height:92px;flex:none;border-radius:50%;display:flex;align-items:center;justify-content:center;position:relative;
}
.health-ring::before{content:"";position:absolute;inset:8px;border-radius:50%;background:#0A111D;border:1px solid rgba(120,180,255,.08)}
.health-ring b{position:relative;font-family:var(--mono);font-size:17px}
.health-rows{flex:1;display:flex;flex-direction:column;gap:5px;font-size:12px;color:var(--o-muted)}
.health-rows div{display:flex;justify-content:space-between;gap:8px;padding-bottom:4px;border-bottom:1px dashed rgba(120,180,255,.08)}
.health-rows div:last-child{border:0;padding-bottom:0}
.health-rows b{font-family:var(--mono);font-size:11.5px;color:#DCE6F7;font-weight:600}
.alerts{display:flex;flex-direction:column;gap:0;flex:1}
.alert-row{display:flex;align-items:flex-start;gap:9px;padding:9px 0;border-bottom:1px dashed rgba(120,180,255,.08)}
.alert-row:last-child{border:0}
.alert-row .se{width:6px;height:6px;border-radius:50%;margin-top:5px;flex:none;background:var(--o-blue)}
.alert-row.err .se{background:var(--o-rose);box-shadow:0 0 8px rgba(244,114,182,.6)}
.alert-row.warn .se{background:var(--o-amber);box-shadow:0 0 8px rgba(245,184,75,.6)}
.alert-row.ok .se{background:var(--o-mint);box-shadow:0 0 8px rgba(62,232,181,.6)}
.alert-row .tx{flex:1;font-size:11.8px;line-height:1.55;color:var(--o-muted);min-width:0}
.alert-row .tx b{display:block;font-size:12.5px;color:#D7E3F5;font-weight:600;margin-bottom:2px}
.alert-row .tm{font-family:var(--mono);font-size:9.5px;color:var(--o-dim);white-space:nowrap}
.mini-list{display:flex;flex-direction:column;flex:1}
.mini-row{display:flex;align-items:center;gap:9px;padding:8px 0;border-bottom:1px dashed rgba(120,180,255,.08);cursor:pointer}
.mini-row:last-child{border:0}
.mini-row .tt{flex:1;min-width:0;font-size:12.5px;color:#C9D6EA;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mini-row .tm{font-family:var(--mono);font-size:10px;color:var(--o-dim);white-space:nowrap}
.quick-actions{display:flex;gap:8px;flex-wrap:wrap}

/* =========================================================================
   PUBLISH 路 Composer + Posts
   ========================================================================= */
.pub-grid{display:grid;grid-template-columns:220px minmax(0,1fr) 330px;gap:14px;align-items:stretch}
.composer-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 15px;border-bottom:1px solid rgba(120,180,255,.08)}
.composer-head .t{font-size:14px;font-weight:650;color:#DCE6F7;display:flex;align-items:center;gap:8px}
.composer-head .t .pill{margin-left:2px}
.composer-head .tools{display:flex;gap:6px}
.composer-b{padding:13px 15px 15px;display:flex;flex-direction:column;gap:11px}
.acct-groups{display:flex;flex-direction:column;gap:5px;max-height:148px;overflow:auto;padding-right:3px}
.acct-glabel{display:flex;align-items:center;gap:7px;font-family:var(--mono);font-size:9px;letter-spacing:.18em;color:var(--o-dim);text-transform:uppercase;margin-top:3px}
.acct-glabel::after{content:"";flex:1;height:1px;background:rgba(120,180,255,.08)}
.acct-chips{display:flex;flex-wrap:wrap;gap:6px}
.acct-chip{
  display:flex;align-items:center;gap:7px;height:31px;padding:0 9px 0 5px;border-radius:9px;cursor:pointer;
  border:1px solid var(--o-line);background:rgba(255,255,255,.02);font-size:12.5px;color:#C7D3E6;
  transition:.15s;user-select:none;max-width:100%;
}
.acct-chip:hover{border-color:var(--o-line-strong);background:rgba(255,255,255,.04)}
.acct-chip.on{border-color:rgba(62,232,181,.5);background:rgba(62,232,181,.09);color:#DFFBF6;box-shadow:0 0 15px rgba(62,232,181,.1)}
.acct-chip .nm{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:132px}
.acct-chip .pf{font-family:var(--mono);font-size:9px;letter-spacing:.06em;color:var(--o-dim);text-transform:uppercase}
.acct-chip.on .pf{color:#8FEBD4}
.acct-chip .ck{
  width:13px;height:13px;flex:none;border-radius:4px;border:1px solid rgba(120,180,255,.32);
  display:flex;align-items:center;justify-content:center;font-size:9px;color:transparent;
}
.acct-chip.on .ck{background:var(--o-mint);border-color:var(--o-mint);color:#03221F;font-weight:800}
.composer-area{position:relative}
.composer-area textarea{
  width:100%;min-height:148px;max-height:280px;resize:vertical;border-radius:11px;padding:12px 13px 26px;
  background:rgba(6,10,18,.66);border:1px solid var(--o-line);color:var(--o-ink);
  font-size:14px;line-height:1.75;outline:0;transition:.16s;
}
.composer-area textarea::placeholder{color:#4C5670}
.composer-area textarea:focus{border-color:rgba(62,232,181,.45);box-shadow:0 0 0 3px rgba(62,232,181,.06)}
.char-count{position:absolute;right:11px;bottom:8px;font-family:var(--mono);font-size:10.5px;color:var(--o-dim)}
.char-count.over{color:var(--o-rose)}
.media-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.media-chip{
  display:flex;align-items:center;gap:8px;padding:4px 7px 4px 4px;border-radius:8px;max-width:230px;
  border:1px solid var(--o-line);background:rgba(255,255,255,.02);font-size:11.5px;color:#B9C8DF;
}
.media-chip img{width:30px;height:30px;object-fit:cover;border-radius:6px;background:#0A111D}
.media-chip .fn{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.media-chip .rm{width:16px;height:16px;border-radius:4px;border:0;background:transparent;color:var(--o-dim);font-size:12px;display:flex;align-items:center;justify-content:center}
.media-chip .rm:hover{color:var(--o-rose);background:rgba(244,114,182,.1)}
.tool-row{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.ai-panel{
  border:1px dashed rgba(139,92,246,.4);background:rgba(139,92,246,.06);border-radius:10px;
  padding:10px 12px;display:flex;flex-direction:column;gap:8px;
}
.ai-panel .ai-h{display:flex;align-items:center;justify-content:space-between;gap:8px}
.ai-panel .ai-h .t{font-size:12.5px;font-weight:650;color:#D9CCFF;display:flex;align-items:center;gap:7px}
.variant-list{display:flex;flex-direction:column;gap:6px;max-height:150px;overflow:auto}
.variant-item{display:flex;gap:8px;align-items:flex-start;padding:7px 8px;border-radius:8px;background:rgba(8,12,20,.55);border:1px solid rgba(120,180,255,.09);cursor:pointer}
.variant-item:hover{border-color:rgba(139,92,246,.45);background:rgba(139,92,246,.08)}
.variant-item .vt{font-size:12px;line-height:1.55;color:#C9D6EA;flex:1;min-width:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.variant-item .use{font-family:var(--mono);font-size:9.5px;color:var(--o-mint);white-space:nowrap;margin-top:2px}
.pub-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:11px;border-top:1px solid rgba(120,180,255,.08);flex-wrap:wrap}
.pub-footer .left{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.pub-footer .right{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.sched-box{display:flex;align-items:center;gap:6px}
.sched-box .inp{height:32px;font-size:12.5px;border-radius:8px}
.sched-box select.inp{max-width:150px}
/* preview */
.preview-tabs{display:flex;gap:4px;flex-wrap:wrap;padding:11px 12px 0}
.ptab{
  display:flex;align-items:center;gap:5px;height:27px;padding:0 8px;border-radius:7px;border:1px solid transparent;
  background:transparent;color:var(--o-muted);font-size:12px;transition:.15s;
}
.ptab:hover{background:rgba(255,255,255,.03);color:#DCE6F7}
.ptab.on{background:rgba(62,232,181,.12);border-color:rgba(62,232,181,.24);color:#DFFBF6}
.ptab .pico.sm{width:16px;height:16px;font-size:8px;border-radius:4px}
.preview-body{padding:12px}
.pv{border:1px solid var(--o-line);border-radius:12px;background:linear-gradient(180deg,#0A111D,#080D17);overflow:hidden}
.pv-head{display:flex;gap:9px;align-items:center;padding:11px 12px 9px}
.pv-ava{width:31px;height:31px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:10px;font-weight:700;color:#fff}
.pv-name{font-size:12.5px;font-weight:650;color:#DCE6F7;line-height:1.3}
.pv-id{font-family:var(--mono);font-size:9.5px;color:var(--o-dim);margin-top:2px}
.pv-text{padding:0 12px 10px;font-size:13px;line-height:1.68;color:#D5E1F3;white-space:pre-wrap;word-break:break-word;max-height:200px;overflow:auto}
.pv-text.empty{color:#3E4A5E;font-style:italic}
.pv-media{margin:0 12px 10px;border-radius:9px;overflow:hidden;border:1px solid rgba(120,180,255,.1)}
.pv-media img{width:100%;max-height:160px;object-fit:cover;display:block}
.pv-foot{display:flex;align-items:center;gap:16px;padding:8px 12px;border-top:1px solid rgba(120,180,255,.07);color:var(--o-dim);font-size:10.5px}
.pv-foot span{display:flex;align-items:center;gap:4px}
.pv-foot svg{width:12px;height:12px}
.pv.micro .pv-text{font-size:14.5px;max-height:170px}
.pv.video .pv-media{margin-top:0}
.pv.video{border-color:rgba(139,92,246,.24)}
.preview-meta{display:flex;align-items:center;justify-content:space-between;margin-top:10px;font-family:var(--mono);font-size:9.5px;letter-spacing:.1em;color:var(--o-dim);text-transform:uppercase}
.preview-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:30px 16px;color:var(--o-dim);font-size:12.5px;text-align:center;line-height:1.7}
/* posts list */
.posts-card{margin-top:0}
.posts-toolbar{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.posts-toolbar .sel{width:108px;height:29px;font-size:12.5px;border-radius:8px;padding:0 26px 0 9px}
.posts-toolbar .search-box{width:170px;height:29px;flex:none;margin-left:0}
.posts-toolbar .count{font-family:var(--mono);font-size:10px;letter-spacing:.1em;color:var(--o-dim)}
.post-actions{display:flex;gap:5px;justify-content:flex-end}
.post-actions .btn{height:24px;padding:0 8px;font-size:11.5px;border-radius:6px}

/* =========================================================================
   ACCOUNTS
   ========================================================================= */
.acct-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.acct-toolbar .search-box{width:230px;margin-left:0}
.acct-toolbar .grow{flex:1}
.plat-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:stretch}
.plat-group{margin-top:0}
.plat-group-h{display:flex;align-items:center;gap:10px;padding:11px 14px;border-bottom:1px solid rgba(120,180,255,.07)}
.plat-group-h .nm{font-size:13.5px;font-weight:650;color:#DCE6F7}
.plat-group-h .n{font-family:var(--mono);font-size:10px;color:var(--o-dim);letter-spacing:.1em}
.plat-group-h .tags{display:flex;gap:5px;margin-left:auto;align-items:center}
.acct-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:12px 14px 14px}
.acct-card{border:1px solid var(--o-line);border-radius:11px;padding:11px 12px;background:rgba(255,255,255,.017);transition:.15s;min-width:0}
.acct-card:hover{border-color:var(--o-line-strong);background:rgba(255,255,255,.03)}
.acct-card .top{display:flex;align-items:center;gap:8px;min-width:0}
.acct-card .lbl{font-size:13.5px;font-weight:650;color:#E1EAF8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}
.acct-card .id{font-family:var(--mono);font-size:9.5px;color:var(--o-dim);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.acct-card .meta{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px;align-items:center}
.acct-card .acts{display:flex;gap:5px;margin-top:10px;flex-wrap:wrap}
.acct-card .acts .btn{height:25px;padding:0 8px;font-size:11.5px;border-radius:6px}
.plat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;padding:13px 15px 15px}
.plat-tile{
  display:flex;align-items:center;gap:10px;padding:10px 11px;border-radius:11px;cursor:pointer;
  border:1px solid var(--o-line);background:rgba(255,255,255,.015);transition:.15s;min-width:0;
}
.plat-tile:hover{border-color:rgba(62,232,181,.36);background:rgba(62,232,181,.05);transform:translateY(-1px)}
.plat-tile .nm{font-size:13px;font-weight:600;color:#DCE6F7;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.plat-tile .ty{font-family:var(--mono);font-size:9px;letter-spacing:.06em;color:var(--o-dim);margin-top:3px;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.plat-tile .st{margin-left:auto;flex:none}
.steps{display:flex;align-items:center;gap:8px;margin-bottom:15px}
.step{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--o-dim);white-space:nowrap}
.step i{width:20px;height:20px;border-radius:50%;border:1px solid var(--o-line-strong);display:flex;align-items:center;justify-content:center;font-style:normal;font-family:var(--mono);font-size:10px;color:var(--o-dim)}
.step.on{color:#DFFBF6}
.step.on i{background:rgba(62,232,181,.16);border-color:rgba(62,232,181,.5);color:var(--o-mint)}
.step.done i{background:var(--o-mint);border-color:var(--o-mint);color:#03221F}
.step-line{flex:1;height:1px;background:rgba(120,180,255,.16)}
.kv{display:grid;grid-template-columns:112px minmax(0,1fr);gap:7px 12px;font-size:12.5px;line-height:1.55}
.kv dt{font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;color:var(--o-dim);text-transform:uppercase;padding-top:2px}
.kv dd{color:#C9D6EA;word-break:break-all;min-width:0}
.success-box{margin-top:13px;padding:12px;border-radius:10px;background:rgba(62,232,181,.08);border:1px solid rgba(62,232,181,.24);font-size:12.5px;color:#9FF4DE;line-height:1.6}

/* =========================================================================
   CALENDAR
   ========================================================================= */
.cal-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:14px;align-items:start}
.cal-head{display:flex;align-items:center;gap:9px;flex-wrap:wrap;padding:12px 14px;border-bottom:1px solid rgba(120,180,255,.08)}
.cal-title{font-size:16px;font-weight:700;letter-spacing:.01em;min-width:132px}
.cal-nav{display:flex;gap:5px;margin-left:auto}
.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;background:rgba(120,180,255,.1);border:1px solid rgba(120,180,255,.1);border-radius:11px;overflow:hidden;margin:12px 14px 14px}
.cal-dow{background:#0A111D;padding:8px 8px;font-family:var(--mono);font-size:9.5px;letter-spacing:.18em;color:var(--o-dim);text-transform:uppercase;display:flex;justify-content:space-between;align-items:center}
.cal-dow .rk{color:#33415C}
.cal-cell{background:#070C15;min-height:96px;padding:6px 6px 5px;display:flex;flex-direction:column;gap:3px;position:relative;cursor:pointer;transition:background .12s}
.cal-cell:hover{background:#0A1220}
.cal-cell.other{opacity:.36}
.cal-cell.today{background:rgba(62,232,181,.045);box-shadow:inset 0 0 0 1px rgba(62,232,181,.26)}
.cal-cell.sel{box-shadow:inset 0 0 0 1.5px rgba(62,232,181,.6)}
.cal-d{display:flex;align-items:center;justify-content:space-between;gap:4px;margin-bottom:1px}
.cal-d .n{font-family:var(--mono);font-size:11.5px;color:#A9B8CE}
.cal-cell.today .cal-d .n{color:var(--o-mint);font-weight:700}
.cal-d .cnt{font-family:var(--mono);font-size:9px;color:var(--o-dim)}
.cal-item{display:flex;align-items:center;gap:4px;padding:2px 3px;border-radius:5px;background:rgba(255,255,255,.035);font-size:10.5px;color:#B9C8DF;min-width:0;line-height:1.3}
.cal-item .tm{font-family:var(--mono);font-size:9px;color:var(--o-dim);flex:none}
.cal-item .tt{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.cal-item .pico.sm{width:14px;height:14px;font-size:7px;border-radius:4px;flex:none}
.cal-more{font-family:var(--mono);font-size:9px;color:var(--o-dim);padding-left:3px}
.cal-rail{display:flex;flex-direction:column;gap:12px}
.rail-day{display:flex;align-items:center;justify-content:space-between;padding:11px 13px;border-bottom:1px solid rgba(120,180,255,.08)}
.rail-day .d{font-size:14px;font-weight:650;color:#DCE6F7}
.rail-day .n{font-family:var(--mono);font-size:10px;color:var(--o-dim)}
.rail-items{padding:6px 13px 12px;display:flex;flex-direction:column;max-height:390px;overflow:auto}
.rail-item{display:flex;gap:9px;padding:9px 0;border-bottom:1px dashed rgba(120,180,255,.08);cursor:pointer}
.rail-item:last-child{border:0}
.rail-item:hover .tt{color:#fff}
.rail-item .tt{flex:1;min-width:0;font-size:12.5px;line-height:1.5;color:#C9D6EA}
.rail-item .tt b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600;font-size:12.5px;color:#DCE6F7}
.rail-item .tt .mt{font-family:var(--mono);font-size:9.5px;color:var(--o-dim);margin-top:3px;display:flex;gap:8px;align-items:center}
.rail-empty{padding:24px 14px;color:var(--o-dim);font-size:12px;text-align:center;line-height:1.7}
.cal-summary{display:flex;gap:14px;padding:12px 14px;border-bottom:1px solid rgba(120,180,255,.08);flex-wrap:wrap}
.cal-sum{display:flex;flex-direction:column;gap:2px}
.cal-sum .k{font-family:var(--mono);font-size:9px;letter-spacing:.14em;color:var(--o-dim);text-transform:uppercase}
.cal-sum .v{font-family:var(--mono);font-size:17px;color:#E8EDF7}

/* =========================================================================
   SECONDARY PAGES 路 approval / analytics / points / audit / settings
   ========================================================================= */
.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.stat{border:1px solid var(--o-line);border-radius:11px;padding:11px 13px;background:rgba(255,255,255,.018)}
.stat .k{font-size:11px;color:var(--o-dim);letter-spacing:.02em}
.stat .v{font-family:var(--mono);font-size:20px;font-weight:600;margin-top:4px;color:#E8EDF7}
.stat .v small{font-family:var(--font);font-size:11px;color:var(--o-dim);font-weight:500;margin-left:3px}
.split-2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;align-items:start}
.split-3{display:grid;grid-template-columns:1.5fr 1fr;gap:14px;align-items:start}
.approval-layout{display:grid;grid-template-columns:340px minmax(0,1fr);gap:14px;align-items:start}
.appr-list{display:flex;flex-direction:column;padding:6px 10px 10px;max-height:520px;overflow:auto}
.appr-row{display:flex;align-items:center;gap:8px;padding:9px 8px;border-radius:8px;cursor:pointer;border:1px solid transparent}
.appr-row:hover{background:rgba(255,255,255,.03)}
.appr-row.on{background:rgba(62,232,181,.07);border-color:rgba(62,232,181,.2)}
.appr-row .id{font-family:var(--mono);font-size:10px;color:var(--o-dim);width:92px;flex:none;overflow:hidden;text-overflow:ellipsis}
.appr-row .ct{flex:1;min-width:0;font-size:12px;color:#C9D6EA;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.chain{display:flex;flex-direction:column;gap:8px}
.chain-step{display:flex;align-items:center;gap:9px;padding:8px 10px;border-radius:9px;border:1px solid var(--o-line);background:rgba(255,255,255,.015);font-size:12.5px}
.chain-step .dot{width:20px;height:20px;flex:none;border-radius:50%;border:1px solid var(--o-line-strong);display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:10px;color:var(--o-dim)}
.chain-step .role{width:70px;flex:none;color:#DCE6F7;font-weight:600}
.chain-step .who{flex:1;font-family:var(--mono);font-size:11px;color:var(--o-muted)}
.chain-step.done{border-color:rgba(62,232,181,.24);background:rgba(62,232,181,.05)}
.chain-step.done .dot{background:var(--o-mint);border-color:var(--o-mint);color:#03221F}
.chain-step.wait{border-color:rgba(245,184,75,.24);background:rgba(245,184,75,.04)}
.chain-step.wait .dot{border-color:rgba(245,184,75,.6);color:var(--o-amber)}
.daybars{display:flex;align-items:flex-end;gap:7px;height:158px;padding:8px 2px 0;flex:1;min-height:0}
.daybar{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:4px;height:100%;min-width:0}
.daybar .vv{font-family:var(--mono);font-size:9.5px;color:var(--o-muted)}
.daybar .bd{width:100%;max-width:34px;border-radius:5px 5px 2px 2px;background:linear-gradient(180deg,rgba(62,232,181,.9),rgba(91,140,255,.22));min-height:2px;box-shadow:0 0 12px rgba(62,232,181,.1)}
.daybar .lb{font-family:var(--mono);font-size:9px;color:var(--o-dim);white-space:nowrap}
.funnel{display:flex;flex-direction:column;gap:10px;flex:1;justify-content:center}
.fstep{display:grid;grid-template-columns:56px minmax(0,1fr) 74px 52px;gap:9px;align-items:center;font-size:12px;color:var(--o-muted)}
.fstep .bar{height:7px;border-radius:7px;background:rgba(255,255,255,.06);overflow:hidden}
.fstep .bar i{display:block;height:100%;border-radius:7px;background:linear-gradient(90deg,var(--o-violet),var(--o-blue),var(--o-mint))}
.fstep .v{font-family:var(--mono);font-size:11.5px;color:#DCE6F7;text-align:right}
.fstep .cv{font-family:var(--mono);font-size:10px;color:var(--o-dim);text-align:right}
.bar-list{display:flex;flex-direction:column;flex:1;justify-content:center}
.brow{display:grid;grid-template-columns:26px 92px minmax(0,1fr) 44px 62px;gap:9px;align-items:center;padding:6px 0;font-size:12px;color:var(--o-muted)}
.brow .nm{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.brow .bar{height:6px;border-radius:6px;background:rgba(255,255,255,.06);overflow:hidden}
.brow .bar i{display:block;height:100%;border-radius:6px;background:linear-gradient(90deg,var(--o-mint),var(--o-blue))}
.brow .v{font-family:var(--mono);font-size:11px;color:#DCE6F7;text-align:right}
.brow .s{font-family:var(--mono);font-size:9.5px;color:var(--o-dim);text-align:right;white-space:nowrap}
.points-hero{
  position:relative;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:18px 22px;
  border-radius:14px;border:1px solid rgba(245,184,75,.22);overflow:hidden;
  background:radial-gradient(560px 200px at 12% 20%,rgba(245,184,75,.13),transparent 70%),linear-gradient(180deg,rgba(18,26,42,.72),rgba(10,16,27,.58));
}
.points-hero .big{font-family:var(--mono);font-size:39px;font-weight:600;letter-spacing:-.02em;color:#FFD58A;line-height:1}
.points-hero .lab{font-family:var(--mono);font-size:10px;letter-spacing:.2em;color:var(--o-dim);margin-top:8px;text-transform:uppercase}
.points-hero .meta{display:flex;gap:26px;flex-wrap:wrap}
.points-hero .meta .k{font-family:var(--mono);font-size:9px;letter-spacing:.16em;color:var(--o-dim);text-transform:uppercase}
.points-hero .meta .v{font-family:var(--mono);font-size:17px;color:#E8EDF7;margin-top:5px}
.price-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.price{border:1px solid var(--o-line);border-radius:9px;padding:9px 11px;background:rgba(255,255,255,.015)}
.price .k{font-family:var(--mono);font-size:9.5px;letter-spacing:.1em;color:var(--o-dim);text-transform:uppercase}
.price .v{font-family:var(--mono);font-size:15px;color:#DCE6F7;margin-top:4px}
.keyrow{display:flex;align-items:center;gap:10px;padding:9px 11px;border:1px solid var(--o-line);border-radius:9px;margin-bottom:7px;background:rgba(255,255,255,.015);font-size:12.5px}
.keyrow .nm{flex:1;min-width:0;color:#D7E3F5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.keyrow .pfx{font-family:var(--mono);font-size:11px;color:var(--o-muted)}
.danger-zone{border-color:rgba(244,114,182,.24);background:linear-gradient(180deg,rgba(244,114,182,.05),rgba(18,26,42,.4))}
.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:start}
.note-list{font-size:12.5px;line-height:1.85;color:var(--o-muted)}
.note-list p+p{margin-top:7px}
.note-list b{color:#C9D6EA;font-weight:600}
.audit-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.audit-actions .seg button{font-family:var(--mono);font-size:10px}

/* ---------- responsive ---------- */
@media (max-width:1360px){
  .plat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .acct-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pub-grid{grid-template-columns:200px minmax(0,1fr) 290px}
}
@media (max-width:1200px){
  .content{padding:16px 18px 22px}
  .kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pub-grid{grid-template-columns:minmax(0,1fr)}
  .cal-layout{grid-template-columns:minmax(0,1fr)}
  .approval-layout{grid-template-columns:280px minmax(0,1fr)}
  .plat-groups{grid-template-columns:minmax(0,1fr)}
  .s4,.s5{grid-column:span 6}
  .s3{grid-column:span 4}
  .s7,.s8,.s9{grid-column:span 12}
}
@media (max-width:900px){
  body{overflow:auto}
  .side{position:fixed;left:-242px;top:0;bottom:0;width:238px;z-index:70;transition:left .2s ease;box-shadow:20px 0 60px rgba(0,0,0,.6)}
  .side.open{left:0}
  .side-toggle-mask{position:fixed;inset:0;z-index:60;background:rgba(3,5,10,.6);backdrop-filter:blur(3px)}
  .menu-btn{display:inline-flex}
  .search-box{width:150px}
  .auth{grid-template-columns:1fr}
  .auth-left{display:none}
  .auth-right{padding:20px}
  .auth-card{width:100%}
  .split-2,.split-3,.settings-grid,.form-row,.approval-layout{grid-template-columns:1fr}
  .plat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .acct-cards{grid-template-columns:minmax(0,1fr)}
  .kpis,.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .s3,.s4,.s5,.s6,.s7,.s8,.s9{grid-column:span 12}
  .cal-cell{min-height:66px}
}

/* =========================================================================
   GLOBAL v3 路 浜掑姩 / 鐩戞帶 / 鍒嗘瀽 / 鑷姩鍖?/ 鍒涗綔 / 鍥㈤槦 / 璁㈤槄 / 璐﹀彿澧炲己
   ========================================================================= */
.side-nav{flex:1;min-height:0;overflow:auto;margin:0 -4px;padding:0 4px 6px}
.side-nav::-webkit-scrollbar{width:5px}
.role-chip{
  display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:20px;flex:none;
  font-family:var(--mono);font-size:9px;letter-spacing:.12em;border:1px solid rgba(120,180,255,.22);
  background:rgba(91,140,255,.08);color:#9FB8FF;text-transform:uppercase;
}
.role-chip.r-owner{border-color:rgba(62,232,181,.28);background:rgba(62,232,181,.08);color:#8FEBD4}
.role-chip.r-admin{border-color:rgba(139,92,246,.3);background:rgba(139,92,246,.1);color:#C4B0FF}
.role-chip.r-viewer{border-color:rgba(245,184,75,.3);background:rgba(245,184,75,.08);color:#FFD58A}
.viewer-banner{
  display:flex;align-items:center;gap:8px;margin-bottom:12px;padding:8px 12px;border-radius:9px;
  font-size:12.5px;color:#FFD58A;background:rgba(245,184,75,.06);border:1px solid rgba(245,184,75,.24);
}

/* tabs */
.tabs{display:flex;align-items:center;gap:2px;flex-wrap:wrap;border-bottom:1px solid rgba(120,180,255,.1);flex:none}
.tab{
  position:relative;display:inline-flex;align-items:center;gap:7px;height:37px;padding:0 13px;border:0;background:transparent;
  color:var(--o-muted);font-size:13.5px;border-radius:8px 8px 0 0;transition:.15s;white-space:nowrap;
}
.tab:hover{color:#DCE6F7;background:rgba(255,255,255,.03)}
.tab.on{color:var(--tab-active-fg,#DFFBF6);background:var(--tab-active-bg,rgba(62,232,181,.06))}
.tab.on::after{content:"";position:absolute;left:10px;right:10px;bottom:-1px;height:2px;border-radius:2px;background:var(--tab-active-line,var(--o-mint));box-shadow:0 0 10px rgba(62,232,181,.6)}
.tab-n{
  min-width:17px;height:16px;padding:0 5px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;
  font-family:var(--mono);font-size:9px;background:rgba(120,180,255,.12);color:#A9B8CE;
}
.tab-n.hot{background:rgba(245,184,75,.16);color:#FFD58A}
.tab-en{font-family:var(--mono);font-size:8.5px;letter-spacing:.12em;color:var(--o-dim);text-transform:uppercase}
@media (max-width:1360px){.tab-en{display:none}.tab{padding:0 11px;font-size:13px}}

/* toolbar */
.toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:11px 14px;border-bottom:1px solid rgba(120,180,255,.07)}
.toolbar .seg{flex:none}
.toolbar .search-box{margin-left:0}

/* pick chips */
.pick{
  display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 10px;border-radius:20px;cursor:pointer;
  border:1px solid var(--o-line);background:rgba(255,255,255,.02);color:var(--o-muted);font-size:12px;transition:.14s;
}
.pick:hover{border-color:var(--o-line-strong);color:#DCE6F7}
.pick.on{border-color:rgba(62,232,181,.45);background:rgba(62,232,181,.1);color:#DFFBF6}
.pick .pico.sm{width:15px;height:15px;font-size:7px;border-radius:4px}

/* pager */
.o-pager{display:flex;align-items:center;gap:5px;width:100%;flex-wrap:wrap}
.o-pager .pg-info{font-family:var(--mono);font-size:10px;letter-spacing:.05em;color:var(--o-dim)}
.o-pager .pg-info b{color:#B9C9E2}
.o-pager .pg-size{width:84px;height:27px;font-size:11px;padding:0 7px}
.pg-btn{
  min-width:27px;height:27px;padding:0 7px;border-radius:7px;border:1px solid var(--o-line);
  background:rgba(255,255,255,.02);color:var(--o-muted);font-family:var(--mono);font-size:11.5px;transition:.14s;
}
.pg-btn:hover:not(:disabled){border-color:var(--o-line-strong);color:#DCE6F7}
.pg-btn.on{background:rgba(62,232,181,.14);border-color:rgba(62,232,181,.32);color:#DFFBF6}
.pg-btn:disabled{opacity:.4;cursor:not-allowed}

/* drawer */
.drawer-mask{position:fixed;inset:0;z-index:95;background:rgba(3,5,10,.62);backdrop-filter:blur(4px);display:flex;justify-content:flex-end;animation:fadeIn .15s ease}
.drawer{
  height:100%;max-width:100%;display:flex;flex-direction:column;background:linear-gradient(180deg,#0C1422,#09101B);
  border-left:1px solid var(--o-line-strong);box-shadow:-30px 0 80px rgba(0,0,0,.55);animation:slideIn .18s ease;
}
.drawer-h{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 18px 13px;border-bottom:1px solid rgba(120,180,255,.09);flex:none}
.drawer-h h3{font-size:15.5px;font-weight:700;line-height:1.4;letter-spacing:.01em}
.drawer-h p{font-size:11.5px;color:var(--o-dim);margin-top:4px;line-height:1.55}
.drawer-b{flex:1;min-height:0;overflow:auto;padding:16px 18px}
.drawer-f{display:flex;align-items:center;gap:8px;padding:12px 18px;border-top:1px solid rgba(120,180,255,.09);background:rgba(0,0,0,.16);flex:none}
.drawer-sect{margin-top:16px;padding-top:14px;border-top:1px solid rgba(120,180,255,.08)}
.drawer-sect-h{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:13px;font-weight:650;color:#DCE6F7;margin-bottom:9px}
.drawer-sect-h em{font-style:normal;font-family:var(--mono);font-size:9px;letter-spacing:.12em;color:var(--o-dim);text-transform:uppercase}
.chat{display:flex;flex-direction:column;gap:10px;max-height:300px;overflow:auto;padding:2px 0}
.chat-msg{max-width:88%;display:flex;flex-direction:column;gap:4px}
.chat-msg.mine{align-self:flex-end;align-items:flex-end}
.chat-meta{font-family:var(--mono);font-size:9.5px;color:var(--o-dim)}
.chat-bubble{padding:9px 12px;border-radius:11px;background:rgba(255,255,255,.04);border:1px solid var(--o-line);font-size:13px;line-height:1.65;color:#D5E1F3;white-space:pre-wrap;word-break:break-word}
.chat-msg.mine .chat-bubble{background:rgba(62,232,181,.09);border-color:rgba(62,232,181,.26);color:#DFFBF6}
.suggestion{padding:10px 12px;border-radius:9px;background:rgba(139,92,246,.07);border:1px dashed rgba(139,92,246,.36);font-size:12.5px;line-height:1.65;color:#D9CCFF;margin-bottom:10px}
.translated{margin-top:9px;padding:10px 12px;border-radius:9px;background:rgba(91,140,255,.06);border:1px solid rgba(91,140,255,.2);font-size:12.5px;line-height:1.7;color:#BFD0E6}

/* 閫氱敤灏忕綉鏍?*/
.type-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.type-card{
  border:1px solid var(--o-line);border-radius:11px;padding:12px 13px;cursor:pointer;background:rgba(255,255,255,.015);
  transition:.15s;display:flex;flex-direction:column;gap:7px;
}
.type-card:hover{border-color:rgba(62,232,181,.42);background:rgba(62,232,181,.05);transform:translateY(-1px)}
.type-card .nm{font-size:13.5px;font-weight:650;color:#DCE6F7}
.type-card .desc{font-size:11.5px;line-height:1.6;color:var(--o-muted);min-height:34px}
.tag-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.tag-card{border:1px solid var(--o-line);border-radius:11px;padding:11px 12px;background:rgba(255,255,255,.015)}
.tag-card .tt{font-size:13px;font-weight:600;color:#DCE6F7}
.tag-dot{width:9px;height:9px;border-radius:3px;flex:none}
.brand-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.brand-card{border:1px solid var(--o-line);border-radius:12px;padding:13px 14px;background:rgba(255,255,255,.015);min-width:0}
.brand-card .tt{font-size:14px;font-weight:650;color:#DCE6F7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.plan-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.plan-card{
  border:1px solid var(--o-line);border-radius:13px;padding:14px 15px;background:rgba(255,255,255,.015);
  display:flex;flex-direction:column;gap:8px;min-width:0;position:relative;
}
.plan-card.current{border-color:rgba(62,232,181,.44);background:linear-gradient(180deg,rgba(62,232,181,.08),rgba(18,26,42,.5));box-shadow:0 0 26px rgba(62,232,181,.08)}
.plan-card .nm{font-size:15px;font-weight:750;letter-spacing:.04em;text-transform:uppercase}
.plan-card .price{font-family:var(--mono);font-size:23px;font-weight:600;color:#F0F5FE;margin-top:2px}
.plan-card .feats{display:flex;flex-direction:column;gap:4px;font-size:11.5px;color:var(--o-muted);flex:1}
.plan-card .btn{margin-top:4px}
.addon{border:1px solid var(--o-line);border-radius:10px;padding:9px 12px;background:rgba(255,255,255,.015);min-width:140px}
.addon .nm{font-size:12.5px;color:#DCE6F7}
.progress{height:6px;border-radius:6px;background:rgba(255,255,255,.07);overflow:hidden;min-width:60px}
.progress i{display:block;height:100%;border-radius:6px;background:linear-gradient(90deg,var(--o-mint),var(--o-blue));transition:width .3s}
.tool-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:13px 15px 15px}
.tool-card{border:1px solid var(--o-line);border-radius:12px;padding:12px 13px;background:rgba(255,255,255,.015);cursor:pointer;transition:.15s;min-width:0}
.tool-card:hover{border-color:rgba(62,232,181,.42);background:rgba(62,232,181,.05)}
.tool-card.disabled{opacity:.55;cursor:not-allowed}
.tool-card .nm{font-size:13.5px;font-weight:650;color:#DCE6F7}
.result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.result-item{border:1px solid var(--o-line);border-radius:10px;overflow:hidden;display:flex;flex-direction:column;gap:6px;padding:7px;background:rgba(0,0,0,.2)}
.result-item img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:7px;display:block}
.result-item .btn{height:24px;font-size:11px}
.result-ph{aspect-ratio:1/1;border-radius:7px;background:linear-gradient(135deg,rgba(139,92,246,.24),rgba(62,232,181,.16));display:flex;align-items:center;justify-content:center;font-size:27px;color:rgba(255,255,255,.5)}
.drive-ico{width:30px;height:30px;border-radius:8px;flex:none;display:flex;align-items:center;justify-content:center;background:rgba(120,180,255,.08);border:1px solid var(--o-line);color:#9FB8FF;font-size:14px}
.plat-editor{border:1px dashed rgba(139,92,246,.36);border-radius:11px;background:rgba(139,92,246,.05);padding:10px 12px;display:flex;flex-direction:column;gap:9px}
.plat-editor-list{display:flex;flex-direction:column;gap:9px;max-height:280px;overflow:auto;padding-right:2px}
.plat-editor-row{display:flex;flex-direction:column;gap:6px}
.plat-editor-head{display:flex;align-items:center;gap:7px;font-size:12px}
.plat-editor-head .nm{color:#DCE6F7;font-weight:600;font-size:12.5px}
.plat-editor-head .hint{margin-left:auto}
.plat-editor-row textarea{min-height:72px;font-size:13px}

/* v3 琛ㄦ牸鍒楀 */
.inbox-tr{grid-template-columns:190px minmax(0,1fr) 150px 120px 74px 66px 66px}
.mon-posts-tr{grid-template-columns:minmax(0,1fr) 70px 130px 64px 58px 58px 70px 140px}
.mon-comp-tr{grid-template-columns:minmax(0,1fr) 130px 80px 90px 70px}
.mon-kw-tr{grid-template-columns:minmax(0,1fr) 150px 70px 60px 80px 120px}
.an-articles-tr{grid-template-columns:minmax(0,1fr) 130px 66px 52px 52px 52px 62px 92px}
.an-comp-tr{grid-template-columns:minmax(0,1.2fr) 120px 70px 74px 80px 80px 74px}
.auto-tr{grid-template-columns:minmax(0,1fr) 72px 64px 96px 84px 300px}
.lead-tr{grid-template-columns:minmax(0,1fr) 72px 120px 52px 72px 84px 120px}
.studio-video-tr{grid-template-columns:minmax(0,1fr) 72px 100px 64px 84px 230px}
.studio-create-tr{grid-template-columns:minmax(0,1fr) 120px 80px 56px 84px}
.studio-drive-tr{grid-template-columns:minmax(0,1fr) 64px 74px 96px 160px}
.team-member-tr{grid-template-columns:minmax(0,1fr) 130px 84px 110px 88px}
.team-script-tr{grid-template-columns:96px 100px minmax(0,1fr) 92px 110px}
.team-reply-tr{grid-template-columns:64px 130px minmax(0,1fr) minmax(0,1fr) 110px}
.bill-order-tr{grid-template-columns:110px minmax(0,1fr) 72px 68px 96px 90px}
@media (max-width:1360px){
  .inbox-tr{grid-template-columns:170px minmax(0,1fr) 120px 100px 66px 60px 60px}
  .mon-posts-tr{grid-template-columns:minmax(0,1fr) 60px 110px 54px 50px 50px 62px 120px}
  .an-articles-tr{grid-template-columns:minmax(0,1fr) 110px 56px 46px 46px 46px 56px 82px}
  .auto-tr{grid-template-columns:minmax(0,1fr) 66px 58px 82px 74px 250px}
}
@media (max-width:1300px){
  .plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tag-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .brand-grid{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:1200px){
  .type-grid{grid-template-columns:minmax(0,1fr)}
  .drawer{width:min(560px,100vw)!important}
}

/* 渚ф爮绱у噾锛?5 涓鑸」鍦?1440脳900 / 1280脳900 鍐呭畬鏁村彲瑙?*/
.side{padding:14px 12px 12px}
.side-brand{padding:2px 8px 12px}
.side .nav-group{padding:10px 12px 5px}
.side .nav-item{height:32px;margin-bottom:1px;font-size:13.3px;border-radius:8px}
.side .nav-item .nav-ic,.side .nav-item .nav-ic svg{width:15px;height:15px}
.side-foot{padding-top:8px}
.quota-mini{padding:8px 10px;margin-bottom:7px}
.user-chip{padding:3px 4px}
.content{padding:18px 22px 22px}

/* =========================================================================
   v3.1 路 瀛椾綋涓庤彍鍗曟爮璋冩暣锛堟洿娓呮櫚鐨勯槄璇诲昂搴︼紱涓ゅ涓婚鍏辩敤锛?   ========================================================================= */
body{font-size:15px;line-height:1.55}
.side{width:246px;padding:14px 13px 10px}
.side-brand{padding:4px 8px 12px}
.side-brand .nm{font-size:19px;letter-spacing:.04em}
.side-brand .sub{font-size:10px}
.logo-o{width:29px;height:29px}
.side .nav-group{padding:8px 11px 3px;font-size:10.5px;letter-spacing:.22em;line-height:1.3}
.side .nav-item{height:32px;margin-bottom:0;font-size:14.1px;border-radius:9px;gap:10px;padding:0 11px}
.side .nav-item .nav-ic,.side .nav-item .nav-ic svg{width:17px;height:17px}
.nav-badge{font-size:10.5px;padding:3px 7px}
.topbar{height:64px;padding:0 24px;gap:16px}
.crumb{font-size:14px}
.zone-chip{height:26px;font-size:10.5px;padding:0 11px}
.role-chip{font-size:10.5px!important;height:24px;padding:0 9px}
.search-box{width:278px;height:36px;font-size:13.8px}
.search-box input{font-size:13.8px}
.icon-btn{width:36px;height:36px;border-radius:10px}
.icon-btn svg{width:16px;height:16px}
.top-user .em{font-size:13px}
.top-user .tn{font-size:10px}
.content{padding:22px 26px 26px}
.page{gap:16px}
.page-head h1{font-size:26px;letter-spacing:-.015em}
.page-head .sub{font-size:14px;margin-top:6px}
.btn{height:36px;padding:0 15px;font-size:14px;border-radius:10px}
.btn.sm{height:30px;font-size:13px;padding:0 11px}
.inp{height:42px;font-size:14.5px;border-radius:11px}
.inp.sm{height:34px;font-size:13.6px}
textarea.inp{font-size:14.5px}
.field .lbl{font-size:13.6px}
.card-h .t,.section-h .t{font-size:15px}
.card-h .m,.section-h .m{font-size:10.5px}
.kpi .k{font-size:12px}
.kpi .k .lab{font-size:10px}
.kpi .v{font-size:31px}
.kpi .d{font-size:12px}
.pill{height:22px;font-size:10.5px;padding:0 9px}
.tag{height:21px;font-size:11.5px;padding:0 8px}
.tr{font-size:13.8px;min-height:38px}
.tr.hd{font-size:10.5px}
.tr .tt{font-size:13.6px}
.tr .tm{font-size:12.5px}
.tr .num{font-size:12.5px}
.label{font-size:12.5px}
.hint{font-size:13.5px}
.note{font-size:13px;letter-spacing:.06em}
.brow{font-size:12.5px}
.brow .v{font-size:14.5px;font-weight:600}
.tr .num{font-size:14px}
.nav-group{font-size:12px!important}
.tab-en{font-size:11px!important}
.card-h .m,.section-h .m{font-size:12px!important}
.kpi .k .lab{font-size:11.5px!important}
.kpi .v{font-size:33px}
.side-brand .sub{font-size:11px}
.zone-chip,.role-chip{font-size:11.5px!important}
.tr.hd{font-size:11.5px}
.plan-card .price{font-size:25px}
.points-hero .big{font-size:43px}
.table .mono,.num{font-variant-numeric:tabular-nums}
.modal-h h3{font-size:18px}
.modal-h p{font-size:13px}
.popover .pv-row .tt{font-size:13px}
.tab{font-size:13.5px!important}
.drawer .dr-h{font-size:15px}
.auth-theme-fab{
  position:fixed;right:24px;bottom:22px;z-index:30;display:inline-flex;align-items:center;gap:7px;
  height:36px;padding:0 13px;border-radius:20px;border:1px solid var(--o-line-strong);
  background:var(--o-panel);color:var(--o-muted);font-size:13px;backdrop-filter:blur(14px);cursor:pointer;
}
.auth-theme-fab:hover{color:var(--o-ink);border-color:var(--o-mint)}
.auth-theme-fab svg{width:15px;height:15px}
@media (max-width:900px){
  .side{width:240px}
  .side .nav-item{height:37px;font-size:14px}
}
@media (max-height:820px){
  .side .nav-item{height:33px;font-size:13.8px}
  .side .nav-group{padding:9px 11px 4px}
}

/* =========================================================================
   v3.1 路 浜壊涓婚 Light锛?theme=light 鎴栧彸涓婅鍒囨崲锛沴ocalStorage 璁板繂锛?   ========================================================================= */
html[data-theme="light"]{
  --o-bg:#F3F6FB;
  --o-bg-2:#EAF0F8;
  --o-panel:rgba(255,255,255,.88);
  --o-panel-solid:#FFFFFF;
  --o-line:rgba(20,45,75,.12);
  --o-line-strong:rgba(20,45,75,.24);
  --o-ink:#0F1B2D;
  --o-muted:#53637A;
  --o-dim:#7A8AA0;
  --o-mint:#0EAE84;
  --o-mint-2:#14BF93;
  --o-blue:#3A6FE0;
  --o-violet:#7A5BD6;
  --o-rose:#D0478B;
  --o-amber:#B2761B;
  --o-red:#D14343;
  --o-grad:linear-gradient(115deg,#7A5BD6,#3A6FE0 55%,#0EAE84);
  --o-glow:0 0 24px rgba(14,174,132,.18);
  --o-shadow:0 18px 46px rgba(15,35,60,.12);
  color-scheme:light;
}
html[data-theme="light"] body{background:var(--o-bg);color:var(--o-ink)}
html[data-theme="light"] body::before{
  background:
    radial-gradient(760px 520px at 84% 8%,rgba(14,174,132,.12),transparent 70%),
    radial-gradient(820px 560px at 6% -6%,rgba(58,111,224,.12),transparent 70%),
    radial-gradient(700px 500px at 52% 112%,rgba(122,91,214,.08),transparent 72%),
    linear-gradient(rgba(20,45,75,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(20,45,75,.045) 1px,transparent 1px);
  background-size:auto,auto,auto,64px 64px,64px 64px;
  mask-image:linear-gradient(#000 68%,rgba(0,0,0,.55) 100%);
}
html[data-theme="light"] body::after{
  background-image:radial-gradient(rgba(20,45,75,.12) 1px,transparent 1px);
  opacity:.55;
}
html[data-theme="light"] ::selection{background:rgba(14,174,132,.18);color:#0B3A32}
html[data-theme="light"] ::-webkit-scrollbar-thumb{background:rgba(20,45,75,.16)}
html[data-theme="light"] ::-webkit-scrollbar-thumb:hover{background:rgba(20,45,75,.28)}
html[data-theme="light"] .side{
  background:linear-gradient(180deg,#FFFFFF 0%,#F7FAFD 100%);
  border-right:1px solid rgba(20,45,75,.1);
}
html[data-theme="light"] .side::after{background:linear-gradient(180deg,rgba(14,174,132,.3),transparent 30%,transparent 70%,rgba(58,111,224,.25))}
html[data-theme="light"] .logo-o{border-color:rgba(14,174,132,.9);box-shadow:0 0 16px rgba(14,174,132,.2)}
html[data-theme="light"] .side-brand .nm,
html[data-theme="light"] .auth-brand .nm{color:#0F1B2D}
html[data-theme="light"] .nav-group{color:#8A99AD}
html[data-theme="light"] .nav-item{color:#56667C}
html[data-theme="light"] .nav-item:hover{color:#15243A;background:rgba(20,45,75,.045)}
html[data-theme="light"] .nav-item.on{
  color:var(--nav-active-fg,#0B5C4A);background:var(--nav-active-bg,linear-gradient(90deg,rgba(14,174,132,.14),rgba(14,174,132,.03)));
  box-shadow:inset 0 0 0 1px rgba(14,174,132,.2);
}
html[data-theme="light"] .nav-item.on .nav-ic{color:var(--nav-active-fg,var(--o-mint));filter:none}
html[data-theme="light"] .nav-badge{background:rgba(178,118,27,.12);color:#9A6517}
html[data-theme="light"] .quota-mini{background:#F5F8FC;border-color:rgba(20,45,75,.1)}
html[data-theme="light"] .quota-mini .k{color:#7A8AA0}
html[data-theme="light"] .quota-mini .k b{color:#33445C}
html[data-theme="light"] .quota-mini .bar{background:rgba(20,45,75,.1)}
html[data-theme="light"] .user-chip:hover{background:rgba(20,45,75,.045)}
html[data-theme="light"] .user-chip .nm{color:#24364E}
html[data-theme="light"] .user-chip .rl{color:#7A8AA0}
html[data-theme="light"] .side-foot{border-color:rgba(20,45,75,.1)}
html[data-theme="light"] .topbar{background:rgba(255,255,255,.82);border-bottom-color:rgba(20,45,75,.1)}
html[data-theme="light"] .crumb{color:#7A8AA0}
html[data-theme="light"] .crumb b{color:#0F1B2D}
html[data-theme="light"] .zone-chip{color:#0B6B57;border-color:rgba(14,174,132,.3);background:rgba(14,174,132,.07)}
html[data-theme="light"] .role-chip{background:#F1F5FA;border-color:rgba(20,45,75,.14);color:#44546B}
html[data-theme="light"] .search-box{background:#FFFFFF;border-color:rgba(20,45,75,.14);color:#7A8AA0}
html[data-theme="light"] .search-box input{color:#0F1B2D}
html[data-theme="light"] .search-box input::placeholder{color:#98A6B8}
html[data-theme="light"] .icon-btn{background:#FFFFFF;border-color:rgba(20,45,75,.14);color:#56667C}
html[data-theme="light"] .icon-btn:hover{color:#0F1B2D;border-color:rgba(20,45,75,.26);background:#F7FAFD}
html[data-theme="light"] .top-user .em{color:#24364E}
html[data-theme="light"] .top-user .tn{color:#7A8AA0}
html[data-theme="light"] .card{
  background:rgba(255,255,255,.9);border-color:rgba(20,45,75,.11);
  box-shadow:0 10px 28px rgba(15,35,60,.06),inset 0 1px 0 rgba(255,255,255,.8);
}
html[data-theme="light"] .card.hover:hover{box-shadow:0 16px 38px rgba(15,35,60,.1)}
html[data-theme="light"] .card-h .t,
html[data-theme="light"] .section-h .t,
html[data-theme="light"] .tr .tt,
html[data-theme="light"] .popover .pv-h .t,
html[data-theme="light"] .popover .pv-row .tt,
html[data-theme="light"] .health-rows b,
html[data-theme="light"] .kpi .v{color:#12233B}
html[data-theme="light"] .card-h .m,
html[data-theme="light"] .section-h .m{color:#8A99AD}
html[data-theme="light"] .kpi .k{color:#53637A}
html[data-theme="light"] .kpi .d{color:#7A8AA0}
html[data-theme="light"] .field .lbl{color:#42536B}
html[data-theme="light"] .inp{background:#FFFFFF;color:#0F1B2D;border-color:rgba(20,45,75,.16);color-scheme:light}
html[data-theme="light"] .inp::placeholder{color:#98A6B8}
html[data-theme="light"] select.inp option{background:#FFFFFF;color:#0F1B2D}
html[data-theme="light"] .seg{background:#F1F5FA}
html[data-theme="light"] .seg button.on{background:var(--tab-active-bg,rgba(47,107,255,.14));color:var(--tab-active-fg,#1D5BFF);box-shadow:inset 0 0 0 1px var(--tab-active-line,rgba(47,107,255,.24))}
html[data-theme="light"] .btn-ghost,
html[data-theme="light"] .btn-line{background:#FFFFFF;color:#3C4E66}
html[data-theme="light"] .btn-ghost:hover:not(:disabled),
html[data-theme="light"] .btn-line:hover:not(:disabled){background:#F7FAFD;color:#0F1B2D}
html[data-theme="light"] .tr.hd{background:rgba(20,45,75,.035);color:#7A8AA0}
html[data-theme="light"] .tr:not(.hd):hover{background:rgba(20,45,75,.025)}
html[data-theme="light"] .tr .tm,
html[data-theme="light"] .tr .num{color:#5E6E85}
html[data-theme="light"] .pill{background:#F4F7FB;border-color:rgba(20,45,75,.14);color:#4A5A70}
html[data-theme="light"] .pill.ok{background:rgba(14,174,132,.1);color:#0B6B57;border-color:rgba(14,174,132,.24)}
html[data-theme="light"] .pill.warn{background:rgba(178,118,27,.1);color:#8C5C10;border-color:rgba(178,118,27,.26)}
html[data-theme="light"] .pill.err{background:rgba(208,71,139,.1);color:#A32D67;border-color:rgba(208,71,139,.26)}
html[data-theme="light"] .pill.info{background:rgba(58,111,224,.1);color:#2952A8;border-color:rgba(58,111,224,.24)}
html[data-theme="light"] .pill.violet{background:rgba(122,91,214,.1);color:#5B41A8;border-color:rgba(122,91,214,.24)}
html[data-theme="light"] .tag{background:#F4F7FB;color:#4A5A70;border-color:rgba(20,45,75,.12)}
html[data-theme="light"] .empty{color:#7A8AA0}
html[data-theme="light"] .empty .e-ico{color:#93A3B8;background:#F4F7FB}
html[data-theme="light"] .modal{background:#FFFFFF;box-shadow:0 30px 80px rgba(15,35,60,.18)}
html[data-theme="light"] .modal-h,
html[data-theme="light"] .modal-f{border-color:rgba(20,45,75,.1)}
html[data-theme="light"] .modal-f{background:#F7FAFD}
html[data-theme="light"] .modal-x{background:#F4F7FB;border-color:rgba(20,45,75,.12);color:#5E6E85}
html[data-theme="light"] .modal-x:hover{background:#EAF0F8;color:#0F1B2D}
html[data-theme="light"] .popover{background:#FFFFFF;box-shadow:0 20px 50px rgba(15,35,60,.16);border-color:rgba(20,45,75,.12)}
html[data-theme="light"] .popover .pv-row:hover{background:#F5F8FC}
html[data-theme="light"] .popover .pv-u .em{color:#0F1B2D}
html[data-theme="light"] .drawer{background:#FFFFFF;box-shadow:-20px 0 60px rgba(15,35,60,.16)}
html[data-theme="light"] .drawer .dr-h,
html[data-theme="light"] .drawer .dr-f{border-color:rgba(20,45,75,.1)}
html[data-theme="light"] .donut::before,
html[data-theme="light"] .health-ring::before{background:#FFFFFF;border-color:rgba(20,45,75,.08)}
html[data-theme="light"] .donut b,
html[data-theme="light"] .health-ring b{color:#12233B}
html[data-theme="light"] .trend-legend{color:#53637A}
html[data-theme="light"] .auth-left{
  background:
    radial-gradient(620px 480px at 30% 18%,rgba(122,91,214,.16),transparent 70%),
    radial-gradient(700px 520px at 82% 84%,rgba(14,174,132,.14),transparent 72%),
    linear-gradient(180deg,#F7FAFD,#EDF4F7);
  border-right:1px solid rgba(20,45,75,.1);
}
html[data-theme="light"] .auth-left::before{background-image:radial-gradient(rgba(20,45,75,.14) 1px,transparent 1px)}
html[data-theme="light"] .auth-left::after{background:linear-gradient(rgba(20,45,75,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(20,45,75,.04) 1px,transparent 1px)}
html[data-theme="light"] .orbit-ring{border-color:rgba(20,45,75,.14)}
html[data-theme="light"] .orbit-ring.r2{border-color:rgba(20,45,75,.12)}
html[data-theme="light"] .orbit-ring.r3{border-color:rgba(14,174,132,.28)}
html[data-theme="light"] .orbit-ring.r4{border-color:rgba(122,91,214,.24)}
html[data-theme="light"] .orbit-core{background:rgba(255,255,255,.92);box-shadow:0 20px 50px rgba(15,35,60,.12)}
html[data-theme="light"] .orbit-core .v{color:#0F1B2D}
html[data-theme="light"] .orbit-core .s{color:#7A8AA0}
html[data-theme="light"] .auth-tag h1{color:#0F1B2D}
html[data-theme="light"] .auth-tag .sub{color:#53637A}
html[data-theme="light"] .auth-meta{color:#7A8AA0;border-top-color:rgba(20,45,75,.12)}
html[data-theme="light"] .auth-right{background:#F7FAFD}
html[data-theme="light"] .auth-right::before{background:radial-gradient(420px 380px at 70% 30%,rgba(58,111,224,.07),transparent 72%)}
html[data-theme="light"] .auth-card{
  background:rgba(255,255,255,.96);border-color:rgba(20,45,75,.14);
  box-shadow:0 34px 90px rgba(15,35,60,.14),inset 0 1px 0 #fff;
}
html[data-theme="light"] .auth-card h2{color:#0F1B2D}
html[data-theme="light"] .auth-card .cap{color:#7A8AA0}
html[data-theme="light"] .lang-switch{color:#53637A}
html[data-theme="light"] .lang-switch button{color:#7A8AA0}
html[data-theme="light"] .lang-switch button.on{color:#0B5C4A;background:rgba(14,174,132,.12)}
html[data-theme="light"] .google-btn{background:#FFFFFF;border-color:rgba(20,45,75,.18);color:#24364E}
html[data-theme="light"] .google-btn:hover:not(:disabled){background:#F7FAFD}
html[data-theme="light"] .auth-or{color:#8A99AD}
html[data-theme="light"] .auth-or::before,html[data-theme="light"] .auth-or::after{background:rgba(20,45,75,.12)}
html[data-theme="light"] .code-btn{background:rgba(14,174,132,.1);border-color:rgba(14,174,132,.3);color:#0B6B57}
html[data-theme="light"] .devcode{background:rgba(14,174,132,.08);border-color:rgba(14,174,132,.3);color:#0B6B57}
html[data-theme="light"] .auth-theme-fab{background:#FFFFFF;border-color:rgba(20,45,75,.16);color:#53637A}
html[data-theme="light"] .kpi{
  background:linear-gradient(180deg,#FFFFFF,#F8FBFE);border-color:rgba(20,45,75,.11);
  box-shadow:0 8px 24px rgba(15,35,60,.06),inset 0 1px 0 #fff;
}
html[data-theme="light"] .kpi .v{color:#0F1B2D}
html[data-theme="light"] .kpi .d{color:#7A8AA0}
html[data-theme="light"] .kpi .k .lab{color:#8A99AD}
html[data-theme="light"] .onode{
  background:#FFFFFF;border-color:rgba(20,45,75,.18);color:#4A5A70;
  box-shadow:0 8px 22px rgba(15,35,60,.1),inset 0 1px 0 #fff;
}
html[data-theme="light"] .onode.hot{border-color:rgba(14,174,132,.5);color:#0B6B57;box-shadow:0 8px 26px rgba(14,174,132,.18)}
html[data-theme="light"] .onode.warm{border-color:rgba(178,118,27,.4);color:#8C5C10}
html[data-theme="light"] .float-card{
  background:rgba(255,255,255,.94);border-color:rgba(20,45,75,.14);
  box-shadow:0 22px 54px rgba(15,35,60,.14);
}
html[data-theme="light"] .float-card .v{color:#0F1B2D}
html[data-theme="light"] .float-card .d{color:#7A8AA0}
html[data-theme="light"] .tab:hover{color:#0F1B2D;background:rgba(20,45,75,.04)}
html[data-theme="light"] .tab.on{color:var(--tab-active-fg,#0B5C4A);background:var(--tab-active-bg,rgba(14,174,132,.09))}
html[data-theme="light"] .tab-n{background:rgba(20,45,75,.08);color:#53637A}
html[data-theme="light"] .tab-n.hot{background:rgba(178,118,27,.14);color:#8C5C10}
html[data-theme="light"] .tab-en{color:#8A99AD}
html[data-theme="light"] .pv{background:linear-gradient(180deg,#FFFFFF,#F7FAFD)}
html[data-theme="light"] .pv-head .tt{color:#12233B}
html[data-theme="light"] .toolbar,html[data-theme="light"] .tabs{border-color:rgba(20,45,75,.1)}
html[data-theme="light"] .role-chip.r-owner,html[data-theme="light"] .role-chip.r-admin{background:rgba(14,174,132,.12);color:#0B6B57;border-color:rgba(14,174,132,.26)}
html[data-theme="light"] .role-chip.r-viewer{background:rgba(20,45,75,.06);color:#53637A;border-color:rgba(20,45,75,.14)}
html[data-theme="light"] .plan-card{background:#FFFFFF;border-color:rgba(20,45,75,.11)}
html[data-theme="light"] .plan-card.current{background:linear-gradient(180deg,rgba(14,174,132,.1),#FFFFFF);border-color:rgba(14,174,132,.4);box-shadow:0 10px 30px rgba(14,174,132,.1)}
html[data-theme="light"] .plan-card .price{color:#0F1B2D}
html[data-theme="light"] .plan-card .feats{color:#53637A}
html[data-theme="light"] .price{background:#F7FAFD}
html[data-theme="light"] .price .v{color:#12233B}
html[data-theme="light"] .addon{background:#F7FAFD}
html[data-theme="light"] .addon .nm{color:#12233B}
html[data-theme="light"] .tool-card{background:#FFFFFF}
html[data-theme="light"] .tool-card .nm{color:#12233B}
html[data-theme="light"] .progress{background:rgba(20,45,75,.1)}
html[data-theme="light"] .brow{color:#4A5A70}
html[data-theme="light"] .brow .v{color:#0F1B2D;font-weight:600}
html[data-theme="light"] .brow .s{color:#6E7E94}
html[data-theme="light"] .brow .bar{background:rgba(20,45,75,.1)}
html[data-theme="light"] .num,
html[data-theme="light"] .mono{color:#12233B}
html[data-theme="light"] .points-hero{background:linear-gradient(180deg,#FFFFFF,#F7FAFD);border-color:rgba(178,118,27,.24)}
html[data-theme="light"] .points-hero .big{color:#9A6517}
html[data-theme="light"] .points-hero .meta .v{color:#12233B}
html[data-theme="light"] .keyrow{background:#F7FAFD}
html[data-theme="light"] .keyrow .nm{color:#24364E}
html[data-theme="light"] .cal-head{border-bottom-color:rgba(20,45,75,.1)}
html[data-theme="light"] .cal-grid{background:rgba(20,45,75,.1);border-color:rgba(20,45,75,.12)}
html[data-theme="light"] .cal-dow{background:#F2F6FB;color:#7A8AA0}
html[data-theme="light"] .cal-dow .rk{color:#A7B4C6}
html[data-theme="light"] .cal-cell{background:#FFFFFF}
html[data-theme="light"] .cal-cell:hover{background:#F7FAFD}
html[data-theme="light"] .cal-cell.other{background:#F3F6FB;opacity:.75}
html[data-theme="light"] .cal-cell.today{background:rgba(14,174,132,.07);box-shadow:inset 0 0 0 1px rgba(14,174,132,.3)}
html[data-theme="light"] .cal-cell.sel{box-shadow:inset 0 0 0 1.5px rgba(14,174,132,.55)}
html[data-theme="light"] .cal-d .n{color:#42536B}
html[data-theme="light"] .cal-cell.today .cal-d .n{color:#0B6B57}
html[data-theme="light"] .cal-d .cnt{color:#7A8AA0}
html[data-theme="light"] .cal-item{background:#F4F7FB;color:#33445C}
html[data-theme="light"] .cal-item .tm{color:#7A8AA0}
html[data-theme="light"] .cal-more{color:#7A8AA0}
html[data-theme="light"] .cal-sum{border-color:rgba(20,45,75,.1)}
html[data-theme="light"] .cal-sum .v{color:#12233B}
html[data-theme="light"] .cal-sum .k{color:#7A8AA0}
html[data-theme="light"] .rail-day{border-color:rgba(20,45,75,.1)}
html[data-theme="light"] .rail-day .d{color:#24364E}
html[data-theme="light"] .rail-day .n{color:#7A8AA0}
html[data-theme="light"] .rail-item{border-color:rgba(20,45,75,.1)}
html[data-theme="light"] .rail-item .tt,
html[data-theme="light"] .rail-item .tt b{color:#33445C}
html[data-theme="light"] .rail-empty{color:#7A8AA0}
/* 浜壊娓呮櫚搴︼細鍘绘帀鐜荤拑妯＄硦/鍗婇€忔槑鍙犲姞锛屽惎鐢?ClearType 瀛愬儚绱犳覆鏌擄紝閬垮厤鏁村睆鈥滃彂绯娾€?*/
html[data-theme="light"] body{
  -webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto;text-rendering:auto;
}
html[data-theme="light"] body::after{opacity:.32}
html[data-theme="light"] .card,
html[data-theme="light"] .topbar,
html[data-theme="light"] .modal,
html[data-theme="light"] .auth-card,
html[data-theme="light"] .auth-theme-fab,
html[data-theme="light"] .onode,
html[data-theme="light"] .float-card,
html[data-theme="light"] .mask,
html[data-theme="light"] .drawer-mask,
html[data-theme="light"] .side-toggle-mask{
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
}
html[data-theme="light"] .card{background:#FFFFFF}
html[data-theme="light"] .topbar{background:rgba(255,255,255,.97)}
html[data-theme="light"] .modal{background:#FFFFFF}
html[data-theme="light"] .auth-card{background:#FFFFFF}
html[data-theme="light"] .onode,html[data-theme="light"] .float-card{background:#FFFFFF}
html[data-theme="light"] .mask{background:rgba(15,35,60,.38)}
html[data-theme="light"] .drawer-mask{background:rgba(15,35,60,.35)}
html[data-theme="light"] .side-toggle-mask{background:rgba(15,35,60,.35)}
html[data-theme="light"] body::before{display:none}
html[data-theme="light"] body::after{display:none}
html[data-theme="light"] body{background:linear-gradient(180deg,#F8FAFD 0%,#EEF3F9 100%)}
html[data-theme="light"] .card{
  border-color:rgba(20,45,75,.16);
  box-shadow:0 4px 14px rgba(15,35,60,.05),0 1px 0 rgba(255,255,255,.9) inset;
}
html[data-theme="light"] .kpi{
  border-color:rgba(20,45,75,.16);
  box-shadow:0 4px 12px rgba(15,35,60,.05);
}
html[data-theme="light"] .topbar{box-shadow:0 1px 0 rgba(20,45,75,.06)}
html[data-theme="light"] .inp{border-color:rgba(20,45,75,.2)}
html[data-theme="light"] .btn-line,
html[data-theme="light"] .btn-ghost{border-color:rgba(20,45,75,.2)}
html[data-theme="light"] .side{border-right-color:rgba(20,45,75,.14)}
html[data-theme="light"] *{text-shadow:none!important}

/* =========================================================================
   涓汉涓績 Profile
   ========================================================================= */
.pf-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:16px;align-items:start}
.pf-side{display:flex;flex-direction:column;gap:16px;min-width:0}
.pf-identity{display:flex;align-items:center;gap:16px;padding-bottom:14px;border-bottom:1px solid rgba(120,180,255,.08)}
.pf-ava{
  width:64px;height:64px;flex:none;border-radius:20px;display:flex;align-items:center;justify-content:center;
  color:#04140F;font-family:var(--mono);font-size:22px;font-weight:800;letter-spacing:.02em;
  box-shadow:0 0 0 1px rgba(255,255,255,.15),0 10px 26px rgba(0,0,0,.22);
}
.pf-name{font-size:20px;font-weight:750;letter-spacing:-.01em;line-height:1.2}
.pf-mail{font-family:var(--mono);font-size:11px;color:var(--o-muted);margin-top:4px;word-break:break-all}
.pf-chips{display:flex;gap:6px;margin-top:7px;flex-wrap:wrap}
.pf-colors{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:14px 0 4px}
.pf-colors .lbl{font-size:11px;color:var(--o-dim);margin-right:2px}
.pf-color{width:24px;height:24px;border-radius:8px;border:2px solid transparent;cursor:pointer;padding:0;transition:transform .12s}
.pf-color:hover{transform:translateY(-1px)}
.pf-color.on{border-color:var(--o-ink);box-shadow:0 0 0 2px rgba(255,255,255,.18)}
.pf-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}
.pf-form .pf-wide{grid-column:1/-1}
.pf-form textarea.inp{min-height:68px}
.pf-actions{display:flex;align-items:center;gap:8px;margin-top:14px}
.pf-links{display:flex;flex-direction:column;gap:2px}
.pf-link{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 6px;border:0;border-bottom:1px dashed rgba(120,180,255,.08);background:transparent;color:var(--o-muted);font-size:12px;cursor:pointer;text-align:left}
.pf-link:last-child{border:0}
.pf-link:hover{color:var(--o-ink)}
.pf-note{padding:9px 11px;border-radius:9px;background:rgba(62,232,181,.08);border:1px solid rgba(62,232,181,.2);color:var(--o-mint);font-size:11.5px}
.pf-notify{max-width:900px}
.pf-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 2px;border-bottom:1px solid rgba(120,180,255,.07)}
.pf-toggle-row:last-of-type{border-bottom:0}
.pf-toggle-t{font-size:12.5px;font-weight:600}
.pf-toggle-d{font-size:11px;color:var(--o-dim);margin-top:3px;line-height:1.5}
.switch{position:relative;display:inline-flex;width:38px;height:22px;flex:none;cursor:pointer}
.switch input{position:absolute;opacity:0;width:0;height:0}
.switch i{width:100%;height:100%;border-radius:20px;background:rgba(120,180,255,.14);border:1px solid rgba(120,180,255,.16);transition:.16s;display:block}
.switch i::after{content:"";position:absolute;left:2px;top:2px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.3);transition:.16s}
.switch input:checked + i{background:rgba(62,232,181,.3);border-color:rgba(62,232,181,.45)}
.switch input:checked + i::after{transform:translateX(16px);background:var(--o-mint)}
.pf-plan-top{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}
.pf-plan{font-family:var(--mono);font-size:34px;font-weight:700;letter-spacing:-.01em;margin-top:2px}
.pf-stats{display:flex;gap:26px;margin-top:14px;flex-wrap:wrap}
.pf-stats div{display:flex;flex-direction:column;gap:3px}
.pf-stats span{font-family:var(--mono);font-size:9px;letter-spacing:.12em;color:var(--o-dim);text-transform:uppercase}
.pf-stats b{font-family:var(--mono);font-size:17px;color:var(--o-ink);font-weight:600}
.pf-usage{display:flex;flex-direction:column;gap:2px}
.pf-usage .brow{grid-template-columns:110px minmax(0,1fr) 86px;font-size:11.5px}
@media (max-width:1200px){
  .pf-grid,.pf-plan-top{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:760px){
  .pf-form{grid-template-columns:minmax(0,1fr)}
}
html[data-theme="light"] .pf-identity{border-bottom-color:rgba(20,45,75,.1)}
html[data-theme="light"] .pf-link{border-color:rgba(20,45,75,.1);color:#53637A}
html[data-theme="light"] .pf-link:hover{color:#0F1B2D}
html[data-theme="light"] .pf-toggle-row{border-color:rgba(20,45,75,.1)}
html[data-theme="light"] .pf-color.on{border-color:#0F1B2D;box-shadow:0 0 0 2px rgba(20,45,75,.15)}
html[data-theme="light"] .pf-ava{box-shadow:0 0 0 1px rgba(20,45,75,.12),0 8px 20px rgba(15,35,60,.14);color:#062018}
html[data-theme="light"] .switch i{background:rgba(20,45,75,.12);border-color:rgba(20,45,75,.16)}
html[data-theme="light"] .switch input:checked + i{background:rgba(14,174,132,.25);border-color:rgba(14,174,132,.45)}
html[data-theme="light"] .switch input:checked + i::after{background:#0EAE84}
html[data-theme="light"] .pf-note{background:rgba(14,174,132,.08);border-color:rgba(14,174,132,.22);color:#0B6B57}
html[data-theme="light"] .kv dd{color:#24364E}
html[data-theme="light"] .kv dt{color:#7A8AA0}
html[data-theme="light"] .stat{background:#F7FAFD;border-color:rgba(20,45,75,.12)}
html[data-theme="light"] .stat .v{color:#0F1B2D}
html[data-theme="light"] .stat .k{color:#7A8AA0}
/* 鍙岃瑁呴グ鏍囩濮嬬粓闅愯棌锛堜腑鑻辨枃妯″紡鍧囧彧鏄剧ず褰撳墠璇█锛?*/
html .tab-en{display:none!important}
html[data-lang="zh"] .card-h>.m,
html[data-lang="zh"] .section-h>.m{display:none!important}
html[data-lang="zh"] .field .lbl em{display:none!important}
.lang-btn{
  width:auto!important;min-width:38px;padding:0 8px!important;font-family:var(--mono);
  font-size:10px!important;letter-spacing:.04em;font-weight:600;
}
html[data-theme="light"] .lang-btn{background:#FFFFFF}

/* =========================================================================
   v3.3 路 SocialEcho 瀛椾綋灏哄害鏍″噯锛堜繚鐣?D 钖勮嵎缁?/ 杞ㄩ亾缁撴瀯锛?   ========================================================================= */
body{font-size:14px;line-height:1.6}
.page-head h1{font-size:20px;font-weight:600;letter-spacing:-.01em;line-height:1.35}
.page-head .sub{font-size:13px;line-height:1.6;margin-top:4px}
.card-h .t,.section-h .t{font-size:16px;font-weight:600;letter-spacing:0}
.card-h .m,.section-h .m{font-size:12px}
.kpi .k{font-size:12px}
.kpi .k .lab{font-size:11px}
.kpi .v{font-size:28px;line-height:1.15;font-weight:600}
.kpi .v small{font-size:12px}
.kpi .d{font-size:12px}
.tr{font-size:13px;line-height:1.57;min-height:36px}
.tr.hd{font-size:12px;font-weight:600}
.tr .tt{font-size:13px}
.tr .tm,.tr .num{font-size:12px}
.side .nav-item{font-size:14px}
.nav-group{font-size:11px!important}
.btn{font-size:14px}
.btn.sm{font-size:12.5px}
.inp{font-size:14px}
.inp.sm{font-size:13px}
.field .lbl{font-size:13px}
textarea.inp{font-size:14px;line-height:1.65}
.label{font-size:11px;letter-spacing:.12em}
.note{font-size:12px;letter-spacing:.03em}
.hint{font-size:12.5px;line-height:1.65}
.tab{font-size:14px!important}
.tab-n{font-size:10.5px}
.brow{font-size:12px}
.brow .v{font-size:13px}
.cal-title{font-size:16px}
.cal-sum .v{font-size:16px}
.rail-day .d{font-size:13px}
.pf-name{font-size:20px}
.pf-plan{font-size:30px}
.pf-toggle-t{font-size:13px}
.pf-toggle-d{font-size:12px}
.modal-h h3{font-size:16px}
.modal-h p{font-size:13px}
.popover .pv-row .tt{font-size:13px}
.popover .pv-row .tm{font-size:11px}
@media (max-width:1300px){.page-head h1{font-size:19px}}
@media (max-width:900px){.page-head h1{font-size:18px}}

/* 浜壊锛氫腑鎬ф枃瀛楄壊锛堜繚鐣欒杽鑽风豢涓昏壊涓庤建閬撹楗帮級 */
html[data-theme="light"]{
  --o-ink:#1D2129;
  --o-muted:#4E5969;
  --o-dim:#86909C;
  --o-line:rgba(29,33,41,.12);
  --o-line-strong:rgba(29,33,41,.24);
}
html[data-theme="light"] .page-head h1,
html[data-theme="light"] .card-h .t,
html[data-theme="light"] .section-h .t,
html[data-theme="light"] .tr .tt,
html[data-theme="light"] .kpi .v,
html[data-theme="light"] .pf-name,
html[data-theme="light"] .pf-plan,
html[data-theme="light"] .pf-toggle-t,
html[data-theme="light"] .plan-card .nm,
html[data-theme="light"] .addon .nm,
html[data-theme="light"] .tool-card .nm,
html[data-theme="light"] .price .v,
html[data-theme="light"] .cal-title,
html[data-theme="light"] .cal-sum .v,
html[data-theme="light"] .rail-day .d,
html[data-theme="light"] .auth-card h2,
html[data-theme="light"] .auth-tag h1,
html[data-theme="light"] .onode,
html[data-theme="light"] .float-card .v,
html[data-theme="light"] .modal-h h3,
html[data-theme="light"] .popover .pv-h .t{color:var(--o-ink)}
html[data-theme="light"] .page-head .sub,
html[data-theme="light"] .kpi .k,
html[data-theme="light"] .tr .tm,
html[data-theme="light"] .tr .num,
html[data-theme="light"] .field .lbl,
html[data-theme="light"] .side .nav-item,
html[data-theme="light"] .side-brand .sub,
html[data-theme="light"] .top-user .em,
html[data-theme="light"] .top-user .tn,
html[data-theme="light"] .crumb,
html[data-theme="light"] .pf-mail,
html[data-theme="light"] .pf-toggle-d,
html[data-theme="light"] .popover .pv-row .tt,
html[data-theme="light"] .modal-h p,
html[data-theme="light"] .auth-tag .sub{color:var(--o-muted)}
html[data-theme="light"] .card-h .m,
html[data-theme="light"] .section-h .m,
html[data-theme="light"] .tr.hd,
html[data-theme="light"] .rail-item .tt,
html[data-theme="light"] .rail-item .tt b{color:var(--o-muted)}
html[data-theme="light"] .label,
html[data-theme="light"] .note,
html[data-theme="light"] .hint,
html[data-theme="light"] .dim{color:var(--o-dim)}
html[data-theme="light"] .side .nav-item:hover{color:var(--o-ink);background:rgba(29,33,41,.045)}
html[data-theme="light"] .side .nav-item.on{color:var(--nav-active-fg,#0B5C4A)}
html[data-theme="light"] .crumb b{color:var(--o-ink)}

/* 骞冲彴瀹樻柟 Logo 寰芥爣锛堝搧鐗岃壊搴?+ 鐧借壊 glyph锛?*/
.plat-logo{
  width:26px;height:26px;flex:none;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;
  overflow:hidden;box-shadow:inset 0 0 0 1px rgba(255,255,255,.16),0 2px 8px rgba(0,0,0,.14);
}
.plat-logo img{width:15px;height:15px;display:block;object-fit:contain;filter:brightness(0) invert(1)}
.plat-logo.lg{width:36px;height:36px;border-radius:10px}
.plat-logo.lg img{width:20px;height:20px}
.plat-logo.sm{width:20px;height:20px;border-radius:6px}
.plat-logo.sm img{width:12px;height:12px}
.acct-card .id{font-size:11px}
html[data-theme="light"] .acct-card{background:#FFFFFF;border-color:rgba(29,33,41,.12)}
html[data-theme="light"] .acct-card:hover{background:#F7FAFD;border-color:rgba(29,33,41,.2)}
html[data-theme="light"] .acct-card .lbl{color:var(--o-ink)}
html[data-theme="light"] .acct-card .id{color:var(--o-dim)}
.plat-tile .ty{font-size:10.5px}
html[data-theme="light"] .plat-tile .nm{color:var(--o-ink)}
html[data-theme="light"] .plat-tile .ty{color:var(--o-dim)}

/* TikTok Shop seller */
.shop-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.shop-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:14px}
.shop-bars{display:flex;align-items:flex-end;gap:5px;height:150px;padding-top:8px}
.shop-bars i{flex:1;min-width:3px;border-radius:4px 4px 2px 2px;background:linear-gradient(180deg,var(--o-mint),rgba(62,232,181,.18));transition:height .2s}
.shop-top{display:flex;flex-direction:column;gap:8px}
.shop-top-row{display:grid;grid-template-columns:20px minmax(0,1fr) 90px;gap:8px;align-items:center;font-size:12.5px}
.shop-top-row .n{font-family:var(--mono);font-size:10px;color:var(--o-dim)}
.shop-top-row .v{font-family:var(--mono);text-align:right;color:var(--o-mint)}
.shop-order-table .tr{grid-template-columns:150px minmax(0,1fr) 100px 110px 150px 220px}
.shop-return-table .tr{grid-template-columns:100px 150px minmax(0,1fr) 90px 100px 170px}
.shop-finance-table .tr{grid-template-columns:120px 140px 110px 170px}
.shop-affiliate-table .tr{grid-template-columns:150px minmax(0,1fr) 110px 110px 170px}
.shop-product-table .tr{grid-template-columns:minmax(0,1fr) 110px 90px 64px 92px 150px}
.shop-scope-table .tr{grid-template-columns:minmax(0,1.2fr) 140px minmax(0,1.6fr) 100px}
.shop-detail-table .tr{grid-template-columns:minmax(0,1fr) 100px 80px 50px}
.shop-page .tr{color:var(--o-ink)}
.shop-page .tr.hd{color:var(--o-muted)}
.shop-page .tr .tm{color:var(--o-dim)}
.shop-page .tr .num{color:var(--o-ink)}
.pill{white-space:nowrap}
.shop-cs{display:grid;grid-template-columns:340px minmax(0,1fr);gap:14px;align-items:start}
.shop-cs-list{display:flex;flex-direction:column;gap:2px;padding:8px}
.shop-cs-item{display:flex;align-items:center;gap:10px;padding:10px;border:0;border-radius:10px;background:transparent;color:var(--o-muted);cursor:pointer;text-align:left}
.shop-cs-item:hover,.shop-cs-item.on{background:rgba(62,232,181,.06);color:var(--o-ink)}
.shop-cs-item .ava{width:32px;height:32px;border-radius:50%;background:var(--o-grad);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:11px;flex:none}
.shop-cs-item .main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.shop-cs-item .main b{font-size:12.5px;font-weight:600;color:var(--o-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.shop-cs-item .main small{font-size:11px;color:var(--o-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.shop-cs-item .badge{min-width:18px;height:18px;border-radius:9px;background:var(--o-rose);color:#fff;font-family:var(--mono);font-size:9px;display:flex;align-items:center;justify-content:center;padding:0 5px}
.shop-chat{display:flex;flex-direction:column;gap:10px;min-height:420px;max-height:560px;overflow:auto}
.shop-msg{display:flex;flex-direction:column;gap:3px;max-width:76%}
.shop-msg.buyer{align-self:flex-start}
.shop-msg.seller{align-self:flex-end;align-items:flex-end}
.shop-msg .bubble{padding:9px 12px;border-radius:12px;background:rgba(120,180,255,.1);font-size:12.5px;line-height:1.55;color:var(--o-ink)}
.shop-msg.seller .bubble{background:rgba(62,232,181,.14)}
.shop-msg .tm{font-family:var(--mono);font-size:9.5px;color:var(--o-dim)}
.shop-reply{display:flex;flex-direction:column;gap:8px;margin-top:auto;padding-top:10px;border-top:1px solid rgba(120,180,255,.08)}
.shop-reply textarea.inp{min-height:64px}
.shop-promo-table .tr{grid-template-columns:minmax(0,1.2fr) 80px minmax(0,1.4fr) 130px 130px 54px 92px 100px}
html[data-theme="light"] .shop-cs-item:hover,html[data-theme="light"] .shop-cs-item.on{background:rgba(14,174,132,.07)}
html[data-theme="light"] .shop-msg .bubble{background:#F2F6FB}
html[data-theme="light"] .shop-msg.seller .bubble{background:rgba(14,174,132,.12)}
html[data-theme="light"] .shop-reply{border-color:rgba(29,33,41,.1)}
@media (max-width:1200px){.shop-cs{grid-template-columns:minmax(0,1fr)}}
.tools-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.tools-grid .card-b{display:flex;flex-direction:column;gap:2px;max-height:340px;overflow:auto}
.tools-grid .tool-row{display:flex;align-items:center;gap:8px;padding:8px 2px;border-bottom:1px dashed rgba(120,180,255,.08);font-size:12.5px}
.tools-grid .tool-row:last-child{border:0}
.tools-grid .tool-row .tt{flex:1;min-width:0}
.tools-grid .tool-search{display:flex;gap:6px;padding:8px 0}
.tools-grid .tool-search .inp{height:32px}
html[data-theme="light"] .tools-grid .tool-row{border-color:rgba(29,33,41,.1)}
@media (max-width:1100px){.tools-grid{grid-template-columns:minmax(0,1fr)}}

/* SocialEcho 寮忓簳閮ㄥ椁愬崱 / 鐢ㄦ埛鑿滃崟 */
.plan-card{border:1px solid rgba(120,180,255,.1);border-radius:12px;overflow:hidden;background:rgba(13,25,43,.55)}
.plan-banner{width:100%;display:flex;align-items:center;gap:8px;padding:9px 10px;border:0;cursor:pointer;background:linear-gradient(100deg,rgba(245,184,75,.95),rgba(255,145,92,.9));color:#2A1704;font-size:11.5px;font-weight:700;text-align:left}
.plan-coin{width:22px;height:22px;border-radius:50%;background:rgba(255,255,255,.28);border:1px solid rgba(255,255,255,.5);display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:11px}
.plan-banner-t{flex:1}
.plan-arrow{font-size:16px;line-height:1}
.plan-user{display:flex;align-items:center;gap:8px;padding:9px 10px;cursor:pointer}
.plan-user .avatar{width:28px;height:28px;font-size:10px;flex:none}
.plan-user-main{flex:1;min-width:0}
.plan-user-main .nm{font-size:12px;font-weight:600;color:var(--o-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.plan-user-main .rl{font-family:var(--mono);font-size:8.5px;color:var(--o-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.plan-swap{color:var(--o-blue);font-size:15px}
.plan-stats{display:flex;justify-content:space-between;padding:0 10px 7px;font-size:10.5px;color:var(--o-dim);gap:6px}
.plan-stats b{color:var(--o-ink);font-family:var(--mono);font-weight:600}
.plan-upgrade{margin:0 10px 10px;width:calc(100% - 20px);height:30px;border:0;border-radius:8px;background:var(--o-ink);color:var(--o-bg);font-size:11.5px;font-weight:700;cursor:pointer}
html[data-theme="light"] .plan-card{background:#fff;border-color:rgba(29,33,41,.1)}
html[data-theme="light"] .plan-banner{color:#3A2108}
html[data-theme="light"] .plan-upgrade{background:#101418;color:#fff}
.user-menu-pop{min-width:210px;padding:6px}
.um-row{display:flex;align-items:center;gap:9px;padding:8px 9px;border-radius:7px;cursor:pointer;color:var(--o-ink);font-size:12.5px}
.um-row:hover{background:rgba(120,180,255,.07)}
.um-ic{width:18px;text-align:center;font-size:13px;color:var(--o-muted)}
.um-t{flex:1}
.um-sub{color:var(--o-dim);font-size:15px}
.um-row .switch{margin-left:auto}
.um-sep{height:1px;background:rgba(120,180,255,.1);margin:5px 4px}
.um-row.danger{color:var(--o-rose)}
.um-row.danger .um-ic{color:var(--o-rose)}
.ref-code{font-family:var(--mono);font-size:26px;font-weight:700;letter-spacing:2px;color:var(--o-mint);margin:4px 0 8px}
.ref-link{font-family:var(--mono);font-size:11px;color:var(--o-muted);word-break:break-all;background:rgba(120,180,255,.06);border-radius:7px;padding:8px 10px;margin-bottom:12px}
.ref-rules{display:flex;flex-direction:column;gap:14px}
.ref-rules>div{display:flex;gap:10px;align-items:flex-start;font-size:12.5px;color:var(--o-muted);line-height:1.6}
.ref-rules b{font-family:var(--mono);color:var(--o-mint);font-size:11px}
.res-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.res-card{padding:16px;cursor:pointer;transition:.16s}
.res-card:hover{transform:translateY(-2px);border-color:rgba(62,232,181,.3)}
.res-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.res-arrow{color:var(--o-dim)}
.res-card h3{font-size:14px;margin:0 0 6px;color:var(--o-ink)}
.res-card p{font-size:12px;line-height:1.6;color:var(--o-muted);margin:0}
@media (max-width:1200px){.res-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:900px){.res-grid{grid-template-columns:minmax(0,1fr)}}
html[data-theme="light"] .ref-link{background:#F3F6FA}
html[data-theme="light"] .um-row:hover{background:rgba(14,174,132,.06)}
.shop-cart-note{margin-top:14px;border-color:rgba(244,114,182,.3)}
.shop-cart-note .hint{color:var(--o-muted);line-height:1.7}
.shop-track{display:flex;flex-direction:column;gap:12px}
.shop-track-row{display:flex;gap:10px;align-items:flex-start;position:relative}
.shop-track-row .dot{width:8px;height:8px;border-radius:50%;background:var(--o-mint);margin-top:5px;flex:none;box-shadow:0 0 8px rgba(62,232,181,.5)}
.shop-track-row .tt{font-size:12.5px}
.shop-track-row .tm{font-family:var(--mono);font-size:10px;color:var(--o-dim);margin-top:3px}
@media (max-width:1300px){
  .shop-order-table .tr{grid-template-columns:130px minmax(0,1fr) 88px 100px 130px 180px}
  .shop-product-table .tr{grid-template-columns:minmax(0,1fr) 100px 80px 58px 82px 130px}
}
@media (max-width:1100px){
  .shop-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .shop-grid{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:900px){
  .shop-order-table,.shop-return-table,.shop-finance-table,.shop-affiliate-table,.shop-product-table,.shop-scope-table{overflow-x:auto}
  .shop-order-table .tr,.shop-return-table .tr,.shop-finance-table .tr,.shop-affiliate-table .tr,.shop-product-table .tr,.shop-scope-table .tr{min-width:860px}
}
html[data-theme="light"] .shop-top-row .v{color:#0B6B57}
html[data-theme="light"] .shop-bars i{background:linear-gradient(180deg,#0EAE84,rgba(14,174,132,.16))}



.ref-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:1000px){.ref-kpis{grid-template-columns:minmax(0,1fr)}}

/* 渚ф爮宸ヤ綔鍖虹姸鎬佸崱锛氳处鎴锋暟 / 褰撳墠璁㈤槄 / 绉垎 + 蹇嵎鎿嶄綔 */
.ws-card{border:1px solid rgba(120,180,255,.12);border-radius:12px;padding:11px;background:rgba(13,25,43,.62)}
.ws-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
.ws-plan{display:flex;align-items:center;gap:8px;min-width:0}
.ws-badge{font-family:var(--mono);font-size:9px;font-weight:700;letter-spacing:.6px;color:#06251C;background:var(--o-mint);padding:4px 6px;border-radius:5px;flex:none}
.ws-plan-txt{display:flex;flex-direction:column;gap:1px;min-width:0}
.ws-plan-txt b{font-size:11.5px;color:var(--o-ink);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ws-plan-txt small{font-family:var(--mono);font-size:8.5px;color:var(--o-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ws-manage{border:1px solid rgba(120,180,255,.16);background:transparent;color:var(--o-muted);font-size:10px;height:24px;padding:0 7px;border-radius:6px;cursor:pointer;flex:none}
.ws-manage:hover{color:var(--o-ink);border-color:rgba(62,232,181,.4)}
.ws-metrics{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:11px 0 9px}
.ws-metric{background:rgba(120,180,255,.05);border-radius:7px;padding:6px 8px}
.ws-metric .k{display:block;font-size:9px;color:var(--o-dim);margin-bottom:2px}
.ws-metric b{font-family:var(--mono);font-size:14px;color:var(--o-ink);font-weight:600}
.ws-metric b em{font-style:normal;font-size:9px;color:var(--o-dim);font-weight:400}
.ws-actions{display:flex;gap:5px}
.ws-actions button{flex:1;height:26px;border:0;border-radius:6px;background:rgba(120,180,255,.08);color:var(--o-muted);font-size:10px;cursor:pointer;padding:0 3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ws-actions button:hover{color:var(--o-ink);background:rgba(120,180,255,.14)}
.ws-actions button.danger{color:#F1A0AA}
.ws-actions button.danger:hover{background:rgba(244,114,182,.14);color:#FFB3C0}
html[data-theme="light"] .ws-card{background:#fff;border-color:rgba(29,33,41,.1)}
html[data-theme="light"] .ws-manage{border-color:rgba(29,33,41,.14);color:#5A6576}
html[data-theme="light"] .ws-metric{background:#F5F8FC}
html[data-theme="light"] .ws-actions button{background:#F2F5FA;color:#55627A}
html[data-theme="light"] .ws-actions button:hover{background:#EAF0F8;color:#1D2129}

/* 涓枃妯″紡闅愯棌 KPI 鐨勮嫳鏂囧壇鏍囩锛圱ODAY / APPROVAL / SUCCESS / POINTS 绛夛級 */
html[data-lang="zh"] .kpi .k .lab,
html[data-lang="zh"] .kpi .k em.lab{display:none!important}

/* MatrixHubX 鍝佺墝 Logo */
.brand-logo{width:34px;height:34px;border-radius:9px;background:#fff;display:inline-flex;align-items:center;justify-content:center;padding:3px;flex:none;box-shadow:0 2px 10px rgba(0,0,0,.18);overflow:hidden}
.brand-logo img{width:100%;height:100%;object-fit:contain;display:block}
.brand-logo.lg{width:38px;height:38px;border-radius:10px;padding:3px}
.auth-card-logo{display:block;width:128px;height:auto;margin:0 0 10px}
html[data-theme="light"] .brand-logo{background:#fff;box-shadow:0 2px 8px rgba(29,33,41,.12);border:1px solid rgba(29,33,41,.06)}

/* 渚ф爮璐︽埛鍗★細鍙充笂瑙掔敤鎴蜂俊鎭Щ鍏?*/
.ws-user{display:flex;align-items:center;gap:9px;padding-bottom:10px;margin-bottom:1px;border-bottom:1px solid rgba(120,180,255,.1);cursor:pointer}
.ws-avatar{width:32px;height:32px;font-size:10px;flex:none}
.ws-user-txt{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}
.ws-user-txt b{font-size:12px;font-weight:600;color:var(--o-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ws-user-txt small{font-size:10px;color:var(--o-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ws-user-txt em{font-family:var(--mono);font-size:8.5px;color:var(--o-muted);font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ws-user .ws-manage{margin-left:auto}
html[data-theme="light"] .ws-user{border-color:rgba(29,33,41,.1)}

/* 璐︽埛鍗★細鍥㈤槦鍒囨崲 */
.ws-team{display:flex;align-items:center;gap:8px;padding:8px 2px 2px;cursor:pointer;border-bottom:1px solid rgba(120,180,255,.1);margin-bottom:9px}
.ws-team-ava{width:20px;height:20px;border-radius:6px;background:rgba(62,232,181,.14);color:var(--o-mint);font-family:var(--mono);font-size:9px;display:flex;align-items:center;justify-content:center;flex:none}
.ws-team-name{flex:1;min-width:0;font-size:11px;color:var(--o-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ws-team-arrow{color:var(--o-blue);font-size:13px}
.team-option{width:100%;display:flex;align-items:center;gap:10px;padding:10px;border:1px solid rgba(120,180,255,.14);border-radius:9px;background:transparent;text-align:left;cursor:pointer;margin-bottom:8px;color:var(--o-ink)}
.team-option.on{border-color:rgba(62,232,181,.45);background:rgba(62,232,181,.06)}
.team-avatar{width:30px;height:30px;border-radius:8px;background:var(--o-grad);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:11px;flex:none}
.team-opt-main{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}
.team-opt-main b{font-size:12px}
.team-opt-main small{font-family:var(--mono);font-size:9px;color:var(--o-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.team-check{color:var(--o-mint);font-size:13px}
html[data-theme="light"] .ws-team{border-color:rgba(29,33,41,.1)}
html[data-theme="light"] .team-option{border-color:rgba(29,33,41,.12);background:#fff}
html[data-theme="light"] .team-option.on{background:rgba(14,174,132,.06);border-color:rgba(14,174,132,.4)}
.team-actions{display:flex;gap:8px;margin-top:4px}
.team-actions .btn{flex:1}
.team-option:disabled{opacity:.65;cursor:wait}

/* 宸︿晶鑿滃崟灞曞紑 / 鏀惰捣 */
.side{transition:width .2s ease,padding .2s ease}
.side-collapse{width:22px;height:22px;margin-left:auto;border:1px solid rgba(120,180,255,.14);border-radius:6px;background:rgba(120,180,255,.05);color:var(--o-muted);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;flex:none}
.side-collapse svg{width:13px;height:13px}
.side-collapse:hover{color:var(--o-ink);border-color:rgba(62,232,181,.35)}
.side.collapsed{width:64px;padding:14px 8px 10px}
.side.collapsed .side-brand{flex-direction:column;gap:8px;padding:2px 0 12px}
.side.collapsed .side-brand-text{display:none}
.side.collapsed .side-collapse{margin-left:0;width:22px;height:20px}
.side.collapsed .nav-item{justify-content:center;padding:0;gap:0}
.side.collapsed .nav-label{display:none}
.side.collapsed .nav-badge{position:absolute;right:3px;top:3px;margin-left:0;font-size:8px;padding:2px 4px;line-height:1}
.side.collapsed .side-foot{padding-top:8px}
.side-mini{padding:4px 0 2px;display:flex;justify-content:center;cursor:pointer}
.side-mini .avatar{width:32px;height:32px;font-size:10px}
html[data-theme="light"] .side-collapse{border-color:rgba(29,33,41,.14);background:#F4F7FB;color:#667085}
html[data-theme="light"] .side-collapse:hover{color:#1D2129;border-color:rgba(14,174,132,.4)}

/* 澧為暱瀹為獙瀹?*/
.lab-tabs{margin:2px 0 14px}
.lab-page > .lab-cover-card{order:1;margin-top:0!important;margin-bottom:12px}
.lab-page > .grid2{order:2}
.lab-kpis{margin-bottom:14px}
.lab-project{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid rgba(120,180,255,.1);border-radius:9px;margin-bottom:8px;cursor:pointer}
.lab-project.on{border-color:rgba(62,232,181,.38);background:rgba(62,232,181,.05)}
.lab-project>div{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.lab-project b{font-size:12.5px;color:var(--o-ink)}
.lab-project small{font-family:var(--mono);font-size:9px;color:var(--o-dim)}
.lab-clips{display:flex;flex-direction:column;gap:2px;max-height:420px;overflow:auto}
.lab-clip{display:flex;align-items:center;gap:8px;padding:8px 0;border-bottom:1px dashed rgba(120,180,255,.08)}
.lab-clip:last-child{border:0}
.lab-clip-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}
.lab-clip-main b{font-size:12px;color:var(--o-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lab-clip-main small,.lab-series-meta{font-family:var(--mono);font-size:9px;color:var(--o-dim)}
.lab-series{padding:10px 0;border-bottom:1px dashed rgba(120,180,255,.08)}
.lab-series-top{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12.5px;color:var(--o-ink)}
.lab-series-meta{margin-top:3px}
.lab-bar{height:4px;border-radius:4px;background:rgba(120,180,255,.08);margin-top:7px;overflow:hidden}.lab-bar i{display:block;height:100%;background:var(--o-grad);border-radius:4px}
.lab-keyword{display:flex;gap:6px;margin-top:10px}.lab-keyword .inp{height:32px}
.lab-alert{display:flex;gap:8px;align-items:flex-start;padding:9px 0;border-bottom:1px dashed rgba(120,180,255,.08)}
.lab-alert>div{flex:1;min-width:0}.lab-alert b{display:block;font-size:12px;color:var(--o-ink)}.lab-alert small{display:block;font-size:11px;color:var(--o-muted);line-height:1.55;margin-top:2px}
.lab-dot{width:7px;height:7px;border-radius:50%;margin-top:5px;background:var(--o-blue);flex:none}.lab-dot.high{background:var(--o-rose)}.lab-dot.medium{background:var(--o-amber)}.lab-dot.low{background:var(--o-mint)}
.lab-ugc-table .tr{grid-template-columns:100px 80px minmax(0,1fr) 70px 70px 150px}.lab-ugc-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lab-agent-card .lab-chat{height:380px;overflow:auto;display:flex;flex-direction:column;gap:10px}
.lab-msg{display:flex;flex-direction:column;gap:3px;max-width:80%}.lab-msg.agent{align-self:flex-start}.lab-msg.user{align-self:flex-end;align-items:flex-end}
.lab-msg .bubble{padding:9px 12px;border-radius:11px;background:rgba(120,180,255,.08);font-size:12.5px;line-height:1.6;color:var(--o-ink)}.lab-msg.user .bubble{background:rgba(62,232,181,.12)}
.lab-agent-input{border-top:1px solid rgba(120,180,255,.1);padding-top:10px}.lab-quick{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.lab-quick button{border:1px solid rgba(120,180,255,.14);background:transparent;color:var(--o-muted);border-radius:20px;font-size:10px;padding:4px 8px;cursor:pointer}.lab-quick button:hover{color:var(--o-ink);border-color:rgba(62,232,181,.4)}
.lab-tpl-table .tr{grid-template-columns:minmax(0,1fr) 70px 180px minmax(0,1fr) 140px}
.lab-grid{display:flex;flex-direction:column;gap:7px}.lab-grid-card{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid rgba(120,180,255,.1);border-radius:8px;cursor:grab;background:rgba(120,180,255,.03)}.lab-grid-card:active{cursor:grabbing}.lab-grid-idx{font-family:var(--mono);font-size:10px;color:var(--o-mint);width:16px}.lab-grid-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.lab-grid-body b{font-size:12px;color:var(--o-ink)}.lab-grid-body small{font-size:10px;color:var(--o-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lab-specs{display:flex;flex-direction:column;gap:9px}.lab-spec{display:flex;flex-direction:column;gap:3px;padding:10px;border-radius:8px;background:rgba(120,180,255,.05)}.lab-spec b{font-family:var(--mono);font-size:13px;color:var(--o-ink)}.lab-spec small{font-size:10.5px;color:var(--o-dim)}
.lab-checks{display:flex;gap:10px;flex-wrap:wrap;font-size:12px;color:var(--o-muted)}.lab-checks label{display:flex;align-items:center;gap:4px}
html[data-theme="light"] .lab-project,html[data-theme="light"] .lab-grid-card{border-color:rgba(29,33,41,.1);background:#fff}
html[data-theme="light"] .lab-msg .bubble{background:#F2F6FB}html[data-theme="light"] .lab-msg.user .bubble{background:rgba(14,174,132,.1)}
.lab-coverage{display:flex;align-items:center;gap:10px;font-size:11px;color:var(--o-muted);margin:-2px 0 10px}
.lab-coverage b{color:var(--o-ink);font-size:12px}
.lab-cov-list{display:flex;gap:4px;flex-wrap:wrap}
.lab-cov-list i{font-style:normal;font-family:var(--mono);font-size:9px;color:var(--o-mint);background:rgba(62,232,181,.08);border-radius:4px;padding:2px 5px}

/* =========================================================================
   Studio 路 瑙嗛鍒涗綔璇︾粏椤碉紙SocialEcho 寮忛厤缃?+ 棰勮锛?   ========================================================================= */
.studio-detail{display:flex;flex-direction:column;gap:14px;min-height:100%}
.studio-detail-top{display:flex;align-items:flex-start;gap:14px;flex-wrap:wrap}
.studio-detail-title{flex:1;min-width:0}
.studio-detail-title h1{font-size:25px;line-height:1.25;letter-spacing:-.01em;color:var(--o-ink);margin-top:3px}
.studio-detail-title p{font-size:13.5px;line-height:1.65;color:var(--o-muted);margin-top:5px;max-width:760px}
.studio-tooltabs{display:flex;align-items:stretch;gap:7px;overflow-x:auto;padding:2px 1px 4px;border-bottom:1px solid var(--o-line);scrollbar-width:thin}
.studio-tooltabs button{display:flex;align-items:center;gap:7px;flex:none;height:38px;padding:0 12px;border:1px solid transparent;border-radius:9px 9px 0 0;background:transparent;color:var(--o-muted);font-size:13px;white-space:nowrap;cursor:pointer;transition:.15s}
.studio-tooltabs button:hover{color:var(--o-ink);background:rgba(120,180,255,.05)}
.studio-tooltabs button.on{color:var(--o-mint);border-color:var(--o-line);border-bottom-color:transparent;background:rgba(62,232,181,.07);box-shadow:inset 0 -2px 0 var(--o-mint)}
.studio-tooltabs .tt-ico{width:19px;height:19px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;font-size:9px;background:var(--o-grad);color:#fff}
.studio-tooltabs .tt-pts{font-family:var(--mono);font-size:10px;color:var(--o-dim)}
.studio-editor{display:grid;grid-template-columns:minmax(320px,380px) minmax(0,1fr);gap:14px;align-items:start}
.studio-config .card-b{display:flex;flex-direction:column;gap:11px}
.studio-step{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:650;color:var(--o-ink);margin-top:3px}
.studio-step:first-child{margin-top:0}
.studio-step span{font-family:var(--mono);font-size:10px;color:var(--o-mint);border:1px solid rgba(62,232,181,.25);border-radius:5px;padding:2px 5px;background:rgba(62,232,181,.06)}
.studio-dropzone{position:relative;min-height:166px;border:1px dashed rgba(120,180,255,.28);border-radius:11px;background:rgba(120,180,255,.035);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;text-align:center;padding:14px;cursor:pointer;overflow:hidden;transition:.15s}
.studio-dropzone:hover{border-color:rgba(62,232,181,.55);background:rgba(62,232,181,.045)}
.studio-dropzone.has{min-height:190px;padding:0;border-style:solid}
.studio-dropzone video{width:100%;height:190px;object-fit:contain;background:#05070d;display:block}
.studio-dropzone .dz-ico{width:40px;height:40px;border-radius:12px;border:1px solid var(--o-line);display:flex;align-items:center;justify-content:center;color:var(--o-mint);font-size:16px;margin-bottom:3px}
.studio-dropzone b{font-size:14px;color:var(--o-ink);font-weight:600}
.studio-dropzone>span{font-size:11.5px;color:var(--o-dim);line-height:1.6}
.studio-file-input{display:none}
.studio-dropzone .dz-file{position:absolute;left:8px;right:8px;bottom:8px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 9px;border-radius:7px;background:rgba(5,7,13,.82);color:#E8EDF7;font-size:11px}
.studio-dropzone .dz-file span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.studio-dropzone .dz-file em{font-style:normal;color:var(--o-mint);flex:none}
.studio-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:5px 0;border-bottom:1px dashed rgba(120,180,255,.08)}
.studio-toggle-row>div{display:flex;flex-direction:column;gap:2px;min-width:0}
.studio-toggle-row b{font-size:13px;color:var(--o-ink);font-weight:550}
.studio-toggle-row small{font-family:var(--mono);font-size:9px;color:var(--o-dim)}
.studio-switch{width:38px;height:21px;border-radius:20px;border:1px solid var(--o-line-strong);background:rgba(120,180,255,.12);padding:2px;display:flex;align-items:center;flex:none;transition:.15s;cursor:pointer}
.studio-switch i{width:15px;height:15px;border-radius:50%;background:#AEB9CA;display:block;transition:.15s}
.studio-switch.on{background:rgba(62,232,181,.22);border-color:rgba(62,232,181,.55)}
.studio-switch.on i{transform:translateX(16px);background:var(--o-mint)}
.studio-divider{height:1px;background:var(--o-line);margin:3px 0}
.studio-cost{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid rgba(139,92,246,.25);border-radius:9px;background:rgba(139,92,246,.06);font-size:12.5px;color:var(--o-muted)}
.studio-cost b{font-family:var(--mono);font-size:15px;color:var(--o-violet)}
.studio-submit{width:100%;justify-content:center}
.studio-submit-note{font-size:11.5px;line-height:1.6;color:var(--o-dim);text-align:center;margin-top:-4px}
.studio-preview{overflow:hidden}
.studio-preview-h{padding:19px 22px 14px;border-bottom:1px solid var(--o-line)}
.studio-preview-h h2{font-size:23px;line-height:1.3;color:var(--o-ink);margin-top:4px}
.studio-preview-h p{font-size:13px;line-height:1.7;color:var(--o-muted);margin-top:6px;max-width:660px}
.studio-badges{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}
.studio-badges span{font-size:11px;line-height:1;padding:5px 8px;border-radius:20px;border:1px solid rgba(62,232,181,.25);background:rgba(62,232,181,.07);color:var(--o-mint)}
.studio-preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:16px 22px 14px}
.studio-frame-card{display:flex;flex-direction:column;gap:8px;min-width:0}
.studio-frame{position:relative;aspect-ratio:9 / 12;max-height:430px;border-radius:11px;border:1px solid var(--o-line);background:#070b13;overflow:hidden;display:flex;align-items:center;justify-content:center}
.studio-frame video{width:100%;height:100%;object-fit:contain;background:#05070d}
.studio-frame.result{background:linear-gradient(160deg,rgba(139,92,246,.1),rgba(91,140,255,.04) 50%,rgba(62,232,181,.06))}
.studio-frame-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;text-align:center;color:var(--o-dim);padding:20px}
.studio-frame-empty>span{width:42px;height:42px;border-radius:13px;border:1px solid var(--o-line);display:flex;align-items:center;justify-content:center;font-size:17px;color:var(--o-mint);background:rgba(255,255,255,.02);margin-bottom:2px}
.studio-frame-empty b{font-size:14px;color:var(--o-ink);font-weight:600}
.studio-frame-empty small{font-size:11.5px;color:var(--o-dim);line-height:1.6}
.studio-frame-cap{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12.5px;color:var(--o-muted)}
.studio-frame-cap span{font-family:var(--mono);font-size:9px;letter-spacing:.14em;color:var(--o-dim)}
.studio-task-state{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;padding:18px;text-align:center}
.studio-task-state>b{font-size:15px;color:var(--o-ink);font-weight:600;margin-top:2px}
.studio-task-state>.progress{width:min(210px,80%);height:5px;border-radius:6px;background:rgba(120,180,255,.12);overflow:hidden;margin:3px 0}
.studio-task-state>.progress i{display:block;height:100%;border-radius:6px;background:var(--o-grad);transition:width .3s}
.studio-task-state small{font-size:10px;color:var(--o-dim);overflow-wrap:anywhere;max-width:100%}
.studio-task-state video{width:100%;height:170px;object-fit:contain;border-radius:8px;background:#05070d;margin:4px 0}
.studio-result-note{font-size:11px;line-height:1.6;color:var(--o-dim);max-width:250px}
.studio-task-acts{justify-content:center;flex-wrap:wrap;margin-top:2px}
.studio-preview-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:11px 22px;border-top:1px solid var(--o-line);font-family:var(--mono);font-size:9.5px;letter-spacing:.08em;color:var(--o-dim)}
html[data-theme="light"] .studio-detail-title h1,
html[data-theme="light"] .studio-step,
html[data-theme="light"] .studio-preview-h h2,
html[data-theme="light"] .studio-frame-empty b,
html[data-theme="light"] .studio-task-state>b,
html[data-theme="light"] .studio-toggle-row b{color:#12233B}
html[data-theme="light"] .studio-detail-title p,
html[data-theme="light"] .studio-preview-h p,
html[data-theme="light"] .studio-frame-cap{color:#53637A}
html[data-theme="light"] .studio-tooltabs{border-color:rgba(20,45,75,.1)}
html[data-theme="light"] .studio-tooltabs button:hover{background:#F3F7FB}
html[data-theme="light"] .studio-tooltabs button.on{background:rgba(14,174,132,.08);border-color:rgba(20,45,75,.1);border-bottom-color:transparent;color:#0B6B57;box-shadow:inset 0 -2px 0 #0EAE84}
html[data-theme="light"] .studio-dropzone{background:#F8FAFD;border-color:rgba(20,45,75,.18)}
html[data-theme="light"] .studio-dropzone:hover{background:#F1F8F6;border-color:rgba(14,174,132,.42)}
html[data-theme="light"] .studio-dropzone .dz-file{background:rgba(255,255,255,.9);color:#12233B;border:1px solid rgba(20,45,75,.1)}
html[data-theme="light"] .studio-switch{background:#E7EDF5;border-color:rgba(20,45,75,.12)}
html[data-theme="light"] .studio-switch i{background:#8797AA}
html[data-theme="light"] .studio-switch.on{background:rgba(14,174,132,.18);border-color:rgba(14,174,132,.45)}
html[data-theme="light"] .studio-switch.on i{background:#0EAE84}
html[data-theme="light"] .studio-frame{background:#F3F7FB;border-color:rgba(20,45,75,.12)}
html[data-theme="light"] .studio-frame.result{background:linear-gradient(160deg,rgba(122,91,214,.07),rgba(58,111,224,.04) 52%,rgba(14,174,132,.07))}
html[data-theme="light"] .studio-frame-empty>span{background:#fff;border-color:rgba(20,45,75,.12);color:#0EAE84}
html[data-theme="light"] .studio-cost{background:rgba(122,91,214,.05);border-color:rgba(122,91,214,.18)}
html[data-theme="light"] .studio-cost b{color:#5B41A8}
html[data-theme="light"] .studio-preview-foot{border-color:rgba(20,45,75,.1)}
@media (max-width:1200px){
  .studio-editor{grid-template-columns:minmax(290px,340px) minmax(0,1fr)}
  .studio-frame{aspect-ratio:4 / 5}
}
@media (max-width:980px){
  .studio-editor{grid-template-columns:1fr}
  .studio-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:700px){
  .studio-preview-grid{grid-template-columns:1fr}
  .studio-detail-top .pill{margin-left:0}
  .studio-preview-h,.studio-preview-grid,.studio-preview-foot{padding-left:14px;padding-right:14px}
}

/* 瑙嗛宸ュ叿鍥炬爣锛? 涓伐鍏峰悇鑷厤鑹蹭笌鍥惧舰 */
.tool-ico{width:38px;height:38px;border-radius:11px;display:inline-flex;align-items:center;justify-content:center;flex:none;color:#fff;box-shadow:0 6px 16px rgba(0,0,0,.14);background:linear-gradient(135deg,#2563EB,#22D3EE)}
.tool-ico svg{width:22px;height:22px;display:block}
.tool-ico.sm{width:22px;height:22px;border-radius:7px;box-shadow:none}
.tool-ico.sm svg{width:15px;height:15px}
.tool-ico.ti-translation{background:linear-gradient(135deg,#2563EB,#22D3EE)}
.tool-ico.ti-role_replace{background:linear-gradient(135deg,#7C3AED,#C084FC)}
.tool-ico.ti-face_translate{background:linear-gradient(135deg,#DB2777,#FB7185)}
.tool-ico.ti-product_replace{background:linear-gradient(135deg,#D97706,#FBBF24)}
.tool-ico.ti-enhance{background:linear-gradient(135deg,#059669,#34D399)}
.tool-ico.ti-lipsync{background:linear-gradient(135deg,#E11D48,#FB7185)}
.tool-ico.ti-character_swap{background:linear-gradient(135deg,#4F46E5,#818CF8)}
.tool-ico.ti-super_res{background:linear-gradient(135deg,#0891B2,#67E8F9)}
html[data-theme="light"] .tool-ico{box-shadow:0 5px 12px rgba(20,45,75,.16)}
html[data-theme="light"] .tool-ico.sm{box-shadow:none}

/* =========================================================================
   Readability & font scale锛堝叏绔欐竻鏅板害淇锛?   - 瀛椾綋澶у皬鐢辫缃〉鍐欏叆 --ui-font-scale锛屼綔鐢ㄤ簬 #app锛堝惈鎶藉眽/寮圭獥锛?   - 淇敼杈撳叆妗嗐€佽处鍙?chip銆侀瑙堝崱鍦ㄤ寒鑹蹭富棰樹笅鐨勫姣斿害
   ========================================================================= */
#app{zoom:var(--ui-font-scale,1)}
:root{--o-muted:#A4B1C4;--o-dim:#7C8AA0}
html[data-theme="light"]{--o-muted:#3F4F66;--o-dim:#5F6F85}
body{font-size:15px}
.page-head .sub{font-size:14px;line-height:1.65;color:var(--o-muted)}
.hint{font-size:13px;line-height:1.7;color:var(--o-muted)}
.note{font-size:12px;color:var(--o-muted)}
.label{font-size:11.5px;color:var(--o-muted)}
.card-h .m,.section-h .m{font-size:11px;color:var(--o-muted)}
.acct-chip{font-size:13px}
.acct-chip .pf{font-size:10px}
.acct-glabel{font-size:10px;color:var(--o-muted)}
.pv-name{font-size:13.5px}
.pv-text{font-size:14px}
.pv-id,.preview-meta,.pv-foot,.char-count,.posts-toolbar .count{font-size:11px;color:var(--o-muted)}
.tr .tm{font-size:13px;color:var(--o-muted)}
.variant-item .vt{font-size:13px}
.composer-area textarea{font-size:15px}
html[data-theme="light"] .acct-chip{background:#FFFFFF;border-color:rgba(20,45,75,.16);color:#12233B}
html[data-theme="light"] .acct-chip:hover{background:#F7FAFD;border-color:rgba(14,174,132,.35)}
html[data-theme="light"] .acct-chip.on{background:rgba(14,174,132,.08);border-color:rgba(14,174,132,.45);color:#0B5C4A;box-shadow:0 0 0 1px rgba(14,174,132,.12)}
html[data-theme="light"] .acct-chip .pf{color:#5F6F85}
html[data-theme="light"] .acct-chip.on .pf{color:#0B6B57}
html[data-theme="light"] .acct-chip .ck{border-color:rgba(20,45,75,.22)}
html[data-theme="light"] .acct-chip.on .ck{border-color:#0EAE84}
html[data-theme="light"] .pv{background:#FFFFFF;border-color:rgba(20,45,75,.12);box-shadow:0 8px 24px rgba(15,35,60,.05)}
html[data-theme="light"] .pv-name,
html[data-theme="light"] .pv-text,
html[data-theme="light"] .composer-head .t,
html[data-theme="light"] .card-h .t,
html[data-theme="light"] .section-h .t{color:#12233B}
html[data-theme="light"] .pv-id,
html[data-theme="light"] .preview-meta,
html[data-theme="light"] .pv-foot,
html[data-theme="light"] .char-count,
html[data-theme="light"] .posts-toolbar .count{color:#5F6F85}
html[data-theme="light"] .pv-text.empty{color:#8A99AD}
html[data-theme="light"] .composer-area textarea{background:#FFFFFF;color:#12233B;border-color:rgba(20,45,75,.16);box-shadow:inset 0 1px 2px rgba(15,35,60,.03)}
html[data-theme="light"] .composer-area textarea::placeholder{color:#94A3B8}
html[data-theme="light"] .composer-area textarea:focus{border-color:rgba(14,174,132,.5);box-shadow:0 0 0 3px rgba(14,174,132,.08)}
html[data-theme="light"] .variant-item{background:#F8FAFD;border-color:rgba(20,45,75,.1)}
html[data-theme="light"] .variant-item .vt{color:#3F4F66}
html[data-theme="light"] .variant-item .use{color:#0B6B57}
html[data-theme="light"] .media-chip{background:#F8FAFD;color:#3F4F66;border-color:rgba(20,45,75,.12)}
/* Free creation 鈥?SocialEcho aligned */
.free-create{display:grid;grid-template-columns:260px minmax(0,1fr);gap:14px;min-height:calc(100vh - 250px)}
.free-side{display:flex;flex-direction:column;min-height:0;overflow:hidden}
.free-side-h{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:16px 15px 12px;border-bottom:1px solid var(--o-line)}
.free-side-h b{font-size:14px;color:var(--o-ink)}
.free-side-label{font-family:var(--mono);font-size:9px;letter-spacing:.2em;color:var(--o-dim);padding:13px 15px 7px}
.free-history{display:flex;flex-direction:column;gap:3px;padding:0 8px;overflow:auto;flex:1;min-height:0}
.free-history-item{display:flex;align-items:center;gap:7px;width:100%;border:0;background:transparent;border-radius:8px;padding:9px 8px;color:var(--o-muted);font-size:12px;text-align:left;cursor:pointer;transition:.15s}
.free-history-item:hover{background:rgba(120,180,255,.05);color:var(--o-ink)}
.free-history-item.on{background:rgba(62,232,181,.09);color:var(--o-ink)}
.free-history-dot{width:5px;height:5px;border-radius:50%;background:var(--o-dim);flex:none}
.free-history-item.on .free-history-dot{background:var(--o-mint);box-shadow:0 0 7px rgba(62,232,181,.6)}
.free-history-text{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.free-history-time{font-family:var(--mono);font-size:8.5px;color:var(--o-dim);flex:none}
.free-side-foot{border-top:1px solid var(--o-line);padding:8px 8px 6px}
.free-main{display:flex;flex-direction:column;min-height:560px;overflow:hidden}
.free-main-h{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:17px 20px 12px;border-bottom:1px solid var(--o-line)}
.free-eyebrow{font-family:var(--mono);font-size:9px;letter-spacing:.2em;color:var(--o-dim)}
.free-main-h h2{font-size:17px;font-weight:650;color:var(--o-ink);margin-top:4px;max-width:560px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.free-points{display:flex;align-items:baseline;gap:5px;font-size:11.5px;color:var(--o-muted);white-space:nowrap}
.free-points b{font-family:var(--mono);font-size:15px;color:var(--o-mint)}
.free-points .link{font-size:10.5px}
.free-thread{flex:1;overflow:auto;padding:18px 20px 8px;display:flex;flex-direction:column;gap:16px;min-height:180px}
.free-msg{display:flex;flex-direction:column;gap:5px;max-width:90%}
.free-msg.user{align-self:flex-end;align-items:flex-end}
.free-msg.agent{align-self:flex-start}
.free-bubble{padding:10px 13px;border-radius:12px;background:rgba(120,180,255,.07);color:var(--o-ink);font-size:12.5px;line-height:1.65;white-space:pre-wrap;word-break:break-word}
.free-bubble.user{background:rgba(62,232,181,.11)}
.free-bubble.error{background:rgba(244,114,114,.1);color:var(--o-rose)}
.free-msg-time{font-family:var(--mono);font-size:8.5px;color:var(--o-dim)}
.free-result-grid{display:flex;flex-wrap:wrap;gap:9px}
.free-result{width:170px;border:1px solid var(--o-line);border-radius:10px;background:rgba(0,0,0,.12);padding:6px;display:flex;flex-direction:column;gap:5px}
.free-result img{width:100%;height:auto;max-height:280px;object-fit:contain;border-radius:7px;background:#0b1220}
.free-result .result-ph{aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;color:var(--o-dim)}
.free-hero{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:34px 20px 20px}
.free-hero-ico{width:44px;height:44px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:rgba(62,232,181,.1);color:var(--o-mint);font-size:19px;margin-bottom:12px}
.free-hero h2{font-size:22px;font-weight:700;color:var(--o-ink)}
.free-hero p{font-size:12px;color:var(--o-muted);margin-top:6px}
.free-quick{display:flex;gap:7px;flex-wrap:wrap;justify-content:center;padding:0 20px 13px}
.free-quick button{display:flex;align-items:center;gap:5px;border:1px solid var(--o-line);background:rgba(120,180,255,.025);color:var(--o-muted);border-radius:19px;padding:5px 10px;font-size:11px;cursor:pointer}
.free-quick button:hover{border-color:rgba(62,232,181,.35);color:var(--o-ink)}
.free-quick button span{color:var(--o-mint);font-size:11px}
.free-composer{margin:auto 20px 18px;border:1px solid rgba(120,180,255,.18);border-radius:13px;background:rgba(255,255,255,.018);padding:11px 12px 9px;position:relative}
.free-prompt{min-height:56px;max-height:160px;resize:vertical;border:0!important;background:transparent!important;padding:0!important;font-size:13px}
.free-prompt:focus{box-shadow:none!important}
.free-tools{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:7px;padding-top:7px;border-top:1px dashed rgba(120,180,255,.12)}
.free-attach{display:inline-flex;align-items:center;gap:4px;color:var(--o-muted);font-size:10.5px;cursor:pointer}
.free-attach input{display:none}
.free-skill-btn{border:0;background:transparent;color:var(--o-muted);font-size:10.5px;cursor:pointer;padding:0}
.free-skill-btn:hover{color:var(--o-mint)}
.free-hint{font-size:9.5px;color:var(--o-dim);margin-left:auto}
.free-ref-chip{display:flex;align-items:center;gap:7px;margin-top:7px;padding:5px 7px;border:1px solid rgba(62,232,181,.22);border-radius:8px;background:rgba(62,232,181,.05);font-size:10px;color:var(--o-muted);width:max-content;max-width:100%}
.free-ref-chip img{width:28px;height:28px;border-radius:5px;object-fit:cover}
.free-ref-chip button{border:0;background:transparent;color:var(--o-dim);cursor:pointer}
.free-skill-pop{display:flex;gap:6px;flex-wrap:wrap;margin-top:7px;padding:8px;border:1px solid var(--o-line);border-radius:9px;background:#0b1220}
html[data-theme="light"] .free-skill-pop{background:#fff}
.free-skill-pop button{border:1px solid var(--o-line);background:transparent;border-radius:7px;padding:6px 8px;color:var(--o-muted);font-size:10.5px;cursor:pointer;display:flex;gap:5px;align-items:center}
.free-skill-pop button b{color:var(--o-mint);font-weight:500}
.free-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:9px}
.free-select{display:flex;align-items:center;gap:4px;font-size:9.5px;color:var(--o-dim)}
.free-select select,.free-select input{height:27px;border:1px solid var(--o-line);border-radius:7px;background:rgba(0,0,0,.12);color:var(--o-ink);font-size:10.5px;padding:0 5px;max-width:150px}
html[data-theme="light"] .free-select select,html[data-theme="light"] .free-select input{background:#fff}
.free-count input{width:44px}
.free-cost{font-family:var(--mono);font-size:10px;color:var(--o-mint);margin-left:auto}
.free-generate{height:31px;font-size:11px;padding:0 14px}
@media (max-width: 900px){.free-create{grid-template-columns:1fr}.free-side{display:none}.free-main{min-height:520px}}
/* Free creation width/height fit */
.free-create{height:calc(100vh - 300px);min-height:500px}
.free-main{min-height:0}
.free-main-h>div:first-child{flex:1;min-width:0;overflow:hidden}
.free-main-h h2{max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.free-points{flex:none}
.free-hero{min-height:120px}
@media (max-width: 900px){.free-create{height:auto;min-height:520px}}
/* Appearance settings */
.appearance-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,0.9fr);gap:14px;align-items:start}
.appearance-controls{display:flex;flex-direction:column;gap:14px;min-width:0}
.appearance-form{display:flex;flex-direction:column;gap:13px}
.appearance-range{width:100%;accent-color:var(--o-mint)}
.appearance-colors{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.appearance-color{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 10px;border:1px solid var(--o-line);border-radius:9px;min-width:0}
.appearance-color span{display:flex;flex-direction:column;gap:2px;min-width:0}
.appearance-color b{font-size:12px;color:var(--o-ink);font-weight:600}
.appearance-color small{font-size:9.5px;color:var(--o-dim);line-height:1.35}
.appearance-color input[type="color"]{width:36px;height:30px;border:0;background:transparent;padding:0;cursor:pointer;flex:none}
.appearance-preview-card{position:sticky;top:0}
.appearance-preview{border:1px solid var(--o-line);border-radius:12px;overflow:hidden;display:grid;grid-template-columns:118px minmax(0,1fr);min-height:390px;background:rgba(0,0,0,.06)}
.appearance-preview .ap-nav{padding:12px 8px;border-right:1px solid var(--o-line);background:rgba(0,0,0,.08);display:flex;flex-direction:column;gap:3px}
.ap-nav-item{font-size:10.5px;color:var(--o-dim);border-radius:6px;padding:7px 7px;white-space:nowrap}
.ap-nav-item.on{background:var(--preview-nav-bg);color:var(--nav-active-fg,#0B5C4A);font-weight:700;box-shadow:inset 2px 0 0 var(--preview-accent)}
.ap-main{padding:16px 15px;min-width:0}
.ap-kicker{font-family:var(--mono);font-size:8px;letter-spacing:.18em;color:var(--o-dim)}
.ap-main h2{font-size:20px;font-weight:700;color:var(--o-ink);margin-top:3px}
.ap-main p{font-size:10.5px;color:var(--o-muted);margin-top:4px;line-height:1.6}
.ap-tabs{display:flex;gap:4px;margin:14px 0 10px;border-bottom:1px solid var(--o-line)}
.ap-tab{position:relative;font-size:10.5px;color:var(--o-dim);padding:5px 7px}
.ap-tab.on{color:var(--tab-active-fg,#0B5C4A);background:var(--preview-tab-bg);font-weight:700}
.ap-tab.on::after{content:"";position:absolute;left:6px;right:6px;bottom:-1px;height:2px;background:var(--preview-tab-line)}
.ap-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:12px}
.ap-btn{border:0;border-radius:7px;background:var(--preview-btn-bg);color:var(--btn-primary-fg,#03221F);font-size:10.5px;font-weight:700;padding:7px 10px}
.ap-ghost{border:1px solid var(--o-line);border-radius:7px;background:transparent;color:var(--o-muted);font-size:10px;padding:6px 8px}
.ap-chip{font-family:var(--mono);font-size:9px;color:var(--o-muted);margin-left:auto}
.ap-card{border:1px solid var(--o-line);border-radius:9px;padding:11px;display:flex;flex-direction:column;gap:3px;background:rgba(255,255,255,.015)}
.ap-card b{font-size:12px;color:var(--o-ink)}
.ap-card span{font-size:10px;color:var(--o-muted)}
.appearance-note{font-size:9.5px;color:var(--o-dim);line-height:1.5;margin-top:9px}
@media (max-width: 1100px){.appearance-grid{grid-template-columns:1fr}.appearance-preview-card{position:static}.appearance-colors{grid-template-columns:1fr}}
/* Appearance presets + embedded */
.appearance-embedded-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.appearance-presets{grid-column:1/-1;display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding-bottom:10px;margin-bottom:2px;border-bottom:1px solid var(--o-line)}
.appearance-presets-h{display:flex;flex-direction:column;gap:1px;margin-right:4px;min-width:82px}
.appearance-presets-h b{font-size:11px;color:var(--o-ink)}
.appearance-presets-h span{font-size:9px;color:var(--o-dim)}
.appearance-preset{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--o-line);border-radius:18px;background:transparent;color:var(--o-muted);padding:4px 9px;font-size:10.5px;cursor:pointer}
.appearance-preset:hover{border-color:var(--o-mint);color:var(--o-ink)}
.appearance-preset i{width:10px;height:10px;border-radius:50%;display:block}
.appearance-page.embedded{padding:0}
.appearance-page.embedded .appearance-grid{grid-template-columns:minmax(0,1fr) minmax(360px,.9fr)}
@media (max-width: 1100px){.appearance-page.embedded .appearance-grid{grid-template-columns:1fr}}
/* Publish SocialEcho alignment */
.pub-accounts-card{position:sticky;top:0}
.pub-accounts-b{display:flex;flex-direction:column;gap:9px;padding:12px 12px 13px}
.pub-account-search{height:32px;font-size:12px;border-radius:8px}
.pub-select-all{display:flex;align-items:center;gap:7px;font-size:11.5px;color:var(--o-muted);cursor:pointer;user-select:none}
.pub-select-all span{margin-left:auto;font-family:var(--mono);font-size:9.5px;color:var(--o-dim)}
.pub-account-list{display:flex;flex-direction:column;gap:5px;max-height:300px;overflow:auto;padding-right:2px}
.pub-account-group{font-family:var(--mono);font-size:8.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--o-dim);margin:3px 0 1px}
.pub-account-item{display:flex;align-items:center;gap:8px;width:100%;text-align:left;border:1px solid transparent;background:transparent;border-radius:9px;padding:7px 7px;cursor:pointer;transition:.15s}
.pub-account-item:hover{background:rgba(120,180,255,.05)}
.pub-account-item.on{background:rgba(62,232,181,.08);border-color:rgba(62,232,181,.28)}
.pub-account-meta{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1}
.pub-account-meta b{font-size:11.5px;font-weight:600;color:var(--o-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pub-account-meta small{font-size:9px;color:var(--o-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pub-account-ck{width:15px;height:15px;flex:none;border-radius:4px;border:1px solid var(--o-line-strong);display:flex;align-items:center;justify-content:center;font-size:10px;color:var(--o-mint)}
.pub-account-item.on .pub-account-ck{background:var(--o-mint);border-color:var(--o-mint);color:#03221F;font-weight:800}
.pub-add-account{margin-top:2px;width:100%;justify-content:center}
.pub-editor-tabs{display:flex;align-items:center;gap:3px;border-bottom:1px solid var(--o-line);margin:-2px 0 1px}
.pub-editor-tabs button{position:relative;border:0;background:transparent;color:var(--o-muted);font-size:11.5px;padding:7px 9px;cursor:pointer;border-radius:6px 6px 0 0}
.pub-editor-tabs button.on{color:var(--o-mint);font-weight:650}
.pub-editor-tabs button.on::after{content:"";position:absolute;left:7px;right:7px;bottom:-1px;height:2px;background:var(--o-mint);border-radius:2px}
.pub-editor-tabs button span{font-family:var(--mono);font-size:8px;color:var(--o-dim);margin-left:3px;letter-spacing:.08em}
.pub-tool-icon{width:30px;padding:0;justify-content:center;font-size:14px;font-weight:700}
@media (max-width:1200px){.pub-accounts-card{position:static}.pub-account-list{max-height:190px;flex-direction:row;flex-wrap:wrap}.pub-account-item{width:calc(50% - 3px)}.pub-account-group{width:100%}}
/* Publish platform rules + AI creation */
.platform-rules{display:flex;flex-direction:column;gap:7px}
.platform-rule{border:1px solid var(--o-line);border-radius:9px;padding:8px 10px;background:rgba(120,180,255,.025)}
.platform-rule-head{display:flex;align-items:center;gap:7px;min-width:0}
.platform-rule-head b{font-size:11.5px;color:var(--o-ink);font-weight:650}
.platform-rule-opt{font-family:var(--mono);font-size:8px;letter-spacing:.12em;color:var(--o-dim);text-transform:uppercase;margin-left:auto}
.platform-rule-head select{height:27px;font-size:10.5px;border-radius:6px;padding:0 7px;min-width:120px;max-width:150px}
.platform-rule-note{font-size:10px;color:var(--o-dim);margin-top:5px;line-height:1.45}
.platform-rule-note.bad{color:#F43F5E}
.pub-right-card{padding-bottom:4px}
.pub-right-tabs{display:flex;align-items:center;gap:2px;border-bottom:1px solid var(--o-line);padding:8px 10px 0}
.pub-right-tabs button{position:relative;border:0;background:transparent;color:var(--o-muted);font-size:11.5px;padding:8px 10px;cursor:pointer;border-radius:6px 6px 0 0}
.pub-right-tabs button.on{color:var(--o-ink);font-weight:650}
.pub-right-tabs button.on::after{content:"";position:absolute;left:8px;right:8px;bottom:-1px;height:2px;background:var(--o-mint);border-radius:2px}
.pub-ai-form{padding:12px 13px 14px;display:flex;flex-direction:column;gap:9px}
.pub-ai-sync{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:10.5px;color:var(--o-muted)}
.switch{position:relative;display:inline-flex;width:32px;height:18px;flex:none}
.switch input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer;z-index:2}
.switch i{position:absolute;inset:0;border-radius:10px;background:rgba(120,140,170,.3);transition:.18s}
.switch i::after{content:"";position:absolute;left:2px;top:2px;width:14px;height:14px;border-radius:50%;background:#fff;transition:.18s;box-shadow:0 1px 3px rgba(0,0,0,.25)}
.switch input:checked + i{background:var(--o-mint)}
.switch input:checked + i::after{transform:translateX(14px)}
.pub-ai-step{display:flex;align-items:center;gap:7px;font-size:11.5px;font-weight:650;color:var(--o-ink);margin-top:2px}
.pub-ai-step .n{font-family:var(--mono);font-size:9px;color:var(--o-mint);border:1px solid rgba(62,232,181,.35);border-radius:50%;width:19px;height:19px;display:flex;align-items:center;justify-content:center;flex:none}
.pub-ai-source{min-height:86px;resize:vertical;font-size:12px;line-height:1.65;border-radius:9px}
.pub-ai-brand{padding:8px 9px;border:1px solid var(--o-line);border-radius:9px;display:flex;flex-direction:column;gap:6px}
.pub-ai-brand .lbl{font-size:10px;color:var(--o-muted)}
.pub-ai-brand-empty{display:flex;flex-direction:column;align-items:center;gap:5px;text-align:center;border:1px dashed var(--o-line);border-radius:8px;padding:10px 8px;font-size:11px;color:var(--o-muted)}
.pub-ai-brand-empty small{font-size:9px;color:var(--o-dim);line-height:1.45}
.pub-ai-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.pub-ai-field{display:flex;flex-direction:column;gap:4px;min-width:0}
.pub-ai-field>span{font-size:10px;color:var(--o-muted)}
.pub-ai-field select{height:30px;font-size:10.5px;border-radius:7px;padding:0 7px}
.pub-ai-cost{font-size:10px;color:var(--o-muted);text-align:right}
.pub-ai-cost b{color:var(--o-mint);font-family:var(--mono);font-size:13px}
.pub-ai-generate{width:100%;height:38px;justify-content:center;gap:7px;border-radius:9px;font-size:12px}
@media (max-width:1200px){.pub-ai-grid{grid-template-columns:1fr 1fr}}
/* Publish AI rewrite refinements */
.pub-select-row{display:flex;align-items:center;justify-content:space-between;gap:6px}
.pub-select-row .pub-select-all{flex:1}
.pub-select-row .btn{height:25px;padding:0 7px;font-size:10px}
.pub-ai-brand-head{display:flex;align-items:center;justify-content:space-between;gap:8px}
.pub-ai-brand-head .lbl{font-size:10px;color:var(--o-muted)}
.pub-ai-brand-head .btn{height:22px;padding:0 6px;font-size:9.5px}
.pub-ai-brand-summary{font-size:9.5px;color:var(--o-dim);line-height:1.4}
.ai-panel .ai-h .t{color:var(--o-ink)}
.variant-item .vt{color:var(--o-ink);font-size:12px;line-height:1.6}
.variant-item .use{color:#0A7D62}
html[data-theme="light"] .variant-item{background:#F8FAFD;border-color:rgba(20,45,75,.1)}
html[data-theme="light"] .variant-item:hover{background:#F1F6FF}
html[data-theme="light"] .variant-item .vt{color:#1B2A3F}
html[data-theme="light"] .variant-item .use{color:#0A7D62}
/* Publish equal-height columns */
.pub-accounts-card{display:flex;flex-direction:column}
.pub-accounts-b{flex:1;min-height:0}
.pub-account-list{flex:1;max-height:none}
.pub-add-account{margin-top:auto}
.pub-right-card{display:flex;flex-direction:column}
.pub-right-card .preview-body{flex:1;min-height:0}
.pub-right-card .pub-ai-form{flex:1;min-height:0}
@media (max-width:1200px){.pub-account-list{max-height:190px}}
/* Appearance font-size presets */
.appearance-size-seg{display:flex;width:100%;margin-bottom:8px}
.appearance-size-seg button{flex:1;height:28px;padding:0 6px;font-size:10.5px;justify-content:center}
/* Free creation composer contrast + drive picker/preview/edit */
.free-composer{border-color:rgba(120,180,255,.62);box-shadow:0 0 0 1px rgba(120,180,255,.12),0 12px 34px rgba(0,0,0,.18)}
.free-composer:focus-within{border-color:rgba(62,232,181,.65);box-shadow:0 0 0 1px rgba(62,232,181,.18),0 12px 34px rgba(0,0,0,.2)}
.free-attach-btn{background:none;border:0;padding:0;font:inherit}
.free-ref-noimg{width:26px;height:26px;border-radius:6px;display:flex;align-items:center;justify-content:center;background:rgba(120,180,255,.1);color:var(--o-muted);font-size:13px}
.drive-thumb{position:relative;width:36px;height:36px;flex:none;border:0;padding:0;border-radius:8px;overflow:hidden;background:rgba(120,180,255,.08);cursor:pointer}
.drive-thumb .drive-ico{position:absolute;inset:0;width:100%;height:100%;border-radius:0}
.drive-thumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:#0B1422}
.drive-play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.28);color:#fff;font-size:12px}
.drive-preview-stage{display:flex;align-items:center;justify-content:center;min-height:220px;max-height:60vh;background:rgba(0,0,0,.12);border:1px solid var(--o-line);border-radius:10px;overflow:hidden}
.drive-preview-stage img,.drive-preview-stage video{max-width:100%;max-height:58vh;object-fit:contain;display:block}
.drive-editor-stage{display:flex;align-items:center;justify-content:center;min-height:260px;max-height:58vh;background:#0A111D;border-radius:10px;overflow:hidden}
.drive-editor-stage img{max-width:100%;max-height:56vh;object-fit:contain;transition:transform .18s}
.drive-editor-tools{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:10px}
.drive-pick-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px;max-height:55vh;overflow:auto}
.drive-pick-item{display:flex;flex-direction:column;align-items:flex-start;gap:4px;border:1px solid var(--o-line);border-radius:9px;padding:7px;background:transparent;text-align:left;cursor:pointer;min-width:0}
.drive-pick-item:hover{border-color:var(--o-mint);background:rgba(62,232,181,.05)}
.drive-pick-item .nm{font-size:11px;color:var(--o-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.drive-pick-item small{font-size:9px;color:var(--o-dim)}
.drive-thumb video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:#0B1422}
/* Free creation toolbar / points emphasis */
.free-attach-btn{display:inline-flex;align-items:center;gap:4px;height:auto;line-height:1.2;padding:0;border:0;background:transparent;color:var(--o-muted);font-family:inherit;font-size:10.5px;cursor:pointer}
.free-attach-btn:hover{color:var(--o-ink)}
.free-cost{display:inline-flex;align-items:center;gap:3px;margin-left:auto;font-family:var(--mono);font-size:11.5px;font-weight:800;color:#03221F;background:linear-gradient(120deg,#3EE8B5,#8CF5D8);border-radius:999px;padding:5px 10px;box-shadow:0 0 0 1px rgba(62,232,181,.35),0 4px 14px rgba(62,232,181,.18);white-space:nowrap}
.free-tools .free-attach,.free-tools .free-attach-btn{height:16px;line-height:16px;display:inline-flex;align-items:center}
.free-composer{border-width:1.5px;border-color:rgba(120,180,255,.68)}
/* Visual grid P0-P3 */
.lab-grid-thumb{position:relative;width:62px;height:62px;flex:none;border-radius:7px;overflow:hidden;background:rgba(120,180,255,.12);display:flex;align-items:center;justify-content:center}
.lab-grid-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.lab-grid-ph{font-size:22px;color:var(--o-dim)}
.lab-grid-board{position:absolute;left:0;right:0;bottom:0;background:rgba(0,0,0,.55);color:#fff;font-size:7.5px;line-height:1.3;padding:2px 4px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lab-grid-ctr{margin-left:auto;white-space:nowrap}
.lab-focal-grid{display:flex;gap:12px;flex-wrap:wrap;margin-top:9px;padding-top:9px;border-top:1px solid var(--o-line)}
.lab-focal-row{display:flex;align-items:center;gap:5px;font-size:10px;color:var(--o-muted)}
.lab-focal-row b{font-size:10px;color:var(--o-ink);min-width:62px}
.lab-focal-row .inp{width:52px;height:26px;font-size:10.5px;padding:0 5px}
.lab-visual-preview{display:flex;align-items:center;justify-content:center;min-height:220px;max-height:60vh;border-radius:10px;overflow:hidden;background:rgba(0,0,0,.12)}
.lab-visual-preview img{max-width:100%;max-height:58vh;object-fit:contain}
html[data-theme="light"] .lab-grid-thumb{background:rgba(20,45,75,.08)}
/* Free creation points emphasis */
.free-points{display:flex;align-items:center;gap:7px;padding:6px 8px 6px 10px;border-radius:10px;border:1px solid rgba(62,232,181,.4);background:linear-gradient(135deg,rgba(62,232,181,.18),rgba(62,232,181,.05));flex:none}
.free-points-label{font-size:10px;color:var(--o-muted);white-space:nowrap}
.free-points b{font-family:var(--mono);font-size:17px;font-weight:800;color:var(--o-ink);line-height:1}
.free-buy{border:0;background:linear-gradient(120deg,#3EE8B5,#8CF5D8);color:#03221F;border-radius:6px;padding:4px 8px;font-size:10px;font-weight:800;cursor:pointer;white-space:nowrap}
.free-buy:hover{filter:brightness(1.05)}
/* =========================================================================
   Publish page 路 SocialEcho-inspired bright contrast
   ========================================================================= */
.publish-page .page-head h1{font-size:26px;font-weight:800;letter-spacing:-.02em}
.publish-page .page-head .sub{font-size:13.5px;color:var(--o-muted);max-width:760px}
.publish-page .page-acts .pill.info{background:linear-gradient(120deg,#2F6BFF,#5B8CFF);border-color:transparent;color:#fff;font-weight:700;box-shadow:0 4px 14px rgba(47,107,255,.25)}
.publish-page .page-acts button.btn-ghost:first-of-type{background:#FFE49A;border-color:#F3C63C;color:#5B4200;font-weight:800;box-shadow:0 4px 14px rgba(245,184,75,.18)}
.publish-page .page-acts button.btn-ghost:first-of-type:hover{background:#FFD976;border-color:#EAAF12;color:#4A3500}
.publish-page .tabs{border-bottom-color:var(--o-line)}
.publish-page .tabs .tab{font-size:14px;font-weight:650;padding:9px 4px 10px}
.publish-page .tabs .tab.on{color:#1D5BFF;border-bottom-color:#2F6BFF;font-weight:800}
.publish-page .tabs .tab.on .tab-en{color:#6E9BFF}
.publish-page .card{border-radius:14px;border-color:var(--o-line-strong)}
.publish-page .card-h .t,.publish-page .composer-head .t{font-size:15px;font-weight:750}
.publish-page .card-h{padding-bottom:10px;border-bottom:1px solid var(--o-line)}
.publish-page .btn-primary{background:linear-gradient(120deg,#2F6BFF,#5B8CFF);color:#fff;box-shadow:0 6px 18px rgba(47,107,255,.28);font-weight:750}
.publish-page .btn-primary:hover:not(:disabled){box-shadow:0 10px 26px rgba(47,107,255,.38)}
.publish-page .btn-primary .spin{border-top-color:#fff}
.publish-page .seg{background:rgba(47,107,255,.06);border:1px solid rgba(47,107,255,.18);border-radius:9px;padding:2px}
.publish-page .seg button.on{background:#fff;color:#1D5BFF;font-weight:800;box-shadow:0 2px 8px rgba(47,107,255,.16)}
.publish-page .composer-card{box-shadow:0 12px 32px rgba(15,35,60,.08)}
.publish-page .composer-head{padding:14px 16px;background:linear-gradient(90deg,rgba(47,107,255,.05),transparent 65%);border-bottom:1px solid var(--o-line);border-radius:14px 14px 0 0}
.publish-page .composer-area textarea{border-color:var(--o-line-strong);font-size:14.5px;line-height:1.75;background:var(--o-panel-solid)}
.publish-page .composer-area textarea:focus{border-color:#7AA7FF;box-shadow:0 0 0 3px rgba(47,107,255,.12)}
.publish-page .pub-accounts-card{background:linear-gradient(180deg,rgba(47,107,255,.04),transparent 38%)}
.publish-page .pub-account-item{border:1px solid transparent;border-radius:9px;padding:8px;margin-bottom:3px}
.publish-page .pub-account-item:hover{background:rgba(47,107,255,.06);border-color:rgba(47,107,255,.16)}
.publish-page .pub-account-item.on{background:rgba(47,107,255,.1);border-color:rgba(47,107,255,.38);box-shadow:inset 3px 0 0 #2F6BFF}
.publish-page .pub-right-tabs{border-bottom-color:var(--o-line)}
.publish-page .pub-right-tabs button.on{color:#1D5BFF;border-bottom-color:#2F6BFF;font-weight:800;background:rgba(47,107,255,.06)}
.publish-page .pub-footer{border-top:1px solid var(--o-line);padding-top:12px;margin-top:5px}
.publish-page .pub-footer .btn-primary{min-width:170px;height:36px;font-size:13px}
.publish-page .platform-rule{background:rgba(47,107,255,.04);border:1px solid rgba(47,107,255,.1);border-radius:9px;padding:8px 10px}
.publish-page .platform-rule-note{color:var(--o-muted);font-weight:500}
.publish-page .platform-rule-note.bad{color:var(--o-red);font-weight:700}
.publish-page .tool-row .btn-line{color:#1D5BFF;border-color:rgba(47,107,255,.35);background:rgba(47,107,255,.06);font-weight:700}
.publish-page .hint{color:var(--o-muted)}
html[data-theme="light"] .publish-page .card{background:#fff;border-color:#D8E2EF;box-shadow:0 8px 24px rgba(20,45,75,.07),0 1px 2px rgba(20,45,75,.04)}
html[data-theme="light"] .publish-page .composer-card{border-color:#C7D6E8;box-shadow:0 14px 34px rgba(20,45,75,.09)}
html[data-theme="light"] .publish-page .page-head h1{color:#0A1628}
html[data-theme="light"] .publish-page .page-head .sub{color:#4A5D75}
html[data-theme="light"] .publish-page .composer-area textarea::placeholder{color:#8595A8}
html[data-theme="light"] .publish-page .pub-accounts-card{background:linear-gradient(180deg,#F7FAFF,#FFFFFF 40%)}
html[data-theme="light"] .publish-page .seg button:not(.on){color:#52657D}
html[data-theme="light"] .publish-page .seg button.on{background:#fff;color:#1D5BFF}
html[data-theme="dark"] .publish-page .seg button.on{background:#1A2740;color:#9DBEFF}
.publish-page .tabs .tab.on{color:#1D5BFF!important;background:rgba(47,107,255,.06)}
.publish-page .tabs .tab.on::after{background:linear-gradient(90deg,#2F6BFF,#5B8CFF)}
.publish-page .composer-head svg{stroke:#2F6BFF!important}
html[data-theme="light"] .publish-page .tabs .tab.on{color:#1D5BFF!important;background:#F1F6FF}
/* Posts status strip */
.publish-page .posts-status-strip{display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding:0 16px 11px}
.publish-page .pss{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 10px;border-radius:999px;border:1px solid var(--o-line);background:var(--o-panel-solid);color:var(--o-muted);font-size:11px;font-weight:650;cursor:pointer}
.publish-page .pss b{font-family:var(--mono);font-size:11.5px;color:var(--o-ink)}
.publish-page .pss i{width:6px;height:6px;border-radius:50%;flex:none;background:#94A3B8}
.publish-page .pss.all i{background:#2F6BFF}.publish-page .pss.pub i{background:#10B981}.publish-page .pss.sch i{background:#F59E0B}.publish-page .pss.fail i{background:#EF4444}
.publish-page .pss.on{border-color:rgba(47,107,255,.4);background:rgba(47,107,255,.08);color:#1D5BFF}
.publish-page .pss.on b{color:#1D5BFF}
html[data-theme="light"] .publish-page .pss{background:#F8FAFD;border-color:#DDE5F0}
html[data-theme="light"] .publish-page .pss.on{background:#EAF1FF;border-color:#AFC8FF}
/* =========================================================================
   Global SocialEcho-style clarity pass
   ========================================================================= */
html[data-theme="light"]{
  --o-bg:#EDF3FB;--o-bg-2:#E7EFF9;
  --o-panel:rgba(255,255,255,.94);--o-panel-solid:#FFFFFF;
  --o-line:rgba(15,35,60,.14);--o-line-strong:rgba(15,35,60,.26);
  --o-ink:#081426;--o-muted:#3E5168;--o-dim:#5E7087;
  --o-shadow:0 16px 40px rgba(15,35,60,.1);
}
html[data-theme="light"] body{background:linear-gradient(180deg,#F8FBFF 0%,#EDF3FA 100%)}
html[data-theme="light"] .side{background:#FFFFFF;border-right-color:#DCE5F1;box-shadow:1px 0 0 rgba(20,45,75,.03)}
html[data-theme="light"] .nav-group{color:#5A6B82;font-weight:700}
html[data-theme="light"] .nav-item{color:#43546A;font-size:14px}
html[data-theme="light"] .nav-item:hover{color:#0A1628;background:#F0F5FC}
html[data-theme="light"] .nav-item.on{font-weight:800;box-shadow:inset 0 0 0 1px var(--nav-active-bg,rgba(47,107,255,.22))}
html[data-theme="light"] .topbar{background:rgba(255,255,255,.98);box-shadow:0 1px 0 #DCE5F1,0 4px 18px rgba(20,45,75,.04)}
html[data-theme="light"] .page-head h1{font-size:26px;font-weight:800;color:#081426;letter-spacing:-.02em}
html[data-theme="light"] .page-head .sub{font-size:13.5px;color:#41546B;line-height:1.55}
html[data-theme="light"] .card{background:#FFFFFF;border-color:#D6E0EE;box-shadow:0 6px 20px rgba(20,45,75,.07),0 1px 2px rgba(20,45,75,.04)}
html[data-theme="light"] .card-h{padding-bottom:11px;border-bottom:1px solid #E7EEF6}
html[data-theme="light"] .card-h .t,html[data-theme="light"] .section-h .t{font-size:14.5px;font-weight:800;color:#0A1628}
html[data-theme="light"] .card-h .m{font-size:10.5px;color:#5E7087;font-weight:600}
html[data-theme="light"] .tm,html[data-theme="light"] .hint{color:#5A6B82}
html[data-theme="light"] .inp{border-color:#C9D6E6;background:#FFFFFF;color:#0A1628}
html[data-theme="light"] .inp::placeholder{color:#7B8CA2}
html[data-theme="light"] .inp:focus{border-color:#8FB2FF;box-shadow:0 0 0 3px rgba(47,107,255,.1)}
html[data-theme="light"] .btn-ghost,html[data-theme="light"] .btn-line{border-color:#C9D6E6;background:#FFFFFF;color:#2F4057;font-weight:600}
html[data-theme="light"] .btn-ghost:hover:not(:disabled),html[data-theme="light"] .btn-line:hover:not(:disabled){border-color:#9FB6D2;background:#F7FAFE;color:#0A1628}
html[data-theme="light"] .tr.hd{background:#F7FAFE;color:#52647A;font-weight:750;border-bottom-color:#E4ECF5}
html[data-theme="light"] .tr:hover{background:#F8FBFF}
html[data-theme="light"] .kpi{background:#FFFFFF;border-color:#D6E0EE;box-shadow:0 5px 16px rgba(20,45,75,.06)}
html[data-theme="light"] .kpi .v{color:#081426;font-weight:800}
html[data-theme="light"] .kpi .d{color:#5A6B82}
html[data-theme="light"] .pill{font-weight:700}
html[data-theme="light"] .tab{color:#4A5D75;font-weight:600}
html[data-theme="light"] .tab:hover{color:#0A1628}
html[data-theme="dark"]{
  --o-ink:#F2F6FF;--o-muted:#A7B5C9;--o-dim:#7E8BA0;
  --o-line:rgba(120,180,255,.18);--o-line-strong:rgba(120,180,255,.34);
}
html[data-theme="dark"] .card{background:rgba(13,22,36,.92);border-color:rgba(120,180,255,.16)}
html[data-theme="dark"] .card-h .t{color:#F2F6FF}
html[data-theme="dark"] .tm,html[data-theme="dark"] .hint{color:#9DACC1}
html[data-theme="dark"] .page-head .sub{color:#A7B5C9}
html[data-theme="dark"] .btn-ghost,html[data-theme="dark"] .btn-line{color:#DDE8F8;border-color:rgba(120,180,255,.26)}
.lab-cover-card .tbl{overflow-x:auto}
/* Drama clipping pipeline */
.lab-drama-top{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:18px 20px;border:1px solid var(--o-line);border-radius:14px;background:linear-gradient(115deg,rgba(47,107,255,.12),rgba(139,92,246,.08) 55%,rgba(62,232,181,.08));margin-bottom:12px}
.lab-eyebrow{font-family:var(--mono);font-size:9.5px;letter-spacing:.12em;color:#2F6BFF;font-weight:800}
.lab-drama-top h2{font-size:21px;margin:6px 0 5px;color:var(--o-ink);font-weight:800;letter-spacing:-.02em}
.lab-drama-top p{font-size:12px;color:var(--o-muted);line-height:1.6;max-width:720px}
.lab-drama-grid{grid-template-columns:330px minmax(0,1fr);align-items:start}
.lab-projects{display:flex;flex-direction:column;gap:8px}
.lab-project{align-items:flex-start;padding:11px 12px;border:1px solid var(--o-line);border-radius:10px;background:var(--o-panel-solid);cursor:pointer;transition:.15s}
.lab-project:hover{border-color:rgba(47,107,255,.35);box-shadow:0 6px 18px rgba(20,45,75,.07)}
.lab-project.on{border-color:#7AA7FF;background:rgba(47,107,255,.07);box-shadow:inset 3px 0 0 #2F6BFF}
.lab-project-main{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}
.lab-project-main b{font-size:13px;color:var(--o-ink)}
.lab-project-main small{font-size:10.5px;color:var(--o-muted);line-height:1.5}
.lab-project-main .lab-src{color:var(--o-dim);font-family:var(--mono);font-size:9.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lab-project-meta{display:flex;gap:5px;flex-wrap:wrap;margin-top:5px}
.lab-project .btn{flex:none;align-self:center;margin-left:4px}
.lab-clip-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-bottom:10px}
.lab-clip-stats>div{padding:8px 9px;border:1px solid var(--o-line);border-radius:8px;background:rgba(47,107,255,.035)}
.lab-clip-stats span{display:block;font-size:9.5px;color:var(--o-muted)}
.lab-clip-stats b{font-family:var(--mono);font-size:16px;color:var(--o-ink)}
.lab-clip-filters{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px;padding-bottom:9px;border-bottom:1px solid var(--o-line)}
.lab-clip-filters .seg{max-width:100%;overflow:auto}
.lab-clip-list{display:flex;flex-direction:column;gap:9px}
.lab-clip-v2{display:grid;grid-template-columns:52px minmax(0,1fr) 150px;gap:10px;align-items:center;padding:11px 12px;border:1px solid var(--o-line);border-radius:11px;background:var(--o-panel-solid);transition:.15s}
.lab-clip-v2:hover{border-color:rgba(47,107,255,.3);box-shadow:0 6px 18px rgba(20,45,75,.06)}
.lab-score{width:50px;height:50px;border-radius:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1;border:1px solid}
.lab-score b{font-family:var(--mono);font-size:17px}
.lab-score span{font-size:8px;margin-top:3px;opacity:.85}
.lab-score.hot{background:linear-gradient(145deg,#FEF3C7,#FDE68A);color:#92400E;border-color:#F59E0B}
.lab-score.high{background:linear-gradient(145deg,#DBEAFE,#BFDBFE);color:#1E40AF;border-color:#60A5FA}
.lab-score.mid{background:rgba(148,163,184,.12);color:var(--o-muted);border-color:var(--o-line)}
.lab-clip-content{min-width:0}
.lab-clip-title{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:3px}
.lab-clip-title b{font-size:13px;color:var(--o-ink)}
.lab-clip-content p{font-size:11px;line-height:1.55;color:var(--o-muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:5px}
.lab-clip-tags{display:flex;align-items:center;gap:4px;flex-wrap:wrap;margin-bottom:5px}
.lab-clip-tags .pill{font-size:9px;height:19px;padding:0 6px}
.lab-clip-meta{display:flex;align-items:center;gap:9px;flex-wrap:wrap;font-family:var(--mono);font-size:9.5px;color:var(--o-dim)}
.lab-clip-ready{color:#047857;font-weight:700}
.lab-clip-actions{display:flex;flex-direction:column;gap:4px}
.lab-clip-actions .btn{width:100%;font-size:10.5px;height:25px}
.lab-pager{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:10px;font-family:var(--mono);font-size:11px;color:var(--o-muted)}
.lab-process-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.lab-switches{display:flex;gap:14px;flex-wrap:wrap;padding:9px 10px;border:1px solid var(--o-line);border-radius:8px;background:rgba(47,107,255,.035)}
.lab-file{display:flex;align-items:center;gap:7px;border:1px dashed var(--o-line-strong);border-radius:8px;padding:9px 10px;cursor:pointer;color:var(--o-muted);font-size:11px}
.lab-file input{display:none}
.lab-file span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lab-clip-detail-desc{font-size:13px;line-height:1.7;color:var(--o-ink)}
.lab-clip-reason{padding:10px;border-radius:8px;background:rgba(47,107,255,.05);border:1px solid rgba(47,107,255,.12)}
.lab-clip-reason b{font-size:10.5px;color:#1D5BFF}
.lab-clip-reason p{font-size:11.5px;color:var(--o-muted);line-height:1.6;margin-top:3px}
html[data-theme="light"] .lab-drama-top{border-color:#CFE0F5;background:linear-gradient(115deg,#EDF4FF,#F4F0FF 55%,#ECFDF5)}
html[data-theme="light"] .lab-clip-v2,html[data-theme="light"] .lab-project{background:#fff;border-color:#DCE6F2}
html[data-theme="light"] .lab-score.mid{background:#F1F5F9}
@media (max-width:1100px){.lab-drama-grid{grid-template-columns:1fr}.lab-clip-v2{grid-template-columns:46px minmax(0,1fr)}.lab-clip-actions{grid-column:2;flex-direction:row;flex-wrap:wrap}.lab-clip-actions .btn{width:auto}.lab-clip-stats{grid-template-columns:1fr 1fr}}
.lab-drama-grid{display:grid}
.nx-overview{display:flex;flex-direction:column;gap:16px}
.nx-banner{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:18px;align-items:center;min-height:230px;padding:26px 28px;border:1px solid var(--o-line-strong);border-radius:12px;background:linear-gradient(110deg,rgba(47,107,255,.16),rgba(139,92,246,.12) 55%,rgba(62,232,181,.06));overflow:hidden;position:relative}
html[data-theme="light"] .nx-banner{background:linear-gradient(110deg,#EDF4FF,#F8FAFF 60%,#EEF3FA);border-color:#CFE0F5}
.nx-kicker{font-family:var(--mono);font-size:9px;letter-spacing:.18em;color:var(--o-mint);font-weight:800}
html[data-theme="light"] .nx-kicker{color:#1D5BFF}
.nx-banner h2{font-size:clamp(23px,2.2vw,31px);line-height:1.28;color:var(--o-ink);letter-spacing:-1.1px;margin:14px 0 10px;font-weight:800}
html[data-theme="light"] .nx-banner h2{color:var(--o-ink)}
.nx-banner h2 span{color:var(--o-mint)}
html[data-theme="light"] .nx-banner h2 span{color:#2F6BFF}
.nx-banner p{font-size:11.5px;line-height:1.7;color:var(--o-muted);max-width:62ch}
html[data-theme="light"] .nx-banner p{color:#4A5D75}
.nx-link{margin-top:16px;padding:0;background:none;border:0;color:var(--o-mint);font-size:10.5px;font-weight:700;cursor:pointer}
html[data-theme="light"] .nx-link{color:#1D5BFF}
.nx-orbit-art{position:relative;height:210px;transform:scale(.95)}
.nx-halo{position:absolute;left:50%;top:50%;border:1px solid rgba(120,180,255,.15);border-radius:50%;transform:translate(-50%,-50%)}
.nx-halo.h1{width:210px;height:210px}.nx-halo.h2{width:300px;height:300px;border-color:rgba(120,180,255,.1)}
.nx-core{position:absolute;left:50%;top:50%;width:108px;height:108px;transform:translate(-50%,-50%) rotate(-8deg);border-radius:26px;background:var(--o-mint);color:#FFFFFF;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:34px;box-shadow:0 18px 40px rgba(120,180,255,.22)}
.nx-core small{font-family:var(--mono);font-size:9px;letter-spacing:1px;margin-top:1px}
.nx-orbit{position:absolute;padding:6px 10px;border-radius:20px;background:var(--o-panel-solid);border:1px solid rgba(120,180,255,.24);color:var(--o-ink);font-size:9px;white-space:nowrap}
.nx-orbit.o1{left:2%;top:34%}.nx-orbit.o2{right:0;top:18%}.nx-orbit.o3{left:6%;bottom:18%}
html[data-theme="light"] .nx-orbit{background:#fff;border-color:#CFE0F5;color:#2952A8}
.nx-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.nx-stat{padding:15px 16px;border:1px solid var(--o-line);border-radius:10px;background:var(--o-panel-solid);box-shadow:var(--o-shadow);min-height:112px;display:flex;flex-direction:column}
.nx-stat-top{display:flex;align-items:center;justify-content:space-between;color:var(--o-muted);font-size:10px}
.nx-stat-ic{width:26px;height:26px;border-radius:7px;background:rgba(120,180,255,.1);color:var(--o-mint,var(--o-mint));display:flex;align-items:center;justify-content:center}
.nx-stat.warn .nx-stat-ic{background:rgba(246,196,120,.12);color:var(--o-amber)}
.nx-stat.violet .nx-stat-ic{background:rgba(188,165,238,.12);color:var(--o-violet)}
.nx-stat strong{font-size:28px;line-height:1.2;margin-top:8px;color:var(--o-ink);font-weight:800;letter-spacing:-.8px}
.nx-stat strong small{font-size:10px;color:var(--o-muted);font-weight:500;margin-left:4px;letter-spacing:0}
.nx-stat>small{font-size:9.5px;color:var(--o-muted);margin-top:4px}
.nx-two{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.85fr);gap:14px;align-items:stretch}
.nx-panel{border:1px solid var(--o-line);border-radius:10px;background:var(--o-panel-solid);box-shadow:var(--o-shadow);padding:16px 17px 14px;min-width:0}
.nx-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:12px}
.nx-panel-head h3{font-size:14px;color:var(--o-ink);font-weight:750}
.nx-panel-head p{font-size:9.5px;color:var(--o-muted);margin-top:2px}
.nx-panel-link{font-size:9.5px;color:var(--o-muted);cursor:pointer}
.nx-bars{height:205px;display:flex;align-items:flex-end;gap:14px;padding:6px 4px 0;border-bottom:1px solid var(--o-line);background:repeating-linear-gradient(to top,transparent 0 49px,rgba(120,140,130,.08) 49px 50px)}
.nx-bar-col{flex:1;height:100%;display:flex;align-items:flex-end;justify-content:center;gap:5px}
.nx-bar-col i{display:block;width:26px;border-radius:4px 4px 0 0;min-height:2px}
.nx-bar-col i.a{background:linear-gradient(180deg,var(--o-mint),var(--o-blue))}
.nx-bar-col i.b{background:linear-gradient(180deg,var(--o-violet),var(--o-blue))}
.nx-axis{display:flex;gap:14px;padding:7px 4px 0}
.nx-axis span{flex:1;text-align:center;font-family:var(--mono);font-size:8px;color:var(--o-dim)}
.nx-legend{display:flex;gap:14px;margin-top:9px;font-size:9.5px;color:var(--o-muted)}
.nx-legend .d{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--o-mint);margin-right:5px}
.nx-legend .d.blue{background:var(--o-violet)}
.nx-ring{width:136px;height:136px;border-radius:50%;margin:6px auto 10px;display:flex;align-items:center;justify-content:center;position:relative}
.nx-ring::after{content:"";position:absolute;inset:17px;border-radius:50%;background:var(--o-panel-solid)}
.nx-ring strong{position:relative;z-index:1;font-size:31px;color:var(--o-ink);font-weight:800;letter-spacing:-1px}
.nx-ring strong small{font-size:11px}
.nx-ring-note{text-align:center;font-size:9.5px;color:var(--o-muted);margin-bottom:12px}
.nx-kv{border-top:1px solid var(--o-line);padding-top:9px}
.nx-kv>div{display:flex;justify-content:space-between;gap:10px;padding:5px 0;font-size:10px}
.nx-kv span{color:var(--o-muted)}.nx-kv b{font-family:var(--mono);color:var(--o-ink);font-weight:600}
.nx-activity{display:flex;flex-direction:column;gap:10px}
.nx-activity>div{display:grid;grid-template-columns:42px 4px minmax(0,1fr);gap:10px;align-items:center}
.nx-activity .t{font-family:var(--mono);font-size:9px;color:var(--o-dim)}
.nx-activity .bar{width:3px;height:30px;border-radius:3px;background:var(--o-mint,var(--o-mint))}
.nx-activity .bar.blue{background:var(--o-violet)}.nx-activity .bar.purple{background:var(--o-violet)}.nx-activity .bar.amber{background:var(--o-amber)}
.nx-activity b{display:block;font-size:11px;color:var(--o-ink);font-weight:600}
.nx-activity small{display:block;font-size:9px;color:var(--o-muted);margin-top:2px}
.nx-quick{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.nx-quick button{display:flex;flex-direction:column;align-items:flex-start;text-align:left;padding:11px;border:1px solid var(--o-line);border-radius:8px;background:var(--o-panel-solid);cursor:pointer;min-height:80px}
.nx-quick button:hover{border-color:var(--o-mint,var(--o-mint))}
.nx-quick span{font-size:15px;color:var(--o-mint,var(--o-mint))}
.nx-quick b{font-size:10.5px;color:var(--o-ink);margin-top:5px}
.nx-quick small{font-size:8.5px;color:var(--o-muted);margin-top:2px;line-height:1.4}
.nx-callout{margin-top:10px;padding:12px;border:1px solid rgba(246,196,120,.28);border-radius:8px;background:rgba(246,196,120,.06)}
.nx-callout span{font-family:var(--mono);font-size:8px;letter-spacing:1px;color:var(--o-amber)}
.nx-callout h3{font-size:11.5px;color:var(--o-ink);margin:5px 0 3px}
.nx-callout p{font-size:9.5px;line-height:1.55;color:var(--o-muted)}
@media (max-width:1180px){.nx-banner{grid-template-columns:1fr}.nx-orbit-art{display:none}.nx-stats{grid-template-columns:1fr 1fr}.nx-two{grid-template-columns:1fr}}
@media (max-width:700px){.nx-stats{grid-template-columns:1fr}.nx-quick{grid-template-columns:1fr}}

/* Points & Audit 鈥?new-design layout */
.page-overline{font-family:var(--mono);font-size:9px;letter-spacing:1.5px;color:var(--o-mint);font-weight:800;margin-bottom:6px;text-transform:uppercase}
.nx-page .page-head p{font-size:12px;color:var(--o-muted);max-width:78ch;margin-top:4px;line-height:1.65}
.nx-page .page-head h1{font-size:28px;letter-spacing:-1.1px;font-weight:800;margin:2px 0 3px}
.nx-page .page-acts{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.nx-stack{display:flex;flex-direction:column;gap:14px;min-width:0}
.pts-stats{margin-top:2px}
.pts-table{margin-top:2px}
.pts-tr{display:grid;grid-template-columns:120px minmax(0,1fr) 78px 104px;gap:10px;align-items:center;padding:10px 2px;border-bottom:1px solid var(--o-line);font-size:11px}
.pts-tr:last-child{border-bottom:0}
.pts-hd{font-family:var(--mono);font-size:8.5px;letter-spacing:.8px;color:var(--o-dim);text-transform:uppercase;padding:7px 2px;border-bottom:1px solid var(--o-line-strong)}
.pts-tr .tm{font-size:10px;color:var(--o-muted)}
.pts-tr .tt{color:var(--o-ink);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pts-tr .num{text-align:right;font-family:var(--mono);font-size:10.5px;color:var(--o-soft)}
.pts-tr .num.plus{color:var(--o-mint)}
.pts-tr .num.minus{color:var(--o-amber)}
.pts-note{margin-top:12px;padding-top:10px;border-top:1px solid var(--o-line);font-size:10px;color:var(--o-muted);line-height:1.6}
.pts-switch-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--o-line)}
.pts-switch-row:last-child{border-bottom:0}
.pts-switch-row b{display:block;font-size:11px;color:var(--o-ink);font-weight:600}
.pts-switch-row small{display:block;font-size:9.5px;color:var(--o-muted);margin-top:2px}
.pts-switch{width:34px;height:19px;flex:none;border-radius:12px;background:var(--o-line-strong);position:relative;border:0;cursor:pointer;transition:background .18s}
.pts-switch i{position:absolute;width:13px;height:13px;border-radius:50%;background:#fff;left:3px;top:3px;transition:left .18s;box-shadow:0 1px 3px rgba(0,0,0,.25)}
.pts-switch.on{background:var(--o-mint)}
.pts-switch.on i{left:18px}
.audit-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:12px}
.audit-tabs{display:flex;gap:4px;flex-wrap:wrap;border:0;padding:0;background:transparent}
.audit-tabs .tab{border:1px solid transparent;border-radius:6px;padding:6px 10px;background:transparent;color:var(--o-muted);font-size:10.5px;font-weight:600}
.audit-tabs .tab span{font-family:var(--mono);font-size:8.5px;color:var(--o-dim);margin-left:3px}
.audit-tabs .tab.on{background:var(--tab-active-bg,rgba(47,107,255,.14));color:var(--tab-active-fg,var(--o-mint));border-color:var(--o-line)}
.audit-tabs .tab.on span{color:var(--o-mint)}
.audit-search{width:250px;margin:0}
.audit-table{border-top:1px solid var(--o-line)}
.audit-tr{display:grid;grid-template-columns:118px 86px 116px minmax(0,1fr) 150px 100px;gap:10px;align-items:center;padding:10px 4px;border-bottom:1px solid var(--o-line);font-size:10.5px}
.audit-hd{font-family:var(--mono);font-size:8.5px;letter-spacing:.7px;color:var(--o-dim);text-transform:uppercase;border-bottom:1px solid var(--o-line-strong)}
.audit-tr .tm{color:var(--o-muted);font-size:10px}
.audit-tr .who{color:var(--o-ink);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.audit-tr .act{color:var(--o-ink);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.audit-tr .obj{color:var(--o-muted);font-size:9.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.audit-tr .src{color:var(--o-dim);font-size:9.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.chip{display:inline-flex;align-items:center;height:19px;padding:0 6px;border-radius:4px;font-size:8.5px;font-weight:700;font-style:normal;border:1px solid var(--o-line);color:var(--o-muted);white-space:nowrap}
.chip.blue{color:var(--info,#5B8CFF);border-color:rgba(91,140,255,.35);background:rgba(91,140,255,.08)}
.chip.lime{color:var(--o-mint);border-color:rgba(62,232,181,.3);background:rgba(62,232,181,.07)}
.chip.purple{color:var(--o-violet);border-color:rgba(139,92,246,.3);background:rgba(139,92,246,.08)}
.chip.yellow{color:var(--o-amber);border-color:rgba(246,196,120,.3);background:rgba(246,196,120,.08)}
.audit-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;border-top:1px solid var(--o-line);padding-top:10px;margin-top:2px;color:var(--o-dim);font-size:9.5px}
.audit-demo{border-color:var(--o-line);color:var(--o-muted);background:transparent}
.nx-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:14px}
.nx-three .nx-kv{border-top:0;padding-top:0}
.nx-three .nx-kv>div{padding:6px 0}
@media (max-width:1180px){.nx-three{grid-template-columns:1fr}.audit-tr{grid-template-columns:105px 76px 100px minmax(0,1fr) 120px}.audit-tr .src{display:none}.audit-hd span:last-child{display:none}.pts-tr{grid-template-columns:105px minmax(0,1fr) 70px 90px}}
@media (max-width:700px){.pts-tr{grid-template-columns:90px minmax(0,1fr) 64px}.pts-tr .num:nth-child(4){display:none}.audit-tr{grid-template-columns:1fr 1fr;gap:5px}.audit-hd{display:none}.audit-search{width:100%}}
/* Overview: fit the whole dashboard into one screen */
.nx-overview{display:grid;grid-template-rows:132px 84px minmax(0,1.3fr) minmax(0,1fr);gap:10px;height:calc(100vh - 86px);min-height:560px;overflow:hidden}
.nx-overview .nx-banner{min-height:0;height:132px;padding:15px 22px;grid-template-columns:minmax(0,1fr) 300px;gap:10px;overflow:hidden}
.nx-overview .nx-kicker{font-size:8.5px}
.nx-overview .nx-banner h2{font-size:clamp(19px,1.8vw,24px);margin:7px 0 5px;line-height:1.2}
.nx-overview .nx-banner p{font-size:10px;line-height:1.5;max-width:78ch;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.nx-overview .nx-link{margin-top:6px;font-size:9.5px}
.nx-overview .nx-orbit-art{height:132px;transform:scale(.78);transform-origin:center}
.nx-overview .nx-halo.h1{width:150px;height:150px}.nx-overview .nx-halo.h2{width:215px;height:215px}
.nx-overview .nx-core{width:78px;height:78px;border-radius:20px;font-size:26px}
.nx-overview .nx-core small{font-size:7px}
.nx-overview .nx-orbit{padding:4px 8px;font-size:7.5px}
.nx-overview .nx-stats{gap:8px}
.nx-overview .nx-stat{min-height:0;padding:9px 12px}
.nx-overview .nx-stat-top{font-size:9px}
.nx-overview .nx-stat-ic{width:21px;height:21px;border-radius:6px;font-size:11px}
.nx-overview .nx-stat strong{font-size:22px;margin-top:3px;letter-spacing:-.5px}
.nx-overview .nx-stat strong small{font-size:9px}
.nx-overview .nx-stat>small{font-size:8.5px;margin-top:2px;line-height:1.35}
.nx-overview .nx-two{gap:10px;min-height:0}
.nx-overview .nx-panel{padding:10px 13px 8px;min-height:0;display:flex;flex-direction:column;overflow:hidden}
.nx-overview .nx-panel-head{margin-bottom:6px}
.nx-overview .nx-panel-head h3{font-size:12.5px}
.nx-overview .nx-panel-head p{font-size:8.5px;margin-top:0}
.nx-overview .nx-bars{flex:1;height:auto;min-height:0;gap:10px;background:repeating-linear-gradient(to top,transparent 0 31px,rgba(120,140,130,.08) 31px 32px)}
.nx-overview .nx-bar-col i{width:20px}
.nx-overview .nx-axis{padding:4px 4px 0;gap:10px}
.nx-overview .nx-axis span{font-size:7px}
.nx-overview .nx-legend{margin-top:4px;font-size:8.5px;gap:10px}
.nx-overview .nx-ring{width:92px;height:92px;margin:2px auto 4px}
.nx-overview .nx-ring::after{inset:12px}
.nx-overview .nx-ring strong{font-size:22px}
.nx-overview .nx-ring-note{font-size:8.5px;margin-bottom:5px}
.nx-overview .nx-kv{padding-top:5px}
.nx-overview .nx-kv>div{padding:2px 0;font-size:9px}
.nx-overview .nx-activity{gap:5px;justify-content:space-between;flex:1;min-height:0}
.nx-overview .nx-activity>div{grid-template-columns:38px 3px minmax(0,1fr);gap:8px}
.nx-overview .nx-activity .bar{height:24px}
.nx-overview .nx-activity b{font-size:10px;line-height:1.25}
.nx-overview .nx-activity small{font-size:8px;margin-top:0;line-height:1.25}
.nx-overview .nx-activity .t{font-size:8px}
.nx-overview .nx-quick{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.nx-overview .nx-quick button{min-height:48px;padding:6px 7px}
.nx-overview .nx-quick span{font-size:12px}
.nx-overview .nx-quick b{font-size:9px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.nx-overview .nx-quick small{font-size:7.5px;margin-top:1px;line-height:1.25;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.nx-overview .nx-callout{margin-top:6px;padding:7px 9px}
.nx-overview .nx-callout span{font-size:7px}
.nx-overview .nx-callout h3{font-size:10px;margin:2px 0 1px;line-height:1.3}
.nx-overview .nx-callout p{font-size:8px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
@media (max-width:1180px){.nx-overview{height:auto;min-height:0;display:flex;overflow:visible}.nx-overview .nx-banner{height:auto;min-height:150px}.nx-overview .nx-two{grid-template-columns:1fr}}
@media (max-height:720px){.nx-overview{height:auto;display:flex;overflow:visible}.nx-overview .nx-banner{height:auto;min-height:140px}}
.nx-overview .nx-quick{grid-template-columns:1fr 1fr;gap:4px}
.nx-overview .nx-quick button{min-height:38px;padding:4px 6px}
.nx-overview .nx-quick b{font-size:8.5px;margin-top:1px}
.nx-overview .nx-quick small{font-size:7.5px;margin-top:0}
.nx-overview .nx-quick span{font-size:10px}
.nx-overview .nx-quick small{display:none}
.nx-overview .nx-quick button{min-height:34px}
.nx-overview .nx-callout p{-webkit-line-clamp:1}
.nx-overview .nx-callout h3{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.content:has(> .nx-overview){padding-bottom:0}
@media (min-width:1041px){
  .nx-overview{display:grid;grid-template-rows:132px 84px minmax(0,1.3fr) minmax(0,1fr);height:calc(100vh - 86px);min-height:560px;overflow:hidden}
  .nx-overview .nx-banner{height:132px;grid-template-columns:minmax(0,1fr) 300px}
  .nx-overview .nx-stats{grid-template-columns:repeat(4,minmax(0,1fr))}
  .nx-overview .nx-two{grid-template-columns:minmax(0,1.65fr) minmax(280px,.85fr)}
  .nx-overview .nx-orbit-art{display:block}
}
@media (min-width:1041px){
  .nx-overview{grid-template-rows:132px 84px minmax(0,1.05fr) minmax(0,1.25fr)}
}
.nx-overview .nx-callout p{-webkit-line-clamp:2!important}
/* Calendar right rail 鈥?agenda & rhythm rules */
.cal-agenda-card,.cal-rules-card{padding:0 14px 12px}
.cal-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:13px 0 7px;border-bottom:1px solid var(--o-line)}
.cal-card-head h3{font-size:13px;color:var(--o-ink);font-weight:700}
.cal-card-head p{font-size:9px;color:var(--o-muted);margin-top:2px}
.cal-edit{border:0;background:transparent;color:var(--o-mint);font-size:9.5px;font-weight:700;cursor:pointer;padding:2px 0}
.cal-agenda-list{display:flex;flex-direction:column}
.cal-agenda-row{display:grid;grid-template-columns:42px 3px minmax(0,1fr);gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--o-line)}
.cal-agenda-row:last-child{border-bottom:0}
.cal-agenda-row .t{font-family:var(--mono);font-size:9px;color:var(--o-muted)}
.cal-agenda-row .bar{width:3px;height:30px;border-radius:3px;display:block}
.cal-agenda-row .body{min-width:0}
.cal-agenda-row b{display:block;font-size:10.5px;color:var(--o-ink);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cal-agenda-row small{display:block;font-size:8.5px;color:var(--o-muted);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cal-agenda-empty{padding:26px 0 20px;text-align:center;font-size:9.5px;color:var(--o-dim)}
.cal-rules-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:12px 0 4px}
.cal-rules-grid span{display:block;font-size:8.5px;color:var(--o-muted);line-height:1.35;min-height:23px}
.cal-rules-grid b{display:block;font-size:11px;color:var(--o-ink);margin-top:3px;font-weight:700}
.cal-conflict{margin-top:10px;padding:10px 11px;border:1px solid rgba(62,232,181,.22);border-radius:8px;background:rgba(62,232,181,.06)}
.cal-conflict .tag{font-family:var(--mono);font-size:7.5px;letter-spacing:.8px;color:var(--o-mint);font-weight:800}
.cal-conflict h4{font-size:11px;line-height:1.35;color:var(--o-ink);margin:5px 0 3px}
.cal-conflict p{font-size:8.5px;line-height:1.5;color:var(--o-muted)}
@media (max-width:960px){.cal-rules-grid{grid-template-columns:1fr 1fr}}
.cal-sample{color:var(--o-amber);font-family:var(--mono);font-size:7.5px;letter-spacing:.5px}
/* Accounts 鈥?connected account table + renewal / risk rail */
.acct-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:14px;align-items:start}
.acct-list-card{padding:0;overflow:hidden}
.acct-table-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:15px 17px 11px}
.acct-table-head h3{font-size:15px;color:var(--o-ink);font-weight:700}
.acct-table-head p{font-size:9.5px;color:var(--o-muted);margin-top:2px}
.acct-sample{font-family:var(--mono);font-size:8px;color:var(--o-amber);letter-spacing:.4px}
.acct-link{border:0;background:transparent;color:var(--o-mint);font-size:10px;font-weight:700;cursor:pointer;padding:2px 0;white-space:nowrap}
.acct-link.muted{color:var(--o-muted);font-weight:600;margin-left:10px}
.acct-table-wrap{overflow:auto}
.acct-table{width:100%;border-collapse:collapse;table-layout:auto}
.acct-table th{text-align:left;font-family:var(--mono);font-size:8.5px;letter-spacing:.6px;text-transform:uppercase;color:var(--o-dim);font-weight:700;background:rgba(120,140,160,.05);padding:9px 12px;border-top:1px solid var(--o-line);border-bottom:1px solid var(--o-line);white-space:nowrap}
.acct-table td{padding:12px 12px;border-bottom:1px solid var(--o-line);font-size:10.5px;color:var(--o-soft);vertical-align:middle}
.acct-table tr:last-child td{border-bottom:0}
.acct-table tr:hover td{background:rgba(120,140,160,.035)}
.acct-plat{display:flex;align-items:center;gap:8px;min-width:0}
.acct-plat b{font-size:10.5px;color:var(--o-ink);font-weight:600;white-space:nowrap}
.acct-plat .plat-logo{flex:none}
.acct-id{min-width:0}
.acct-id b{display:block;font-size:10.5px;color:var(--o-ink);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:170px}
.acct-id small{display:block;font-family:var(--mono);font-size:8.5px;color:var(--o-dim);margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:170px}
.acct-actions{display:flex;justify-content:flex-end;align-items:center;gap:2px}
.acct-rail{display:flex;flex-direction:column;gap:14px;min-width:0}
.acct-rail-card{padding:0 15px 12px}
.acct-rail-head{padding:14px 0 9px;border-bottom:1px solid var(--o-line)}
.acct-rail-head h3{font-size:14px;color:var(--o-ink);font-weight:700}
.acct-rail-head p{font-size:9px;color:var(--o-muted);margin-top:2px;line-height:1.45}
.acct-queue{display:flex;flex-direction:column}
.acct-queue-row{display:grid;grid-template-columns:3px minmax(0,1fr) auto;gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid var(--o-line)}
.acct-queue-row:last-child{border-bottom:0}
.acct-queue-row .bar{width:3px;height:36px;border-radius:3px;background:var(--o-amber);display:block}
.acct-queue-row .body{min-width:0}
.acct-queue-row b{display:block;font-size:10.5px;color:var(--o-ink);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.acct-queue-row small{display:block;font-size:8.5px;color:var(--o-muted);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.acct-queue-row .btn{min-height:27px;padding:0 10px;font-size:9px;background:var(--o-mint);color:#fff;border:1px solid var(--o-mint);border-radius:5px}
.acct-queue-row .btn.btn-ghost{background:transparent;color:var(--o-mint);border-color:var(--o-line)}
.acct-risk{display:grid;grid-template-columns:1fr 1fr;gap:12px 10px;padding:13px 0 3px}
.acct-risk span{display:block;font-size:8.5px;color:var(--o-muted);line-height:1.35}
.acct-risk b{display:block;font-size:11px;color:var(--o-ink);margin-top:3px;font-weight:700}
.platform-picker-modal{width:min(960px,calc(100vw - 56px));max-width:960px}
.platform-picker-modal .modal-b{padding-top:4px;padding-bottom:12px}
.picker-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:2px}
.picker-grid .plat-tile{padding:9px 10px}
.picker-grid .plat-tile .nm{font-size:11px}
.picker-grid .plat-tile .ty{font-size:8px}
@media (max-width:1100px){.acct-layout{grid-template-columns:1fr}.acct-rail{display:grid;grid-template-columns:1fr 1fr}.acct-table th:nth-child(3),.acct-table td:nth-child(3){display:none}}
@media (max-width:760px){.acct-rail{grid-template-columns:1fr}.picker-grid{grid-template-columns:1fr 1fr}.acct-table th:nth-child(5),.acct-table td:nth-child(5){display:none}.acct-table th,.acct-table td{padding:9px 8px}}
@media (max-width:1300px){
  .acct-layout{grid-template-columns:minmax(0,1fr) 320px}
  .acct-table th:nth-child(3),.acct-table td:nth-child(3){display:none}
}
.field-link{border:0;background:transparent;color:var(--o-mint);font-size:9px;font-weight:700;cursor:pointer;margin-left:auto;padding:0}
.group-add-row{display:flex;gap:6px;margin-top:6px}
.group-add-row .inp{flex:1;min-width:0}
.group-add-row .btn{white-space:nowrap}
.acct-toolbar .search-box{width:340px;flex:0 0 340px;max-width:100%}
.acct-pager{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 15px 13px;border-top:1px solid var(--o-line);color:var(--o-muted);font-size:9.5px;flex-wrap:wrap}
.acct-pages{display:flex;align-items:center;gap:4px}
.acct-page-btn{min-width:26px;height:26px;padding:0 7px;border:1px solid var(--o-line);border-radius:5px;background:var(--o-panel-solid);color:var(--o-muted);font-size:10px;cursor:pointer}
.acct-page-btn:hover:not(:disabled){border-color:var(--o-mint);color:var(--o-mint)}
.acct-page-btn.on{background:var(--o-mint);border-color:var(--o-mint);color:#fff;font-weight:700}
.acct-page-btn:disabled{opacity:.4;cursor:not-allowed}
@media (max-width:1300px){.acct-toolbar .search-box{width:260px;flex-basis:260px}}
@media (max-width:760px){.acct-toolbar .search-box{width:100%;flex-basis:100%}}
/* Studio: result player + multi-speaker + drive video editor */
.studio-result-player{position:relative;width:100%;height:100%;min-height:220px;border-radius:10px;overflow:hidden;background:#05070d}
.studio-result-player video{width:100%;height:100%;object-fit:contain;display:block}
.studio-result-tag{position:absolute;top:9px;left:9px;padding:3px 8px;border-radius:999px;background:rgba(5,7,13,.72);border:1px solid rgba(255,255,255,.18);color:#fff;font-size:9px}
.studio-result-tag.fallback{color:var(--o-amber);border-color:rgba(246,196,120,.4)}
.studio-result-actions{position:absolute;right:9px;bottom:9px;display:flex;gap:6px}
.speaker-block{margin:4px 0 10px;padding:10px;border:1px solid var(--o-line);border-radius:8px;background:rgba(120,180,255,.04)}
.speaker-hint{margin:0 0 8px;font-size:9.5px;line-height:1.55;color:var(--o-muted)}
.speaker-row{display:grid;grid-template-columns:62px minmax(0,1fr);gap:8px;align-items:center;margin-bottom:6px}
.speaker-row>span{font-size:9.5px;color:var(--o-soft)}
.speaker-add{margin-top:2px}
.drive-edited{display:inline-block;margin-left:6px;padding:1px 5px;border-radius:4px;background:rgba(62,232,181,.1);color:var(--o-mint);font-size:8px;font-weight:700;vertical-align:1px}
.drive-editor-modal{width:min(1120px,calc(100vw - 52px));max-width:1120px}
.drive-editor-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:14px;align-items:start}
.drive-editor-stage{display:flex;align-items:center;justify-content:center;min-height:380px;max-height:520px;border:1px solid var(--o-line);border-radius:9px;background:#05070d;overflow:hidden}
.drive-editor-stage img{max-width:100%;max-height:520px;object-fit:contain}
.drive-video-wrap{position:relative;width:100%;height:100%;min-height:380px;display:flex;align-items:center;justify-content:center;background:#05070d}
.drive-video-wrap video{max-width:100%;max-height:520px;width:100%;object-fit:contain;background:#05070d}
.drive-text-overlay{position:absolute;bottom:12%;left:50%;transform:translateX(-50%);padding:5px 10px;border-radius:5px;background:rgba(0,0,0,.55);color:#fff;font-size:14px;white-space:nowrap;max-width:86%;overflow:hidden;text-overflow:ellipsis}
.drive-editor-side{display:flex;flex-direction:column;gap:10px}
.drive-edit-block{padding:10px;border:1px solid var(--o-line);border-radius:8px;background:var(--o-panel-solid)}
.drive-edit-block>b{display:block;font-size:10px;color:var(--o-ink);margin-bottom:7px}
.drive-edit-btns{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.drive-trim-row{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.drive-trim-row label{font-size:8.5px;color:var(--o-muted);display:flex;flex-direction:column;gap:3px}
.drive-trim-row .inp{height:30px;font-size:10px}
.drive-timeline{position:relative;height:24px;margin-top:8px;border:1px solid var(--o-line);border-radius:5px;background:repeating-linear-gradient(90deg,rgba(120,140,160,.16) 0 1px,transparent 1px 10px),rgba(120,140,160,.08);overflow:hidden}
.drive-timeline i{position:absolute;top:0;bottom:0;background:rgba(62,232,181,.22);border-left:2px solid var(--o-mint);border-right:2px solid var(--o-mint)}
.drive-edit-note{display:block;margin-top:5px;font-size:8.5px;color:var(--o-dim)}
.drive-edit-block .mt8{margin-top:8px}
@media (max-width:900px){.drive-editor-layout{grid-template-columns:1fr}.drive-editor-side{display:grid;grid-template-columns:1fr 1fr}.drive-editor-stage{min-height:240px}}
/* Free creation: inline generation progress card */
.free-process{width:100%;max-width:760px}
.free-process-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px;flex-wrap:wrap}
.free-process-status{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:700;color:var(--o-mint)}
.free-process-status .spin{width:12px;height:12px;border-width:2px}
.free-process-meta{font-size:9.5px;color:var(--o-muted)}
.free-process .free-result-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}
.free-gen-card{border:1px solid var(--o-line);border-radius:9px;background:linear-gradient(160deg,rgba(120,180,255,.08),rgba(139,92,246,.05));overflow:hidden}
.free-gen-top{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;border-bottom:1px solid var(--o-line);font-size:9.5px;color:var(--o-muted)}
.free-gen-top span:last-child{font-family:var(--mono);color:var(--o-mint)}
.free-gen-body{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;min-height:178px;padding:18px 12px}
.free-gen-spin{display:block;width:26px;height:26px;border-radius:50%;border:2px solid rgba(120,180,255,.25);border-top-color:var(--o-mint);animation:spin 1s linear infinite}
.free-gen-body b{font-size:12px;color:var(--o-ink);font-weight:600}
.free-gen-body small{font-family:var(--mono);font-size:9px;color:var(--o-dim)}
.free-gen-bar{width:76%;height:4px;border-radius:4px;background:rgba(120,140,160,.18);overflow:hidden;margin-top:4px}
.free-gen-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--o-mint),var(--o-violet));transition:width .2s}
.free-msg.pending{width:90%;max-width:90%}
.free-gen-body{min-height:118px!important}
.free-gen-spin{width:22px!important;height:22px!important}
.free-gen-body{min-height:100px!important}
.free-process-head{display:none!important}
/* SocialEcho-style full-screen drive editor */
.editor-mask{padding:16px}
.drive-editor-shell{width:min(1600px,calc(100vw - 32px));height:calc(100vh - 32px);max-height:1000px;display:flex;flex-direction:column;background:var(--o-panel-solid);border:1px solid var(--o-line);border-radius:12px;box-shadow:0 30px 90px rgba(0,0,0,.35);overflow:hidden}
.de-top{display:flex;align-items:center;gap:14px;padding:11px 18px;border-bottom:1px solid var(--o-line);flex:none;background:var(--o-panel-solid)}
.de-back{border:1px solid var(--o-line);background:transparent;color:var(--o-soft);border-radius:7px;height:30px;padding:0 12px;font-size:10px;cursor:pointer}
.de-back:hover{border-color:var(--o-mint);color:var(--o-mint)}
.de-title{display:flex;flex-direction:column;min-width:0;gap:2px}
.de-title b{font-size:12px;color:var(--o-ink);font-weight:700}
.de-title span{font-size:9px;color:var(--o-dim);font-family:var(--mono);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:520px}
.de-top-actions{margin-left:auto;display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.de-icon-btn{width:28px;height:28px;border:1px solid var(--o-line);border-radius:6px;background:transparent;color:var(--o-soft);font-size:14px;cursor:pointer}
.de-icon-btn:disabled{opacity:.35;cursor:not-allowed}
.de-size{font-family:var(--mono);font-size:8.5px;color:var(--o-dim);padding:0 6px}
.de-body{flex:1;min-height:0;display:grid;grid-template-columns:64px minmax(0,1fr) 330px}
.de-tools{border-right:1px solid var(--o-line);display:flex;flex-direction:column;align-items:center;gap:5px;padding:12px 6px;background:var(--o-bg-2)}
.de-tools button{width:50px;height:48px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--o-muted);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;cursor:pointer}
.de-tools button span{font-size:16px;line-height:1}
.de-tools button small{font-size:8px}
.de-tools button.on{background:rgba(62,232,181,.1);border-color:rgba(62,232,181,.28);color:var(--o-mint)}
.de-canvas{min-width:0;min-height:0;display:flex;flex-direction:column;background:var(--o-bg);position:relative;overflow:hidden}
.de-stage{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;padding:18px;position:relative}
.de-stage img,.de-video-wrap video{max-width:100%;max-height:100%;object-fit:contain;border-radius:4px;background:#05070d}
.de-video-wrap{position:relative;display:flex;align-items:center;justify-content:center;max-width:100%;max-height:100%}
.de-text-overlay{position:absolute;left:50%;bottom:9%;transform:translateX(-50%);max-width:86%;padding:5px 10px;border-radius:5px;background:rgba(0,0,0,.55);color:#fff;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.de-badge{position:absolute;left:24px;top:22px;padding:3px 7px;border-radius:4px;background:rgba(5,7,13,.55);color:#fff;font-family:var(--mono);font-size:8px;letter-spacing:.3px}
.de-canvas-foot{flex:none;height:36px;border-top:1px solid var(--o-line);display:flex;align-items:center;gap:12px;padding:0 14px;background:var(--o-panel-solid);color:var(--o-muted);font-size:9px}
.de-play{width:26px;height:26px;border-radius:50%;border:1px solid var(--o-line);background:var(--o-panel-solid);color:var(--o-ink);font-size:10px;cursor:pointer}
.de-zoom{font-family:var(--mono);font-size:8.5px;color:var(--o-dim)}
.de-panel{border-left:1px solid var(--o-line);overflow:auto;padding:14px;min-width:0;background:var(--o-panel-solid)}
.de-panel-h{margin-bottom:12px}
.de-panel-h h4{font-size:12px;color:var(--o-ink);font-weight:700}
.de-panel-h p{font-size:9px;color:var(--o-muted);margin-top:2px}
.de-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}
.de-field-grid label,.de-field{display:flex;flex-direction:column;gap:4px;font-size:8.5px;color:var(--o-muted);margin-bottom:10px}
.de-field-grid .inp,.de-field .inp{height:31px;font-size:10px}
.de-action-row{display:flex;gap:6px;flex-wrap:wrap;margin:6px 0}
.de-splits{display:flex;flex-direction:column;gap:5px;margin-top:8px;font-size:9px;color:var(--o-muted)}
.de-hint{font-size:8.5px;line-height:1.5;color:var(--o-dim);margin-top:10px}
.de-text-preview{margin-top:10px;padding:14px 10px;border:1px dashed var(--o-line);border-radius:6px;text-align:center;font-size:13px;color:var(--o-ink);background:rgba(120,180,255,.05)}
.de-filter-grid,.de-aspect-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:12px}
.de-filter-grid button,.de-aspect-grid button{height:30px;border:1px solid var(--o-line);border-radius:5px;background:var(--o-panel-solid);color:var(--o-muted);font-size:9px;cursor:pointer}
.de-filter-grid button.on,.de-aspect-grid button.on{border-color:var(--o-mint);color:var(--o-mint);background:rgba(62,232,181,.08)}
.de-slider{display:flex;flex-direction:column;gap:5px;font-size:8.5px;color:var(--o-muted);margin-bottom:12px}
.de-slider input[type=range]{width:100%;accent-color:var(--o-mint)}
.de-info{display:flex;flex-direction:column;gap:7px}
.de-info>div{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid var(--o-line);padding-bottom:5px;font-size:9px}
.de-info span{color:var(--o-muted);flex:none}
.de-info b{color:var(--o-ink);font-family:var(--mono);font-size:8.5px;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.de-timeline{flex:none;border-top:1px solid var(--o-line);padding:8px 16px 10px;background:var(--o-bg-2)}
.de-track-tools{display:flex;align-items:center;gap:12px;margin-bottom:6px;font-size:9px;color:var(--o-muted)}
.de-mini{border:1px solid var(--o-line);border-radius:5px;background:var(--o-panel-solid);color:var(--o-soft);font-size:8.5px;height:24px;padding:0 8px;cursor:pointer}
.de-mini:hover{border-color:var(--o-mint);color:var(--o-mint)}
.de-audio{font-size:8.5px;color:var(--o-dim)}
.de-track{position:relative;height:38px;border:1px solid var(--o-line);border-radius:6px;background:repeating-linear-gradient(90deg,rgba(120,140,160,.16) 0 1px,transparent 1px 24px),rgba(120,140,160,.08);cursor:pointer;overflow:hidden}
.de-trim-zone{position:absolute;top:0;bottom:0;background:rgba(62,232,181,.16);border-left:2px solid var(--o-mint);border-right:2px solid var(--o-mint)}
.de-split{position:absolute;top:0;bottom:0;width:2px;background:var(--o-amber);z-index:2}
.de-playhead{position:absolute;top:-3px;bottom:-3px;width:2px;background:#fff;box-shadow:0 0 6px rgba(255,255,255,.7);z-index:3;pointer-events:none}
.de-track-ruler{display:flex;justify-content:space-between;margin-top:3px;font-family:var(--mono);font-size:7.5px;color:var(--o-dim)}
@media (max-width:1100px){.de-body{grid-template-columns:54px minmax(0,1fr) 280px}.drive-editor-shell{height:calc(100vh - 20px)}.editor-mask{padding:10px}}
.de-mini-info{margin-top:18px;padding-top:11px;border-top:1px solid var(--o-line);display:flex;flex-direction:column;gap:6px}
.de-mini-info>div{display:flex;justify-content:space-between;gap:10px;font-size:8.5px}
.de-mini-info span{color:var(--o-muted)}.de-mini-info b{color:var(--o-ink);font-family:var(--mono);font-size:8.5px}
.de-video-wrap{height:100%}
.de-video-wrap video{width:100%;height:100%;max-height:100%}
.de-top-select{height:28px;border:1px solid var(--o-line);border-radius:6px;background:var(--o-panel-solid);color:var(--o-soft);font-size:9px;padding:0 6px}
.de-mini.on{background:rgba(62,232,181,.12);border-color:rgba(62,232,181,.4);color:var(--o-mint)}
.de-subhead{font-size:9px;font-weight:700;color:var(--o-muted);margin:12px 0 6px;padding-top:9px;border-top:1px solid var(--o-line)}
.de-crop-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px 10px;margin-bottom:8px}
.de-crop-grid label{display:flex;flex-direction:column;gap:5px;font-size:8px;color:var(--o-muted)}
.de-crop-grid input[type=range]{width:100%;accent-color:var(--o-mint)}
.de-anno{position:absolute;transform:translate(-50%,-50%);z-index:4;pointer-events:none}
.de-anno.box{width:84px;height:52px;border:2px solid;border-radius:3px}
.de-anno.circle{width:64px;height:64px;border:2px solid;border-radius:50%}
.de-anno.arrow{font-size:30px;font-weight:700;line-height:1}
.de-anno.text{padding:4px 8px;border:1px solid;border-radius:4px;background:rgba(0,0,0,.45);font-size:11px;white-space:nowrap}
.de-anno.erase{width:58px;height:58px;border-radius:50%;background:rgba(8,12,18,.55);backdrop-filter:blur(6px);border:1px dashed rgba(255,255,255,.4)}
.de-safety{position:absolute;inset:8%;border:1px dashed rgba(255,255,255,.55);border-radius:4px;pointer-events:none;z-index:3}
.de-anno-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:10px}
.de-anno-grid button{height:32px;border:1px solid var(--o-line);border-radius:5px;background:var(--o-panel-solid);color:var(--o-soft);font-size:9px;cursor:pointer}
.de-anno-grid button:hover{border-color:var(--o-mint);color:var(--o-mint)}
.de-anno-row{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:9px;color:var(--o-muted)}
.de-anno-row .acct-page-btn{height:22px;min-width:22px;font-size:8px}
.de-erase-stage{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;height:150px;margin:6px 0 10px;border:1px dashed var(--o-line);border-radius:8px;background:rgba(120,140,160,.06)}
.de-erase-circle{width:58px;height:58px;border-radius:50%;background:rgba(8,12,18,.4);backdrop-filter:blur(4px);border:1px dashed var(--o-mint)}
.de-erase-stage b{font-size:9px;color:var(--o-muted);font-weight:500}
/* AI video workflow + transcript */
.studio-workflow{width:100%;height:100%;overflow:auto;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;padding:14px 12px}
.wf-ring{width:96px;height:96px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex:none}
.wf-ring-inner{width:76px;height:76px;border-radius:50%;background:var(--o-panel-solid);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px}
.wf-ring-inner b{font-size:20px;color:var(--o-ink);font-weight:800}
.wf-ring-inner small{font-size:7.5px;color:var(--o-muted)}
.wf-title{font-size:12.5px;color:var(--o-ink);font-weight:700;text-align:center}
.wf-desc{font-size:9.5px;line-height:1.5;color:var(--o-muted);text-align:center;max-width:290px}
.wf-confirm{margin-top:2px}
.wf-steps{display:flex;align-items:flex-start;justify-content:space-between;width:100%;gap:2px;margin-top:6px}
.wf-step{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;min-width:0;position:relative}
.wf-step:not(:last-child)::after{content:'';position:absolute;top:8px;left:calc(50% + 9px);right:calc(-50% + 9px);height:1px;background:var(--o-line)}
.wf-step i{width:17px;height:17px;border-radius:50%;border:1px solid var(--o-line);background:var(--o-panel-solid);color:var(--o-dim);font-size:7px;display:flex;align-items:center;justify-content:center;font-style:normal;position:relative;z-index:1}
.wf-step span{font-size:7px;color:var(--o-dim);text-align:center;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.wf-step.done i{background:var(--o-mint);border-color:var(--o-mint);color:#fff}
.wf-step.current i{border-color:var(--o-amber);color:var(--o-amber);box-shadow:0 0 0 3px rgba(246,196,120,.12)}
.wf-step.current span{color:var(--o-amber)}
.studio-transcript{margin-top:14px;border:1px solid var(--o-line);border-radius:10px;background:var(--o-panel-solid);padding:13px 15px;box-shadow:var(--o-shadow)}
.studio-transcript-h{display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid var(--o-line);padding-bottom:8px;margin-bottom:8px}
.studio-transcript-h b{font-size:12.5px;color:var(--o-ink)}
.studio-transcript-h span{font-size:9px;color:var(--o-muted);margin-left:8px}
.studio-tr-row{display:grid;grid-template-columns:50px minmax(0,.9fr) minmax(0,1.1fr);gap:10px;padding:8px 0;border-bottom:1px solid var(--o-line);align-items:start}
.studio-tr-row:last-child{border-bottom:0}
.studio-tr-meta{display:flex;flex-direction:column;gap:2px;font-family:var(--mono);font-size:8.5px;color:var(--o-muted)}
.studio-tr-meta span{color:var(--o-mint)}
.studio-tr-src{font-size:10px;line-height:1.5;color:var(--o-soft);padding-top:2px;overflow-wrap:anywhere}
.studio-tr-row textarea{min-height:48px;font-size:9.5px;line-height:1.5;resize:vertical}
.studio-tr-row textarea:disabled{opacity:.7}
@media (max-width:900px){.studio-tr-row{grid-template-columns:42px 1fr}.studio-tr-src{grid-column:2}.studio-tr-row textarea{grid-column:1 / -1}}
.de-erase-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:6;cursor:crosshair;touch-action:none}
.de-reset{height:24px;padding:0 9px;border:1px solid var(--o-line);border-radius:5px;background:transparent;color:var(--o-muted);font-size:8.5px;cursor:pointer;flex:none}
.de-reset:hover{border-color:var(--o-amber);color:var(--o-amber)}
.de-panel-h{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
.de-panel-h>div{min-width:0}
.de-trim-handle{position:absolute;top:-4px;bottom:-4px;width:8px;margin-left:-4px;border-radius:3px;background:var(--o-mint);box-shadow:0 0 0 1px rgba(0,0,0,.35);z-index:5;cursor:ew-resize}
.de-trim-handle.end{background:var(--o-amber)}
.de-playhead{pointer-events:auto;cursor:ew-resize}
/* AI video: generation + task rail on one page */
.studio-detail-body{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:14px;align-items:start}
.studio-task-rail{position:sticky;top:10px;min-width:0}
.studio-task-rail-card{overflow:hidden}
.studio-task-rail-body{max-height:calc(100vh - 250px);overflow:auto;padding:10px 12px}
.task-mini{border-bottom:1px solid var(--o-line);padding:9px 0}
.task-mini:last-child{border-bottom:0}
.task-mini-top{display:flex;align-items:center;justify-content:space-between;gap:8px}
.task-mini-top b{font-size:10.5px;color:var(--o-ink);font-weight:650;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.task-mini-id{font-size:7.5px;color:var(--o-dim);margin:3px 0 6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.task-mini .progress{height:4px;margin-bottom:6px}
.task-mini-meta{display:flex;justify-content:space-between;font-family:var(--mono);font-size:8px;color:var(--o-muted)}
.task-mini-acts{margin-top:5px;gap:4px;flex-wrap:wrap}
.task-mini-acts .btn{height:22px;font-size:8.5px;padding:0 7px}
@media (max-width:1100px){.studio-detail-body{grid-template-columns:minmax(0,1fr) 250px}}
@media (max-width:900px){.studio-detail-body{grid-template-columns:1fr}.studio-task-rail{position:static}.studio-task-rail-body{max-height:none}}
@media (max-width:1200px){.studio-detail-body{grid-template-columns:1fr}.studio-task-rail{position:static}.studio-task-rail-body{max-height:none}}
/* Free creation composer: multi-reference gallery + elevated input */
.free-composer{border-radius:18px!important;border:1px solid rgba(120,180,255,.28)!important;background:linear-gradient(180deg,rgba(120,180,255,.07),var(--o-panel-solid) 58%)!important;box-shadow:0 18px 50px rgba(6,14,28,.14),inset 0 1px 0 rgba(255,255,255,.35)!important;padding:14px 15px 12px!important}
.free-composer:focus-within{border-color:rgba(62,232,181,.55)!important;box-shadow:0 18px 55px rgba(6,14,28,.18),0 0 0 3px rgba(62,232,181,.08)!important}
.free-ref-strip{display:flex;align-items:stretch;gap:10px;flex-wrap:wrap;margin:0 0 12px;padding:0 0 12px;border-bottom:1px dashed rgba(120,180,255,.16)}
.free-ref-item{position:relative;width:84px;height:84px;border-radius:12px;overflow:hidden;border:1px solid rgba(120,180,255,.28);background:#0b1422;flex:none;box-shadow:0 6px 16px rgba(0,0,0,.14)}
.free-ref-item img{width:100%;height:100%;object-fit:cover;display:block}
.free-ref-noimg{display:flex;width:100%;height:100%;align-items:center;justify-content:center;font-size:22px;color:var(--o-muted)}
.free-ref-idx{position:absolute;left:5px;top:5px;padding:2px 5px;border-radius:4px;background:rgba(6,12,22,.68);color:#fff;font-size:7.5px;letter-spacing:.2px}
.free-ref-del{position:absolute;right:4px;top:4px;width:18px;height:18px;border-radius:50%;border:0;background:rgba(6,12,22,.7);color:#fff;font-size:9px;line-height:18px;cursor:pointer;padding:0}
.free-ref-del:hover{background:#e35d6a}
.free-ref-item small{position:absolute;left:0;right:0;bottom:0;padding:3px 4px;background:linear-gradient(transparent,rgba(6,12,22,.82));color:#fff;font-size:7px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.free-ref-add{width:84px;height:84px;border:1px dashed rgba(120,180,255,.36);border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:var(--o-muted);cursor:pointer;flex:none;background:rgba(120,180,255,.04)}
.free-ref-add:hover{border-color:var(--o-mint);color:var(--o-mint);background:rgba(62,232,181,.06)}
.free-ref-add span{font-size:18px;line-height:1}
.free-ref-add small{font-size:8px}
.free-ref-add input{display:none}
.free-prompt{min-height:90px!important;max-height:220px!important;font-size:13.5px!important;line-height:1.7!important;padding:2px 2px 8px!important;color:var(--o-ink)!important}
.free-tools{margin-top:10px!important;padding-top:10px!important;border-top-color:rgba(120,180,255,.16)!important}
.free-bar{margin-top:10px!important;gap:9px!important}
.free-hint{font-size:9px!important}
@media (max-width:760px){.free-ref-item,.free-ref-add{width:68px;height:68px}.free-composer{padding:11px!important}}
.free-ref-item,.free-ref-add{width:72px;height:72px}
.free-prompt{min-height:64px!important}
.free-composer{padding:12px 13px 10px!important}
.free-ref-strip{margin-bottom:9px;padding-bottom:9px}
.free-tools{margin-top:8px!important;padding-top:8px!important}
.free-bar{margin-top:8px!important}
.cal-cell.dragover{outline:2px dashed var(--o-mint);outline-offset:-3px;background:rgba(62,232,181,.06)}
.cal-item.draggable{cursor:grab}
.cal-item.draggable:active{cursor:grabbing}

/* v3 璁㈤槄甯冨眬浼樺寲锛氬椁愭洿绱у噾 路 鍔犺喘鐙珛鍗＄墖 路 璁㈠崟/浼樻儬鍒镐富娆″垎鏍?*/
.billing-plans-card .card-b{padding:16px}
.billing-plans-card .plan-grid{gap:14px}
.billing-plans-card .plan-card{padding:16px 16px 15px;gap:7px}
.billing-plans-card .plan-card .price{border:0;background:none;border-radius:0;padding:0;margin-top:4px;font-size:30px;line-height:1.08;letter-spacing:-.01em;color:#F4F8FF}
.billing-plans-card .plan-card .feats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 10px;font-size:11px;line-height:1.45}
.billing-plans-card .plan-card .btn{height:34px;margin-top:6px}
.billing-addons-card{margin-top:14px}
.billing-addons-card .card-b{padding:0 16px 16px}
.addon-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.addon-card{border:1px solid var(--o-line);border-radius:13px;padding:14px;background:rgba(255,255,255,.015);display:flex;flex-direction:column;gap:11px;min-width:0;transition:border-color .15s,background .15s}
.addon-card:hover{border-color:rgba(62,232,181,.32);background:rgba(62,232,181,.035)}
.addon-head{display:flex;align-items:flex-start;gap:10px;min-width:0}
.addon-ico{width:32px;height:32px;border-radius:9px;flex:none;display:flex;align-items:center;justify-content:center;background:rgba(62,232,181,.08);border:1px solid rgba(62,232,181,.18);color:var(--o-mint);font-size:15px}
.addon-title{min-width:0;flex:1}
.addon-title .nm{font-size:13px;font-weight:650;color:#DCE6F7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.addon-title .hint{font-size:10.5px;margin-top:2px;color:var(--o-dim)}
.addon-price{font-family:var(--mono);font-size:21px;font-weight:600;color:var(--o-mint);white-space:nowrap;line-height:1.1}
.addon-price small{font-size:10px;font-weight:400;color:var(--o-dim);margin-left:1px}
.addon-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:22px}
.addon-meta .hint{font-size:10.5px}
.addon-card .btn{margin-top:auto;height:32px}
.billing-lower{margin-top:14px;grid-template-columns:minmax(0,1.45fr) minmax(0,.55fr)}
.billing-orders-card .bill-order-tr{grid-template-columns:104px minmax(0,1fr) 72px 66px 92px 86px}
@media (max-width:1100px){
  .billing-lower{grid-template-columns:minmax(0,1fr)}
  .addon-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:760px){
  .addon-grid{grid-template-columns:minmax(0,1fr)}
  .billing-plans-card .plan-card .feats{grid-template-columns:minmax(0,1fr)}
}
.billing-plans-card .plan-card{padding:14px;gap:6px}
.billing-plans-card .plan-card .price{font-size:28px;margin-top:2px}
.billing-plans-card .plan-card .feats{font-size:10.5px;gap:5px 8px}
.billing-plans-card .plan-card .btn{height:32px;margin-top:5px}
.addon-card{padding:12px;gap:9px}
.addon-ico{width:28px;height:28px;border-radius:8px;font-size:14px}
.addon-price{font-size:19px}
.addon-meta{min-height:18px}
.addon-card .btn{height:30px}
@media (min-width:1181px){.billing-plans-card .plan-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:1180px){.billing-plans-card .plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.billing-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:1120px){.billing-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){.billing-kpis{grid-template-columns:minmax(0,1fr)}}
@media (min-width:1121px){.billing-plans-card .plan-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:1120px){.billing-plans-card .plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.billing-plans-card .plan-card .feats > div:nth-child(5){grid-column:1/-1}
html[data-theme="light"] .billing-plans-card .plan-card .price{color:#0F1B2D}
html[data-theme="light"] .addon-card{background:#F7FAFD}
html[data-theme="light"] .addon-title .nm{color:#12233B}
html[data-theme="light"] .addon-price{color:#0E8E6D}

/* v3 TikTok Shop 姒傝锛氬簵閾?/ 鍐呭脳鍟嗗搧 / 浣ｉ噾缁撶畻 */
.shop-kpis-v2{margin-bottom:14px}
.shop-overview-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:14px;align-items:start}
.shop-shops-body{padding:14px 16px 16px;overflow-x:auto}
.shop-shops-table{min-width:560px}
.shop-shops-table .tr{grid-template-columns:minmax(0,1.45fr) 46px 74px 66px 104px 68px;align-items:center}
.shop-shops-table .tr.hd{font-size:10px}
.shop-shops-table .tr:not(.hd){padding:12px 0;border-bottom:1px solid var(--o-line)}
.shop-shops-table .tr:last-child{border-bottom:0}
.shop-shops-table .tt{font-size:12.5px;color:var(--o-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.shop-note{margin-top:14px;border:1px solid rgba(62,232,181,.24);background:rgba(62,232,181,.055);border-radius:12px;padding:14px 16px}
.shop-note-h{font-size:15px;font-weight:650;color:#DCE6F7;margin-bottom:5px}
.shop-side{display:flex;flex-direction:column;gap:14px;min-width:0}
.shop-content-body{padding:12px 16px 14px}
.shop-content-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid var(--o-line)}
.shop-content-row:last-child{border-bottom:0;padding-bottom:2px}
.shop-content-main{min-width:0}
.shop-content-main .nm{font-size:12.5px;color:var(--o-ink);line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.shop-content-main .arrow{color:var(--o-dim);font-size:11px}
.shop-content-main .hint{font-size:10px;margin-top:3px}
.shop-content-row .pill{flex:none;font-size:10px}
.shop-commission-body{padding:10px 16px 14px}
.shop-commission-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid var(--o-line);font-size:12px;color:var(--o-muted)}
.shop-commission-row:last-child{border-bottom:0}
.shop-commission-row b{font-family:var(--mono);font-weight:600;color:var(--o-ink)}
.shop-commission-row.total{padding:11px 0;font-size:13px}
.shop-commission-row.total b{font-size:21px;color:var(--o-mint)}
.shop-analytics-grid{margin-top:14px}
.shop-order-kpis{margin-bottom:14px}
html[data-theme="light"] .shop-shops-table .tt,html[data-theme="light"] .shop-content-main .nm{color:#12233B}
html[data-theme="light"] .shop-note{background:#F2F9EE;border-color:#DDEBD6}
html[data-theme="light"] .shop-note-h{color:#1E3A22}
html[data-theme="light"] .shop-commission-row.total b{color:#0E8E6D}
@media (max-width:1100px){
  .shop-overview-grid{grid-template-columns:minmax(0,1fr)}
  .shop-side{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:760px){
  .shop-side{grid-template-columns:minmax(0,1fr)}
}
.shop-overview-grid{align-items:stretch}
.shop-shops-card{display:flex;flex-direction:column}
.shop-shops-table{min-width:0;width:100%}
.shop-shops-table .tr{grid-template-columns:minmax(0,1fr) 40px 58px 52px 88px 56px}
.shop-shops-table .tr > *{min-width:0}
.shop-orders-analytics{margin-top:0;margin-bottom:14px}

/* 鍐呭璇︽儏锛氬畬鏁翠俊鎭笌骞冲彴鍙樹綋 */
.content-detail-modal .modal-b{max-height:72vh;overflow:auto}
.content-detail-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}
.content-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 10px;margin-bottom:14px}
.content-detail-item{border:1px solid var(--o-line);border-radius:9px;padding:8px 10px;background:rgba(255,255,255,.015);min-width:0}
.content-detail-item span{display:block;font-size:10px;color:var(--o-dim);margin-bottom:3px}
.content-detail-item b{display:block;font-size:12px;font-weight:600;color:var(--o-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.content-detail-sec{margin-top:14px}
.content-detail-sec-h{display:flex;align-items:center;gap:8px;margin-bottom:7px;font-size:12px;font-weight:650;color:var(--o-ink)}
.content-detail-sec-h .hint{font-weight:400}
.content-detail-sec-h .btn{margin-left:auto}
.content-detail-text{white-space:pre-wrap;word-break:break-word;max-height:220px;overflow:auto;border:1px solid var(--o-line);border-radius:10px;background:rgba(255,255,255,.015);padding:12px 13px;font-size:12.5px;line-height:1.75;color:var(--o-ink)}
.content-variant-card{border:1px solid var(--o-line);border-radius:11px;padding:11px 12px;background:rgba(255,255,255,.015);margin-bottom:9px}
.content-variant-h{display:flex;align-items:center;gap:7px;margin-bottom:7px;font-size:12px;color:var(--o-ink)}
.content-variant-h .hint{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.content-variant-h .btn{margin-left:auto;flex:none}
.content-variant-text{white-space:pre-wrap;word-break:break-word;font-size:12px;line-height:1.7;color:var(--o-muted);max-height:150px;overflow:auto}
html[data-theme="light"] .content-detail-item,html[data-theme="light"] .content-detail-text,html[data-theme="light"] .content-variant-card{background:#F7FAFD}
@media (max-width:720px){.content-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* 鍙戝竷璁板綍锛氶瑙堝叆鍙ｄ笌鍙戝竷鍓嶉瑙?*/
.post-title-link{cursor:pointer;transition:color .15s}
.post-title-link:hover{color:var(--o-mint)}
.post-preview-modal .modal-b{max-height:72vh;overflow:auto}
.post-preview-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:18px;align-items:start}
.post-preview-phone{border:1px solid var(--o-line);border-radius:14px;padding:14px;background:rgba(255,255,255,.015);min-width:0}
.post-preview-head{display:flex;align-items:center;gap:9px;margin-bottom:11px}
.post-preview-user{min-width:0;flex:1;display:flex;flex-direction:column}
.post-preview-user b{font-size:12.5px;color:var(--o-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.post-preview-user span{font-size:10px;color:var(--o-dim)}
.post-preview-media{border-radius:10px;overflow:hidden;background:#050a12;margin-bottom:10px}
.post-preview-media img,.post-preview-media video{display:block;width:100%;max-height:300px;object-fit:cover}
.post-preview-text{white-space:pre-wrap;word-break:break-word;font-size:12.5px;line-height:1.75;color:var(--o-ink);border:1px solid var(--o-line);border-radius:10px;background:rgba(255,255,255,.012);padding:11px 12px;max-height:220px;overflow:auto}
.post-preview-empty{border:1px dashed var(--o-line);border-radius:10px;padding:22px;text-align:center;color:var(--o-dim);font-size:11px}
.post-preview-foot{display:flex;justify-content:space-between;gap:8px;margin-top:10px;color:var(--o-dim);font-size:10px}
.post-preview-side{border:1px solid var(--o-line);border-radius:12px;padding:12px;background:rgba(255,255,255,.012);min-width:0}
.post-preview-chips{display:flex;flex-wrap:wrap;gap:5px;margin:8px 0 11px}
.post-preview-side .kv{grid-template-columns:58px minmax(0,1fr);font-size:11px}
.post-preview-side .kv dt{font-size:10px}
.post-preview-side .kv dd{font-size:11px;overflow-wrap:anywhere}
.post-preview-note{margin-top:12px;padding:9px 10px;border-radius:9px;background:rgba(62,232,181,.06);border:1px solid rgba(62,232,181,.18);display:flex;flex-direction:column;gap:3px;font-size:10.5px;color:var(--o-muted)}
.post-preview-note b{color:var(--o-mint);font-size:11px}
html[data-theme="light"] .post-preview-phone,html[data-theme="light"] .post-preview-side,html[data-theme="light"] .post-preview-text{background:#F7FAFD}
@media (max-width:820px){
  .post-preview-layout{grid-template-columns:minmax(0,1fr)}
  .post-preview-phone{max-width:none}
}
.post-preview-layout{align-items:stretch}
.post-preview-phone{display:flex;flex-direction:column}
.post-preview-phone .post-preview-text{flex:1}

/* 鑷敱鍒涗綔锛氬浘鐗?/ 瑙嗛妯″紡 */
.free-mode-tabs{display:flex;align-items:center;gap:6px;margin:7px 0 8px}
.free-mode{border:1px solid var(--o-line);background:rgba(255,255,255,.015);color:var(--o-muted);border-radius:8px;height:30px;padding:0 11px;font-size:11px;display:inline-flex;align-items:center;gap:5px;cursor:pointer;transition:.15s}
.free-mode span{font-size:12px;line-height:1}
.free-mode:hover{border-color:rgba(62,232,181,.35);color:var(--o-ink)}
.free-mode.on{border-color:rgba(62,232,181,.5);background:rgba(62,232,181,.1);color:var(--o-mint)}
.free-mode-tabs .free-hint{margin-left:auto;font-size:10px}
.free-result video{display:block;width:100%;max-height:260px;border-radius:8px;background:#000;object-fit:contain}
html[data-theme="light"] .free-mode{background:#F7FAFD}
.free-result-grid.video{grid-template-columns:minmax(0,1fr)}
.free-result-grid.video .free-result{max-width:520px}
.post-preview-modal{width:min(1180px,96vw);max-width:none}
.post-preview-modal .modal-b{max-height:82vh;overflow:auto;padding:20px 24px}
.post-preview-layout{grid-template-columns:minmax(0,1fr) 300px;gap:24px;align-items:start}
.post-preview-phone{width:100%;margin:0 auto;padding:16px}
.post-preview-media{position:relative;width:100%;max-height:none;overflow:hidden}
.post-preview-media img,.post-preview-media video{position:absolute;inset:0;width:100%;height:100%;max-height:none;object-fit:cover}
.post-preview-text{max-height:none;overflow:visible;font-size:13px;line-height:1.8}
.post-preview-dim{margin-top:9px;padding:5px 8px;border-radius:6px;background:rgba(120,180,255,.06);color:var(--o-dim);font-size:10px;font-family:var(--mono);text-align:center}
html[data-theme="light"] .post-preview-dim{background:#EEF5FA}
@media (max-width:900px){
  .post-preview-modal{width:min(720px,96vw)}
  .post-preview-layout{grid-template-columns:minmax(0,1fr)}
  .post-preview-side{position:static}
}
.modal.post-preview-modal{width:min(1180px,96vw);max-width:none}
@media (max-width:900px){.modal.post-preview-modal{width:min(720px,96vw)}}

/* 鑷敱鍒涗綔锛氬钩鍙版瘮渚嬮€夋嫨鍣?& 缁撴灉淇℃伅 */
.free-ratio-btn{border:1px solid var(--o-line);background:rgba(255,255,255,.015);border-radius:8px;height:30px;padding:0 10px;display:inline-flex;align-items:center;gap:5px;cursor:pointer;color:var(--o-muted)}
.free-ratio-btn span{font-size:9px;letter-spacing:.1em;color:var(--o-dim);text-transform:uppercase}
.free-ratio-btn b{font-family:var(--mono);font-size:11px;color:var(--o-ink);font-weight:500}
.free-ratio-btn i{font-style:normal;font-size:9px;color:var(--o-dim)}
.free-ratio-btn:hover{border-color:rgba(62,232,181,.35)}
.ratio-picker-modal{width:min(760px,96vw)}
.ratio-tabs{display:flex;gap:4px;padding:0 22px;border-bottom:1px solid var(--o-line)}
.ratio-tabs button{border:0;border-bottom:2px solid transparent;background:none;color:var(--o-muted);height:38px;padding:0 16px;font-size:12px;cursor:pointer}
.ratio-tabs button.on{color:var(--o-ink);border-bottom-color:var(--o-mint)}
.ratio-picker-modal .modal-b{padding:16px 22px;max-height:62vh;overflow:auto}
.ratio-help{font-size:11px;color:var(--o-dim);margin-bottom:12px}
.ratio-table{display:flex;flex-direction:column}
.ratio-tr{display:grid;grid-template-columns:minmax(130px,1fr) 80px minmax(180px,1.2fr) 46px;align-items:center;gap:8px;min-height:48px;border-bottom:1px solid var(--o-line);font-size:12px}
.ratio-tr.hd{min-height:30px;font-size:10px;color:var(--o-dim);border-bottom:0;border-top:1px solid var(--o-line);margin-top:2px}
.ratio-platform{display:flex;align-items:center;gap:8px;min-width:0}
.ratio-platform b{font-size:12px;font-weight:600;color:var(--o-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ratio-type{color:var(--o-muted);font-size:11.5px}
.ratio-options{display:flex;flex-wrap:wrap;gap:5px}
.ratio-chip{border:1px solid var(--o-line);background:rgba(255,255,255,.015);color:var(--o-muted);border-radius:6px;height:25px;padding:0 9px;font-family:var(--mono);font-size:10.5px;cursor:pointer}
.ratio-chip:hover{border-color:rgba(62,232,181,.35);color:var(--o-ink)}
.ratio-chip.on{border-color:rgba(62,232,181,.55);background:rgba(62,232,181,.1);color:var(--o-mint)}
.ratio-add{width:26px;height:26px;border-radius:50%;border:1px solid var(--o-line);background:rgba(255,255,255,.02);color:var(--o-mint);font-size:15px;line-height:1;cursor:pointer;justify-self:end}
.ratio-add:hover{background:rgba(62,232,181,.1);border-color:rgba(62,232,181,.4)}
.ratio-fixed-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.ratio-fixed{border:1px solid var(--o-line);background:rgba(255,255,255,.015);border-radius:10px;padding:14px 10px;display:flex;flex-direction:column;align-items:center;gap:3px;cursor:pointer;color:var(--o-muted)}
.ratio-fixed b{font-family:var(--mono);font-size:15px;color:var(--o-ink)}
.ratio-fixed span{font-size:10px;color:var(--o-dim)}
.ratio-fixed.on{border-color:rgba(62,232,181,.55);background:rgba(62,232,181,.1)}
.ratio-fixed.on b{color:var(--o-mint)}
.free-result-meta{display:flex;flex-wrap:wrap;gap:5px;align-items:center;margin:2px 0 8px}
.free-result-meta .chip{border:1px solid var(--o-line);border-radius:5px;padding:2px 6px;font-size:9.5px;color:var(--o-muted);background:rgba(255,255,255,.012)}
.free-result-meta .chip.ok{border-color:rgba(62,232,181,.25);color:var(--o-mint);background:rgba(62,232,181,.06)}
html[data-theme="light"] .ratio-chip,html[data-theme="light"] .ratio-fixed,html[data-theme="light"] .free-ratio-btn,html[data-theme="light"] .free-result-meta .chip{background:#F7FAFD}
@media (max-width:700px){
  .ratio-tr{grid-template-columns:minmax(100px,1fr) 60px minmax(120px,1.2fr) 34px}
  .ratio-fixed-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
.free-result-grid.video .free-result{width:min(420px,100%);max-width:520px}
.post-preview-media{background:#0b1422}
.post-preview-media-error{border:1px dashed var(--o-line);border-radius:10px;min-height:200px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;background:rgba(255,255,255,.015);color:var(--o-dim);margin-bottom:10px;text-align:center;padding:20px}
.post-preview-media-error span{font-size:28px;line-height:1;color:var(--o-muted)}
.post-preview-media-error b{font-size:12px;color:var(--o-muted);font-weight:600}
.post-preview-media-error small{font-size:10px}
html[data-theme="light"] .post-preview-media-error{background:#F7FAFD}
.post-preview-media img{object-fit:contain}
.post-preview-media video{object-fit:cover}
html[data-theme="light"] .pick{color:#43566D}
html[data-theme="light"] .pick:hover{color:#0F1B2D}
html[data-theme="light"] .pick.on{border-color:rgba(14,174,132,.35);background:rgba(14,174,132,.1);color:#0B6B57}

/* 鑽夌绠?& AI 鍙樹綋娓呯┖ */
.draft-count{display:inline-flex;align-items:center;justify-content:center;min-width:17px;height:17px;padding:0 4px;margin-left:5px;border-radius:9px;background:rgba(62,232,181,.16);color:var(--o-mint);font-size:9px;font-family:var(--mono)}
.ai-h-right{display:flex;align-items:center;gap:10px}
.draft-modal{width:min(940px,96vw)}
.draft-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:16px;min-height:380px;max-height:62vh;overflow:hidden;padding:16px 20px}
.draft-list{display:flex;flex-direction:column;gap:6px;overflow:auto;border-right:1px solid var(--o-line);padding-right:12px}
.draft-search{width:100%;height:32px;margin-bottom:4px}
.draft-item{text-align:left;border:1px solid var(--o-line);background:rgba(255,255,255,.015);border-radius:8px;padding:9px 10px;display:flex;flex-direction:column;gap:3px;cursor:pointer;color:var(--o-muted)}
.draft-item b{font-size:11.5px;color:var(--o-ink);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.draft-item span{font-size:10px;color:var(--o-dim);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.5}
.draft-item small{font-family:var(--mono);font-size:8.5px;color:var(--o-dim)}
.draft-item.on{border-color:rgba(62,232,181,.45);background:rgba(62,232,181,.07)}
.draft-detail{display:flex;flex-direction:column;min-width:0;overflow:hidden}
.draft-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding-bottom:9px;border-bottom:1px solid var(--o-line)}
.draft-detail-head b{display:block;font-size:13px;color:var(--o-ink)}
.draft-detail-head small{display:block;margin-top:3px;font-family:var(--mono);font-size:9px;color:var(--o-dim)}
.draft-content{flex:1;overflow:auto;white-space:pre-wrap;font-size:12px;line-height:1.8;color:var(--o-ink);padding:12px 2px}
.draft-detail-foot{display:flex;justify-content:flex-end;padding-top:10px;border-top:1px solid var(--o-line)}
.draft-detail.empty{align-items:center;justify-content:center;color:var(--o-dim);font-size:11px;min-height:300px}
html[data-theme="light"] .draft-item{background:#F7FAFD}
html[data-theme="light"] .draft-count{background:rgba(14,174,132,.12);color:#0B6B57}
@media (max-width:760px){.draft-layout{grid-template-columns:1fr;max-height:70vh;overflow:auto}.draft-list{border-right:0;border-bottom:1px solid var(--o-line);padding-right:0;padding-bottom:10px;max-height:220px}.draft-detail{min-height:260px}}
.modal.draft-modal{width:min(940px,96vw);max-width:none}

/* 鑷姩鍖栭厤缃‘璁わ細姝ｅ紡淇℃伅灞曠ず */
.auto-review{margin-top:12px;border:1px solid var(--o-line);border-radius:10px;overflow:hidden;background:rgba(255,255,255,.015)}
.auto-review-row{display:grid;grid-template-columns:130px minmax(0,1fr);gap:12px;align-items:start;padding:9px 13px;border-bottom:1px solid var(--o-line);font-size:12px}
.auto-review-row:last-child{border-bottom:0}
.auto-review-row span{color:var(--o-dim);font-size:10.5px}
.auto-review-row b{color:var(--o-ink);font-weight:500;line-height:1.65;white-space:pre-wrap;word-break:break-word}
html[data-theme="light"] .auto-review{background:#F7FAFD}

/* 鑷姩鍖栫被鍨嬪崱锛氬浘鏍囦笌鏍囬 */
.type-card{position:relative;overflow:hidden}
.type-ico{width:36px;height:36px;border-radius:11px;display:inline-flex;align-items:center;justify-content:center;font-size:17px;color:#fff;flex:none;box-shadow:0 5px 14px rgba(0,0,0,.18);text-shadow:0 1px 2px rgba(0,0,0,.16)}
.type-card .nm{font-size:13px;font-weight:650;color:#DCE6F7;line-height:1.2}
.type-card .desc{color:var(--o-muted)}
html[data-theme="light"] .type-card{background:#fff;border-color:rgba(29,33,41,.11)}
html[data-theme="light"] .type-card .nm{color:#0F1B2D}
html[data-theme="light"] .type-card .desc{color:#58677A}

/* AI 绛栫暐浠ｇ悊锛氬父鐢?AI Agent 甯冨眬 */
.agent-shell{display:flex;flex-direction:column;height:calc(100vh - 258px);min-height:560px;max-height:820px;border:1px solid var(--o-line);border-radius:16px;overflow:hidden;background:rgba(10,17,28,.42);box-shadow:0 16px 44px rgba(0,0,0,.2)}
.agent-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 20px;border-bottom:1px solid var(--o-line);background:linear-gradient(180deg,rgba(62,232,181,.045),rgba(0,0,0,0))}
.agent-identity{display:flex;align-items:center;gap:11px;min-width:0}
.agent-logo{width:42px;height:42px;border-radius:13px;display:inline-flex;align-items:center;justify-content:center;font-size:20px;color:#06121A;flex:none;background:linear-gradient(135deg,#3E7BFA,#7EE7C7);box-shadow:0 0 0 1px rgba(255,255,255,.12),0 8px 22px rgba(62,232,181,.18)}
.agent-title{min-width:0}
.agent-title h3{font-size:15px;line-height:1.2;color:var(--o-ink);font-weight:650;margin:0}
.agent-title p{font-size:10.5px;color:var(--o-dim);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.agent-online{display:inline-flex;align-items:center;gap:5px;font-size:9px;color:var(--o-mint);border:1px solid rgba(62,232,181,.2);border-radius:20px;padding:3px 8px;margin-left:3px;flex:none}
.agent-online i{width:5px;height:5px;border-radius:50%;background:var(--o-mint);box-shadow:0 0 7px var(--o-mint)}
.agent-wallet{display:flex;flex-direction:column;align-items:flex-end;gap:1px;padding:7px 13px;border-radius:11px;border:1px solid rgba(62,232,181,.2);background:rgba(62,232,181,.055);flex:none}
.agent-wallet span{font-size:9px;color:var(--o-dim);letter-spacing:.05em}
.agent-wallet b{font-family:var(--mono);font-size:20px;line-height:1.15;color:var(--o-mint)}
.agent-wallet small{font-size:8.5px;color:var(--o-dim);font-family:var(--mono)}
.agent-chat{flex:1;overflow:auto;display:flex;flex-direction:column;gap:16px;padding:20px 22px;background:linear-gradient(180deg,rgba(255,255,255,.008),rgba(0,0,0,0))}
.agent-msg{display:flex;align-items:flex-start;gap:9px;max-width:90%}
.agent-msg.agent{align-self:flex-start}
.agent-msg.user{align-self:flex-end;flex-direction:row-reverse}
.agent-msg-body{min-width:0;display:flex;flex-direction:column;gap:4px}
.agent-msg.user .agent-msg-body{align-items:flex-end}
.agent-ava{width:30px;height:30px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;font-size:14px;flex:none;background:linear-gradient(135deg,#3E7BFA,#7EE7C7);color:#06121A;box-shadow:0 0 0 1px rgba(255,255,255,.1)}
.agent-ava.user{background:rgba(120,180,255,.12);color:var(--o-muted);font-size:10px;font-family:var(--mono);box-shadow:none}
.agent-msg-meta{display:flex;align-items:center;gap:7px;font-size:9px;color:var(--o-dim)}
.agent-msg-meta b{font-size:9.5px;color:var(--o-muted);font-weight:600}
.agent-bubble{border:1px solid rgba(120,180,255,.1);background:rgba(120,180,255,.055);border-radius:4px 13px 13px 13px;padding:11px 14px;font-size:12.5px;line-height:1.75;color:var(--o-ink);word-break:break-word}
.agent-bubble.user{border-color:rgba(62,232,181,.14);background:rgba(62,232,181,.09);border-radius:13px 4px 13px 13px}
.agent-bubble .md-h{font-size:13px;font-weight:700;color:var(--o-ink);margin:11px 0 4px}
.agent-bubble .md-h:first-child{margin-top:0}
.agent-bubble .md-p{margin:0 0 8px}
.agent-bubble .md-p:last-child{margin-bottom:0}
.agent-bubble .md-li{margin:2px 0;padding-left:2px;color:var(--o-muted)}
.agent-bubble .md-li strong{color:var(--o-ink)}
.agent-bubble code{font-family:var(--mono);font-size:10.5px;color:var(--o-mint);background:rgba(62,232,181,.08);border-radius:4px;padding:1px 4px}
.agent-bubble .md-gap{height:7px}
.md-table-wrap{overflow:auto;margin:7px 0;border:1px solid var(--o-line);border-radius:7px}
.md-table{border-collapse:collapse;width:100%;font-size:10.5px;min-width:360px}
.md-table th,.md-table td{padding:5px 7px;border-bottom:1px solid var(--o-line);text-align:left;white-space:nowrap;color:var(--o-muted)}
.md-table th{background:rgba(120,180,255,.07);color:var(--o-ink);font-weight:600}
.md-table tr:last-child td{border-bottom:0}
.agent-thinking{display:inline-flex;align-items:center;gap:4px}
.agent-thinking i{width:5px;height:5px;border-radius:50%;background:var(--o-mint);animation:agentDot 1.1s infinite ease-in-out}
.agent-thinking i:nth-child(2){animation-delay:.16s}.agent-thinking i:nth-child(3){animation-delay:.32s}
.agent-thinking span{margin-left:4px;font-size:10px;color:var(--o-dim)}
@keyframes agentDot{0%,70%,100%{opacity:.25;transform:translateY(0)}35%{opacity:1;transform:translateY(-3px)}}
.agent-cost-line{display:flex;align-items:center;gap:14px;padding:7px 20px;font-size:10px;color:var(--o-muted);border-top:1px solid rgba(62,232,181,.12);background:rgba(62,232,181,.035)}
.agent-cost-line b{color:var(--o-mint);font-family:var(--mono);font-size:11px}
.agent-composer{border-top:1px solid var(--o-line);padding:11px 16px 12px;background:rgba(0,0,0,.08)}
.agent-quick{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:9px}
.agent-quick button{border:1px solid rgba(120,180,255,.13);background:rgba(255,255,255,.012);color:var(--o-muted);border-radius:20px;font-size:10px;padding:4px 9px;cursor:pointer;transition:.14s}
.agent-quick button:hover{color:var(--o-ink);border-color:rgba(62,232,181,.4);background:rgba(62,232,181,.06)}
.agent-input-row{display:flex;gap:8px;align-items:center}
.agent-input-row .inp{flex:1;height:38px;border-radius:9px;background:rgba(0,0,0,.14)}
.agent-input-row .btn{height:38px;padding:0 18px;flex:none}
.agent-disclaimer{font-size:9px;color:var(--o-dim);margin-top:6px;text-align:right}
html[data-theme="light"] .agent-shell{background:#fff;box-shadow:0 10px 30px rgba(20,40,70,.08)}
html[data-theme="light"] .agent-head{background:linear-gradient(180deg,#F4F9FF,#fff)}
html[data-theme="light"] .agent-chat{background:#FBFDFF}
html[data-theme="light"] .agent-bubble{background:#F2F6FB;border-color:rgba(29,33,41,.08)}
html[data-theme="light"] .agent-bubble.user{background:rgba(14,174,132,.09);border-color:rgba(14,174,132,.16)}
html[data-theme="light"] .agent-input-row .inp{background:#fff}
html[data-theme="light"] .agent-quick button{background:#fff;border-color:rgba(29,33,41,.12)}
html[data-theme="light"] .agent-wallet{background:#EAF8F3;border-color:rgba(14,174,132,.22)}
html[data-theme="light"] .agent-wallet b{color:#0B6B57}
@media (max-width:900px){.agent-head{align-items:flex-start}.agent-title p{white-space:normal}.agent-shell{height:calc(100vh - 230px)}.agent-msg{max-width:96%}}
.agent-msg{max-width:min(820px,92%)}
.agent-msg.user{max-width:min(680px,82%)}
.steps .step.on{color:var(--o-ink)}

/* 鑷姩鍖栨祴璇曠粨鏋?*/
.test-result{margin-top:14px;border:1px solid var(--o-line);border-radius:10px;padding:13px 14px;background:rgba(120,180,255,.04)}
.test-result.hit{border-color:rgba(62,232,181,.3);background:rgba(62,232,181,.055)}
.test-result.miss{border-color:rgba(242,154,56,.28);background:rgba(242,154,56,.055)}
.test-result-head{display:flex;align-items:center;gap:10px;justify-content:space-between;padding-bottom:9px;border-bottom:1px solid var(--o-line)}
.test-badge{display:inline-flex;align-items:center;gap:5px;font-size:10px;font-weight:600;border-radius:20px;padding:3px 9px;color:var(--o-mint);background:rgba(62,232,181,.12)}
.test-result.miss .test-badge{color:var(--o-amber);background:rgba(242,154,56,.12)}
.test-cost{font-size:10.5px;color:var(--o-muted)}.test-cost b{font-family:var(--mono);font-size:13px;color:var(--o-ink);margin:0 2px}
.test-block{margin-top:10px}.test-label{display:block;font-size:9.5px;color:var(--o-dim);margin-bottom:5px}
.test-reasons{margin:0;padding-left:16px;color:var(--o-muted);font-size:11px;line-height:1.75}
.test-preview-text{white-space:pre-wrap;border:1px solid var(--o-line);border-radius:7px;background:rgba(0,0,0,.12);padding:9px 10px;color:var(--o-ink);font-size:11.5px;line-height:1.7;word-break:break-word}
html[data-theme="light"] .test-result{background:#F7FAFD}
html[data-theme="light"] .test-result.hit{background:#EFFBF7;border-color:rgba(14,174,132,.2)}
html[data-theme="light"] .test-result.miss{background:#FFF8EE;border-color:rgba(220,130,20,.2)}
html[data-theme="light"] .test-badge{color:#0B6B57}
html[data-theme="light"] .test-preview-text{background:#fff}

/* 娴峰閫氱煡璁剧疆 */
.notify-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:14px 16px;border:1px solid rgba(62,232,181,.18);background:rgba(62,232,181,.04);border-radius:10px;margin-bottom:14px}
.notify-intro b{display:block;font-size:12.5px;color:var(--o-ink);margin-bottom:4px}
.notify-intro p{font-size:10.5px;line-height:1.7;color:var(--o-muted);max-width:600px}
.notify-flow{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end;font-size:9.5px;color:var(--o-dim);font-family:var(--mono);flex:none;max-width:360px}
.notify-flow span{padding:4px 7px;border:1px solid var(--o-line);border-radius:5px}
.notify-flow i{color:var(--o-mint);font-style:normal}
.notify-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:10px}
.notify-card{border:1px solid var(--o-line);border-radius:10px;background:rgba(255,255,255,.015);padding:12px 13px;display:flex;flex-direction:column;gap:8px}
.notify-card-head{display:flex;align-items:center;gap:9px}
.notify-ico{width:30px;height:30px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:12px;font-weight:700;color:#fff;background:var(--o-grad);flex:none}
.notify-ico.slack{background:linear-gradient(135deg,#611f69,#36C5F0)}
.notify-ico.discord{background:linear-gradient(135deg,#5865F2,#8ea1e1)}
.notify-ico.teams{background:linear-gradient(135deg,#4B53BC,#7B83EB)}
.notify-ico.telegram{background:linear-gradient(135deg,#229ED9,#7FD8F5)}
.notify-ico.webhook{background:linear-gradient(135deg,#0EAF84,#67E8C7);color:#06121A}
.notify-name{min-width:0;flex:1;display:flex;flex-direction:column;gap:1px}
.notify-name b{font-size:12px;color:var(--o-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.notify-name small{font-size:9px;color:var(--o-dim);font-family:var(--mono)}
.notify-endpoint{font-size:9px;color:var(--o-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:5px 7px;border-radius:5px;background:rgba(0,0,0,.12)}
.notify-foot{display:flex;gap:5px;justify-content:flex-end;margin-top:2px}
.notify-log{border:1px solid var(--o-line);border-radius:8px;overflow:hidden}
.notify-log-row{display:grid;grid-template-columns:140px 100px minmax(120px,1fr) 70px minmax(120px,1.2fr);gap:8px;padding:8px 10px;font-size:10px;color:var(--o-muted);border-bottom:1px solid var(--o-line);align-items:center}
.notify-log-row:last-child{border-bottom:0}
.notify-log-row.hd{font-size:9px;color:var(--o-dim);background:rgba(255,255,255,.02)}
.notify-err{color:var(--o-rose);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html[data-theme="light"] .notify-card{background:#fff}
html[data-theme="light"] .notify-endpoint{background:#F2F6FB}
html[data-theme="light"] .notify-log-row.hd{background:#F7FAFD}
@media(max-width:900px){.notify-intro{flex-direction:column}.notify-flow{justify-content:flex-start}.notify-log-row{grid-template-columns:100px 80px minmax(100px,1fr) 60px minmax(100px,1fr)}}

/* 缁熶竴浠诲姟涓績 */
.jobs-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;margin-bottom:12px}
.jobs-stat{position:relative;border:1px solid var(--o-line);border-radius:9px;background:rgba(255,255,255,.015);padding:11px 12px;overflow:hidden}
.jobs-stat-k{display:block;font-size:9.5px;color:var(--o-dim);letter-spacing:.04em}
.jobs-stat b{display:block;font-family:var(--o-display);font-size:23px;font-weight:600;color:var(--o-ink);margin-top:3px;line-height:1}
.jobs-stat i{position:absolute;right:9px;top:9px;font-style:normal;font-size:11px;color:var(--o-mint);opacity:.7}
.jobs-filter{height:28px;padding:2px 8px;font-size:10px;min-width:120px}
.jobs-tabs{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:10px}
.jobs-tab{border:1px solid var(--o-line);background:transparent;color:var(--o-muted);border-radius:6px;padding:5px 9px;font-size:10px;cursor:pointer}
.jobs-tab em{font-style:normal;color:var(--o-dim);margin-left:3px;font-family:var(--mono);font-size:9px}
.jobs-tab.on{color:var(--o-mint);border-color:rgba(62,232,181,.38);background:rgba(62,232,181,.07)}
.jobs-table{border:1px solid var(--o-line);border-radius:8px;overflow:hidden}
.jobs-row{display:grid;grid-template-columns:minmax(210px,2fr) 78px 76px minmax(110px,1fr) 110px 116px;gap:9px;align-items:center;padding:9px 11px;border-bottom:1px solid var(--o-line);font-size:10.5px;color:var(--o-muted);cursor:pointer}
.jobs-row:last-child{border-bottom:0}
.jobs-row:hover{background:rgba(62,232,181,.035)}
.jobs-row.jobs-hd{font-size:9px;color:var(--o-dim);background:rgba(255,255,255,.02);cursor:default}
.jobs-name{display:flex;align-items:center;gap:8px;min-width:0}
.jobs-name b{display:block;font-size:11px;color:var(--o-ink);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:300px}
.jobs-name small{display:block;font-size:9px;color:var(--o-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:300px;margin-top:2px}
.jobs-ico{width:25px;height:25px;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;flex:none;font-size:10px;color:var(--o-mint);background:rgba(62,232,181,.08);border:1px solid rgba(62,232,181,.18)}
.jobs-ico.video{color:#8B7BFF;background:rgba(139,123,255,.1);border-color:rgba(139,123,255,.25)}
.jobs-ico.approval{color:#F5B84B;background:rgba(245,184,75,.1);border-color:rgba(245,184,75,.22)}
.jobs-ico.schedule{color:#5EA8FF;background:rgba(94,168,255,.1);border-color:rgba(94,168,255,.22)}
.jobs-type{font-size:10px;color:var(--o-muted)}
.jobs-progress{display:flex;align-items:center;gap:7px}
.jobs-progress>div{flex:1;height:4px;border-radius:4px;background:rgba(255,255,255,.08);overflow:hidden}
.jobs-progress i{display:block;height:100%;border-radius:4px;background:var(--o-grad)}
.jobs-progress em{font-style:normal;font-family:var(--mono);font-size:9px;color:var(--o-dim);min-width:30px;text-align:right}
.jobs-time{font-family:var(--mono);font-size:9px;color:var(--o-dim)}
html[data-theme="light"] .jobs-stat,html[data-theme="light"] .jobs-table{background:#fff}
@media(max-width:1100px){.jobs-stats{grid-template-columns:repeat(3,1fr)}.jobs-row{grid-template-columns:minmax(180px,2fr) 70px 70px minmax(90px,1fr)}.jobs-time{display:none}}

/* 璐﹀彿鍋ュ悍涓績 */
.health-stats{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin-bottom:12px}
.health-stat{position:relative;border:1px solid var(--o-line);border-radius:9px;background:rgba(255,255,255,.015);padding:10px 11px;overflow:hidden}
.health-stat-k{display:block;font-size:9px;color:var(--o-dim);letter-spacing:.04em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.health-stat b{display:block;font-family:var(--o-display);font-size:22px;font-weight:600;color:var(--o-ink);margin-top:3px;line-height:1}
.health-dot{position:absolute;right:10px;top:11px;width:7px;height:7px;border-radius:50%;background:var(--o-dim)}
.health-dot.ok{background:var(--o-mint)}.health-dot.warn{background:#F5B84B}.health-dot.err{background:var(--o-rose)}.health-dot.info{background:#5EA8FF}.health-dot.neutral{background:var(--o-dim)}
.health-filter{height:28px;padding:2px 8px;font-size:10px;min-width:112px;margin-left:6px}
.health-list{border:1px solid var(--o-line);border-radius:9px;overflow:hidden}
.health-row{display:grid;grid-template-columns:minmax(250px,1.25fr) minmax(260px,1.5fr) minmax(210px,1fr);gap:12px;align-items:center;padding:12px;border-bottom:1px solid var(--o-line)}
.health-row:last-child{border-bottom:0}
.health-row:hover{background:rgba(62,232,181,.025)}
.health-main{display:flex;align-items:center;gap:11px;min-width:0}
.health-score{width:55px;height:55px;border-radius:50%;border:2px solid var(--o-line);display:flex;flex-direction:column;align-items:center;justify-content:center;flex:none}
.health-score b{font-family:var(--o-display);font-size:18px;line-height:1;color:var(--o-ink)}
.health-score small{font-size:7.5px;color:var(--o-dim);margin-top:2px;letter-spacing:.05em}
.health-score.healthy{border-color:rgba(62,232,181,.55);box-shadow:inset 0 0 14px rgba(62,232,181,.08)}
.health-score.warning{border-color:rgba(245,184,75,.55);box-shadow:inset 0 0 14px rgba(245,184,75,.08)}
.health-score.critical{border-color:rgba(255,99,132,.55);box-shadow:inset 0 0 14px rgba(255,99,132,.08)}
.health-ident{min-width:0}
.health-name{display:flex;align-items:center;gap:6px;min-width:0}
.health-name b{font-size:11.5px;color:var(--o-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.health-meta{display:flex;gap:8px;flex-wrap:wrap;font-size:9px;color:var(--o-dim);margin-top:4px;font-family:var(--mono)}
.health-factors{display:flex;gap:4px;flex-wrap:wrap}
.health-factor{font-size:9px;color:#F5B84B;border:1px solid rgba(245,184,75,.22);background:rgba(245,184,75,.06);border-radius:4px;padding:3px 6px;white-space:nowrap}
.health-ok{font-size:9.5px;color:var(--o-mint)}
.health-side{display:flex;flex-direction:column;gap:4px}
.health-kv{display:flex;justify-content:space-between;gap:8px;font-size:9px;color:var(--o-dim)}
.health-kv b{font-size:9px;color:var(--o-muted);font-weight:400;text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html[data-theme="light"] .health-stat,html[data-theme="light"] .health-list{background:#fff}
@media(max-width:1200px){.health-stats{grid-template-columns:repeat(3,1fr)}.health-row{grid-template-columns:minmax(220px,1.2fr) minmax(220px,1.5fr)}.health-side{display:none}}

/* 骞冲彴杩炴帴鍣?*/
.conn-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:8px}
.conn-card{border:1px solid var(--o-line);border-radius:8px;background:rgba(255,255,255,.012);padding:9px 10px;display:flex;flex-direction:column;gap:6px}
.conn-head{display:flex;align-items:center;justify-content:space-between;gap:6px}
.conn-head b{font-size:11px;color:var(--o-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.conn-meta{display:flex;gap:7px;flex-wrap:wrap;font-size:8.5px;color:var(--o-dim)}
.conn-caps{display:flex;gap:3px;flex-wrap:wrap}
.conn-caps span{font-size:8.5px;color:var(--o-mint);border:1px solid rgba(62,232,181,.18);background:rgba(62,232,181,.05);border-radius:4px;padding:2px 5px;white-space:nowrap}
html[data-theme="light"] .conn-card{background:#fff}

/* 鍘熷鐣欏瓨涓庡叧閿瘝閲囬泦 */
.ret-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-bottom:12px}
.ret-stat{border:1px solid var(--o-line);border-radius:9px;background:rgba(255,255,255,.015);padding:11px 12px}
.ret-stat span{display:block;font-size:9.5px;color:var(--o-dim)}
.ret-stat b{display:block;font-family:var(--o-display);font-size:22px;color:var(--o-ink);margin-top:3px;line-height:1}
.ret-filter{height:28px;padding:2px 8px;font-size:10px;min-width:130px;margin-left:6px}
.ret-list{border:1px solid var(--o-line);border-radius:8px;overflow:hidden}
.ret-row{display:grid;grid-template-columns:minmax(150px,1fr) minmax(220px,2fr) 115px 80px minmax(150px,auto);gap:9px;align-items:center;padding:9px 10px;border-bottom:1px solid var(--o-line);font-size:10px;color:var(--o-muted)}
.ret-row:last-child{border-bottom:0}
.ret-row.ret-hd{font-size:9px;color:var(--o-dim);background:rgba(255,255,255,.02)}
.ret-row b{display:block;font-size:10.5px;color:var(--o-ink)}
.ret-row small{display:block;font-size:8.5px;color:var(--o-dim);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:260px}
.ret-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--o-muted)}
.ret-acts{display:flex;gap:4px;justify-content:flex-end}
.ret-job-form{display:grid;grid-template-columns:2fr 1.4fr auto;gap:8px;align-items:end;margin-bottom:10px}
.ret-jobs{border-top:1px solid var(--o-line);padding-top:8px}
.ret-job{display:grid;grid-template-columns:minmax(200px,2fr) 80px 90px 120px;gap:8px;align-items:center;padding:6px 2px;font-size:9.5px;color:var(--o-muted);border-bottom:1px solid rgba(255,255,255,.04)}
.ret-job:last-child{border-bottom:0}
.ret-job b{display:block;font-size:10px;color:var(--o-ink)}
.ret-job small{display:block;font-size:8.5px;color:var(--o-dim)}
html[data-theme="light"] .ret-stat,html[data-theme="light"] .ret-list{background:#fff}
@media(max-width:1100px){.ret-stats{grid-template-columns:repeat(2,1fr)}.ret-row{grid-template-columns:minmax(130px,1fr) minmax(180px,2fr) 95px 70px}.ret-acts{display:none}.ret-job-form{grid-template-columns:1fr 1fr}.ret-job{grid-template-columns:minmax(160px,2fr) 70px 70px}}

.jobs-acts{display:flex;gap:4px;justify-content:flex-end}
.jobs-acts button{white-space:nowrap}
@media(max-width:1100px){.jobs-row{grid-template-columns:minmax(170px,2fr) 65px 65px minmax(80px,1fr) 100px}.jobs-acts{display:none}}


/* 采集域名白名单 */
.ret-source-form{display:grid;grid-template-columns:160px minmax(220px,1fr) auto;gap:8px;align-items:end;margin-bottom:8px}
.ret-sources{display:flex;gap:5px;flex-wrap:wrap}
.ret-source{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--o-line);border-radius:5px;padding:4px 7px;font-size:9px;color:var(--o-muted);background:rgba(255,255,255,.02)}
.ret-source b{color:var(--o-mint);font-weight:500}
.ret-src-x{border:0;background:transparent;color:var(--o-dim);cursor:pointer;font-size:9px;padding:0 0 0 3px}
.ret-src-x:hover{color:var(--o-rose)}
@media(max-width:900px){.ret-source-form{grid-template-columns:1fr 1fr}}

/* 留存周期 */
.ret-policy-form{display:flex;align-items:end;gap:10px;flex-wrap:wrap;margin-bottom:8px}
.ret-policy-form .field{min-width:120px}
.ret-check{display:flex;align-items:center;gap:5px;font-size:10px;color:var(--o-muted);padding-bottom:9px;cursor:pointer}
.ret-check input{accent-color:var(--o-mint)}

.retention-page .card-h>div:first-child{display:flex;align-items:baseline;gap:8px;white-space:nowrap}
.retention-page .card-h .t,.retention-page .card-h .m{white-space:nowrap}


/* Overview: red-box typography +1px */
.nx-overview .nx-kicker{font-size:9.5px}
.nx-overview .nx-banner h2{font-size:clamp(20px,1.9vw,25px)}
.nx-overview .nx-banner p{font-size:11px}
.nx-overview .nx-link{font-size:10.5px}
.nx-overview .nx-orbit{font-size:8.5px}
.nx-overview .nx-core small{font-size:8px}
.nx-overview .nx-stat-top{font-size:10px}
.nx-overview .nx-stat strong{font-size:23px}
.nx-overview .nx-stat strong small{font-size:10px}
.nx-overview .nx-stat>small{font-size:9.5px}
.nx-overview .nx-panel-head h3{font-size:13.5px}
.nx-overview .nx-panel-head p{font-size:9.5px}
.nx-overview .nx-panel-link{font-size:10.5px}
.nx-overview .nx-axis span{font-size:8px}
.nx-overview .nx-legend{font-size:9.5px}
.nx-overview .nx-ring strong{font-size:23px}
.nx-overview .nx-ring strong small{font-size:12px}
.nx-overview .nx-ring-note{font-size:9.5px}
.nx-overview .nx-kv>div{font-size:10px}
.nx-overview .nx-activity b{font-size:11px}
.nx-overview .nx-activity small{font-size:9px}
.nx-overview .nx-activity .t{font-size:9px}
.nx-overview .nx-quick b{font-size:9.5px}
.nx-overview .nx-callout span{font-size:8px}
.nx-overview .nx-callout h3{font-size:11px}
.nx-overview .nx-callout p{font-size:9px}

/* ===== 订阅加购弹窗 ===== */
.addons-modal{max-width:760px}
.addons-list{display:flex;flex-direction:column;gap:10px}
.addons-row{display:grid;grid-template-columns:36px minmax(0,1fr) 78px 128px 112px;gap:12px;align-items:center;padding:12px 14px;border:1px solid var(--o-line);border-radius:12px;background:rgba(255,255,255,.02)}
.addons-row .addon-ico{width:34px;height:34px;border-radius:9px;display:flex;align-items:center;justify-content:center;background:rgba(62,232,181,.09);color:var(--o-mint);font-size:17px}
.addons-info .nm{font-size:13px;font-weight:700;color:var(--o-ink)}
.addons-info .hint{font-size:10.5px;color:var(--o-dim);margin-top:2px}
.addons-price{font-family:var(--mono);font-size:20px;color:var(--o-mint);white-space:nowrap;text-align:right}
.addons-price small{font-size:10px;color:var(--o-dim);margin-left:2px}
.addons-qty{display:flex;align-items:center;gap:4px}
.qbtn{width:26px;height:26px;border:1px solid var(--o-line);border-radius:7px;background:rgba(255,255,255,.03);color:var(--o-muted);cursor:pointer;font-size:14px;line-height:1}
.qbtn:hover{color:var(--o-ink);border-color:var(--o-line-strong)}
.qty-inp{width:46px;height:26px;text-align:center;padding:0 4px;font-size:12px}
.addons-row .btn{height:30px;white-space:nowrap}
html[data-theme="light"] .addons-row{background:#F7FAFD;border-color:#DCE6F2}
html[data-theme="light"] .addons-info .nm{color:#12233B}

/* ===== 购买积分弹窗（SocialEcho 式） ===== */
.pp-modal{max-width:720px}
.pp-sec-title{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:var(--o-ink);margin-bottom:9px}
.pp-sec-title span{color:var(--o-mint)}
.pp-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.pp-pack{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:12px 13px;border:1px solid var(--o-line);border-radius:10px;background:rgba(255,255,255,.02);cursor:pointer;text-align:left;transition:.15s;min-height:72px}
.pp-pack:hover{border-color:var(--o-line-strong)}
.pp-pack.on{border-color:rgba(62,232,181,.55);background:rgba(62,232,181,.08);box-shadow:0 0 0 1px rgba(62,232,181,.14) inset}
.pp-pack b{font-family:var(--mono);font-size:18px;color:var(--o-ink);font-weight:600}
.pp-pack small{font-size:11px;color:var(--o-muted)}
.pp-pack .pp-bonus{position:absolute;right:8px;top:8px;padding:2px 5px;border-radius:4px;background:rgba(62,232,181,.16);color:var(--o-mint);font-size:9px;font-style:normal;font-weight:700}
.pp-custom{border-style:dashed;align-items:center;justify-content:center}
.pp-custom b{font-size:12px}
.pp-quote{margin-top:14px;padding:14px 16px;border:1px solid rgba(62,232,181,.24);border-radius:12px;background:linear-gradient(135deg,rgba(62,232,181,.09),rgba(47,107,255,.06))}
.pp-quote-head{font-size:10px;letter-spacing:.12em;color:var(--o-muted);text-transform:uppercase}
.pp-quote-main{display:flex;align-items:baseline;gap:6px;margin-top:4px}
.pp-quote-main b{font-family:var(--mono);font-size:28px;color:var(--o-ink);font-weight:700;letter-spacing:-.5px}
.pp-quote-main span{font-size:11px;color:var(--o-muted)}
.pp-lines{display:flex;flex-direction:column;gap:5px;margin-top:8px;border-top:1px dashed var(--o-line);padding-top:8px}
.pp-lines>div{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:var(--o-muted)}
.pp-lines b{font-family:var(--mono);font-size:12px;color:var(--o-ink)}
.pp-lines b.plus{color:var(--o-mint)}
.pp-methods{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.pp-method{display:flex;align-items:center;justify-content:center;gap:6px;height:42px;border:1px solid var(--o-line);border-radius:9px;background:rgba(255,255,255,.02);color:var(--o-muted);cursor:pointer;font-size:11px}
.pp-method i{font-style:normal;font-size:12px;color:var(--o-dim)}
.pp-method.on{border-color:rgba(47,107,255,.55);background:rgba(47,107,255,.08);color:var(--o-ink)}
.pp-method.on i{color:var(--o-blue)}
.pp-pay-state .success-box{margin-top:0}
.pp-done{text-align:center;padding:18px 0 10px}
.pp-done-ico{width:52px;height:52px;border-radius:50%;margin:0 auto 10px;display:flex;align-items:center;justify-content:center;background:rgba(62,232,181,.14);color:var(--o-mint);font-size:26px}
.pp-done h3{font-size:17px;color:var(--o-ink)}
.pp-done p{font-size:12px;color:var(--o-muted);margin-top:4px}
html[data-theme="light"] .pp-pack{background:#F7FAFD;border-color:#DCE6F2}
html[data-theme="light"] .pp-pack.on{background:#ECFBF6;border-color:#7EDFC7}
html[data-theme="light"] .pp-pack b{color:#12233B}
html[data-theme="light"] .pp-quote{background:linear-gradient(135deg,#ECFBF6,#F2F7FF);border-color:#BFEEDF}
html[data-theme="light"] .pp-quote-main b,html[data-theme="light"] .pp-lines b{color:#12233B}
html[data-theme="light"] .pp-method{background:#F7FAFD;border-color:#DCE6F2}
html[data-theme="light"] .pp-method.on{background:#EDF4FF;border-color:#8FB4FF;color:#12233B}
@media(max-width:860px){.pp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pp-methods{grid-template-columns:repeat(2,minmax(0,1fr))}.addons-row{grid-template-columns:32px minmax(0,1fr) 70px 110px;row-gap:8px}.addons-row .btn{grid-column:2/-1;justify-self:end}}

/* ===== 合并页：分析 / 订阅 ===== */
.billing-tabs{margin-top:-2px}
.page.embedded,.retention-page.embedded,.pts-page.embedded{gap:12px}
.pts-page.embedded .page-head,.retention-page.embedded .page-head{display:none}
.pts-page.embedded{padding-top:0}
.retention-page.embedded{padding-top:0}
.analytics-page .tabs{flex-wrap:wrap}

/* ===== SocialEcho 风格数据卡 ===== */
.kpi,.nx-stat,.ret-stat{position:relative;overflow:hidden;background:linear-gradient(145deg,rgba(47,107,255,.09),rgba(15,23,38,.82) 55%,rgba(62,232,181,.055));border-color:rgba(120,180,255,.2)}
.kpi::after,.nx-stat::after,.ret-stat::after{content:"";position:absolute;right:-26px;top:-34px;width:92px;height:92px;border-radius:50%;background:radial-gradient(circle,rgba(62,232,181,.16),transparent 68%);pointer-events:none}
.kpi.info{background:linear-gradient(145deg,rgba(47,107,255,.16),rgba(15,23,38,.84) 60%)}
.kpi.violet{background:linear-gradient(145deg,rgba(139,92,246,.16),rgba(15,23,38,.84) 60%)}
.kpi.warn{background:linear-gradient(145deg,rgba(246,196,120,.12),rgba(15,23,38,.84) 60%)}
.kpi .v,.nx-stat strong,.ret-stat b{letter-spacing:-.035em;text-shadow:0 0 22px rgba(62,232,181,.16)}
.kpi .v{color:#F2FFF9}
.nx-stat.info strong,.nx-stat.blue strong{color:#D9E8FF}
.nx-stat.mint strong{color:#D9FFF4}
.nx-stat.amber strong{color:#FFEFC9}
.nx-stat.violet strong{color:#EADDFF}
.bar,.progress,.brow .bar,.hbars .bar,.hbar-row .bar{background:rgba(120,180,255,.12);border-radius:99px;box-shadow:inset 0 1px 2px rgba(0,0,0,.22)}
.bar i,.progress i,.brow .bar i,.hbars .bar i,.hbar-row .bar i{background:linear-gradient(90deg,#2F6BFF,#5BC8FF 58%,#3EE8B5);border-radius:99px;box-shadow:0 0 12px rgba(62,232,181,.28)}
.progress i{background:linear-gradient(90deg,#8B5CF6,#5BC8FF,#3EE8B5)}
.ret-stat:nth-child(1) b{color:#D9E8FF}.ret-stat:nth-child(2) b{color:#D9FFF4}.ret-stat:nth-child(3) b{color:#FFE2E8}
html[data-theme="light"] .kpi,html[data-theme="light"] .nx-stat,html[data-theme="light"] .ret-stat{background:linear-gradient(145deg,#F4F8FF,#FFFFFF 55%,#F1FCF8);border-color:#DCE8F7;box-shadow:0 8px 24px rgba(30,60,110,.06)}
html[data-theme="light"] .kpi .v,html[data-theme="light"] .nx-stat strong,html[data-theme="light"] .ret-stat b{color:#0F1B2D;text-shadow:none}
html[data-theme="light"] .bar,html[data-theme="light"] .progress,html[data-theme="light"] .brow .bar{background:#E8F0FA}
html[data-theme="light"] .nx-stat.info strong{color:#1D5BFF}html[data-theme="light"] .nx-stat.mint strong{color:#0E8E6D}

/* ===== AI 代理页面 ===== */
.agent-page{display:flex;flex-direction:column;gap:14px;min-height:100%}
.agent-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:24px;align-items:center;padding:26px 30px;border:1px solid rgba(139,92,246,.26);border-radius:18px;overflow:hidden;background:radial-gradient(120% 180% at 8% 0%,rgba(139,92,246,.28),transparent 55%),radial-gradient(120% 180% at 88% 20%,rgba(47,107,255,.24),transparent 60%),linear-gradient(115deg,#0D1224,#111B33 55%,#0C1D26)}
.agent-hero::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 54px,rgba(120,180,255,.045) 54px 55px);pointer-events:none;mask-image:linear-gradient(180deg,#000,transparent 80%)}
.agent-hero-copy{position:relative;z-index:1;min-width:0}
.agent-kicker{display:inline-flex;align-items:center;gap:7px;font-family:var(--mono);font-size:9px;letter-spacing:.18em;color:#C4B5FD}
.agent-pulse{width:6px;height:6px;border-radius:50%;background:#3EE8B5;box-shadow:0 0 10px #3EE8B5;animation:agentPulse 1.8s infinite}
.agent-hero h1{font-size:clamp(24px,2.3vw,34px);line-height:1.16;letter-spacing:-.02em;color:#F4F7FF;font-weight:750;margin:10px 0 8px;max-width:22ch}
.agent-hero p{font-size:12.5px;line-height:1.75;color:#AAB6CC;max-width:62ch}
.agent-hero-tags{display:flex;gap:7px;flex-wrap:wrap;margin-top:14px}
.agent-hero-tags span{font-size:10px;color:#D8E4FF;border:1px solid rgba(120,180,255,.22);background:rgba(120,180,255,.08);border-radius:99px;padding:4px 9px}
.agent-hero-side{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:12px}
.agent-orb{width:96px;height:96px;border-radius:28px;display:flex;align-items:center;justify-content:center;font-size:38px;color:#fff;background:linear-gradient(135deg,#8B5CF6,#2F6BFF);box-shadow:0 18px 50px rgba(92,104,255,.42),inset 0 1px 0 rgba(255,255,255,.28);transform:rotate(-6deg)}
.agent-hero-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;width:100%}
.agent-hero-stats>div{text-align:center;padding:8px 4px;border:1px solid rgba(120,180,255,.16);border-radius:10px;background:rgba(5,10,20,.28)}
.agent-hero-stats span{display:block;font-size:8.5px;color:#8FA0BE;letter-spacing:.04em}
.agent-hero-stats b{display:block;font-family:var(--mono);font-size:15px;color:#F2F7FF;margin-top:3px}
.agent-status{display:inline-flex;align-items:center;gap:5px;font-size:9.5px;color:#8EF0D0}
.agent-status i{width:5px;height:5px;border-radius:50%;background:#3EE8B5;box-shadow:0 0 7px #3EE8B5}
.agent-workspace{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.75fr);gap:14px;align-items:stretch;min-height:0}
.agent-chat-card{display:flex;flex-direction:column;min-height:560px;height:calc(100vh - 380px);border:1px solid var(--o-line);border-radius:16px;background:var(--o-panel-solid);overflow:hidden;box-shadow:0 12px 34px rgba(0,0,0,.16)}
.agent-chat-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 17px;border-bottom:1px solid var(--o-line);background:linear-gradient(180deg,rgba(47,107,255,.07),transparent)}
.agent-chat-id{display:flex;align-items:center;gap:10px}
.agent-avatar{width:34px;height:34px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#8B5CF6,#2F6BFF);color:#fff;font-size:17px}
.agent-chat-id b{display:block;font-size:12.5px;color:var(--o-ink)}
.agent-chat-id small{display:block;font-size:9.5px;color:var(--o-dim);margin-top:1px}
.agent-chat-actions{display:flex;gap:4px}
.agent-chat-card .agent-chat{padding:16px 17px;gap:14px;background:radial-gradient(60% 40% at 50% 0%,rgba(47,107,255,.04),transparent)}
.agent-side{display:flex;flex-direction:column;gap:12px;min-width:0}
.agent-side-card{border:1px solid var(--o-line);border-radius:14px;background:var(--o-panel-solid);padding:14px 15px}
.agent-side-head{display:flex;align-items:flex-start;gap:9px;margin-bottom:10px}
.agent-side-ico{width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;background:rgba(139,92,246,.12);color:#C4B5FD;font-size:13px;flex:none}
.agent-side-head b{display:block;font-size:12px;color:var(--o-ink)}
.agent-side-head small{display:block;font-size:9px;color:var(--o-dim);margin-top:1px}
.agent-action{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px solid var(--o-line);background:rgba(255,255,255,.02);color:var(--o-muted);border-radius:9px;padding:9px 10px;font-size:10.5px;text-align:left;cursor:pointer;margin-top:6px;transition:.15s}
.agent-action:hover{border-color:rgba(139,92,246,.42);color:var(--o-ink);background:rgba(139,92,246,.07)}
.agent-action i{font-style:normal;color:var(--o-dim)}
.agent-context-row{display:flex;align-items:center;justify-content:space-between;padding:6px 0;border-bottom:1px dashed rgba(120,180,255,.09);font-size:10.5px;color:var(--o-muted)}
.agent-context-row b{font-family:var(--mono);font-size:12px;color:var(--o-ink)}
.agent-context-note{font-size:9.5px;line-height:1.6;color:var(--o-dim);margin-top:8px}
.agent-context-links{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}
.agent-context-links button{border:0;background:rgba(47,107,255,.09);color:#9FB8FF;border-radius:7px;font-size:9.5px;padding:5px 8px;cursor:pointer}
.agent-tip-card ul{margin:0;padding-left:15px;display:flex;flex-direction:column;gap:5px;font-size:10px;line-height:1.55;color:var(--o-muted)}
.agent-tip-card li::marker{color:#C4B5FD}
.agent-page .agent-bubble{border:1px solid rgba(120,180,255,.12);background:linear-gradient(135deg,rgba(120,180,255,.08),rgba(139,92,246,.05));border-radius:4px 14px 14px 14px;padding:11px 14px;font-size:11.5px;line-height:1.75;color:var(--o-muted)}
.agent-page .agent-bubble.user{background:linear-gradient(135deg,rgba(62,232,181,.12),rgba(47,107,255,.08));border-color:rgba(62,232,181,.18);border-radius:14px 4px 14px 14px;color:var(--o-ink)}
.agent-page .agent-bubble p{margin:0 0 7px}.agent-page .agent-bubble p:last-child{margin-bottom:0}
.agent-page .agent-bubble ul{margin:2px 0 7px;padding-left:16px}.agent-page .agent-bubble li{margin:2px 0}
.agent-page .agent-bubble code{font-family:var(--mono);font-size:10px;background:rgba(62,232,181,.08);color:#9FF0DA;border-radius:4px;padding:1px 4px}
.agent-page .agent-gap{height:5px}
@keyframes agentPulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.8)}}
html[data-theme="light"] .agent-hero{background:radial-gradient(120% 180% at 8% 0%,rgba(139,92,246,.16),transparent 55%),radial-gradient(120% 180% at 88% 20%,rgba(47,107,255,.14),transparent 60%),linear-gradient(115deg,#F7F4FF,#F2F7FF 55%,#F1FCF8);border-color:#DCD0FF}
html[data-theme="light"] .agent-hero h1{color:#111A2C}html[data-theme="light"] .agent-hero p{color:#53637A}
html[data-theme="light"] .agent-hero-tags span{color:#4A3E7A;background:rgba(139,92,246,.07);border-color:#DDD2F7}
html[data-theme="light"] .agent-hero-stats>div{background:#fff;border-color:#DCE8F7}
html[data-theme="light"] .agent-hero-stats span{color:#6A7A91}html[data-theme="light"] .agent-hero-stats b{color:#12233B}
html[data-theme="light"] .agent-chat-card,html[data-theme="light"] .agent-side-card{background:#fff;border-color:#DCE8F7}
html[data-theme="light"] .agent-chat-head{background:linear-gradient(180deg,#F5F9FF,#fff)}
html[data-theme="light"] .agent-chat-card .agent-chat{background:#FBFDFF}
html[data-theme="light"] .agent-page .agent-bubble{background:#F5F9FF;border-color:#DFEAF8;color:#43566D}
html[data-theme="light"] .agent-page .agent-bubble.user{background:#EDFBF6;border-color:#BFEEDF;color:#12233B}
html[data-theme="light"] .agent-action{background:#F7FAFD;border-color:#DCE8F7}
@media(max-width:1180px){.agent-hero{grid-template-columns:minmax(0,1fr)}.agent-hero-side{flex-direction:row;justify-content:flex-start;flex-wrap:wrap}.agent-workspace{grid-template-columns:minmax(0,1fr)}.agent-chat-card{height:auto;min-height:520px}.agent-side{display:grid;grid-template-columns:1fr 1fr;gap:10px}.agent-side-card:last-child{grid-column:1/-1}}
@media(max-width:760px){.agent-hero{padding:20px}.agent-hero-stats{max-width:100%}.agent-side{grid-template-columns:1fr}}
/* AI 代理一屏布局微调 */
.agent-hero{padding:22px 26px;gap:18px}
.agent-chat-card{height:calc(100vh - 460px);min-height:430px}
@media(max-width:1180px){.agent-chat-card{height:auto;min-height:460px}}
.agent-chat-card{height:calc(100vh - 520px);min-height:380px}
/* 1280 宽度保持双栏，避免被 1180 断点提前堆叠 */
@media(min-width:1081px){
  .agent-hero{grid-template-columns:minmax(0,1fr) 330px}
  .agent-hero-side{flex-direction:column;justify-content:flex-start;flex-wrap:nowrap}
  .agent-workspace{grid-template-columns:minmax(0,1.55fr) minmax(300px,.75fr)}
  .agent-chat-card{height:calc(100vh - 520px);min-height:380px}
  .agent-side{display:flex;flex-direction:column}
}
/* 支付方式：平台 Logo */
.pp-method i{width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;flex:none}
.pp-method i svg{width:24px;height:24px;display:block;border-radius:6px}
.pp-method.on i svg{filter:drop-shadow(0 2px 5px rgba(47,107,255,.18))}
/* AI 代理：放大主对话、右侧收窄、多行输入 */
@media(min-width:1081px){
  .agent-workspace{grid-template-columns:minmax(0,1fr) 300px}
  .agent-chat-card{height:calc(100vh - 400px);min-height:480px}
}
.agent-input-row{align-items:flex-end;gap:8px}
.agent-input-row .agent-input{flex:1;min-height:58px;height:58px;max-height:150px;padding:10px 12px;line-height:1.55;resize:none;overflow-y:auto;font-family:inherit;font-size:12px;border-radius:10px;background:rgba(0,0,0,.14);color:var(--o-ink);border:1px solid var(--o-line)}
.agent-input-row .agent-input:focus{outline:none;border-color:rgba(62,232,181,.45);box-shadow:0 0 0 3px rgba(62,232,181,.07)}
.agent-input-row .agent-input::placeholder{color:var(--o-dim)}
.agent-input-row .btn{height:42px;flex:none;align-self:flex-end}
html[data-theme="light"] .agent-input-row .agent-input{background:#FBFDFF;border-color:#DCE8F7;color:#12233B}
/* ===== 自由创作：视频时长 / 清晰度 ===== */
.free-duration-btn b{font-family:var(--mono);font-size:11px;color:var(--o-ink);font-weight:600}
.free-duration-btn i{font-style:normal;font-size:9.5px;color:var(--o-dim);margin-left:2px}
.duration-modal{max-width:520px}
.duration-rate{font-size:10px;color:var(--o-dim);white-space:nowrap;align-self:flex-start;margin-top:2px}
.duration-lab{font-size:11px;color:var(--o-muted);font-weight:650;margin-bottom:8px}
.duration-presets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.duration-preset{height:38px;border:1px solid var(--o-line);border-radius:9px;background:rgba(255,255,255,.02);color:var(--o-muted);font-size:12px;cursor:pointer;transition:.15s}
.duration-preset:hover{border-color:var(--o-line-strong);color:var(--o-ink)}
.duration-preset.on{border-color:rgba(47,107,255,.55);background:rgba(47,107,255,.08);color:#DCE9FF;font-weight:700}
.duration-custom-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:14px;font-size:11px;color:var(--o-muted)}
.duration-stepper{display:flex;align-items:center;gap:5px}
.duration-stepper button{width:28px;height:28px;border:1px solid var(--o-line);border-radius:7px;background:rgba(255,255,255,.03);color:var(--o-muted);cursor:pointer;font-size:14px;line-height:1}
.duration-stepper button:hover{color:var(--o-ink);border-color:var(--o-line-strong)}
.duration-stepper .inp{width:54px;height:28px;text-align:center;padding:0 4px;font-size:12px}
.duration-range{width:100%;margin:14px 0 4px;accent-color:#2F6BFF;cursor:pointer}
.duration-range-labels{display:flex;justify-content:space-between;font-size:9px;color:var(--o-dim);font-family:var(--mono)}
.duration-resolutions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.duration-res{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:9px 10px;border:1px solid var(--o-line);border-radius:9px;background:rgba(255,255,255,.02);cursor:pointer;text-align:left}
.duration-res:hover{border-color:var(--o-line-strong)}
.duration-res.on{border-color:rgba(62,232,181,.5);background:rgba(62,232,181,.07)}
.duration-res b{font-size:12px;color:var(--o-ink)}
.duration-res small{font-size:9px;color:var(--o-dim);font-family:var(--mono)}
.duration-total{display:flex;align-items:center;justify-content:space-between;margin-top:14px;padding:11px 14px;border:1px solid rgba(120,180,255,.2);border-radius:10px;background:linear-gradient(135deg,rgba(47,107,255,.08),rgba(139,92,246,.07));font-size:11px;color:var(--o-muted)}
.duration-total b{font-family:var(--mono);font-size:15px;color:#DCE9FF}
html[data-theme="light"] .duration-preset,html[data-theme="light"] .duration-res,html[data-theme="light"] .duration-stepper button{background:#F7FAFD;border-color:#DCE8F7}
html[data-theme="light"] .duration-preset.on{background:#EDF4FF;border-color:#8FB4FF;color:#1D5BFF}
html[data-theme="light"] .duration-res.on{background:#ECFBF6;border-color:#7EDFC7}
html[data-theme="light"] .duration-total{background:linear-gradient(135deg,#F2F7FF,#F1FCF8);border-color:#DCE8F7}
html[data-theme="light"] .duration-total b{color:#12233B}
/* 时长单位：与数字分离，避免中文回退字体偏大 */
.free-duration-unit{font-style:normal;font-family:inherit;font-size:10px;font-weight:500;color:var(--o-dim);margin:0 2px 0 1px;letter-spacing:0;line-height:1}
/* 加购：积分兑换 */
.addons-row{grid-template-columns:36px minmax(0,1fr) 96px 128px 126px}
.addons-price .addon-pts{display:block;font-family:inherit;font-size:9px;font-weight:400;color:var(--o-dim);margin-top:3px;letter-spacing:0}
.addons-actions{display:flex;flex-direction:column;gap:5px}
.addons-actions .btn{width:100%;justify-content:center}
.addon-redeem-btn{color:var(--o-mint);border-color:rgba(62,232,181,.32);background:rgba(62,232,181,.06)}
.addon-redeem-btn:hover{color:#DFFBF6;border-color:rgba(62,232,181,.55);background:rgba(62,232,181,.11)}
html[data-theme="light"] .addon-redeem-btn{color:#0B6B54;border-color:#BDEBDD;background:#EDFBF7}
html[data-theme="light"] .addon-redeem-btn:hover{color:#07513F;border-color:#84D9C1;background:#E2F8F0}
/* 加购弹窗加宽，避免中英文加购项被挤成多行 */
.addons-modal{width:820px;max-width:calc(100vw - 32px)}
/* 订单表格：放宽列宽，修复时间/操作拥挤 */
.billing-orders-card .bill-order-tr{grid-template-columns:110px minmax(130px,1fr) 74px 70px 112px 132px;gap:8px;padding:11px 12px;align-items:center}
.bill-order-id{font-size:9.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bill-order-type{font-size:11.5px;line-height:1.45;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bill-order-amount{font-size:11.5px;white-space:nowrap;text-align:right}
.bill-order-time{font-size:10px;white-space:nowrap}
.bill-order-actions{justify-content:flex-end;flex-wrap:nowrap;gap:5px}
.bill-order-actions .btn{height:27px;padding:0 8px;font-size:10.5px;white-space:nowrap}
.bill-order-filter{width:118px}
.bill-export-btn{height:30px;padding:0 10px;margin-left:2px}
/* 订单表格：操作列容纳详情/支付/取消，类型最多两行 */
.billing-orders-card .bill-order-tr{grid-template-columns:104px minmax(150px,1fr) 72px 70px 110px 150px}
.bill-order-type{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.35}
.bill-order-actions{flex-wrap:nowrap;gap:4px}
.bill-order-actions .btn{padding:0 7px;font-size:10px}
/* 1280 宽度下订单表改为整行，避免操作列被裁切 */
@media(max-width:1400px){
  .billing-lower{grid-template-columns:minmax(0,1fr)}
  .billing-orders-card{min-width:0}
  .billing-orders-card .tbl{min-width:0;overflow:visible}
}
/* 积分兑换二次确认 */
.redeem-modal{max-width:460px}
.redeem-head{display:flex;align-items:center;gap:10px;padding:4px 0 12px}
.redeem-head .addon-ico{width:34px;height:34px;border-radius:9px;display:flex;align-items:center;justify-content:center;background:rgba(62,232,181,.09);color:var(--o-mint);font-size:17px;flex:none}
.redeem-head b{display:block;font-size:13px;color:var(--o-ink)}
.redeem-head small{display:block;font-size:10px;color:var(--o-dim);margin-top:2px}
.redeem-kv dt{color:var(--o-dim)}
.redeem-kv dd{text-align:right;font-family:var(--mono);font-size:11.5px;color:var(--o-ink)}
.redeem-kv .redeem-cost{color:#FFB4A2;font-weight:700}
.redeem-kv .redeem-minus{color:#FF8E8E;font-weight:700}
.redeem-warning{margin-top:12px;padding:10px 12px;border-radius:9px;background:rgba(255,176,32,.07);border:1px solid rgba(255,176,32,.18);font-size:10.5px;line-height:1.6;color:var(--o-muted)}
html[data-theme="light"] .redeem-warning{background:#FFF8E8;border-color:#F5D89A;color:#7A5A12}
/* 时长按钮与比例按钮保持同一套外观 */
.free-ratio-btn.free-duration-btn b{font-weight:500}
.free-ratio-btn.free-duration-btn i{font-size:9px;margin-left:0}
.free-ratio-btn.free-duration-btn .free-duration-unit{font-size:10px;font-weight:500;color:var(--o-dim);margin:0 2px 0 1px}
/* ===== 平台连接器：品牌 Logo 与卡片美化 ===== */
.conn-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}
.conn-card{border-radius:12px;padding:12px 13px;gap:8px;background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.012));box-shadow:0 1px 2px rgba(0,0,0,.12);transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}
.conn-card:hover{transform:translateY(-1px);border-color:rgba(120,180,255,.28);box-shadow:0 8px 22px rgba(0,0,0,.18)}
.conn-brand{display:flex;align-items:center;gap:8px;min-width:0}
.conn-logo{width:28px;height:28px;flex:none;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;background:#fff;border:1px solid rgba(140,180,235,.22);padding:4px;box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 2px 5px rgba(0,0,0,.10)}
.conn-logo img{width:18px;height:18px;display:block;object-fit:contain}
.conn-head b{font-size:11.5px;font-weight:700;letter-spacing:.005em}
.conn-meta{font-size:9px;gap:8px;line-height:1.4}
.conn-caps span{border-radius:5px;padding:2px 6px;font-size:8.5px;letter-spacing:.01em}
html[data-theme="light"] .conn-card{background:linear-gradient(180deg,#FFFFFF,#F7FBFF);box-shadow:0 1px 2px rgba(30,70,120,.04)}
html[data-theme="light"] .conn-card:hover{border-color:#C9DEF7;box-shadow:0 8px 20px rgba(34,83,145,.10)}
html[data-theme="light"] .conn-logo{background:#fff;border-color:#E5EEF9;box-shadow:0 1px 3px rgba(30,70,120,.08)}
html[data-theme="light"] .conn-head b{color:#12233B}
html[data-theme="light"] .conn-meta{color:#70839A}
html[data-theme="light"] .conn-caps span{color:#087A62;border-color:#CDEFE4;background:#F0FAF7}
/* ===== 平台发布规则提示 / 风控 ===== */
.platform-rule-panel{margin:10px 0;padding:10px 12px;border:1px solid var(--o-line);border-radius:10px;background:rgba(47,107,255,.04)}
.prp-head{display:flex;align-items:center;gap:8px;margin-bottom:7px}
.prp-title{font-size:11.5px;font-weight:700;color:var(--o-ink)}
.prp-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:6px}
.prp-item{display:flex;align-items:flex-start;gap:7px;min-width:0;padding:6px 7px;border-radius:8px;background:rgba(255,255,255,.025)}
.prp-main{min-width:0;flex:1}
.prp-main b{display:block;font-size:10.5px;color:var(--o-ink)}
.prp-main small{display:block;font-size:9px;line-height:1.45;color:var(--o-dim);margin-top:2px}
.prp-cap,.prp-gap{font-family:var(--mono);font-size:8.5px;color:var(--o-mint);white-space:nowrap;border:1px solid rgba(62,232,181,.18);border-radius:4px;padding:1px 4px}
.prp-gap{color:var(--o-muted);border-color:var(--o-line)}
.platform-warn-box{margin:8px 0;padding:8px 10px;border:1px solid rgba(255,176,32,.25);border-radius:8px;background:rgba(255,176,32,.06);font-size:10px;line-height:1.55;color:#F4C36A}
.platform-warn-box b{display:block;margin-bottom:2px;color:#FFD58A}
.schedule-rule-hint{margin:-2px 0 8px;padding:8px 10px;border:1px solid rgba(47,107,255,.18);border-radius:8px;background:rgba(47,107,255,.05)}
.srh-head{display:flex;justify-content:space-between;gap:8px;font-size:10.5px;color:var(--o-ink)}
.srh-head span{font-family:var(--mono);font-size:9px;color:var(--o-mint)}
.schedule-rule-hint p{margin:3px 0;font-size:9.5px;line-height:1.45;color:var(--o-muted)}
.schedule-rule-hint small{font-size:8.5px;color:var(--o-dim)}
html[data-theme="light"] .platform-rule-panel{background:#F7FBFF;border-color:#DCE8F7}
html[data-theme="light"] .prp-item{background:#fff;border:1px solid #EDF3FB}
html[data-theme="light"] .platform-warn-box{background:#FFF8E8;border-color:#F5D89A;color:#7A5A12}
html[data-theme="light"] .platform-warn-box b{color:#8A5B05}
html[data-theme="light"] .schedule-rule-hint{background:#F5F9FF;border-color:#D8E7FA}
/* 平台规则信息图标 + tooltip */
.rule-info-wrap{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:none;cursor:help;outline:none}
.rule-info-icon{width:14px;height:14px;border-radius:50%;border:1px solid var(--o-line-strong);display:inline-flex;align-items:center;justify-content:center;font-size:9px;font-weight:700;color:var(--o-muted);background:rgba(255,255,255,.03)}
.rule-info-wrap:hover .rule-info-icon,.rule-info-wrap:focus .rule-info-icon{border-color:var(--o-mint);color:var(--o-mint)}
.rule-info-tip{position:absolute;left:50%;bottom:calc(100% + 9px);transform:translateX(-50%) translateY(3px);width:280px;padding:10px 12px;border-radius:9px;background:#111827;border:1px solid rgba(255,255,255,.12);box-shadow:0 10px 28px rgba(0,0,0,.35);z-index:80;opacity:0;visibility:hidden;pointer-events:none;transition:.14s ease;text-align:left}
.rule-info-tip::after{content:"";position:absolute;left:50%;bottom:-5px;width:8px;height:8px;background:#111827;border-right:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(255,255,255,.12);transform:translateX(-50%) rotate(45deg)}
.rule-info-wrap:hover .rule-info-tip,.rule-info-wrap:focus .rule-info-tip{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0)}
.rule-info-tip b{display:block;font-size:10.5px;color:#fff;margin-bottom:4px}
.rule-info-tip span{display:block;font-size:9.5px;line-height:1.5;color:#C7D2E3}
.rule-info-tip em{display:block;margin-top:4px;font-style:normal;font-size:9.5px;line-height:1.55;color:#F4C36A}
.rule-info-tip button{display:block;margin-top:6px;padding:0;border:0;background:none;color:#7DD3FC;font-size:9.5px;cursor:pointer}
html[data-theme="light"] .rule-info-tip{background:#111827;border-color:#253247}
html[data-theme="light"] .rule-info-tip b{color:#fff}

/* 授权账号弹窗 */
.auth-modal{width:760px;max-width:calc(100vw - 32px)}
.auth-platform-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin-bottom:12px}
.auth-platform{position:relative;display:flex;flex-direction:column;align-items:center;gap:5px;padding:9px 4px;border:1px solid var(--o-line);border-radius:9px;background:rgba(255,255,255,.02);cursor:pointer;color:var(--o-muted);font-size:9.5px;min-width:0}
.auth-platform:hover{border-color:var(--o-line-strong);color:var(--o-ink)}
.auth-platform.on{border-color:rgba(47,107,255,.55);background:rgba(47,107,255,.09);color:var(--o-ink)}
.auth-logo{width:28px;height:28px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;background:#fff;border:1px solid #E7EEF8;padding:4px;flex:none}
.auth-logo img{width:18px;height:18px;object-fit:contain;display:block}
.auth-logo.lg{width:36px;height:36px;padding:6px}
.auth-logo.lg img{width:24px;height:24px}
.auth-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.auth-dot{position:absolute;top:6px;right:6px;width:5px;height:5px;border-radius:50%;background:#5B6B82}
.auth-dot.ok{background:#3EE8B5}
.auth-detail{border:1px solid var(--o-line);border-radius:10px;padding:11px 12px;background:rgba(255,255,255,.015)}
.auth-detail-head{display:flex;align-items:center;gap:9px}
.auth-detail-head b{display:block;font-size:12px;color:var(--o-ink)}
.auth-detail-head small{display:block;font-size:9.5px;color:var(--o-dim);margin-top:2px}
.auth-detail-head .pill{margin-left:auto}
.auth-rule{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin:9px 0;padding:7px 8px;border-radius:7px;background:rgba(47,107,255,.06);font-family:var(--mono);font-size:8.5px;color:var(--o-mint)}
.auth-rule p{flex-basis:100%;margin:2px 0 0;font-family:inherit;font-size:9.5px;line-height:1.5;color:var(--o-muted)}
.auth-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.auth-opened{padding:10px 12px;border:1px solid rgba(255,176,32,.22);border-radius:8px;background:rgba(255,176,32,.06);font-size:10px;line-height:1.55;color:#F4C36A}
html[data-theme="light"] .auth-platform{background:#F8FBFF;border-color:#E1EBF7}
html[data-theme="light"] .auth-platform.on{background:#EDF4FF;border-color:#8FB4FF}
html[data-theme="light"] .auth-detail{background:#F8FBFF;border-color:#E1EBF7}
html[data-theme="light"] .auth-rule{background:#F2F8FF}
html[data-theme="light"] .auth-opened{background:#FFF8E8;border-color:#F5D89A;color:#7A5A12}

/* 帮助中心：平台发布规则 */
.help-search{display:flex;align-items:center;gap:10px;margin-bottom:10px;flex-wrap:wrap}
.help-search .inp{width:280px;max-width:100%}
.help-rule-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}
.help-rule-card{border:1px solid var(--o-line);border-radius:12px;padding:11px 12px;background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.008));display:flex;flex-direction:column;gap:9px}
.help-rule-head{display:flex;align-items:center;gap:8px}
.help-logo{width:30px;height:30px;border-radius:8px;background:#fff;border:1px solid #E7EEF8;padding:5px;display:inline-flex;align-items:center;justify-content:center;flex:none}
.help-logo img{width:20px;height:20px;object-fit:contain}
.help-rule-title{min-width:0;flex:1}
.help-rule-title b{display:block;font-size:12px;color:var(--o-ink)}
.help-rule-title small{display:block;font-size:9px;color:var(--o-dim);margin-top:1px;font-family:var(--mono)}
.help-conf{font-family:var(--mono);font-size:9px;border:1px solid var(--o-line);border-radius:4px;padding:1px 5px;color:var(--o-muted)}
.help-conf.cA{color:#3EE8B5;border-color:rgba(62,232,181,.25)}
.help-conf.cB{color:#F4C36A;border-color:rgba(255,176,32,.25)}
.help-conf.cC{color:#A9B8CE}
.help-stats{display:grid;grid-template-columns:1fr 1fr;gap:5px 8px}
.help-stats div{display:flex;flex-direction:column;gap:1px;min-width:0}
.help-stats span{font-size:8.5px;color:var(--o-dim)}
.help-stats b{font-family:var(--mono);font-size:9.5px;color:var(--o-ink);white-space:nowrap}
.help-risk{margin:0;font-size:9.5px;line-height:1.55;color:var(--o-muted)}
.help-note{margin-top:11px;font-size:9.5px;line-height:1.6;color:var(--o-dim)}
html[data-theme="light"] .help-rule-card{background:linear-gradient(180deg,#fff,#F8FBFF);border-color:#E1EBF7}
html[data-theme="light"] .help-rule-title b{color:#12233B}
html[data-theme="light"] .help-stats b{color:#12233B}
html[data-theme="light"] .help-risk{color:#62758D}
html[data-theme="light"] .help-logo{background:#fff;border-color:#E5EEF9}
@media(max-width:720px){.auth-platform-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.auth-fields{grid-template-columns:1fr}}
/* 创作附件历史与媒体预览 */
.free-attachments{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px;justify-content:flex-end}
.free-attach-media{display:flex;flex-direction:column;align-items:center;gap:3px;width:92px;padding:4px;border:1px solid var(--o-line);border-radius:8px;background:rgba(255,255,255,.03);cursor:pointer;color:var(--o-dim)}
.free-attach-media:hover{border-color:rgba(62,232,181,.4)}
.free-attach-media img,.free-attach-media video{width:80px;height:64px;object-fit:cover;border-radius:6px;display:block;background:#0B1422}
.free-attach-media span{font-size:8.5px;max-width:82px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.free-ref-item video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:8px}
.media-preview-modal{width:min(860px,96vw);max-height:92vh}
.media-preview-body{display:flex;align-items:center;justify-content:center;min-height:220px;max-height:70vh;overflow:auto;background:#080D16}
.media-preview-body img,.media-preview-body video{max-width:100%;max-height:70vh;object-fit:contain;display:block}
html[data-theme="light"] .free-attach-media{background:#F8FBFF;border-color:#E1EBF7}
html[data-theme="light"] .media-preview-body{background:#F3F7FC}
/* ===== 订阅套餐：Agnes 风格入场 / 悬浮 / 当前套餐光效 ===== */
@keyframes planEnter{from{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}
@keyframes planGlow{0%,100%{opacity:.55;transform:translateX(-20%)}50%{opacity:1;transform:translateX(20%)}}
.plan-grid{gap:14px}
.plan-card{
  border-radius:16px;padding:16px 16px 14px;
  background:radial-gradient(60% 30% at 50% -6%,rgba(47,107,255,.10),transparent 72%),rgba(255,255,255,.012);
  box-shadow:0 2px 8px rgba(0,0,0,.12);
  transition:transform .28s cubic-bezier(.4,0,.2,1),border-color .28s,box-shadow .28s,background .28s;
  animation:planEnter .45s cubic-bezier(.22,.8,.3,1) both;animation-delay:calc(var(--plan-i,0) * 70ms);
  overflow:hidden;
}
.plan-card::before{content:"";position:absolute;left:12%;right:12%;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(120,180,255,.55),transparent);opacity:0;transition:opacity .3s}
.plan-card:hover{transform:translateY(-4px);border-color:rgba(120,180,255,.35);box-shadow:0 18px 36px -14px rgba(47,107,255,.32)}
.plan-card:hover::before{opacity:1}
.plan-card.current{
  border-color:rgba(62,232,181,.5);
  background:radial-gradient(65% 34% at 50% -8%,rgba(62,232,181,.18),transparent 70%),linear-gradient(180deg,rgba(62,232,181,.07),rgba(18,26,42,.55));
  box-shadow:0 0 0 1px rgba(62,232,181,.10),0 18px 40px -20px rgba(62,232,181,.35);
}
.plan-card.current::after{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,transparent,#3EE8B5,transparent);animation:planGlow 3.2s ease-in-out infinite}
.plan-card .price{font-size:26px;letter-spacing:-.02em;margin-top:3px;margin-bottom:2px}
.plan-card .feats{gap:5px;line-height:1.5}
.plan-card .btn{margin-top:8px;height:34px;border-radius:9px;transition:transform .2s,box-shadow .2s,filter .2s}
.plan-card .btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 18px -8px rgba(47,107,255,.6);filter:brightness(1.04)}
html[data-theme="light"] .plan-card{background:radial-gradient(60% 30% at 50% -6%,rgba(47,107,255,.09),transparent 72%),linear-gradient(180deg,#FFFFFF,#F9FCFF);box-shadow:0 2px 10px rgba(30,70,120,.05)}
html[data-theme="light"] .plan-card:hover{border-color:#B9D6F6;box-shadow:0 18px 34px -16px rgba(47,107,255,.26)}
html[data-theme="light"] .plan-card.current{background:radial-gradient(66% 36% at 50% -8%,rgba(14,174,132,.15),transparent 72%),linear-gradient(180deg,#F2FCF8,#FFFFFF);border-color:#8FE0CA;box-shadow:0 0 0 1px rgba(14,174,132,.08),0 18px 36px -20px rgba(14,174,132,.28)}
html[data-theme="light"] .plan-card .price{color:#0F1B2D}
@media (prefers-reduced-motion: reduce){
  .plan-card{animation:none;transition:none}
  .plan-card.current::after{animation:none}
}
/* ===== 订阅与积分：统一支付中心布局 ===== */
.plan-free-note{height:34px;display:flex;align-items:center;justify-content:center;border:1px dashed var(--o-line-strong);border-radius:9px;color:var(--o-dim);font-size:10px;line-height:1.4;text-align:center;padding:0 8px;margin-top:8px}
.billing-pay-split{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.75fr);gap:12px;margin-top:12px}
.billing-inline-addons{gap:8px}
.billing-inline-addons .addons-row{grid-template-columns:34px minmax(0,1fr) 86px 100px 118px;gap:8px;padding:10px 11px}
.billing-inline-addons .addons-price{font-size:18px}
.billing-inline-addons .addons-actions .btn{height:27px;font-size:10px;padding:0 6px}
.billing-inline-addons .addons-info .nm{font-size:12px}
.points-buy-intro{font-size:10px;line-height:1.55;color:var(--o-muted);margin-bottom:9px}
.points-buy-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.points-buy-pack{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:9px 10px;border:1px solid var(--o-line);border-radius:9px;background:rgba(255,255,255,.025);cursor:pointer;text-align:left;transition:transform .18s,border-color .18s,background .18s}
.points-buy-pack:hover{transform:translateY(-2px);border-color:rgba(47,107,255,.45);background:rgba(47,107,255,.07)}
.points-buy-pack b{font-family:var(--mono);font-size:15px;color:var(--o-ink)}
.points-buy-pack span{font-family:var(--mono);font-size:9.5px;color:var(--o-mint)}
.points-buy-pack small{font-size:8.5px;color:var(--o-dim)}
.points-buy-pack em{position:absolute;top:6px;right:6px;font-style:normal;font-size:8px;color:#F4C36A;background:rgba(255,176,32,.1);border:1px solid rgba(255,176,32,.22);border-radius:4px;padding:1px 4px}
.points-custom-btn{margin-top:8px;width:100%}
.mt8{margin-top:8px}
html[data-theme="light"] .points-buy-pack{background:#F8FBFF;border-color:#E1EBF7}
html[data-theme="light"] .points-buy-pack:hover{background:#EEF5FF;border-color:#B7D4F5}
html[data-theme="light"] .points-buy-pack b{color:#12233B}
html[data-theme="light"] .plan-free-note{border-color:#D5E3F3;color:#71839C}
@media(max-width:1400px){
  .billing-pay-split{grid-template-columns:1fr}
  .billing-inline-addons .addons-row{grid-template-columns:34px minmax(0,1fr) 90px 110px 128px}
}
/* ===== 年订阅 / 账户用量 / 套餐周期切换 ===== */
.billing-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}
.billing-kpis .kpi .v small{font-size:12px;color:var(--o-dim);font-weight:500}
.usage-bar{height:4px;border-radius:4px;background:rgba(255,255,255,.08);overflow:hidden;margin-top:6px}
.usage-bar i{display:block;height:100%;border-radius:4px;background:linear-gradient(90deg,#3EE8B5,#5B8CFF);transition:width .35s ease}
.billing-cycle-toggle{display:flex;align-items:center;gap:2px;padding:2px;border:1px solid var(--o-line);border-radius:9px;background:rgba(255,255,255,.025)}
.billing-cycle-toggle button{position:relative;height:28px;padding:0 11px;border:0;border-radius:7px;background:transparent;color:var(--o-muted);font-size:10px;cursor:pointer;display:inline-flex;align-items:center;gap:4px}
.billing-cycle-toggle button.on{background:linear-gradient(120deg,rgba(47,107,255,.2),rgba(139,92,246,.16));color:var(--o-ink);box-shadow:inset 0 0 0 1px rgba(120,170,255,.18)}
.billing-cycle-toggle em{font-style:normal;font-size:8px;color:#F4C36A;background:rgba(255,176,32,.12);border-radius:3px;padding:1px 3px}
.plan-card .price small{font-family:inherit;font-size:11px;color:var(--o-dim);margin-left:2px}
.plan-save{font-size:8px;font-weight:700;letter-spacing:.02em;color:#F4C36A;background:rgba(255,176,32,.12);border:1px solid rgba(255,176,32,.24);border-radius:4px;padding:1px 4px}
.plan-annual-note{font-size:9px;line-height:1.4;color:#F4C36A;margin-top:-4px}
html[data-theme="light"] .billing-cycle-toggle{background:#F8FBFF;border-color:#E1EBF7}
html[data-theme="light"] .billing-cycle-toggle button{color:#6E8098}
html[data-theme="light"] .billing-cycle-toggle button.on{color:#1D4ED8;background:#EDF4FF;box-shadow:inset 0 0 0 1px #C5DBFA}
html[data-theme="light"] .usage-bar{background:#E8F0F9}
html[data-theme="light"] .plan-annual-note{color:#9A6505}
@media(max-width:1400px){.billing-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
.subscribe-cycle{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.subscribe-cycle button{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:11px 12px;border:1px solid var(--o-line);border-radius:10px;background:rgba(255,255,255,.025);cursor:pointer;text-align:left}
.subscribe-cycle button.on{border-color:rgba(47,107,255,.55);background:linear-gradient(135deg,rgba(47,107,255,.1),rgba(139,92,246,.08));box-shadow:inset 0 0 0 1px rgba(47,107,255,.15)}
.subscribe-cycle b{font-size:12px;color:var(--o-ink)}
.subscribe-cycle span{font-family:var(--mono);font-size:12px;color:var(--o-mint)}
.subscribe-cycle em{position:absolute;top:8px;right:8px;font-style:normal;font-size:8px;color:#F4C36A;background:rgba(255,176,32,.12);border:1px solid rgba(255,176,32,.22);border-radius:4px;padding:1px 4px}
.subscribe-total{display:flex;align-items:center;justify-content:space-between;margin-top:10px;padding:10px 12px;border:1px solid var(--o-line);border-radius:9px;background:rgba(255,255,255,.02);font-size:10.5px;color:var(--o-muted)}
.subscribe-total b{font-family:var(--mono);font-size:14px;color:var(--o-ink)}
html[data-theme="light"] .subscribe-cycle button{background:#F8FBFF;border-color:#E1EBF7}
html[data-theme="light"] .subscribe-cycle button.on{background:#EDF4FF;border-color:#8FB4FF}
html[data-theme="light"] .subscribe-total{background:#F8FBFF;border-color:#E1EBF7}
/* ===== 支付沙箱联调 ===== */
.sandbox-card{margin-top:12px;border-color:rgba(120,180,255,.18)}
.sandbox-intro{font-size:10px;line-height:1.55;margin-bottom:10px}
.sandbox-providers{display:flex;gap:8px;flex-wrap:wrap}
.sandbox-provider{display:inline-flex;align-items:center;gap:8px;padding:7px 10px;border:1px solid var(--o-line);border-radius:8px;background:rgba(255,255,255,.02);font-size:10px}
.sandbox-provider b{font-weight:650}
.sandbox-provider em{font-style:normal;font-size:8.5px;color:#67E8F9;background:rgba(34,211,238,.1);border:1px solid rgba(34,211,238,.2);border-radius:4px;padding:1px 4px}
.sandbox-controls{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:10px}
.sandbox-controls select{max-width:280px}
.sandbox-session{margin-top:10px;padding:10px 12px;border:1px dashed rgba(120,180,255,.25);border-radius:9px;background:rgba(47,107,255,.045)}
.sandbox-session-h{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11px;margin-bottom:4px}
.sandbox-session-h .mono{font-size:9px;color:var(--o-dim)}
.sandbox-payload{margin-top:6px;font-size:9px;color:var(--o-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
html[data-theme="light"] .sandbox-provider{background:#F8FBFF;border-color:#E1EBF7}
html[data-theme="light"] .sandbox-session{background:#F6FAFF}
.sandbox-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:8px}
.subscribe-pp-grid{grid-template-columns:1fr 1fr}
.subscribe-pp-grid .pp-pack{min-height:86px}
.subscribe-pp-grid .pp-pack b{font-size:15px}
.subscribe-pp-grid .pp-pack small{font-family:var(--mono);font-size:13px;color:var(--o-mint)}
.lab-bm-tr{grid-template-columns:1.1fr .8fr .8fr .55fr .65fr 1.7fr}
.lab-bm-tr .tm{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* ===== S9 平台原生适配 ===== */
.native-plan-card{margin-top:10px;border:1px solid rgba(120,180,255,.18);border-radius:10px;background:rgba(47,107,255,.035);padding:10px 12px}
.native-plan-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.native-plan-head>div{display:flex;align-items:center;gap:6px}
.native-plan-head b{font-size:11px}
.native-plan-head .hint{flex:1;min-width:180px;font-size:9px}
.native-plan-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px;margin-top:9px}
.native-plan-item{border:1px solid var(--o-line);border-radius:8px;padding:8px 9px;background:rgba(255,255,255,.02);min-width:0}
.native-plan-platform{display:flex;align-items:center;gap:6px;font-size:10px}
.native-plan-platform b{font-size:10.5px}
.native-plan-meta{display:flex;gap:5px;flex-wrap:wrap;margin-top:6px;font-family:var(--mono);font-size:8.5px;color:var(--o-mint)}
.native-plan-meta span{background:rgba(62,232,181,.07);border:1px solid rgba(62,232,181,.18);border-radius:4px;padding:1px 4px}
.native-plan-tags{display:flex;gap:4px;flex-wrap:wrap;margin-top:5px;font-size:8.5px;color:var(--o-blue)}
.native-plan-note{margin-top:5px;font-size:8.5px;line-height:1.4;color:var(--o-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
html[data-theme="light"] .native-plan-card{background:#F7FAFF;border-color:#D5E4F5}
html[data-theme="light"] .native-plan-item{background:#FFFFFF;border-color:#E1EBF7}
/* ===== 帮助中心：功能指南 ===== */
.help-tabs{margin-bottom:10px}
.help-search-card{margin-bottom:12px}
.help-search-card .card-b{padding:12px 14px}
.help-quick{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:8px}
.help-chip{border:1px solid var(--o-line);border-radius:6px;background:rgba(255,255,255,.025);color:var(--o-muted);font-size:9.5px;padding:4px 8px;cursor:pointer}
.help-chip:hover{color:var(--o-ink);border-color:var(--o-line-strong)}
.help-guide-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px}
.help-guide-card{position:relative;border:1px solid var(--o-line);border-radius:12px;padding:12px 13px;background:radial-gradient(70% 40% at 50% -10%,rgba(47,107,255,.08),transparent 70%),rgba(255,255,255,.012);cursor:pointer;transition:transform .2s,border-color .2s,box-shadow .2s;min-height:150px;display:flex;flex-direction:column;gap:6px}
.help-guide-card:hover{transform:translateY(-2px);border-color:rgba(120,180,255,.32);box-shadow:0 14px 30px -18px rgba(47,107,255,.35)}
.help-guide-tag{display:inline-flex;width:fit-content;font-size:8.5px;color:var(--o-mint);background:rgba(62,232,181,.08);border:1px solid rgba(62,232,181,.18);border-radius:4px;padding:1px 5px}
.help-guide-card h3{margin:2px 0 0;font-size:13px;line-height:1.4;color:var(--o-ink)}
.help-guide-card p{margin:0;font-size:9.5px;line-height:1.6;color:var(--o-muted);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.help-guide-foot{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:6px;font-size:9px;color:var(--o-dim)}
.help-arrow{color:var(--o-mint)}
.help-guide-modal{max-width:720px}
.help-guide-desc{font-size:11px;line-height:1.7;color:var(--o-muted);margin:0 0 12px}
.help-steps{display:flex;flex-direction:column;gap:8px}
.help-step{display:flex;gap:9px;align-items:flex-start;border:1px solid var(--o-line);border-radius:9px;padding:9px 11px;background:rgba(255,255,255,.02)}
.help-step>span{width:20px;height:20px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex:0 0 20px;background:rgba(62,232,181,.12);color:var(--o-mint);font-family:var(--mono);font-size:10px}
.help-step p{margin:0;font-size:10.5px;line-height:1.6;color:var(--o-ink)}
html[data-theme="light"] .help-guide-card{background:radial-gradient(70% 40% at 50% -10%,rgba(47,107,255,.06),transparent 70%),#FFFFFF;border-color:#E1EBF7}
html[data-theme="light"] .help-guide-card:hover{border-color:#B7D4F5;box-shadow:0 14px 28px -18px rgba(47,107,255,.24)}
html[data-theme="light"] .help-step{background:#F8FBFF;border-color:#E1EBF7}
html[data-theme="light"] .help-step p{color:#12233B}
/* S9 参数说明浮层（参考监控平台规则提示样式） */
.native-info{width:14px;height:14px;border-radius:50%;border:1px solid rgba(120,180,255,.35);background:rgba(47,107,255,.08);color:#9CC0FF;font-size:9px;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0;margin-left:2px}
.native-info:hover{background:rgba(47,107,255,.18)}
.native-plan-platform{position:relative}
.native-tip{position:absolute;z-index:30;left:0;top:20px;width:280px;background:#0B1422;border:1px solid rgba(156,192,255,.28);border-radius:9px;padding:11px 12px;box-shadow:0 16px 36px -12px rgba(0,0,0,.65);color:#DCE8F8;font-size:10px;line-height:1.5}
.native-tip b{color:#fff;font-size:10.5px}
.native-tip>div{display:flex;justify-content:space-between;gap:10px;margin-top:5px;color:#9FB3CC}
.native-tip>div b{font-family:var(--mono);color:#67E8F9;font-size:9.5px}
.native-tip>p{margin:8px 0 0;padding-top:7px;border-top:1px solid rgba(156,192,255,.16);color:#8FA5BF;font-size:9px;line-height:1.55}
html[data-theme="light"] .native-tip{background:#0F1B2D;border-color:#2B456B}
html[data-theme="light"] .native-info{color:#3B6FD4;border-color:#C5D9F4;background:#EEF5FF}
/* 创作结果：下载 / 保存到网盘 */
.free-result-actions{display:flex;align-items:center;gap:5px;flex-wrap:wrap;margin-top:6px}
.free-result-actions .btn{height:26px;font-size:9.5px;padding:0 7px;white-space:nowrap}
.free-result-actions .spin{width:10px;height:10px;border-width:1.5px}
.media-preview-modal .modal-f{flex-wrap:wrap;gap:6px}
/* 推广看板 */
.ref-kpis{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
.ref-history-tr{grid-template-columns:1.4fr 1fr .7fr}
.ref-history-tr .hint{font-size:9px}
/* Bluesky App Password 帮助 */
.lbl-info{display:inline-flex;align-items:center;justify-content:center;width:15px;height:15px;margin-left:5px;border-radius:50%;border:1px solid var(--o-line-strong);background:transparent;color:var(--o-muted);font-family:var(--mono);font-size:9px;font-weight:700;line-height:1;cursor:pointer;vertical-align:middle}
.lbl-info:hover{color:var(--o-mint);border-color:var(--o-mint)}
.bluesky-help-toggle{display:flex;align-items:center;gap:7px;margin-top:12px;padding:8px 10px;border:1px solid rgba(255,184,107,.28);border-radius:8px;background:rgba(255,184,107,.06);color:#ffb86b;font-size:11px;cursor:pointer}
.bluesky-help-toggle .bluesky-help-icon{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;border-radius:50%;border:1px solid #ffb86b;font-family:var(--mono);font-size:9px;font-weight:700}
.bluesky-help-toggle .bluesky-help-caret{margin-left:auto;font-family:var(--mono);font-size:14px;line-height:1}
.bluesky-help{margin-top:7px;padding:10px 11px;border:1px solid var(--o-line);border-radius:8px;background:rgba(255,255,255,.025);color:var(--o-muted);font-size:10.5px;line-height:1.7}
.bluesky-help p{margin:0 0 7px}
.bluesky-help ol{margin:0 0 8px;padding-left:17px}
.bluesky-help li{margin:2px 0}
.bluesky-help a{color:var(--o-mint);text-decoration:none}
/* 发布记录：长账号 ID / Bluesky DID 防溢出 */
.post-account{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.35}
.posts-card .tbl .tr > *{min-width:0}
/* AI 变体采纳 */
.ai-progress{height:3px;border-radius:99px;background:rgba(255,255,255,.07);margin:0 14px 7px;overflow:hidden}
.ai-progress i{display:block;height:100%;background:var(--o-mint);transition:width .2s}
.variant-item.accepted{border-color:rgba(62,232,181,.45);background:rgba(62,232,181,.06)}
.variant-actions{display:flex;align-items:center;gap:5px;flex:none}
.btn-xs{height:24px;padding:0 7px;font-size:9.5px;border-radius:6px}
/* 推荐发布时间 */
.sched-tip-wrap{position:relative;display:inline-flex}
.sched-tip-pop{position:absolute;left:0;bottom:34px;z-index:30;width:210px;padding:8px;border:1px solid var(--o-line);border-radius:9px;background:var(--o-panel);box-shadow:0 12px 30px rgba(0,0,0,.35)}
.sched-tip-h{font-size:9.5px;color:var(--o-dim);padding:2px 5px 6px;font-family:var(--mono);letter-spacing:.5px}
.sched-tip-opt{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:8px 7px;border:0;border-radius:6px;background:transparent;color:var(--o-text);font-size:11px;cursor:pointer;text-align:left}
.sched-tip-opt:hover{background:rgba(62,232,181,.08)}
.sched-tip-opt b{font-weight:600}
.sched-tip-opt small{color:var(--o-dim);font-size:9px}
.pss.rev i{background:#8ea2ff}
.pss.rev.on{border-color:rgba(142,162,255,.45);background:rgba(142,162,255,.08)}
/* 账号详情 */
.acct-detail-modal{width:min(760px,94vw)}
.acct-detail-id{display:flex;align-items:center;gap:11px;min-width:0}
.acct-detail-id .plat-logo{width:34px;height:34px;flex:none}
.acct-detail-id>div{min-width:0}
.acct-detail-id h3{margin:0 0 3px;font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.acct-detail-id p{margin:0;color:var(--o-muted);font-size:10.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.acct-detail-id .pill{margin-left:auto;flex:none}
.acct-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:12px}
.acct-stat{padding:11px 12px;border:1px solid var(--o-line);border-radius:9px;background:rgba(255,255,255,.025)}
.acct-stat span{display:block;color:var(--o-muted);font-size:10px;margin-bottom:6px}
.acct-stat b{font-family:var(--mono);font-size:20px;font-weight:600}
.acct-detail-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:10px}
.acct-detail-card{border:1px solid var(--o-line);border-radius:9px;padding:11px;min-height:88px}
.acct-detail-h{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:9px;font-size:11px;color:var(--o-muted)}
.acct-tag-row,.acct-cap-row{display:flex;gap:6px;flex-wrap:wrap}
.acct-tag{padding:3px 8px;border-radius:5px;background:rgba(62,232,181,.09);color:var(--o-mint);font-size:10px}
.acct-cap{padding:4px 9px;border-radius:6px;background:rgba(62,232,181,.09);color:var(--o-mint);font-size:10px}
.acct-cap.off{background:rgba(255,255,255,.04);color:var(--o-dim);text-decoration:line-through}
.acct-empty-small{color:var(--o-dim);font-size:10.5px;padding:12px 0;text-align:center}
/* 平台专属发布选项 */
.platform-options{margin-top:10px;border:1px solid var(--o-line);border-radius:9px;background:rgba(255,255,255,.02);overflow:hidden}
.platform-options-h{display:flex;align-items:center;gap:8px;padding:9px 11px;border-bottom:1px solid var(--o-line);font-size:11px}
.platform-options-h .hint{margin-left:auto;font-size:9.5px;color:var(--o-dim)}
.platform-option-row{display:flex;align-items:center;gap:10px;padding:9px 11px;border-bottom:1px solid rgba(255,255,255,.04);font-size:11px}
.platform-option-row:last-child{border-bottom:0}
.platform-option-label{width:82px;flex:none;color:var(--o-muted)}
.platform-option-input{width:210px;height:29px;font-size:11px}
.platform-toggle{display:flex;align-items:center;gap:6px;color:var(--o-text);font-size:11px}
.platform-toggle input{accent-color:var(--o-mint)}
.seg.mini button{height:26px;padding:0 9px;font-size:10px}
/* 统一平台原始 logo：所有平台图标使用官方 SVG，不使用字母占位 */
.pico.plat-icon{overflow:hidden;box-shadow:inset 0 0 0 1px rgba(255,255,255,.14),0 3px 10px rgba(0,0,0,.28)}
.pico.plat-icon img{width:72%;height:72%;display:block;object-fit:contain;filter:brightness(0) invert(1)}
.pico.plat-icon.lg img{width:66%;height:66%}
/* 排期日历优化：更大字号 + 内容详情 + 节奏规则编辑 */
.cal-title{font-size:20px}
.cal-sum .k,.cal-dow{font-size:10.5px}
.cal-item .tt{font-size:12px;line-height:1.3}
.cal-item .tm{font-size:10px}
.cal-d .n{font-size:12.5px}
.cal-more{font-size:10.5px}
.cal-rules-grid span{font-size:10.5px}
.cal-rules-grid b{font-size:12px}
.cal-conflict h4{font-size:12.5px}
.cal-conflict p{font-size:11px}
.schedule-content-preview{margin:-4px 0 9px;padding:8px 10px;border:1px solid var(--o-line);border-radius:7px;background:rgba(255,255,255,.025);display:flex;flex-direction:column;gap:3px}
.schedule-content-preview b{font-size:11.5px;font-weight:600}
.schedule-content-preview span{font-family:var(--mono);font-size:9px;color:var(--o-dim)}
.cal-detail-modal{width:min(620px,94vw)}
.cal-detail-id{display:flex;align-items:center;gap:10px;min-width:0}
.cal-detail-id>div{min-width:0}
.cal-detail-id h3{margin:0 0 3px;font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cal-detail-id p{margin:0;color:var(--o-muted);font-size:10.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cal-detail-id .pill{margin-left:auto;flex:none}
.cal-detail-section{margin-bottom:12px}
.cal-detail-label{font-size:10px;color:var(--o-dim);letter-spacing:.6px;margin-bottom:6px;text-transform:uppercase}
.cal-detail-text{padding:11px;border:1px solid var(--o-line);border-radius:8px;background:rgba(255,255,255,.025);font-size:12.5px;line-height:1.7;white-space:pre-wrap;max-height:190px;overflow:auto}
.cal-detail-loading{padding:18px;text-align:center;color:var(--o-dim);font-size:11px}
.cal-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.cal-detail-grid>div{padding:8px 10px;border:1px solid var(--o-line);border-radius:7px;background:rgba(255,255,255,.018);min-width:0}
.cal-detail-grid span{display:block;font-size:9.5px;color:var(--o-dim);margin-bottom:3px}
.cal-detail-grid b{display:block;font-size:11.5px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.schedule-summary{margin-top:4px;padding:9px 10px;border:1px solid var(--o-line);border-radius:8px;background:rgba(255,255,255,.025);display:grid;grid-template-columns:1fr 1fr;gap:7px 10px}
.schedule-summary>div{min-width:0;display:flex;flex-direction:column;gap:2px}
.schedule-summary span{font-size:9.5px;color:var(--o-dim)}
.schedule-summary b{font-size:11px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* 内容选择器（大量内容时可搜索、滚动，不再依赖原生 select） */
.content-select{display:flex;align-items:center;gap:8px;width:100%;height:auto;min-height:38px;text-align:left;cursor:pointer;padding:7px 10px}
.content-select .cs-main{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}
.content-select .cs-main b{font-size:12px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.content-select .cs-main small{font-size:9px;color:var(--o-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.content-select .cs-ph{flex:1;color:var(--o-dim);font-size:11px}
.content-select .cs-chev{color:var(--o-muted);font-size:10px;flex:none}
.content-picker-mask{z-index:80}
.content-picker-modal{width:min(640px,94vw);max-height:82vh;display:flex;flex-direction:column}
.cp-search{display:flex;align-items:center;gap:8px;padding:0 14px 10px}
.cp-search .inp{flex:1}
.cp-count{flex:none;font-family:var(--mono);font-size:9.5px;color:var(--o-dim)}
.cp-list{overflow:auto;max-height:440px;padding:0 10px 6px;display:flex;flex-direction:column;gap:3px}
.cp-item{display:flex;align-items:center;gap:9px;width:100%;padding:9px 8px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--o-text);text-align:left;cursor:pointer}
.cp-item:hover{background:rgba(255,255,255,.04);border-color:var(--o-line)}
.cp-item.on{background:rgba(62,232,181,.07);border-color:rgba(62,232,181,.35)}
.cp-item.disabled{opacity:.45;cursor:not-allowed}
.cp-icon{flex:none;width:24px;height:24px;display:flex;align-items:center;justify-content:center}
.cp-icon .pico{width:24px;height:24px;border-radius:7px}
.cp-icon.generic{font-family:var(--mono);font-size:9px;color:var(--o-muted);background:rgba(255,255,255,.05);border-radius:7px}
.cp-main{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}
.cp-main b{font-size:11.5px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cp-main small{font-size:9px;color:var(--o-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cp-state{flex:none;font-size:9px;color:var(--o-dim);padding:2px 5px;border-radius:4px;background:rgba(255,255,255,.05)}
.cp-state.ok{color:var(--o-mint);background:rgba(62,232,181,.12)}
.cp-empty{padding:26px;text-align:center;color:var(--o-dim);font-size:11px}
/* 新建排期：右侧半屏面板，避免多层窗口叠加 */
.schedule-drawer-mask{position:fixed;inset:0;z-index:70;background:rgba(3,6,12,.52);display:flex;justify-content:flex-end}
.schedule-drawer{width:min(640px,100vw);height:100vh;background:var(--o-panel);border-left:1px solid var(--o-line);display:flex;flex-direction:column;box-shadow:-24px 0 60px rgba(0,0,0,.35);animation:scheduleDrawerIn .18s ease-out}
@keyframes scheduleDrawerIn{from{transform:translateX(28px);opacity:.6}to{transform:translateX(0);opacity:1}}
.schedule-drawer .modal-h{flex:none;padding:18px 20px;border-bottom:1px solid var(--o-line)}
.schedule-drawer .modal-b{flex:1;overflow:auto;padding:16px 20px 20px}
.schedule-drawer .modal-f{flex:none;padding:12px 20px;border-top:1px solid var(--o-line);background:var(--o-panel)}
.content-inline-picker{margin-top:-2px;margin-bottom:10px;border:1px solid var(--o-line);border-radius:9px;background:rgba(255,255,255,.02);overflow:hidden}
.content-inline-picker .cp-search{padding:9px 10px 8px}
.content-inline-picker .cp-list{max-height:260px;padding:0 6px 6px}
.content-inline-picker .cp-item{padding:7px 6px}
@media(max-width:700px){.schedule-drawer{width:100vw}.schedule-drawer .modal-b{padding:12px 14px 16px}}
/* 账号续期提示 */
.acct-row-expiring td{background:rgba(245,184,75,.06)}
.acct-row-expired td{background:rgba(255,107,107,.055)}
.acct-row-expiring td:first-child{box-shadow:inset 3px 0 0 #F5B84B}
.acct-row-expired td:first-child{box-shadow:inset 3px 0 0 #FF6B6B}
.acct-exp small{display:block;margin-top:2px;font-size:9px;letter-spacing:.2px}
.acct-exp.is-expiring small{color:#D79A2B}
.acct-exp.is-expired small{color:#E25555}
.acct-expiry-banner{display:flex;align-items:center;gap:8px;margin:0 0 10px;padding:9px 12px;border:1px solid rgba(245,184,75,.35);border-radius:8px;background:rgba(245,184,75,.08);font-size:11px;color:var(--o-text)}
.acct-expiry-banner .dot{width:7px;height:7px;border-radius:50%;background:#F5B84B;box-shadow:0 0 8px rgba(245,184,75,.7);flex:none}
.acct-expiry-banner b{font-weight:600;white-space:nowrap}
.acct-expiry-banner span{color:var(--o-muted);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.acct-expiry-banner .acct-link{margin-left:auto;flex:none;color:#D79A2B}
/* 账号详情美化 */
.acct-detail-head{background:linear-gradient(135deg,rgba(91,140,255,.10),rgba(62,232,181,.055));border-bottom:1px solid var(--o-line)}
.acct-detail-id .plat-logo{width:44px;height:44px;border-radius:12px;flex:none}
.acct-detail-id .plat-logo img{width:24px;height:24px}
.acct-detail-title-row{display:flex;align-items:center;gap:8px;min-width:0}
.acct-detail-title-row h3{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.acct-detail-title-row .pill{flex:none}
.acct-detail-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:5px;color:var(--o-dim);font-size:9.5px}
.acct-detail-meta span{white-space:nowrap}
.acct-detail-meta span+span:before{content:'·';margin-right:8px;color:var(--o-line)}
.exp-text-expiring{color:#D79A2B!important}
.exp-text-expired{color:#E25555!important}
.acct-expiry-notice{display:flex;flex-direction:column;gap:3px;padding:10px 12px;border-radius:8px;margin-bottom:12px;border:1px solid rgba(245,184,75,.35);background:rgba(245,184,75,.08)}
.acct-expiry-notice.err{border-color:rgba(255,107,107,.4);background:rgba(255,107,107,.07)}
.acct-expiry-notice b{font-size:11.5px;font-weight:600}
.acct-expiry-notice span{font-size:10.5px;color:var(--o-muted);line-height:1.5}
.acct-detail-modal .acct-stat{position:relative;overflow:hidden}
.acct-detail-modal .acct-stat:after{content:'';position:absolute;right:0;bottom:0;width:34px;height:34px;border-radius:50%;background:rgba(91,140,255,.06)}
.acct-detail-modal .acct-detail-card{background:rgba(255,255,255,.025)}
.acct-detail-modal .acct-cap{font-size:10.5px;padding:5px 10px}
