/**
 * Apple 级设计令牌 — 全站色彩、排版、弹簧动效
 */
:root {
    --apple-bg-primary: #fbfbfd;
    --apple-bg-secondary: #f5f5f7;
    --apple-bg-card: #ffffff;
    --apple-text-primary: #1d1d1f;
    --apple-text-secondary: #6e6e73;
    --apple-text-tertiary: #86868b;
    --apple-accent: #0071e3;
    --apple-accent-hover: #0077ed;
    --apple-accent-active: #0062c4;
    --apple-border-subtle: rgba(0, 0, 0, 0.08);
    --apple-glass-bg: rgba(255, 255, 255, 0.8);
    --apple-glass-blur: blur(20px) saturate(180%);
    --apple-shadow-soft: 0 4px 16px rgba(0, 0, 0, 0.06), 0 12px 32px rgba(0, 0, 0, 0.04);
    --apple-radius-card: 20px;
    --apple-radius-pill: 9999px;
    --apple-spring: cubic-bezier(0.16, 1, 0.3, 1);
    --apple-font-stack: -apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", "PingFang SC", "Helvetica Neue", sans-serif;
}

[data-theme="dark"] {
    --apple-bg-primary: #000000;
    --apple-bg-secondary: #161617;
    --apple-bg-card: #1d1d1f;
    --apple-text-primary: #f5f5f7;
    --apple-text-secondary: #a1a1a6;
    --apple-text-tertiary: #86868b;
    --apple-accent: #2997ff;
    --apple-accent-hover: #47a3ff;
    --apple-accent-active: #0077ed;
    --apple-border-subtle: rgba(255, 255, 255, 0.12);
    --apple-glass-bg: rgba(30, 30, 35, 0.82);
    --apple-shadow-soft: 0 4px 20px rgba(0, 0, 0, 0.35), 0 12px 40px rgba(0, 0, 0, 0.25);
}

body {
    font-family: var(--apple-font-stack);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* Sticky footer：内容不足一屏时 Footer 贴底，避免下方露出背景 */
body {
    display: flex;
    flex-direction: column;
}
body > main {
    flex: 1 0 auto;
}
body > footer {
    flex-shrink: 0;
}
