*{margin:0;padding:0;box-sizing:border-box}html,body,#app{min-height:100%}body{font-family:var(--font-body);color:var(--text-color);background:radial-gradient(circle at top,rgba(255,255,255,.7),transparent 32%),var(--bg-body)}a{color:inherit}img{max-width:100%}.toast-container[data-v-5522e09e]{position:fixed;top:20px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:10px;pointer-events:none}.toast-item[data-v-5522e09e]{min-width:240px;max-width:420px;padding:14px 16px;display:flex;align-items:center;gap:12px;border-radius:18px;pointer-events:auto;border-left:4px solid transparent}.toast-item.success[data-v-5522e09e]{border-left-color:#22c55e}.toast-item.error[data-v-5522e09e]{border-left-color:#ef4444}.toast-item.warning[data-v-5522e09e]{border-left-color:#f59e0b}.toast-item.info[data-v-5522e09e]{border-left-color:#3b82f6}.icon[data-v-5522e09e]{width:24px;height:24px;display:inline-grid;place-items:center;border-radius:999px;background:var(--bg-muted);font-weight:800}.message[data-v-5522e09e]{color:var(--text-color);line-height:1.6}.toast-enter-active[data-v-5522e09e],.toast-leave-active[data-v-5522e09e]{transition:all .28s ease}.toast-enter-from[data-v-5522e09e],.toast-leave-to[data-v-5522e09e]{opacity:0;transform:translate(24px)}:root{color-scheme:light;--primary-color: #1d5fbf;--primary-hover: #174e9f;--primary-soft: rgba(29, 95, 191, .14);--accent-color: #0578a8;--accent-soft: rgba(5, 120, 168, .14);--bg-body: #eaf2fb;--bg-surface: rgba(244, 249, 255, .76);--bg-surface-strong: rgba(250, 253, 255, .88);--bg-elevated: rgba(253, 254, 255, .95);--bg-muted: rgba(226, 239, 253, .74);--bg-component: rgba(248, 252, 255, .88);--text-color: #142b45;--text-secondary: #35516f;--text-muted: #58728e;--border-color: rgba(150, 181, 216, .64);--border-strong: rgba(29, 95, 191, .36);--shadow-sm: 0 4px 14px rgba(64, 104, 152, .08);--shadow-md: 0 12px 30px rgba(64, 104, 152, .12);--shadow-lg: 0 18px 48px rgba(64, 104, 152, .16);--glass-bg: rgba(248, 252, 255, .76);--glass-border: rgba(255, 255, 255, .86);--glass-blur: blur(24px) saturate(145%);--control-bg: rgba(255, 255, 255, .78);--control-bg-hover: rgba(255, 255, 255, .92);--control-border: rgba(150, 181, 216, .68);--radius-xs: 8px;--radius-sm: 12px;--radius-md: 18px;--radius-lg: 24px;--radius-xl: 34px;--font-heading: "Plus Jakarta Sans", "Inter", "PingFang SC", "Microsoft YaHei", sans-serif;--font-body: "Inter", "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;--font-mono: "Cascadia Code", "JetBrains Mono", "Consolas", monospace}[data-theme=dark]{color-scheme:dark;--primary-color: #70c7ff;--primary-hover: #a4ddff;--primary-soft: rgba(112, 199, 255, .18);--accent-color: #b6d9ff;--accent-soft: rgba(182, 217, 255, .16);--bg-body: #071426;--bg-surface: rgba(10, 27, 49, .74);--bg-surface-strong: rgba(13, 34, 61, .86);--bg-elevated: rgba(7, 21, 40, .94);--bg-muted: rgba(48, 79, 115, .62);--bg-component: rgba(13, 34, 61, .86);--text-color: #f7fbff;--text-secondary: #d8e7f7;--text-muted: #abc1d8;--border-color: rgba(160, 197, 233, .3);--border-strong: rgba(112, 199, 255, .48);--shadow-sm: 0 6px 18px rgba(2, 6, 23, .3);--shadow-md: 0 16px 40px rgba(2, 6, 23, .4);--shadow-lg: 0 24px 60px rgba(2, 6, 23, .48);--glass-bg: rgba(7, 21, 40, .76);--glass-border: rgba(174, 211, 247, .34);--control-bg: rgba(23, 48, 78, .82);--control-bg-hover: rgba(34, 66, 103, .94);--control-border: rgba(160, 197, 233, .38)}[data-theme=sepia]{color-scheme:light;--primary-color: #9a4f14;--primary-hover: #7e3f0e;--primary-soft: rgba(154, 79, 20, .14);--accent-color: #905f26;--accent-soft: rgba(144, 95, 38, .14);--bg-body: #f7efe7;--bg-surface: rgba(255, 249, 242, .78);--bg-surface-strong: rgba(255, 252, 248, .9);--bg-elevated: rgba(255, 254, 252, .95);--bg-muted: rgba(248, 232, 214, .76);--bg-component: rgba(255, 251, 246, .9);--text-color: #342415;--text-secondary: #60442c;--text-muted: #866952;--border-color: rgba(205, 171, 137, .58);--border-strong: rgba(154, 79, 20, .36);--shadow-sm: 0 4px 12px rgba(66, 88, 111, .08);--shadow-md: 0 10px 26px rgba(66, 88, 111, .12);--shadow-lg: 0 18px 40px rgba(66, 88, 111, .16);--glass-bg: rgba(255, 251, 246, .78);--glass-border: rgba(255, 255, 255, .88);--control-bg: rgba(255, 255, 255, .8);--control-bg-hover: rgba(255, 255, 255, .94);--control-border: rgba(205, 171, 137, .68)}html{overflow-y:scroll;scroll-behavior:smooth}body{color:var(--text-color);background-color:var(--bg-body);transition:background-color .45s ease,color .3s ease;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}*,*:before,*:after{transition:background-color .35s ease,border-color .35s ease,color .25s ease,box-shadow .35s ease,transform .22s ease}button,input,select,textarea{font:inherit}::selection{background:var(--primary-soft);color:var(--text-color)}.glass-card{background:var(--glass-bg);border:1px solid var(--glass-border);box-shadow:var(--shadow-md);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur)}.surface-card{background:var(--bg-surface-strong);border:1px solid var(--border-color);box-shadow:var(--shadow-sm)}.section-kicker{display:inline-flex;align-items:center;gap:8px;min-height:34px;padding:0 14px;border-radius:999px;background:var(--bg-muted);border:1px solid var(--border-color);color:var(--text-secondary);font-size:12px;font-weight:600;letter-spacing:.04em}.section-title{font-family:var(--font-heading);font-size:clamp(2rem,3.2vw,3rem);line-height:1.1;letter-spacing:-.04em}.section-description{color:var(--text-secondary);font-size:16px;line-height:1.8}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#abb2bf;background:#282c34}.hljs-comment,.hljs-quote{color:#5c6370;font-style:italic}.hljs-doctag,.hljs-keyword,.hljs-formula{color:#c678dd}.hljs-section,.hljs-name,.hljs-selector-tag,.hljs-deletion,.hljs-subst{color:#e06c75}.hljs-literal{color:#56b6c2}.hljs-string,.hljs-regexp,.hljs-addition,.hljs-attribute,.hljs-meta .hljs-string{color:#98c379}.hljs-attr,.hljs-variable,.hljs-template-variable,.hljs-type,.hljs-selector-class,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-number{color:#d19a66}.hljs-symbol,.hljs-bullet,.hljs-link,.hljs-meta,.hljs-selector-id,.hljs-title{color:#61aeee}.hljs-built_in,.hljs-title.class_,.hljs-class .hljs-title{color:#e6c07b}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.hljs-link{text-decoration:underline}.cosmic-background{position:fixed;inset:0;width:100%;height:100%;overflow:hidden;isolation:isolate;contain:layout paint style;pointer-events:none;background:var(--cosmic-background-color, #0d0618);transition:background-color var(--cosmic-transition-duration, .4s) ease}.cosmic-background--absolute{position:absolute}.cosmic-background--interactive{pointer-events:auto}.cosmic-background__sphere,.cosmic-background__particles,.cosmic-background__fallback{position:absolute;inset:0;width:100%;height:100%;overflow:hidden}.cosmic-background__sphere{z-index:0}.cosmic-background__sphere:before{content:"";position:absolute;top:50%;left:50%;width:42px;height:42px;border:3px solid rgba(180,84,190,.2);border-top-color:var(--cosmic-spinner-color);border-radius:50%;transform:translate(-50%,-50%);animation:cosmic-background-spin .9s linear infinite}.cosmic-background__sphere--ready:before,.cosmic-background__sphere--failed:before{display:none}.cosmic-background__canvas{display:block;width:100%;height:100%}.cosmic-background__particles{z-index:1;filter:brightness(var(--cosmic-particle-brightness, 1))}.cosmic-background__particles:before,.cosmic-background__fallback:before{content:"";position:absolute;inset:0;background-image:var(--cosmic-starfield);background-size:200% 200%;animation:cosmic-background-starfield 20s ease-in-out infinite}.cosmic-background__fallback{z-index:0;filter:brightness(var(--cosmic-brightness, 1))}.cosmic-background__fallback:after{content:"";position:absolute;inset:0;opacity:.32;background-image:radial-gradient(circle at 48% 48%,var(--cosmic-spinner-color) 0 1px,transparent 2px),radial-gradient(circle at 64% 54%,var(--cosmic-spinner-color) 0 1px,transparent 2px);background-size:22px 22px,31px 31px;-webkit-mask-image:radial-gradient(circle at center,black,transparent 72%);mask-image:radial-gradient(circle at center,black,transparent 72%)}.cosmic-background__particle{position:absolute;top:var(--cosmic-particle-y);left:var(--cosmic-particle-x);width:var(--cosmic-particle-size);height:var(--cosmic-particle-size);border-radius:50%;opacity:0;pointer-events:none;background:var(--cosmic-particle-color);box-shadow:0 0 var(--cosmic-particle-glow) var(--cosmic-particle-color),0 0 calc(var(--cosmic-particle-glow) * 1.6) var(--cosmic-particle-color);animation:cosmic-background-float var(--cosmic-particle-duration) linear var(--cosmic-particle-delay) infinite;will-change:transform,opacity}.cosmic-background--paused .cosmic-background__particles:before,.cosmic-background--paused .cosmic-background__fallback:before,.cosmic-background--paused .cosmic-background__particle{animation-play-state:paused}@keyframes cosmic-background-spin{to{transform:translate(-50%,-50%) rotate(360deg)}}@keyframes cosmic-background-starfield{0%,to{opacity:1}50%{opacity:.5}}@keyframes cosmic-background-float{0%{opacity:0;transform:translateZ(0) scale(0)}10%,90%{opacity:1}to{opacity:0;transform:translate3d(var(--cosmic-particle-drift),-100vh,0) scale(1.5)}}@media(prefers-reduced-motion:reduce){.cosmic-background__sphere:before,.cosmic-background__particles:before,.cosmic-background__fallback:before,.cosmic-background__particle{animation-play-state:paused}}
