/* =========================================================
   哦维优供 · 后台管理 设计 Tokens
   电光蓝 + 通用商品蓝 科技风(沿用哦维设计体系)
========================================================= */
:root {
  --font-display: "Sora", "Noto Sans SC", system-ui, -apple-system, sans-serif;
  --font-body: "Plus Jakarta Sans", "Noto Sans SC", system-ui, sans-serif;
  --font-mono: "JetBrains Mono", "SF Mono", Consolas, monospace;

  /* Brand · Electric Blue */
  --brand-50:#eef2ff; --brand-100:#e0e7ff; --brand-200:#c7d2fe; --brand-300:#a5b4fc;
  --brand-400:#818cf8; --brand-500:#3d5afe; --brand-600:#304ffe; --brand-700:#2540e0;

  /* Accent · Product Cyan(通用商品主题) */
  --green-50:#e9f9ef; --green-300:#6ee7a8; --green-500:#16a34a; --green-600:#0f8a3e;

  /* 中性 */
  --bg-app:#f6f8fc; --bg-card:#ffffff; --bg-elev:#fafbfe; --bg-soft:#f0f3f9;
  --border-soft:#e4e8f0; --border-strong:#cbd5e1;
  --text-strong:#0b1230; --text-body:#1f2945; --text-muted:#5b6478;
  --text-faint:#8a93a6; --text-on-brand:#ffffff;

  /* 语义色 */
  --success:#16a34a; --success-bg:#d6f5e1;
  --warning:#f59e0b; --warning-bg:#fff1d6;
  --danger:#ef4444;  --danger-bg:#ffe1e1;
  --info:#06b6d4;    --info-bg:#d6f4fb;

  /* 渐变 */
  --grad-electric: linear-gradient(135deg, #3d5afe, #06b6d4);
  --grad-agri: linear-gradient(135deg, #06b6d4, #3d5afe);
  --grad-aero: radial-gradient(1200px 480px at 0% 0%, rgba(61,90,254,.06), transparent 55%),
               radial-gradient(900px 400px at 100% 100%, rgba(22,163,74,.06), transparent 55%);

  /* 阴影 */
  --shadow-soft: 0 6px 22px -10px rgba(11,18,48,.10), 0 2px 8px -4px rgba(11,18,48,.06);
  --shadow-brand: 0 14px 38px -16px rgba(61,90,254,.32), 0 4px 12px -6px rgba(61,90,254,.18);
  --shadow-glow: 0 0 0 1px rgba(61,90,254,.18), 0 24px 48px -20px rgba(61,90,254,.45);

  --r-sm:8px; --r-md:12px; --r-lg:18px; --r-xl:22px;
  --ease: cubic-bezier(.22,.61,.36,1);
}

* { box-sizing: border-box; }
html, body { margin:0; padding:0; }
body {
  font-family: var(--font-body);
  font-size:14px; line-height:1.55;
  color: var(--text-body);
  background: var(--bg-app);
  -webkit-font-smoothing: antialiased;
  position: relative; min-height:100vh;
}
body::before {
  content:""; position:fixed; inset:0; z-index:-1;
  background: var(--grad-aero);
  background-image:
    linear-gradient(rgba(61,90,254,.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(61,90,254,.025) 1px, transparent 1px);
  background-size: 100% 100%, 36px 36px, 36px 36px;
  pointer-events:none;
}
a { color: inherit; text-decoration: none; }
