/* TOUCHLINE editorial system. Breakpoint queries in styles.css mirror these values. */
:root {
  color-scheme: light;
  --font-body: 'PingFang SC', 'Microsoft YaHei', 'Noto Sans CJK SC', system-ui, sans-serif;
  --font-brand: 'Touchline Display', var(--font-body);
  --weight-regular: 400;
  --weight-medium: 500;
  --weight-semibold: 600;
  --weight-bold: 700;
  --text-home-h1: 52px;
  --text-category-h1: 40px;
  --text-article-h1: 38px;
  --text-h2: 30px;
  --text-h3: 21px;
  --text-body: 16px;
  --text-summary: 17px;
  --text-nav: 17px;
  --text-menu-title: 18px;
  --text-menu-link: 16px;
  --weight-nav: 650;
  --nav-panel-width: 1040px;
  --nav-panel-gap: 36px;
  --text-label: 14px;
  --text-meta: 13px;
  --line-heading: 1.35;
  --line-body: 1.8;
  --line-reading: 1.8;
  --bg: #FFFFFF;
  --soft: #F8FAFC;
  --heading: #0F172A;
  --text: #334155;
  --muted: #475569;
  --blue: #1D4ED8;
  --hover: #1E40AF;
  --pressed: #1E3A8A;
  --green: #0F766E;
  --border: #E2E8F0;
  --border-control: #64748B;
  --focus-ring: #1D4ED8;
  --container: 1248px;
  --reading-width: 760px;
  --article-container: 1120px;
  --gutter: 48px;
  --grid-gap: 32px;
  --section-space: 48px;
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;
  --space-10: 40px;
  --space-12: 48px;
  --header-height: 80px;
  --control-height: 48px;
  --touch-min: 44px;
  --control-radius: 4px;
  --control-border: 1px;
  --shadow-control: 0 1px 2px rgb(15 23 42 / 8%);
  --shadow-control-hover: 0 3px 7px rgb(15 23 42 / 13%);
  --transition-time: 200ms;
  --transition-ease: cubic-bezier(.2,.7,.3,1);
  --breakpoint-mobile: 640px;
  --breakpoint-tablet: 960px;
  --breakpoint-wide: 1200px;
}
@media (max-width: 960px) {
  :root { --text-home-h1: 42px; --text-category-h1: 36px; --text-article-h1: 34px; --text-h2: 28px; --gutter: 32px; --grid-gap: 24px; --section-space: 40px; --header-height: 76px; }
}
@media (max-width: 640px) {
  :root { --text-home-h1: 32px; --text-category-h1: 32px; --text-article-h1: 28px; --text-h2: 26px; --text-h3: 20px; --text-summary: 16px; --gutter: 20px; --grid-gap: 20px; --section-space: 32px; --header-height: 72px; }
}
@media (max-width: 360px) { :root { --text-home-h1: 30px; --gutter: 16px; } }
