/* ===== 九零广告 v4.1 · Figma 视觉元素适配层 =====
   来源：交互/九零广告-v4.1-UI-改版稿.fig
   只做视觉覆盖，不改业务接口、不改 JS 调用链路。 */
:root{
  /* v4.2.1 唯一设计令牌：全站组件只允许使用 --ds-* */
  --ds-brand:#2f6bff;
  --ds-brand-soft:#edf4ff;
  --ds-success:#16a34a;
  --ds-success-soft:#edfcf2;
  --ds-warning:#ff6b00;
  --ds-warning-soft:#fff5eb;
  --ds-danger:#f43f5e;
  --ds-danger-soft:#fff1f3;
  --ds-purple:#7c3aed;
  --ds-purple-soft:#f5f3ff;
  --ds-teal:#0f766e;
  --ds-teal-soft:#ecfeff;
  --ds-text:#111827;
  --ds-text-emphasis:#25324a;
  --ds-text-secondary:#667085;
  --ds-text-tertiary:#98a2b3;
  --ds-page:#eef5ff;
  --ds-surface:#ffffff;
  --ds-surface-subtle:#f7faff;
  --ds-table-head:#f4f7fc;
  --ds-border:#d7e4f5;
  --ds-border-soft:#e8eff8;
  --ds-border-strong:#b9d2f2;
  --ds-radius-control:12px;
  --ds-radius-card:8px;
  --ds-radius-section:20px;
  --ds-result-padding:24px;
  --ds-result-padding-compact:16px;
  /* 业务表格在筛选、排序和合并后分页；默认20条，可选20/50/100条 */
  --ds-table-page-size:20;
  --ds-shadow-card:0 10px 30px rgba(40,78,127,.08);
  --ds-shadow-float:0 18px 48px rgba(40,78,127,.16);
}

html,
body{
  background:
    radial-gradient(circle at 14% 0%, rgba(47,107,255,.07) 0, rgba(47,107,255,0) 30%),
    linear-gradient(180deg,var(--ds-page) 0%,var(--ds-surface-subtle) 100%)!important;
  color:var(--ds-text)!important;
}

.wrap{
  max-width:1560px!important;
  padding:26px!important;
}

.app-shell{
  grid-template-columns:260px minmax(0,1fr)!important;
  gap:26px!important;
  align-items:start;
}

.sidebar{
  background:rgba(255,255,255,.92)!important;
  border:1px solid rgba(215,228,245,.95)!important;
  border-radius:30px!important;
  box-shadow:var(--ds-shadow-card)!important;
  backdrop-filter:saturate(140%) blur(10px);
}

.sidebar-brand{
  border-bottom:1px solid var(--ds-border-soft)!important;
  padding:8px 8px 18px!important;
}

.sidebar-logo{
  width:44px!important;
  height:44px!important;
  flex-basis:44px!important;
  border-radius:14px!important;
  background:#f8fbff!important;
  border:1px solid var(--ds-border-soft)!important;
  padding:4px!important;
  object-fit:contain!important;
}

.sidebar-brand h1{
  color:var(--ds-text)!important;
  font-size:20px!important;
  font-weight:950!important;
}

.sidebar-brand p,
.nav-desc{
  color:var(--ds-text-secondary)!important;
}

.nav-btn,
.nav-sub-btn{
  border:1px solid transparent!important;
}

.nav-btn{
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 6px 18px rgba(24,48,91,.035)!important;
}

.nav-btn.active{
  background:var(--ds-brand-soft)!important;
  border-color:#2f6bff!important;
  color:var(--ds-brand)!important;
  box-shadow:inset 4px 0 0 var(--ds-brand),0 10px 24px rgba(47,107,255,.10)!important;
}

.nav-sub-btn{
  border-radius:14px!important;
  background:#fff!important;
  border-color:var(--ds-border)!important;
  color:#53657f!important;
}

.nav-sub-btn.active{
  background:var(--ds-brand-soft)!important;
  border-color:var(--ds-brand)!important;
  color:var(--ds-brand)!important;
  box-shadow:none!important;
}

.topbar{
  border-radius:30px!important;
  background:linear-gradient(135deg,#101a42 0%,#203d92 52%,#0d8398 100%)!important;
  box-shadow:0 24px 60px rgba(24,48,91,.16)!important;
}

.card,
.business-card,
.phase4-page-head,
.audit-config-card,
.audit-main-card,
.audit-table-shell,
.figma-audit-hero,
.figma-audit-panel,
.figma-audit-setup-collapse,
.utility-collapse-card,
.log-collapse-card{
  background:var(--ds-surface)!important;
  border:1px solid var(--ds-border)!important;
  border-radius:30px!important;
  box-shadow:var(--ds-shadow-card)!important;
}

.card-title,
.figma-audit-panel-head{
  border-bottom-color:var(--ds-border-soft)!important;
}

.phase4-page-head{
  padding:26px 30px!important;
}

.phase4-page-head h2,
.card-title,
.figma-audit-panel-title strong{
  color:var(--ds-text)!important;
  letter-spacing:-.02em;
}

.phase4-page-head .desc,
.desc,
.figma-audit-panel-title span{
  color:var(--ds-text-secondary)!important;
}

.btn,
button.btn,
.topbar-refresh-auth,
.advanced-mode-toggle{
  border-radius:18px!important;
  font-weight:900!important;
  letter-spacing:-.01em;
}

.btn-blue{background:var(--ds-brand)!important;border-color:var(--ds-brand)!important}
.btn-green{background:var(--ds-success)!important;border-color:var(--ds-success)!important}
.btn-orange{background:var(--ds-warning)!important;border-color:var(--ds-warning)!important}
.btn-red{background:var(--ds-danger)!important;border-color:var(--ds-danger)!important}
.btn-gray{
  background:#fff!important;
  color:var(--ds-text-emphasis)!important;
  border:1px solid var(--ds-border)!important;
}

input[type="text"],
input[type="password"],
input[type="number"],
input[type="date"],
input[type="datetime-local"],
input[type="file"],
select,
textarea,
.form-group input,
.form-group textarea,
.form-group select{
  background:#fff!important;
  border:1.5px solid var(--ds-border)!important;
  border-radius:18px!important;
  box-shadow:none!important;
  color:var(--ds-text)!important;
}

input:focus,
select:focus,
textarea:focus{
  border-color:var(--ds-brand)!important;
  box-shadow:0 0 0 4px rgba(47,107,255,.10)!important;
  outline:none!important;
}

.advertiser-summary-cards,
.audit-stat-metrics{
  background:#eef2f7!important;
  border-radius:30px!important;
}

.viz-card-item,
.audit-time-stat-card,
.audit-stat-metric,
.summary-card,

.viz-table-wrap,
.table-scroll{
  border:1px solid var(--ds-border)!important;
  border-radius:24px!important;
  background:#fff!important;
  overflow:auto;
}

.viz-table{
  border-collapse:separate!important;
  border-spacing:0!important;
}

.viz-table th,
.audit-workbench-table th{
  background:var(--ds-table-head)!important;
  color:#66738a!important;
  border-bottom:1px solid var(--ds-border-soft)!important;
  font-weight:900!important;
}

.viz-table td,
.audit-workbench-table td{
  border-bottom:1px solid var(--ds-border-soft)!important;
  color:var(--ds-text)!important;
}

.viz-table tr:hover td,
.audit-workbench-table tr:hover td{
  background:#f8fbff!important;
}

.tag,
.pill,
.status-box,
.viz-badge,
.audit-filter-trigger,
.audit-table-meta .meta-chip{
  border-radius:999px!important;
}

.audit-filter-panel{
  border-radius:16px!important;
  border:1px solid var(--ds-border)!important;
  box-shadow:var(--ds-shadow-float)!important;
  overflow:hidden;
}

.audit-filter-title,
.audit-filter-footer{
  background:#f8fbff!important;
  border-color:var(--ds-border-soft)!important;
}

.result,
.log-entry,
.status-box{
  border-radius:16px!important;
}
