@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/plus-jakarta-sans-latin-wght-normal.eXO_dkmS.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/newsreader-latin-wght-normal.CCVVNp6i.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--ease-spring: cubic-bezier(.16, 1, .3, 1);--transition-fast: .15s var(--ease-spring);--transition-normal: .25s var(--ease-spring);--grid-max-width: 1200px;--grid-margin: 24px;--grid-gutter: 16px;--font-family-modern: "Plus Jakarta Sans Variable", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", sans-serif;--font-family-serif: "Newsreader Variable", "Songti SC", "STSong", Georgia, serif;--font-sans: var(--font-family-modern);--font-heading: var(--font-sans);--font-mono: "Cascadia Mono", "SF Mono", Consolas, "PingFang SC", "Microsoft YaHei UI", monospace;--fw-regular: 400;--fw-medium: 500;--fw-semibold: 600;--fs-hero: clamp(28px, 4.2vw, 44px);--fs-display: clamp(24px, 3vw, 32px);--fs-h1: 22px;--fs-h2: 16px;--fs-body: 15px;--fs-control: 13px;--fs-caption: 12px;--fs-micro: 11px;--fs-canvas-node: 12px;--fs-canvas-meta: 11px;--lh-tight: 1.18;--lh-heading: 1.3;--lh-snug: 1.42;--lh-normal: 1.6;--lh-relaxed: 1.72;--ls-display: -.022em;--ls-h1: -.015em;--ls-h2: -.005em;--ls-normal: 0em;--ls-wide: .04em;--ls-overline: .08em}:root,:root[data-theme=light],[data-theme=light],.theme-light{color-scheme:light;--seed-canvas: #f5f5f5;--seed-surface: #ffffff;--seed-surface-alt: #ededed;--seed-hover: #e3e3e3;--seed-border: #dedede;--seed-ink: #171717;--seed-ink-muted: #5c5c5c;--seed-ink-dim: #757575;--seed-primary: #2b2b2b;--seed-completed: #171717;--seed-target: #474747;--seed-concept: #525252;--seed-danger: #333333;--seed-completed-solid: #242424;--seed-primary-solid: #525252;--seed-target-solid: #3b3b3b;--seed-concept-solid: #525252;--seed-danger-solid: #333333;--seed-neutral-solid: #757575;--seed-on-solid: #ffffff;--seed-inv-bg: #171717;--seed-inv-surface: #242424;--seed-inv-ink: #f5f5f5;--brand-accent: #8a6830;--brand-accent-soft: rgba(138, 104, 48, .14);--mask-bg: rgba(0, 0, 0, .45);--mask-backdrop-filter: blur(3px);--shadow-overlay: 0 10px 25px -5px rgba(0, 0, 0, .12), 0 8px 10px -6px rgba(0, 0, 0, .08);--shadow-floating: 0 10px 30px -5px rgba(0, 0, 0, .07), 0 4px 12px -2px rgba(0, 0, 0, .04);--shadow-tooltip: 0 4px 12px rgba(0, 0, 0, .15)}:root[data-theme=dark],[data-theme=dark],.theme-dark{color-scheme:dark;--seed-canvas: #141414;--seed-surface: #1e1e1e;--seed-surface-alt: #282828;--seed-hover: rgba(255, 255, 255, .08);--seed-border: rgba(255, 255, 255, .12);--seed-ink: #ededed;--seed-ink-muted: #9e9e9e;--seed-ink-dim: #8a8a8a;--seed-primary: #d4d4d4;--seed-completed: #e0e0e0;--seed-target: #e5e5e5;--seed-concept: #b8b8b8;--seed-danger: #cccccc;--seed-completed-solid: #4f4f4f;--seed-primary-solid: #333333;--seed-target-solid: #404040;--seed-concept-solid: #454545;--seed-danger-solid: #4a4a4a;--seed-neutral-solid: #262626;--seed-on-solid: #f5f5f5;--seed-inv-bg: #121212;--seed-inv-surface: #1c1c1c;--seed-inv-ink: #ededed;--brand-accent: #dfb86b;--brand-accent-soft: rgba(223, 184, 107, .16);--mask-bg: rgba(0, 0, 0, .72);--mask-backdrop-filter: blur(4px);--shadow-overlay: 0 12px 30px -4px rgba(0, 0, 0, .7), 0 6px 12px -3px rgba(0, 0, 0, .5);--shadow-floating: 0 14px 35px -5px rgba(0, 0, 0, .75), 0 4px 14px -2px rgba(0, 0, 0, .45);--shadow-tooltip: 0 6px 16px rgba(0, 0, 0, .65)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--seed-canvas: #141414;--seed-surface: #1e1e1e;--seed-surface-alt: #282828;--seed-hover: rgba(255, 255, 255, .08);--seed-border: rgba(255, 255, 255, .12);--seed-ink: #ededed;--seed-ink-muted: #9e9e9e;--seed-ink-dim: #8a8a8a;--seed-primary: #d4d4d4;--seed-completed: #e0e0e0;--seed-target: #e5e5e5;--seed-concept: #b8b8b8;--seed-danger: #cccccc;--seed-completed-solid: #4f4f4f;--seed-primary-solid: #333333;--seed-target-solid: #404040;--seed-concept-solid: #454545;--seed-danger-solid: #4a4a4a;--seed-neutral-solid: #262626;--seed-on-solid: #f5f5f5;--seed-inv-bg: #121212;--seed-inv-surface: #1c1c1c;--seed-inv-ink: #ededed;--brand-accent: #dfb86b;--brand-accent-soft: rgba(223, 184, 107, .16);--mask-bg: rgba(0, 0, 0, .72);--mask-backdrop-filter: blur(4px);--shadow-overlay: 0 12px 30px -4px rgba(0, 0, 0, .7), 0 6px 12px -3px rgba(0, 0, 0, .5);--shadow-floating: 0 14px 35px -5px rgba(0, 0, 0, .75), 0 4px 14px -2px rgba(0, 0, 0, .45);--shadow-tooltip: 0 6px 16px rgba(0, 0, 0, .65)}}:root,:root[data-theme=light],:root[data-theme=dark],[data-theme=light],[data-theme=dark],.theme-light,.theme-dark{--bg-canvas: var(--seed-canvas);--bg-surface: var(--seed-surface);--bg-surface-elevated: var(--seed-surface-alt);--bg-hover: var(--seed-hover);--bg-header-glass: color-mix(in srgb, var(--seed-canvas) 86%, transparent);--text-main: var(--seed-ink);--text-muted: var(--seed-ink-muted);--text-dim: var(--seed-ink-dim);--text-on-solid: var(--seed-on-solid);--border-subtle: var(--seed-border);--border-focus: var(--seed-ink);--canvas-dot-color: color-mix(in srgb, var(--seed-ink) 14%, var(--seed-canvas));--tone-primary: var(--seed-primary);--tone-primary-bg: color-mix(in srgb, var(--seed-primary) 10%, var(--seed-surface));--tone-primary-border: color-mix(in srgb, var(--seed-primary) 24%, var(--seed-surface));--tone-completed: var(--seed-completed);--tone-completed-bg: color-mix(in srgb, var(--seed-completed) 10%, var(--seed-surface));--tone-completed-border: color-mix(in srgb, var(--seed-completed) 24%, var(--seed-surface));--tone-target: var(--seed-target);--tone-target-bg: color-mix(in srgb, var(--seed-target) 16%, var(--seed-surface));--tone-target-border: color-mix(in srgb, var(--seed-target) 32%, var(--seed-surface));--tone-concept: var(--seed-concept);--tone-concept-bg: color-mix(in srgb, var(--seed-concept) 8%, var(--seed-surface));--tone-concept-border: color-mix(in srgb, var(--seed-concept) 20%, var(--seed-surface));--tone-danger: var(--seed-danger);--tone-danger-bg: color-mix(in srgb, var(--seed-danger) 10%, var(--seed-surface));--tone-danger-border: color-mix(in srgb, var(--seed-danger) 24%, var(--seed-surface));--solid-primary-bg: var(--seed-primary-solid);--solid-completed-bg: var(--seed-completed-solid);--solid-target-bg: var(--seed-target-solid);--solid-concept-bg: var(--seed-concept-solid);--solid-danger-bg: var(--seed-danger-solid);--solid-neutral-bg: var(--seed-neutral-solid);--status-locked: color-mix(in srgb, var(--seed-ink-dim) 68%, var(--seed-surface));--status-hub: color-mix(in srgb, var(--seed-ink-dim) 84%, var(--seed-surface));--node-completed-bg: var(--seed-completed-solid);--node-completed-border: color-mix(in srgb, var(--seed-completed) 50%, var(--seed-completed-solid));--node-completed-text: var(--seed-on-solid);--node-target-bg: color-mix(in srgb, var(--seed-target) 18%, var(--seed-surface));--node-target-border: var(--seed-target);--node-target-text: var(--seed-ink);--node-available-bg: var(--seed-primary-solid);--node-available-border: color-mix(in srgb, var(--seed-primary) 45%, var(--seed-primary-solid));--node-available-text: var(--seed-on-solid);--node-locked-bg: var(--seed-surface);--node-locked-border: color-mix(in srgb, var(--seed-ink-dim) 50%, var(--seed-surface));--node-locked-text: var(--seed-ink-muted);--inv-bg: var(--seed-inv-bg);--inv-bg-elevated: var(--seed-inv-surface);--inv-bg-subtle: color-mix(in srgb, var(--seed-inv-ink) 8%, transparent);--inv-bg-hover: color-mix(in srgb, var(--seed-inv-ink) 16%, transparent);--inv-bg-active: var(--seed-inv-ink);--inv-text-main: var(--seed-inv-ink);--inv-text-muted: color-mix(in srgb, var(--seed-inv-ink) 66%, var(--seed-inv-bg));--inv-text-dim: color-mix(in srgb, var(--seed-inv-ink) 44%, var(--seed-inv-bg));--inv-text-active: var(--seed-inv-bg);--inv-border: color-mix(in srgb, var(--seed-inv-ink) 13%, transparent);--inv-border-subtle: color-mix(in srgb, var(--seed-inv-ink) 7%, transparent)}*,*:before,*:after{box-sizing:border-box}html{font-family:var(--font-sans);font-size:16px;line-height:var(--lh-normal);background-color:var(--bg-canvas);color:var(--text-main);scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{margin:0;min-height:100vh;display:flex;flex-direction:column;background-color:var(--bg-canvas);color:var(--text-main)}a{color:inherit;text-decoration:none}.canvas-dot-grid{background-color:var(--bg-canvas);background-image:radial-gradient(var(--canvas-dot-color) 1.2px,transparent 1.2px);background-size:24px 24px}.site-container{width:100%;max-width:var(--grid-max-width);margin:0 auto;padding:0 var(--grid-margin)}.site-header{position:sticky;top:0;z-index:var(--z-statusbar, 45);background-color:var(--bg-header-glass);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--border-subtle)}.header-inner{min-height:60px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:8px;padding-bottom:8px}.brand-link{display:inline-flex;align-items:center;gap:10px;font-weight:var(--fw-semibold);font-size:16px;letter-spacing:var(--ls-h2);color:var(--text-main)}.brand-logo{display:block;width:28px;height:28px;flex-shrink:0}.primary-nav{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.nav-link{font-size:var(--fs-control);font-weight:var(--fw-medium);color:var(--text-muted);transition:color var(--transition-fast)}.nav-link:hover,.nav-link:focus-visible{color:var(--text-main)}.nav-divider{width:1px;height:14px;background-color:var(--border-subtle)}.header-actions{display:flex;align-items:center;gap:8px}.action-pill{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;border-radius:6px;border:1px solid var(--border-subtle);background-color:var(--bg-surface);color:var(--text-main);font-family:var(--font-sans);font-size:var(--fs-caption);font-weight:var(--fw-medium);cursor:pointer;transition:background-color var(--transition-fast),border-color var(--transition-fast)}.action-pill:hover,.action-pill:focus-visible{background-color:var(--bg-hover);border-color:var(--text-dim)}:root[data-theme=dark] .theme-icon-sun{display:none}:root:not([data-theme=dark]) .theme-icon-moon{display:none}.site-main{flex:1}.site-footer{margin-top:80px;border-top:1px solid var(--border-subtle);background-color:var(--bg-surface);padding:48px 0 36px}.footer-inner{display:flex;flex-direction:column;gap:32px}.footer-top{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;flex-wrap:wrap}.footer-brand{display:flex;flex-direction:column;gap:8px;max-width:420px}.footer-tagline{margin:0;font-size:var(--fs-control);color:var(--text-muted)}.footer-nav{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.footer-link{font-size:var(--fs-control);font-weight:var(--fw-medium);color:var(--text-muted);transition:color var(--transition-fast)}.footer-link:hover{color:var(--text-main)}.footer-bottom{padding-top:24px;border-top:1px solid var(--border-subtle);display:flex;flex-direction:column;gap:6px}.footer-copyright,.footer-disclaimer{margin:0;font-size:var(--fs-caption);color:var(--text-dim);line-height:var(--lh-snug)}@media(max-width:768px){.header-inner{gap:10px}.primary-nav{order:3;width:100%;gap:14px;padding-top:6px;border-top:1px solid var(--border-subtle);overflow-x:auto}.theme-label{display:none}}
