/* Xicart Design Tokens — 取自 design/visual-spec.md A7（整块自洽，:root 包裹） */
/* ==========================================================================
   xc-tokens.css  —  Xicart Design Tokens
   在子主题 style.css 中 @import，或单独 enqueue（必须晚于父主题 theme.css）
   ========================================================================== */

:root{
  /* ---- 品牌主色（对齐品牌包 brand-colors.json）---- */
  --xc-primary-900:#063a57; --xc-primary-800:#0a4d72; --xc-primary-700:#0a628c;
  --xc-primary-600:#0a76a3; --xc-primary-500:#0879B8; --xc-primary-400:#2a96cf;
  --xc-primary-300:#7cc3e2; --xc-primary-200:#bfe2f1; --xc-primary-100:#e3f1f8;
  --xc-primary-050:#f1f8fc;

  /* ---- Xicart 品牌语义色 ---- */
  --xc-brand:#0879B8; --xc-cyan:#26BDD2; --xc-ink:#102C40;
  --xc-slate:#5B7180; --xc-paper:#F4F8FA;

  /* ---- 深色区 ---- */
  --xc-ink-900:#0a1017; --xc-ink-800:#0f1926; --xc-ink-700:#16243a;
  --xc-ink-600:#1e2f49; --xc-ink-line:rgba(8,121,184,.14);
  --xc-ink-glow:rgba(8,121,184,.26);

  /* ---- 浅色区 ---- */
  --xc-bg:#ffffff; --xc-bg-soft:#f6f8fb; --xc-bg-muted:#eef2f8; --xc-bg-sunken:#e9eef6;

  /* ---- 文字 ---- */
  --xc-text-1:#101828; --xc-text-2:#475467; --xc-text-3:#667085;
  --xc-text-inv-1:#ffffff; --xc-text-inv-2:#a5b4cb; --xc-text-inv-3:#7d8da5;

  /* ---- 边框 ---- */
  --xc-border:#e6ebf2; --xc-border-strong:#d7dfeb; --xc-border-focus:#0879B8;
  --xc-divider:#eef1f6;

  /* ---- 语义 ---- */
  --xc-sale:#d92d20; --xc-sale-bg:#fef3f2;
  --xc-new:#067647;  --xc-new-bg:#ecfdf3;
  --xc-warn:#b54708; --xc-warn-bg:#fffaeb;
  --xc-success:#067647; --xc-success-bg:#ecfdf3;
  --xc-error:#d92d20; --xc-error-bg:#fef3f2;
  --xc-info:#1750d4;  --xc-info-bg:#eff8ff;

  /* ---- 渐变 ---- */
  --xc-grad-hero:radial-gradient(110% 130% at 82% 12%,rgba(8,121,184,.13) 0%,rgba(247,251,253,0) 62%),
                 radial-gradient(90% 120% at 8% 92%,rgba(38,189,210,.14) 0%,rgba(234,244,250,0) 64%),
                 linear-gradient(180deg,#F8FBFD 0%,#EAF4FA 100%);
  --xc-grad-brand:linear-gradient(135deg,#0879B8 0%,#0a628c 100%);
  --xc-grad-panel:linear-gradient(135deg,#F4F8FA 0%,#E3F1F8 100%);
  --xc-grad-card:linear-gradient(180deg,#ffffff 0%,#fbfcfe 100%);

  /* ---- 字体 ---- */
  --xc-font-sans:"Poppins","Inter",system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif;
  --xc-font-mono:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,"Liberation Mono",monospace;

  /* ---- 字号 ---- */
  --xc-fs-display:50px; --xc-fs-h1:40px; --xc-fs-h2:31px; --xc-fs-h3:25px;
  --xc-fs-h4:20px; --xc-fs-h5:17px; --xc-fs-body-lg:16px; --xc-fs-body:14px;
  --xc-fs-body-sm:13px; --xc-fs-caption:12px; --xc-fs-eyebrow:10px;
  --xc-fs-price-xl:30px; --xc-fs-price-lg:22px; --xc-fs-price-md:18px; --xc-fs-price-sm:14px;

  /* ---- 圆角 ---- */
  --xc-r-xs:4px; --xc-r-sm:6px; --xc-r-md:10px; --xc-r-lg:14px;
  --xc-r-xl:20px; --xc-r-pill:999px; --xc-r-circle:50%;

  /* ---- 阴影 ---- */
  --xc-sh-1:0 1px 2px rgba(16,24,40,.04),0 1px 3px rgba(16,24,40,.06);
  --xc-sh-2:0 4px 10px -2px rgba(16,24,40,.08),0 2px 6px -2px rgba(16,24,40,.05);
  --xc-sh-3:0 12px 24px -8px rgba(16,24,40,.14),0 4px 8px -4px rgba(16,24,40,.06);
  --xc-sh-4:0 24px 48px -12px rgba(16,24,40,.20);
  --xc-sh-brand:0 8px 20px -6px rgba(8,121,184,.32);
  --xc-sh-glow:0 0 0 1px rgba(8,121,184,.16),0 8px 30px -10px rgba(8,121,184,.40);
  --xc-sh-dark:0 16px 40px -12px rgba(0,0,0,.55);

  /* ---- 间距 ---- */
  --xc-s-1:4px; --xc-s-2:8px; --xc-s-3:12px; --xc-s-4:16px; --xc-s-5:20px;
  --xc-s-6:24px; --xc-s-7:32px; --xc-s-8:40px; --xc-s-9:48px; --xc-s-10:64px;
  --xc-s-11:80px; --xc-s-12:96px; --xc-s-13:120px;

  /* ---- 栅格 ---- */
  --xc-container-xl:1620px; --xc-container-lg:1140px; --xc-container-md:960px;
  --xc-fluid:20px; --xc-gutter:20px; --xc-card-gap:20px;
}

/* ---- 覆盖 Porto 父主题变量（必须 !important 的是主题用 !important 的）---- */
:root{
  --porto-primary-color:#0879B8;
  --porto-secondary-color:#e46307;
  --porto-dark-color:#102C40;
  --porto-heading-color:#101828;
  --porto-body-color:#475467;
  --porto-body-bg:#ffffff;
  --porto-sale-color:#d92d20;
  --porto-sale-color-inverse:#ffffff;
  --porto-new-bgc:#067647;
  --porto-hot-color:#b54708;
  --porto-border-color:#e6ebf2;
  --porto-input-bc:#d7dfeb;
  --porto-gray-5:#e6ebf2;
  --porto-body-ff:var(--xc-font-sans);
}

body{
  font-family:var(--xc-font-sans);
  font-size:var(--xc-fs-body);
  line-height:1.714;
  color:var(--xc-text-2);
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;
}

h1,h2,h3,h4,h5,h6{ color:var(--xc-text-1); font-family:var(--xc-font-sans); }

/* 价格等宽数字 */
.price,.woocommerce-Price-amount{ font-variant-numeric:tabular-nums; }

/* 全局焦点可见 */
a:focus-visible,button:focus-visible,input:focus-visible,
select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{
  outline:2px solid var(--xc-primary-500);
  outline-offset:2px;
  border-radius:3px;
}

/* 区块标题统一规格 —— demo 的 .vc_custom_heading 没有独立字号样式，
   导致标题与正文同重。这是本站"纯纯的文字"的直接原因。 */
.vc_custom_heading,
.page-wrapper h2.vc_custom_heading{
  font-size:var(--xc-fs-h2);
  line-height:1.3;
  font-weight:700;
  letter-spacing:-.05em;
  color:var(--xc-text-1);
  margin-bottom:var(--xc-s-7);
}
