.lang-switcher[data-v-e203576e]{display:inline-flex;align-items:center;gap:var(--space-2);padding:.5rem .95rem;background:#ffffff05;border:1px solid var(--color-ink-muted);border-radius:var(--radius-full);color:var(--color-text-secondary);cursor:pointer;font-size:var(--text-sm);font-family:var(--font-fallback);font-weight:600;transition:all var(--transition-fast)}.lang-switcher[data-v-e203576e]:hover{color:var(--color-text);border-color:#c94f3d80;background:#c94f3d14}.lang-switcher svg[data-v-e203576e]{opacity:.7}.lang-switcher:hover svg[data-v-e203576e]{opacity:1}.theme-switcher[data-v-6801e551]{position:relative;display:inline-flex;align-items:center;gap:var(--space-2);padding:.5rem .95rem;background:var(--surface-1);border:1px solid var(--color-ink-muted);border-radius:var(--radius-full);color:var(--color-text-secondary);cursor:pointer;font-size:var(--text-sm);font-family:var(--font-fallback);font-weight:600;transition:color var(--transition-fast),background var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast);user-select:none;-webkit-user-select:none}.theme-switcher[data-v-6801e551]:hover{color:var(--color-text);border-color:var(--color-vermilion);background:var(--color-vermilion-muted);transform:translateY(-1px)}.theme-switcher__icon[data-v-6801e551]{flex-shrink:0;opacity:.85;transition:transform var(--transition-base),opacity var(--transition-fast)}.theme-switcher:hover .theme-switcher__icon[data-v-6801e551]{opacity:1;transform:rotate(18deg) scale(1.08)}.theme-switcher__text[data-v-6801e551]{line-height:1;white-space:nowrap}.theme-switcher__dot[data-v-6801e551]{width:5px;height:5px;border-radius:50%;background-color:var(--color-vermilion);opacity:.8;margin-left:-2px}.header[data-v-aafaa3db]{position:fixed;top:0;left:0;right:0;z-index:var(--z-header);background:transparent;border-bottom:1px solid transparent;transition:background var(--transition-base),border-color var(--transition-base),backdrop-filter var(--transition-base),box-shadow var(--transition-base)}.header--scrolled[data-v-aafaa3db]{background:var(--header-bg-scrolled);backdrop-filter:blur(16px) saturate(1.2);-webkit-backdrop-filter:blur(16px) saturate(1.2);border-bottom-color:var(--hairline);box-shadow:0 1px 0 var(--hairline)}.header__container[data-v-aafaa3db]{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);height:var(--header-height)}.header__logo[data-v-aafaa3db]{display:flex;align-items:center;gap:var(--space-2);text-decoration:none;color:var(--color-text);transition:color var(--transition-fast)}.header__logo[data-v-aafaa3db]:hover{color:var(--color-vermilion)}.header__logo-icon[data-v-aafaa3db]{flex-shrink:0;transition:transform var(--transition-base);filter:drop-shadow(0 0 6px rgba(201,79,61,.35))}.header__logo:hover .header__logo-icon[data-v-aafaa3db]{transform:rotate(-6deg) scale(1.06)}.header__logo-text[data-v-aafaa3db]{font-family:var(--font-display);font-size:1.45rem;font-weight:var(--font-bold);color:var(--color-vermilion);line-height:1}.header__logo-separator[data-v-aafaa3db]{color:var(--color-ink-border);font-size:1.1rem}.header__logo-name[data-v-aafaa3db]{font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--font-semibold);letter-spacing:var(--tracking-wide)}.header__nav[data-v-aafaa3db]{display:flex;align-items:center;gap:var(--space-1)}.header__nav-item[data-v-aafaa3db]{position:relative;padding:var(--space-2) var(--space-4);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-secondary);text-decoration:none;border-radius:var(--radius-md);transition:color var(--transition-fast),background var(--transition-fast)}.header__nav-item[data-v-aafaa3db]:after{content:"";position:absolute;left:var(--space-4);right:var(--space-4);bottom:2px;height:2px;border-radius:2px;background:var(--color-vermilion);transform:scaleX(0);transform-origin:left;transition:transform var(--transition-base) var(--ease-out)}.header__nav-item[data-v-aafaa3db]:hover{color:var(--color-text);background:#ffffff0a}.header__nav-item[data-v-aafaa3db]:hover:after{transform:scaleX(1)}.header__nav-item--active[data-v-aafaa3db]{color:var(--color-text)}.header__nav-item--active[data-v-aafaa3db]:after{transform:scaleX(1)}.header__actions[data-v-aafaa3db]{display:flex;align-items:center;gap:var(--space-3)}.header__contact[data-v-aafaa3db]{gap:var(--space-2);padding:.5rem 1.05rem}.header__mobile-toggle[data-v-aafaa3db]{display:none;padding:var(--space-2)}.header__hamburger[data-v-aafaa3db]{display:flex;flex-direction:column;justify-content:center;width:24px;height:24px;gap:5px}.header__hamburger span[data-v-aafaa3db]{display:block;width:18px;height:2px;background-color:var(--color-text);border-radius:2px;transition:all var(--transition-base)}.header__hamburger--open span[data-v-aafaa3db]:nth-child(1){transform:translateY(7px) rotate(45deg)}.header__hamburger--open span[data-v-aafaa3db]:nth-child(2){opacity:0}.header__hamburger--open span[data-v-aafaa3db]:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.header__mobile-menu[data-v-aafaa3db]{display:none;position:absolute;top:100%;left:0;right:0;background:var(--header-mobile-bg);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--hairline);padding:var(--space-4) 0 var(--space-6);opacity:0;transform:translateY(-8px);pointer-events:none;transition:all var(--transition-base)}.header__mobile-menu--open[data-v-aafaa3db]{opacity:1;transform:translateY(0);pointer-events:auto}.header__mobile-nav[data-v-aafaa3db]{display:flex;flex-direction:column;padding-inline:var(--gutter)}.header__mobile-nav-item[data-v-aafaa3db]{padding:var(--space-3) var(--space-2);font-size:var(--text-base);color:var(--color-text-secondary);border-radius:var(--radius-md);border-bottom:1px solid var(--hairline);transition:color var(--transition-fast),background var(--transition-fast),padding-left var(--transition-fast)}.header__mobile-nav-item[data-v-aafaa3db]:last-of-type{border-bottom:none}.header__mobile-nav-item[data-v-aafaa3db]:hover{color:var(--color-text);background:var(--surface-1);padding-left:var(--space-4)}.header__mobile-actions[data-v-aafaa3db]{padding:var(--space-4) var(--space-2) 0;display:flex;align-items:center;gap:var(--space-3)}@media(max-width:820px){.header__nav[data-v-aafaa3db],.header__actions[data-v-aafaa3db]{display:none}.header__mobile-toggle[data-v-aafaa3db],.header__mobile-menu[data-v-aafaa3db]{display:block}}.footer[data-v-eb6f5f9a]{position:relative;background:var(--surface-1);border-top:1px solid var(--hairline);padding:var(--space-12) 0 var(--space-8);overflow:hidden}.footer__container[data-v-eb6f5f9a]{position:relative;z-index:1}.footer__top[data-v-eb6f5f9a]{display:flex;flex-direction:column;gap:var(--space-8)}.footer__brand[data-v-eb6f5f9a]{display:flex;flex-direction:column;gap:var(--space-3)}.footer__logo[data-v-eb6f5f9a]{display:inline-flex;align-items:center;gap:var(--space-2)}.footer__logo-text[data-v-eb6f5f9a]{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--color-vermilion)}.footer__logo-separator[data-v-eb6f5f9a]{color:var(--color-ink-border);font-size:var(--text-lg)}.footer__logo-name[data-v-eb6f5f9a]{font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-text)}.footer__tagline[data-v-eb6f5f9a]{font-size:var(--text-sm);color:var(--color-text-tertiary);letter-spacing:var(--tracking-wide);margin:0}.footer__links[data-v-eb6f5f9a]{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-6)}.footer__link[data-v-eb6f5f9a]{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--color-text-secondary);text-decoration:none;font-size:var(--text-sm);transition:color var(--transition-fast)}.footer__link--icon[data-v-eb6f5f9a]{padding:var(--space-2) var(--space-3);border:1px solid transparent;border-radius:var(--radius-md);transition:all var(--transition-fast)}.footer__link--icon[data-v-eb6f5f9a]:hover{color:var(--color-text);border-color:var(--color-ink-muted);background:#ffffff08}.footer__link[data-v-eb6f5f9a]:hover:not(.footer__link--icon){color:var(--color-vermilion)}.footer__divider[data-v-eb6f5f9a]{height:1px;background:linear-gradient(90deg,transparent,var(--hairline-strong) 30%,var(--hairline-strong) 70%,transparent);margin:var(--space-8) 0 var(--space-6)}.footer__copyright[data-v-eb6f5f9a]{font-size:var(--text-sm);color:var(--color-text-tertiary);margin:0;text-align:center}.footer__icp[data-v-eb6f5f9a]{font-size:var(--text-xs);color:var(--color-text-tertiary);margin:var(--space-3) 0 0;text-align:center}.footer__icp a[data-v-eb6f5f9a]{color:inherit;text-decoration:none;transition:color var(--transition-fast)}.footer__icp a[data-v-eb6f5f9a]:hover{color:var(--color-vermilion)}.footer__seal[data-v-eb6f5f9a]{position:absolute;right:clamp(1rem,4vw,2.5rem);top:50%;transform:translateY(-50%) rotate(-12deg);width:52px;height:52px;border:1.5px solid rgba(201,79,61,.28);border-radius:10px;display:flex;align-items:center;justify-content:center;opacity:.5}.footer__seal span[data-v-eb6f5f9a]{font-family:var(--font-display);font-size:var(--text-xs);color:var(--color-vermilion);writing-mode:vertical-rl;letter-spacing:.2em}@media(max-width:640px){.footer__seal[data-v-eb6f5f9a]{display:none}}:root{--bg-primary: var(--color-ink);--bg-secondary: var(--color-ink-light);--bg-tertiary: var(--color-ink-muted);--spacing-xs: var(--space-1);--spacing-sm: var(--space-2);--spacing-md: var(--space-3);--spacing-lg: var(--space-4);--spacing-xl: var(--space-5);--spacing-2xl: var(--space-6);--spacing-3xl: var(--space-8)}:root,[data-theme=dark]{--color-ink: #0b0b0d;--color-ink-light: #131316;--color-ink-border: #222226;--color-ink-muted: #2c2c31;--surface-1: #101013;--surface-2: #19191d;--surface-3: #232329;--hairline: rgba(255, 255, 255, .06);--hairline-strong: rgba(255, 255, 255, .1);--color-text: #ecebe8;--color-text-secondary: #a3a09a;--color-text-tertiary: #6d6a66;--color-text-faint: #4a4845;--color-vermilion: #c94f3d;--color-vermilion-light: #dd6f5c;--color-vermilion-bright: #ef8a77;--color-vermilion-muted: rgba(201, 79, 61, .14);--color-gold: #c2a24a;--color-gold-light: #d8bb6a;--color-jade: #35624f;--color-jade-light: #5d9480;--color-jade-muted: rgba(61, 106, 84, .16);--color-link: #d9796c;--color-link-hover: #eda294;--color-success: #6fae8c;--color-warning: #d3a04a;--color-danger: #d05a4d;--shadow-subtle: 0 1px 2px rgba(0, 0, 0, .35);--shadow-card: 0 2px 8px rgba(0, 0, 0, .28), 0 1px 0 rgba(255, 255, 255, .02) inset;--shadow-hover: 0 10px 32px rgba(0, 0, 0, .5), 0 2px 0 rgba(255, 255, 255, .03) inset;--shadow-glow-vermilion: 0 0 0 1px rgba(201, 79, 61, .25), 0 6px 28px rgba(201, 79, 61, .16);--shadow-focus: 0 0 0 3px rgba(201, 79, 61, .28);--header-bg-scrolled: rgba(11, 11, 13, .85);--header-mobile-bg: rgba(11, 11, 13, .97);--card-highlight: rgba(255, 255, 255, .022);--grid-line: rgba(255, 255, 255, .022);--ambient-glow-1: rgba(201, 79, 61, .05);--ambient-glow-2: rgba(98, 130, 113, .04)}[data-theme=light]{--color-ink: #f7f6f2;--color-ink-light: #ffffff;--color-ink-border: #e4e0d7;--color-ink-muted: #d4cfc3;--surface-1: #eeebe3;--surface-2: #ffffff;--surface-3: #e6e2d8;--hairline: rgba(0, 0, 0, .06);--hairline-strong: rgba(0, 0, 0, .12);--color-text: #1a1a1c;--color-text-secondary: #53504a;--color-text-tertiary: #78746c;--color-text-faint: #aba79d;--color-vermilion: #b93724;--color-vermilion-light: #cb4632;--color-vermilion-bright: #982a1a;--color-vermilion-muted: rgba(185, 55, 36, .08);--color-gold: #825b16;--color-gold-light: #9a6d1c;--color-jade: #24523d;--color-jade-light: #326b52;--color-jade-muted: rgba(36, 82, 61, .08);--color-link: #b93724;--color-link-hover: #8e2313;--color-success: #236844;--color-warning: #945d12;--color-danger: #b32b1f;--shadow-subtle: 0 1px 2px rgba(0, 0, 0, .05);--shadow-card: 0 2px 8px rgba(0, 0, 0, .04), 0 1px 2px rgba(0, 0, 0, .03);--shadow-hover: 0 10px 28px rgba(0, 0, 0, .08), 0 2px 6px rgba(0, 0, 0, .04);--shadow-glow-vermilion: 0 0 0 1px rgba(185, 55, 36, .22), 0 4px 18px rgba(185, 55, 36, .1);--shadow-focus: 0 0 0 3px rgba(185, 55, 36, .22);--header-bg-scrolled: rgba(247, 246, 242, .88);--header-mobile-bg: rgba(247, 246, 242, .98);--card-highlight: rgba(0, 0, 0, .012);--grid-line: rgba(0, 0, 0, .035);--ambient-glow-1: rgba(185, 55, 36, .035);--ambient-glow-2: rgba(36, 82, 61, .03)}@media(prefers-color-scheme:light){:root:not([data-theme=dark]){--color-ink: #f7f6f2;--color-ink-light: #ffffff;--color-ink-border: #e4e0d7;--color-ink-muted: #d4cfc3;--surface-1: #eeebe3;--surface-2: #ffffff;--surface-3: #e6e2d8;--hairline: rgba(0, 0, 0, .06);--hairline-strong: rgba(0, 0, 0, .12);--color-text: #1a1a1c;--color-text-secondary: #53504a;--color-text-tertiary: #78746c;--color-text-faint: #aba79d;--color-vermilion: #b93724;--color-vermilion-light: #cb4632;--color-vermilion-bright: #982a1a;--color-vermilion-muted: rgba(185, 55, 36, .08);--color-gold: #825b16;--color-gold-light: #9a6d1c;--color-jade: #24523d;--color-jade-light: #326b52;--color-jade-muted: rgba(36, 82, 61, .08);--color-link: #b93724;--color-link-hover: #8e2313;--color-success: #236844;--color-warning: #945d12;--color-danger: #b32b1f;--shadow-subtle: 0 1px 2px rgba(0, 0, 0, .05);--shadow-card: 0 2px 8px rgba(0, 0, 0, .04), 0 1px 2px rgba(0, 0, 0, .03);--shadow-hover: 0 10px 28px rgba(0, 0, 0, .08), 0 2px 6px rgba(0, 0, 0, .04);--shadow-glow-vermilion: 0 0 0 1px rgba(185, 55, 36, .22), 0 4px 18px rgba(185, 55, 36, .1);--shadow-focus: 0 0 0 3px rgba(185, 55, 36, .22);--header-bg-scrolled: rgba(247, 246, 242, .88);--header-mobile-bg: rgba(247, 246, 242, .98);--card-highlight: rgba(0, 0, 0, .012);--grid-line: rgba(0, 0, 0, .035);--ambient-glow-1: rgba(185, 55, 36, .035);--ambient-glow-2: rgba(36, 82, 61, .03)}}:root{--space-1: .25rem;--space-2: .5rem;--space-3: .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-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 20px;--radius-full: 999px;--font-display: "Source Serif 4", "Noto Serif SC", "Source Han Serif CN", serif;--font-body: "Source Serif 4", "Noto Serif SC", "Source Han Serif CN", serif;--font-mono: "JetBrains Mono", "Fira Code", monospace;--font-fallback: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;--text-xs: .75rem;--text-sm: .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: 3rem;--text-6xl: 3.75rem;--text-7xl: 4.5rem;--leading-tight: 1.15;--leading-snug: 1.35;--leading-normal: 1.6;--leading-relaxed: 1.75;--font-light: 300;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--tracking-tight: -.02em;--tracking-normal: 0;--tracking-wide: .04em;--tracking-wider: .08em;--tracking-widest: .14em;--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--transition-fast: .15s var(--ease-out);--transition-base: .25s var(--ease-out);--transition-slow: .4s var(--ease-out);--transition-slower: .65s var(--ease-in-out);--container-max: 1200px;--container-narrow: 720px;--container-reading: 680px;--header-height: 68px;--gutter: clamp(1.25rem, 4vw, 2.5rem);--z-base: 0;--z-dropdown: 100;--z-sticky: 200;--z-header: 300;--z-overlay: 400;--z-modal: 500;--z-toast: 600}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:var(--color-ink-muted) var(--color-ink);-webkit-text-size-adjust:100%}body{font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-text);background-color:var(--color-ink);background-image:radial-gradient(1100px 640px at 78% -12%,var(--ambient-glow-1),transparent 62%),radial-gradient(900px 560px at -12% 108%,var(--ambient-glow-2),transparent 60%);background-attachment:fixed;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;overflow-x:hidden;transition:background-color var(--transition-base),color var(--transition-base)}::selection{background-color:var(--color-vermilion);color:#fff}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:var(--font-semibold);line-height:var(--leading-tight);color:var(--color-text);text-wrap:balance}h1{font-size:var(--text-5xl);font-weight:var(--font-bold);letter-spacing:var(--tracking-tight)}h2{font-size:var(--text-3xl);letter-spacing:var(--tracking-tight)}h3{font-size:var(--text-2xl)}h4{font-size:var(--text-xl)}p{line-height:var(--leading-relaxed)}strong{color:var(--color-text);font-weight:var(--font-semibold)}.eyebrow{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);font-weight:var(--font-semibold);letter-spacing:var(--tracking-widest);text-transform:uppercase;color:var(--color-vermilion)}.eyebrow:before{content:"";width:20px;height:1px;background:currentColor;opacity:.65}.eyebrow--muted{color:var(--color-text-tertiary)}.mono{font-family:var(--font-mono);font-size:.85em;letter-spacing:.02em}a{color:var(--color-link);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-link-hover)}ul,ol{list-style:none}img{max-width:100%;height:auto;display:block}svg{display:inline-block;vertical-align:middle}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-ink)}::-webkit-scrollbar-thumb{background:var(--color-ink-muted);border-radius:4px;border:2px solid var(--color-ink)}::-webkit-scrollbar-thumb:hover{background:var(--color-vermilion)}:focus-visible{outline:none;box-shadow:var(--shadow-focus);border-radius:var(--radius-sm)}.container{width:min(var(--container-max),100%);margin-inline:auto;padding-inline:var(--gutter)}.container--narrow{width:min(var(--container-narrow),100%);margin-inline:auto;padding-inline:var(--gutter)}.container--reading{width:min(var(--container-reading),100%);margin-inline:auto;padding-inline:var(--gutter)}.section{padding-block:clamp(3.5rem,9vw,6.5rem);position:relative}.section--alt{background-color:var(--surface-1);border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline)}.section--tint{background:radial-gradient(720px 420px at 50% -20%,rgba(201,79,61,.05),transparent 70%),var(--surface-1)}.section-head{display:flex;flex-direction:column;gap:var(--space-3);margin-bottom:clamp(2rem,5vw,3rem)}.section-head--split{flex-direction:row;align-items:flex-end;justify-content:space-between;gap:var(--space-6)}.section-head__eyebrow{margin-bottom:var(--space-2)}.section-head__title{font-size:clamp(1.5rem,3.4vw,2.1rem);font-weight:var(--font-bold);letter-spacing:var(--tracking-tight)}.section-head__lead{max-width:56ch;color:var(--color-text-secondary);font-size:var(--text-base);margin:0}.section-more{display:inline-flex;align-items:center;gap:var(--space-2);font-family:var(--font-mono);font-size:var(--text-sm);color:var(--color-text-secondary);white-space:nowrap;transition:color var(--transition-fast),gap var(--transition-fast)}.section-more:hover{color:var(--color-vermilion);gap:var(--space-3)}.divider{height:1px;border:0;background:linear-gradient(90deg,transparent,var(--hairline-strong) 18%,var(--hairline-strong) 82%,transparent);margin:var(--space-12) 0}.hairline-top{position:relative}.hairline-top:before{content:"";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent,var(--hairline-strong) 30%,var(--hairline-strong) 70%,transparent);pointer-events:none}.card{position:relative;background:linear-gradient(180deg,var(--card-highlight),transparent 46%),var(--color-ink-light);border:1px solid var(--color-ink-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);transition:border-color var(--transition-base),box-shadow var(--transition-base),transform var(--transition-base),background-color var(--transition-base)}.card:before{content:"";position:absolute;inset:0 0 auto;height:1px;border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:linear-gradient(90deg,transparent 8%,var(--hairline-strong) 30%,var(--hairline) 70%,transparent 92%);pointer-events:none}.card:hover{border-color:var(--color-vermilion);box-shadow:var(--shadow-hover);transform:translateY(-3px)}.card--glow:hover{border-color:var(--color-vermilion);box-shadow:var(--shadow-hover),var(--shadow-glow-vermilion)}.card--inset{background:var(--surface-1);box-shadow:inset 0 1px 0 var(--hairline)}.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:.62rem 1.35rem;font-family:var(--font-fallback);font-size:var(--text-sm);font-weight:600;letter-spacing:.01em;border-radius:var(--radius-full);border:1px solid transparent;cursor:pointer;text-decoration:none;line-height:1;white-space:nowrap;transition:all var(--transition-base)}.btn svg{transition:transform var(--transition-base)}.btn:hover svg{transform:translate(2px)}.btn:active{transform:translateY(0) scale(.985)}.btn--primary{color:#fff6f2;background:linear-gradient(180deg,#d65a46,#b8412f);border-color:#ffffff14;box-shadow:0 1px #ffffff2e inset,0 4px 16px #b8412f47}.btn--primary:hover{background:linear-gradient(180deg,#e06751,#c64a37);color:#fff;transform:translateY(-1px);box-shadow:0 1px #ffffff38 inset,0 8px 26px #c94f3d61}.btn--outline{background:var(--surface-1);color:var(--color-text);border-color:var(--color-ink-muted);box-shadow:var(--shadow-subtle)}.btn--outline:hover{color:var(--color-text);border-color:var(--color-vermilion);background:var(--color-vermilion-muted);transform:translateY(-1px)}.btn--ghost{background:transparent;color:var(--color-text-secondary);border-color:transparent}.btn--ghost:hover{color:var(--color-text);background:var(--hairline-strong)}.btn--lg{padding:.85rem 2rem;font-size:var(--text-base)}.btn--sm{padding:.42rem .95rem;font-size:var(--text-xs)}.btn--block{width:100%}.badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:.22rem .7rem;font-size:var(--text-xs);font-weight:var(--font-semibold);letter-spacing:var(--tracking-wide);line-height:1.5;border-radius:var(--radius-full);border:1px solid transparent;white-space:nowrap}.badge--vermilion{color:var(--color-vermilion-bright);border-color:#c94f3d59;background:var(--color-vermilion-muted)}.badge--gold{color:var(--color-gold-light);border-color:#c2a24a59;background:#c2a24a1f}.badge--jade{color:var(--color-jade-light);border-color:#5d948059;background:var(--color-jade-muted)}.badge--neutral{color:var(--color-text-secondary);border-color:var(--color-ink-muted);background:var(--surface-1)}.page-header{padding:calc(var(--header-height) + clamp(2.5rem,7vw,4.5rem)) var(--gutter) clamp(1.5rem,4vw,2.5rem);text-align:center;position:relative}.page-header:after{content:"";display:block;width:min(120px,30vw);height:3px;margin:clamp(1.25rem,3vw,1.75rem) auto 0;background:linear-gradient(90deg,transparent,rgba(201,79,61,.7),transparent);border-radius:2px;opacity:.75}.page-header__title{font-size:clamp(2rem,5.6vw,3.4rem);font-weight:var(--font-bold);letter-spacing:var(--tracking-tight);display:flex;align-items:baseline;justify-content:center;gap:var(--space-3)}.page-header__accent{color:var(--color-vermilion);font-weight:var(--font-normal);font-size:.62em;line-height:1}.page-header__subtitle{font-size:clamp(1rem,2vw,1.15rem);color:var(--color-text-secondary);margin:var(--space-3) auto 0;max-width:60ch;letter-spacing:.01em}.section-title{display:flex;align-items:center;gap:var(--space-3);font-size:clamp(1.3rem,3vw,1.7rem);font-weight:var(--font-bold);letter-spacing:var(--tracking-tight)}.section-title__accent{color:var(--color-vermilion);font-size:.85em;line-height:1}code{font-family:var(--font-mono);font-size:.88em;padding:.16em .42em;background:var(--surface-1);border:1px solid var(--hairline);border-radius:var(--radius-sm);color:var(--color-gold-light)}pre{font-family:var(--font-mono);font-size:var(--text-sm);background:var(--surface-1);border:1px solid var(--color-ink-border);border-radius:var(--radius-md);padding:var(--space-4) var(--space-5);overflow-x:auto;line-height:var(--leading-relaxed)}pre code{padding:0;background:none;border:0;color:var(--color-text)}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-14px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-24px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.45}}@keyframes scaleIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.animate-fadeIn{animation:fadeIn .6s var(--ease-out) forwards}.animate-fadeInUp{animation:fadeInUp .6s var(--ease-out) forwards}.animate-fadeInDown{animation:fadeInDown .6s var(--ease-out) forwards}.animate-slideInLeft{animation:slideInLeft .6s var(--ease-out) forwards}.animate-slideInRight{animation:slideInRight .6s var(--ease-out) forwards}.animate-scaleIn{animation:scaleIn .5s var(--ease-out) forwards}.animate-pulse{animation:pulse 2.2s ease-in-out infinite}.delay-100{animation-delay:80ms}.delay-200{animation-delay:.16s}.delay-300{animation-delay:.24s}.delay-400{animation-delay:.32s}.delay-500{animation-delay:.4s}.delay-600{animation-delay:.48s}.delay-700{animation-delay:.56s}.delay-800{animation-delay:.64s}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}html{scroll-behavior:auto}}.page-enter-active,.page-leave-active{transition:opacity .28s var(--ease-out),transform .28s var(--ease-out)}.page-enter-from{opacity:0;transform:translateY(8px)}.page-leave-to{opacity:0;transform:translateY(-6px)}.mt-1{margin-top:var(--space-1)}.mt-2{margin-top:var(--space-2)}.mt-3{margin-top:var(--space-3)}.mt-4{margin-top:var(--space-4)}.mt-6{margin-top:var(--space-6)}.mt-8{margin-top:var(--space-8)}.mt-12{margin-top:var(--space-12)}.mt-16{margin-top:var(--space-16)}.mb-1{margin-bottom:var(--space-1)}.mb-2{margin-bottom:var(--space-2)}.mb-3{margin-bottom:var(--space-3)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}.mb-8{margin-bottom:var(--space-8)}.mb-12{margin-bottom:var(--space-12)}.mb-16{margin-bottom:var(--space-16)}.pt-8{padding-top:var(--space-8)}.pt-12{padding-top:var(--space-12)}.pt-16{padding-top:var(--space-16)}.pt-20{padding-top:var(--space-20)}.pt-24{padding-top:var(--space-24)}.pb-8{padding-bottom:var(--space-8)}.pb-12{padding-bottom:var(--space-12)}.pb-16{padding-bottom:var(--space-16)}.pb-20{padding-bottom:var(--space-20)}.pb-24{padding-bottom:var(--space-24)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-primary{color:var(--color-text)}.text-secondary{color:var(--color-text-secondary)}.text-tertiary{color:var(--color-text-tertiary)}.text-vermilion{color:var(--color-vermilion)}.text-gold{color:var(--color-gold-light)}.text-jade{color:var(--color-jade-light)}.font-display{font-family:var(--font-display)}.font-mono{font-family:var(--font-mono)}.leading-tight{line-height:var(--leading-tight)}.leading-normal{line-height:var(--leading-normal)}.leading-relaxed{line-height:var(--leading-relaxed)}.tracking-tight{letter-spacing:var(--tracking-tight)}.tracking-wide{letter-spacing:var(--tracking-wide)}.tracking-wider{letter-spacing:var(--tracking-wider)}.tracking-widest{letter-spacing:var(--tracking-widest)}.flex{display:flex}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-1{flex:1}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.gap-8{gap:var(--space-8)}.grid{display:grid}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.hidden{display:none}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:clamp(1rem,2.4vw,1.5rem)}@media(min-width:640px){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:768px){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.section-head--mobile-stack{flex-direction:row}}@media(min-width:1024px){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}#app{min-height:100vh;display:flex;flex-direction:column}main{flex:1}
