@font-face {
    font-family: "Xxdfq Serif";
    src: url("/fonts/NotoSerifSC-site.woff2") format("woff2");
    font-weight: 200 900;
    font-display: swap;
}
@font-face {
    font-family: "Xxdfq Sans";
    src: url("/fonts/InterVariable.woff2") format("woff2");
    font-weight: 100 900;
    font-display: swap;
}
:root {
    --paper: #f7f8f6;
    --surface: #ffffff;
    --ink: #111820;
    --ink-soft: #53606c;
    --ink-faint: #7f8992;
    --line: #d9dee5;
    --line-strong: #b8c0ca;
    --blue: #1265e8;
    --blue-dark: #0d4fb9;
    --blue-pale: #eaf2ff;
    --success: #147d55;
    --error: #b83b36;
    --warning: #9a6510;
    --font-display: "Xxdfq Serif", "Songti SC", "STSong", serif;
    --font-ui: "Xxdfq Sans", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
    --container: 1360px;
    --gutter: clamp(24px, 4.4vw, 72px);
    --section: clamp(88px, 11vw, 168px);
    --space-1: 4px; --space-2: 8px; --space-3: 12px; --space-4: 16px;
    --space-5: 24px; --space-6: 32px; --space-7: 48px; --space-8: 64px; --space-9: 96px;
    --radius-sm: 2px; --radius-md: 8px;
    --shadow-panel: 0 24px 80px rgba(17, 24, 32, 0.12);
    --ease: cubic-bezier(0.22, 1, 0.36, 1);
    --nav-height: 76px;
    --color-primary-50: var(--paper); --color-primary-100: #f0f2f1;
    --color-primary-200: var(--line); --color-primary-300: var(--line-strong);
    --color-secondary-800: var(--ink); --color-secondary-900: #06090c; --color-secondary-accent: #253443;
    --color-accent-art: var(--blue); --color-accent-warm: var(--blue-dark); --color-accent-cool: #476b93; --color-accent-earth: #53606c;
    --color-text-primary: var(--ink); --color-text-secondary: var(--ink-soft); --color-text-muted: var(--ink-faint); --color-text-light: #ffffff;
    --color-success: var(--success); --color-warning: var(--warning); --color-error: var(--error); --color-info: var(--blue);
    --color-error-light: #fbefee; --color-success-light: #ebf6f1;
    --border-radius-sm: var(--radius-sm); --border-radius-md: var(--radius-md); --border-radius-lg: 12px; --border-radius-xl: 18px; --border-radius-full: 999px;
    --space-xs: var(--space-1); --space-sm: var(--space-2); --space-md: var(--space-4); --space-lg: var(--space-5); --space-xl: var(--space-6); --space-2xl: var(--space-7); --space-3xl: var(--space-8);
    --font-serif: var(--font-display); --font-sans: var(--font-ui);
    --transition-fast: 160ms ease; --transition-normal: 320ms var(--ease); --transition-slow: 700ms var(--ease);
    --shadow-subtle: 0 1px 0 rgba(17, 24, 32, 0.08); --shadow-medium: 0 16px 45px rgba(17, 24, 32, 0.1); --shadow-art: var(--shadow-panel);
}
