/* theme-bridge · 与前台同系：Greys + mint 卡片母题 */
:root,
html.theme-bing,body.theme-bing,
html.theme-default,body.theme-default{
  --mc-primary-rgb:35,35,35;
  --au-accent-rgb:35,35,35;
  --mc-bg:#f7f7f5;
  --mc-panel:#ffffff;
  --mc-side:#ffffff;
  --mc-text:#232323;
  --mc-muted:#6e6e6e;
  --mc-primary:#232323;
  --mc-primary-deep:#000000;
  --mc-primary-soft:#a1ffcb;
  --mc-mint:#a1ffcb;
  --mc-mint-ink:#232323;
  --mc-line:transparent;
  --mc-deep:#232323;
  --mc-danger:#c4242a;
  --mc-ok:#059669;
  --au-ink:#232323;
  --au-ink-2:#3a3a3a;
  --au-muted:#6e6e6e;
  --au-line:transparent;
  --au-paper:#ffffff;
  --au-paper-2:#f3f3f3;
  --au-panel:#ffffff;
  --au-accent:#232323;
  --au-accent-2:#000000;
  --theme-surface:#ffffff;
  --theme-surface-2:#f3f3f3;
  --theme-ink:#232323;
  --theme-muted:#6e6e6e;
  --theme-line:transparent;
  --theme-soft:#a1ffcb;
  --theme-btn-fg:#a1ffcb;
  --theme-is-dark:0;
  --ui-surface-0:#f7f7f5;
  --ui-surface-1:#ffffff;
  --ui-surface-2:#f3f3f3;
  --ui-ink:#232323;
  --ui-muted:#6e6e6e;
  --ui-ring:0 0 0 1px rgba(35,35,35,.06), 0 0 0 4px rgba(35,35,35,.03);
  --ui-ring-focus:0 0 0 1px rgba(35,35,35,.45), 0 0 0 4px rgba(161,255,203,.55);
}

body.theme-bing,body.theme-default,
html.theme-bing body,html.theme-default body{
  background:var(--mc-bg);
  color:var(--mc-text);
  font-family:"Libre Franklin","PingFang SC","Microsoft YaHei",sans-serif;
}

.mc-top,.mon-top,.mc-side,.mon-side,.mon-main,.mc-panel,.mc-ribbon-item,
.auth-home-link,.auth-chip,.auth-slider-btn{
  background:var(--theme-surface) !important;
  border-color:transparent !important;
  color:inherit;
}
.mc-brand,.mon-brand,.mc-page-title,.adm-sec h3,.adm-stat .v{color:var(--theme-ink) !important}
.mc-brand span{color:var(--theme-ink) !important}
.mon-brand{color:var(--theme-ink) !important}
.mc-side a,.mon-side a,.mon-top a,.mc-top-home,.adm-hint,.adm-stat .l,.mon-top .mon-user{color:var(--theme-muted) !important}
.mc-side a.active,.mon-side a.active,.mon-side a:hover,
.mon-top-nav a.active,.mon-top-nav a:hover{
  background:var(--mc-primary-soft) !important;
  color:var(--mc-mint-ink) !important;
}
.mon-main .card,.card{background:var(--theme-surface-2);border-color:transparent;color:var(--theme-ink);box-shadow:none}
.mon-main .table th,.table th{background:var(--theme-surface-2);color:var(--theme-muted);border-color:transparent}
.mon-main .table td,.table td{border-color:transparent;color:var(--theme-ink);font-variant-numeric:tabular-nums}
.mon-main .input,.input,select,textarea{
  background:var(--theme-surface-2);border-color:transparent;color:var(--theme-ink);
  box-shadow:var(--ui-ring);
}
.input:focus,select:focus,textarea:focus,
.mon-main .input:focus,.auth-field .input:focus,.auth-card .form-row .input:focus{
  outline:none !important;
  border-color:transparent !important;
  box-shadow:var(--ui-ring-focus) !important;
  background:var(--theme-surface-2);
}
.btn{
  background:var(--mc-primary);color:var(--theme-btn-fg) !important;
  border-radius:12px;font-weight:700;
}
.btn:hover{background:var(--mc-primary-deep);color:var(--theme-btn-fg) !important}
.btn-light{background:var(--theme-surface-2);color:var(--theme-ink);border:0}
.btn-light:hover{background:var(--mc-primary-soft);color:var(--mc-mint-ink)}
.badge-info{background:var(--mc-primary-soft);color:var(--mc-mint-ink)}
.adm-tabs button{background:var(--theme-surface-2);border-color:transparent;color:var(--theme-muted)}
.adm-tabs button.on{background:var(--mc-primary-soft);color:var(--mc-mint-ink);border-color:transparent}
.adm-chip-row label{background:var(--theme-surface-2);border-color:transparent;color:var(--theme-ink)}
.mc-side-toggle,.mon-side-toggle{background:var(--mc-primary-soft) !important}
.mc-side-toggle span,.mon-side-toggle span{background:var(--mc-mint-ink) !important}

.cfg-hitem{
  background:var(--theme-surface-2) !important;
  border-color:transparent !important;
  color:var(--theme-ink);
}
.cfg-hitem.ok{border-color:transparent !important;background:var(--mc-primary-soft) !important;box-shadow:none}
.cfg-hitem.warn{box-shadow:inset 0 0 0 1px rgba(245,158,11,.4)}
.cfg-hitem .l,.cfg-hitem .t{color:var(--theme-muted) !important}
.cfg-hitem .v{color:var(--theme-ink) !important;font-variant-numeric:tabular-nums}
.cfg-hitem.ok .v{color:var(--mc-mint-ink) !important}
.cfg-links a{
  background:var(--theme-surface-2) !important;
  border-color:transparent !important;
  color:var(--theme-ink) !important;
}
.cfg-links a:hover{background:var(--mc-primary-soft) !important}
.cfg-sticky{
  background:var(--theme-surface) !important;
  border-color:transparent !important;
  color:var(--theme-ink);
}
.cfg-sticky .dirty{color:#d97706 !important}
.cfg-tpl{
  background:var(--theme-surface-2) !important;
  border-color:transparent !important;
  color:var(--theme-muted) !important;
}
.cfg-tpl strong{color:var(--theme-ink) !important}
.cfg-tpl em,.cfg-tpl span{color:var(--theme-muted) !important}
.cfg-tpl:hover,.cfg-tpl.on{
  border-color:transparent !important;
  background:var(--mc-primary-soft) !important;
  color:var(--mc-mint-ink) !important;
}
.cfg-tpl.on strong{color:var(--mc-mint-ink) !important}
.cfg-motion.on{background:var(--mc-primary-soft) !important;color:var(--mc-mint-ink) !important}
.cfg-motion.on strong{color:var(--mc-mint-ink) !important}

.auth-body{background:var(--au-paper-2);color:var(--au-ink)}
.auth-left{
  background:
    radial-gradient(ellipse 60% 50% at 85% 10%,rgba(161,255,203,.55),transparent 58%),
    linear-gradient(165deg,var(--au-paper) 0%,var(--au-paper-2) 100%) !important;
  border-color:transparent !important;
  color:var(--au-ink);
}
.auth-brand-mark{
  background:var(--mc-mint) !important;
}
.auth-brand-mark::after{border-color:rgba(35,35,35,.35) !important}
.auth-home-link:hover,.auth-card-head a:hover,.auth-foot a:hover{color:var(--au-ink) !important;border-color:transparent}
.auth-role,.auth-note,.auth-field .eye:hover{background:var(--mc-mint) !important;color:var(--mc-mint-ink);border-color:transparent}
.auth-tabs a.active{background:var(--mc-primary);color:var(--theme-btn-fg) !important;box-shadow:none}
.auth-card .btn,.auth-card .btn-block{
  background:var(--mc-primary);color:var(--theme-btn-fg) !important;
  box-shadow:none;
}
.auth-kicker{color:var(--mc-ok)}

/* 运营概况 KPI · 卡片母题 */
.ov-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}
.ov-kpi{
  background:var(--theme-surface-2);border-radius:16px;padding:18px 16px 16px;
  min-height:118px;display:flex;flex-direction:column;justify-content:space-between;
  transition:transform .25s cubic-bezier(.22,1,.36,1);
}
.ov-kpi:nth-child(1){background:var(--mc-mint);color:var(--mc-mint-ink)}
.ov-kpi:nth-child(2){background:var(--mc-primary);color:var(--theme-btn-fg)}
.ov-kpi .l{font-size:12px;font-weight:700;opacity:.65;letter-spacing:.02em}
.ov-kpi .v{font-size:clamp(1.5rem,1.2rem + 1vw,1.85rem);font-weight:800;letter-spacing:-.03em;margin-top:8px;font-variant-numeric:tabular-nums}
.ov-kpi .s{font-size:12px;margin-top:10px;opacity:.7;font-weight:600}
.ov-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.ov-tile{
  background:var(--theme-surface-2);border-radius:14px;padding:16px 14px;text-decoration:none;color:inherit;
  display:flex;flex-direction:column;gap:8px;min-height:88px;
  transition:transform .25s cubic-bezier(.22,1,.36,1), background .2s;
}
.ov-tile:hover{transform:translateY(-2px);background:#ececec;color:inherit}
.ov-tile b{font-size:1.25rem;font-weight:800;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.ov-tile span{font-size:12px;color:var(--theme-muted);font-weight:600}
.ov-tile.warn{background:#fff4e5}
.ov-tile.warn span{color:#b45309}
.ov-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:16px}
.ov-head h2{margin:0;font-size:1.45rem;font-weight:800;letter-spacing:-.03em}
.ov-head p{margin:6px 0 0;color:var(--theme-muted);font-size:13px}
.ov-link{
  display:inline-flex;align-items:center;padding:10px 14px;border-radius:12px;
  background:var(--mc-mint);color:var(--mc-mint-ink);font-weight:800;font-size:13px;text-decoration:none;
}
.ov-link:hover{filter:brightness(.97);color:var(--mc-mint-ink)}
.ov-panel{background:var(--theme-surface);border-radius:16px;padding:16px;margin-bottom:12px}
.ov-panel-hd{margin-bottom:12px}
.ov-panel-hd h3{margin:0;font-size:15px;font-weight:800}
.ov-panel-hd p{margin:4px 0 0;font-size:12px;color:var(--theme-muted)}

@media (max-width:980px){
  .ov-kpis,.ov-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:560px){
  .ov-kpis{grid-template-columns:1fr}
}
