/*
 * Anthropic Style — Base CSS (from anthropic-style-cn-main)
 */
:root {
  --color-bg-base:        #ECE9E0;
  --color-bg-raised:      #F5F3EC;
  --color-bg-overlay:     #FDFCF8;
  --color-bg-inverted:    #141413;
  --color-text-primary:   #141413;
  --color-text-secondary: #6B6860;
  --color-text-muted:     #B0AEA5;
  --color-text-inverted:  #FAF9F5;
  --color-text-link:      #C96442;
  --color-border-default: #D8D5CC;
  --color-border-subtle:  #E8E6DC;
  --color-border-strong:  #9B9890;
  --color-accent-orange:  #D97757;
  --color-accent-warm:    #C96442;
  --color-accent-blue:    #6A9BCC;
  --color-accent-green:   #788C5D;
  --color-accent-sand:    #C4B99A;
  --color-success:        #6B8F47;
  --color-warning:        #C9943A;
  --color-error:          #C0453A;
  --color-info:           #5A89B8;
  --font-display:  'Lora', 'Georgia', serif;
  --font-heading:  'Poppins', 'Arial', sans-serif;
  --font-body:     'Lora', 'Georgia', serif;
  --font-mono:     'JetBrains Mono', 'Consolas', monospace;
  --font-heading-cn:  'Poppins', 'Noto Sans SC', 'PingFang SC', 'Microsoft YaHei', sans-serif;
  --font-body-cn:     'Lora', 'Noto Serif SC', 'Songti SC', serif;
  --text-xs:    0.75rem;
  --text-sm:    0.875rem;
  --text-base:  1rem;
  --text-md:    1.125rem;
  --text-lg:    1.25rem;
  --text-xl:    1.5rem;
  --text-2xl:   2rem;
  --text-3xl:   2.75rem;
  --text-4xl:   3.5rem;
  --leading-normal: 1.55;
  --leading-cn-normal: 1.75;
  --space-2:   8px;
  --space-3:   12px;
  --space-4:   16px;
  --space-6:   24px;
  --space-8:   32px;
  --space-12:  48px;
  --space-16:  64px;
  --max-width-layout: 1200px;
  --radius-md:   8px;
  --radius-lg:   16px;
  --ease-default: cubic-bezier(0.16, 1, 0.3, 1);
  --duration-normal: 250ms;
  --shadow-card:     0 2px 12px rgba(20, 20, 19, 0.07);
  --shadow-elevated: 0 8px 32px rgba(20, 20, 19, 0.08);
  --color-accent-dim: rgba(217, 119, 87, 0.12);
}
@media (prefers-color-scheme: dark) {
  :root {
    --color-bg-base:        #1A1916;
    --color-bg-raised:      #222119;
    --color-bg-overlay:     #2C2B26;
    --color-bg-inverted:    #F5F3EC;
    --color-text-primary:   #EAE7DC;
    --color-text-secondary: #9D9A91;
    --color-text-muted:     #5C5A54;
    --color-border-default: #3A3830;
  }
}
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
  margin: 0;
  background: var(--color-bg-base);
  color: var(--color-text-primary);
  font-family: var(--font-heading-cn);
  font-size: var(--text-base);
  line-height: var(--leading-cn-normal);
  -webkit-font-smoothing: antialiased;
}
p, h1, h2, h3 { margin: 0; overflow-wrap: break-word; }
a { color: var(--color-text-link); text-decoration: none; }
a:hover { text-decoration: underline; }
:focus-visible {
  outline: 2px solid var(--color-accent-orange);
  outline-offset: 3px;
}
.page-container {
  width: 100%;
  max-width: var(--max-width-layout);
  margin: 0 auto;
  padding-inline: clamp(var(--space-6), 5vw, var(--space-16));
}
.section-hero { padding-block: clamp(64px, 10vw, 120px); }
.section-content { padding-block: var(--space-12); }
