:root {
  color-scheme: light;
  --orange-50:  #FFF5EE;
  --orange-100: #FFE7D6;
  --orange-200: #FFD0AC;
  --orange-300: #FFB27C;
  --orange-400: #FB8C49;
  --orange-500: #F26A1F;
  --orange-600: #E8590C;
  --orange-700: #C2410C;
  --orange-800: #9A3412;
  --orange-900: #7C2D12;
  --amber-50:  #FFF9EB;
  --amber-100: #FEF0C7;
  --amber-300: #FCD34D;
  --amber-500: #D97706;
  --amber-700: #B45309;
  --neutral-0:    #FFFFFF;
  --neutral-50:   #FAF9F6;
  --neutral-100:  #F4F2ED;
  --neutral-150:  #EFECE6;
  --neutral-200:  #E7E2DA;
  --neutral-300:  #D5CFC5;
  --neutral-400:  #A89F92;
  --neutral-500:  #7A7065;
  --neutral-600:  #6B6157;
  --neutral-700:  #423C34;
  --neutral-800:  #2B2620;
  --neutral-900:  #1F1B16;
  --green-50:  #ECFDF3;
  --green-600: #15803D;
  --green-700: #166534;
  --red-50:    #FEF2F2;
  --red-600:   #B91C1C;
  --red-700:   #991B1B;
  --blue-50:   #EFF6FF;
  --blue-600:  #1D4ED8;
  --blue-700:  #1E40AF;
  --bg:            var(--neutral-50);
  --surface:       var(--neutral-0);
  --fg:            var(--neutral-900);
  --muted:         var(--neutral-600);
  --accent:        var(--orange-700);
  --accent-bright: var(--orange-500);
  --border:        var(--neutral-200);
  --fg-2:          var(--neutral-700);
  --surface-warm:  var(--neutral-100);
  --surface-sunken:var(--neutral-150);
  --meta:          var(--neutral-500);
  --border-soft:   var(--neutral-150);
  --border-strong: var(--neutral-300);
  --placeholder:   var(--neutral-400);
  --accent-hover:  var(--orange-800);
  --accent-active: var(--orange-900);
  --accent-on:     var(--neutral-0);
  --accent-soft:   var(--orange-50);
  --accent-soft-2: var(--orange-100);
  --success:      var(--green-600);
  --success-soft: var(--green-50);
  --success-on:   var(--neutral-0);
  --warn:         var(--amber-700);
  --warn-soft:    var(--amber-50);
  --warn-on:      var(--neutral-0);
  --danger:       var(--red-600);
  --danger-soft:  var(--red-50);
  --danger-on:    var(--neutral-0);
  --info:         var(--blue-600);
  --info-soft:    var(--blue-50);
  --info-on:      var(--neutral-0);
  --rating:       var(--amber-300);
  --font-display: "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "微软雅黑",
                  -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
                  "Helvetica Neue", Arial, "Noto Sans SC", sans-serif;
  --font-body:    "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "微软雅黑",
                  -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
                  "Helvetica Neue", Arial, "Noto Sans SC", sans-serif;
  --font-mono:    ui-monospace, "SF Mono", "Cascadia Mono", "Roboto Mono",
                  Consolas, "Liberation Mono", Menlo, monospace;
  --font-num:     "DIN Alternate", "Bahnschrift", "Roboto Condensed",
                  var(--font-body);
  --text-xs:   0.75rem;
  --text-sm:   0.875rem;
  --text-base: 1rem;
  --text-lg:   1.125rem;
  --text-xl:   1.25rem;
  --text-2xl:  1.5rem;
  --text-3xl:  1.875rem;
  --text-4xl:  2.25rem;
  --text-5xl:  2.75rem;
  --leading-tight:   1.2;
  --leading-snug:    1.35;
  --leading-normal:  1.5;
  --leading-relaxed: 1.7;
  --tracking-display: -0.02em;
  --tracking-title:  -0.01em;
  --tracking-body:    0;
  --tracking-caps:    0.08em;
  --tracking-cn-sm:   0.01em;
  --fw-read:      400;
  --fw-emphasize: 500;
  --fw-announce:  700;
  --space-0:  0;
  --space-1:  0.25rem;
  --space-2:  0.5rem;
  --space-3:  0.75rem;
  --space-4:  1rem;
  --space-5:  1.25rem;
  --space-6:  1.5rem;
  --space-8:  2rem;
  --space-10: 2.5rem;
  --space-12: 3rem;
  --space-16: 4rem;
  --space-20: 5rem;
  --space-24: 6rem;
  --radius-none: 0;
  --radius-xs:   3px;
  --radius-sm:   6px;
  --radius-md:   10px;
  --radius-lg:   14px;
  --radius-xl:   20px;
  --radius-pill: 9999px;
  --bp-sm: 640px;
  --bp-md: 768px;
  --bp-lg: 1024px;
  --bp-xl: 1280px;
  --container-max:   1200px;
  --container-narrow:768px;
  --container-gutter: 16px;
  --container-gutter-md: 24px;
  --container-gutter-lg: 32px;
  --grid-columns: 12;
  --grid-gap: 24px;
  --section-y-phone:   40px;
  --section-y-tablet:  56px;
  --section-y-desktop: 80px;
  --header-h:        64px;
  --header-h-lg:     72px;
  --bottombar-h:     56px;
  --footer-legal-h:  auto;
  --elev-flat:   none;
  --elev-ring:   0 0 0 1px var(--border);
  --elev-xs:     0 1px 2px rgba(52, 38, 20, 0.05);
  --elev-sm:     0 1px 3px rgba(52, 38, 20, 0.07), 0 1px 2px rgba(52, 38, 20, 0.04);
  --elev-md:     0 4px 12px rgba(52, 38, 20, 0.08);
  --elev-lg:     0 8px 24px rgba(52, 38, 20, 0.10);
  --elev-xl:     0 16px 40px rgba(52, 38, 20, 0.12);
  --elev-accent: 0 6px 18px rgba(194, 65, 12, 0.22);
  --elev-sticky: 0 2px 10px rgba(52, 38, 20, 0.08);
  --z-base:     0;
  --z-raised:   10;
  --z-sticky:   100;
  --z-dropdown: 200;
  --z-overlay:  300;
  --z-modal:    400;
  --z-drawer:   450;
  --z-toast:    500;
  --z-top:      600;
  --motion-instant: 80ms;
  --motion-fast:    150ms;
  --motion-base:    200ms;
  --motion-slow:    300ms;
  --ease-standard:  cubic-bezier(0.2, 0, 0, 1);
  --ease-out:       cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in:        cubic-bezier(0.4, 0, 1, 1);
  --focus-ring:       0 0 0 3px rgba(232, 89, 12, 0.35);
  --focus-ring-inset: 0 0 0 2px var(--surface), 0 0 0 4px rgba(232, 89, 12, 0.55);
  --btn-primary-bg:        var(--accent);
  --btn-primary-bg-hover:  var(--accent-hover);
  --btn-primary-bg-active: var(--accent-active);
  --btn-primary-text:      var(--accent-on);
  --btn-primary-shadow:    var(--elev-accent);
  --btn-secondary-bg:        var(--surface);
  --btn-secondary-border:    var(--accent);
  --btn-secondary-text:      var(--accent);
  --btn-secondary-bg-hover:  var(--accent-soft);
  --btn-ghost-bg:       transparent;
  --btn-ghost-text:     var(--fg-2);
  --btn-ghost-bg-hover: var(--surface-warm);
  --btn-danger-bg:       var(--danger);
  --btn-danger-text:     var(--danger-on);
  --btn-danger-bg-hover: var(--red-700);
  --btn-disabled-bg:   var(--neutral-200);
  --btn-disabled-text: var(--neutral-400);
  --btn-h-sm: 36px;
  --btn-h-md: 44px;
  --btn-h-lg: 52px;
  --btn-px-sm: var(--space-4);
  --btn-px-md: var(--space-5);
  --btn-px-lg: var(--space-6);
  --input-bg:             var(--surface);
  --input-border:         var(--border-strong);
  --input-text:           var(--fg);
  --input-placeholder:    var(--placeholder);
  --input-focus-border:   var(--accent-bright);
  --input-focus-ring:     var(--focus-ring);
  --input-error-border:   var(--danger);
  --input-error-ring:     0 0 0 3px rgba(185, 28, 28, 0.18);
  --input-success-border: var(--success);
  --input-disabled-bg:    var(--surface-warm);
  --input-disabled-text:  var(--neutral-400);
  --input-h:              48px;
  --card-bg:            var(--surface);
  --card-border:        var(--border);
  --card-radius:        var(--radius-lg);
  --card-padding:       var(--space-6);
  --card-shadow:        var(--elev-sm);
  --card-hover-border:  var(--orange-300);
  --card-hover-shadow:  var(--elev-md);
  --badge-bg:      var(--accent-soft);
  --badge-text:    var(--accent);
  --badge-radius:  var(--radius-sm);
  --badge-px:      var(--space-2);
  --table-header-bg:    var(--surface-warm);
  --table-row-hover:    var(--accent-soft);
  --table-border:       var(--border-soft);
  --table-cell-padding: var(--space-3) var(--space-4);
  --footer-bg:            var(--neutral-800);
  --footer-fg:            var(--neutral-100);
  --footer-muted:         var(--neutral-400);
  --footer-border:        rgba(255, 255, 255, 0.10);
  --footer-link:          var(--neutral-100);
  --footer-link-underline:rgba(255, 255, 255, 0.35);
  --footer-link-hover:    var(--orange-300);
  --footer-link-active:   var(--orange-200);
  --footer-link-visited:  var(--neutral-100);
  --footer-focus-ring:    0 0 0 3px rgba(255, 255, 255, 0.5);
  --skeleton-base:  var(--neutral-150);
  --skeleton-sheen: rgba(255, 255, 255, 0.65);
}
