.toast-message[data-v-2edd8ccb]{z-index:10000;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff26;border:1px solid #ffffff1a;border-radius:12px;width:90%;max-width:380px;font-size:16px;transition:all .3s cubic-bezier(.25,.8,.25,1);animation:.3s cubic-bezier(.38,.1,.36,.9) forwards message-appear-2edd8ccb;position:fixed;top:10vh;left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 8px 32px #0003}.toast-message .toast-message-main[data-v-2edd8ccb]{padding:16px 20px;position:relative}.toast-message .toast-message-content[data-v-2edd8ccb]{color:var(--toast-text-color,white);text-shadow:0 1px 2px #0003;font-weight:500;line-height:1.5}.toast-message[data-type=success][data-v-2edd8ccb]{background:#28a74526;border-color:#28a74533}.toast-message[data-type=error][data-v-2edd8ccb]{background:#dc354526;border-color:#dc354533}.toast-message[data-type=warning][data-v-2edd8ccb]{background:#ffc10726;border-color:#ffc10733}.toast-message[data-type=info][data-v-2edd8ccb]{background:#17a2b826;border-color:#17a2b833}.toast-message[data-accent=custom][data-v-2edd8ccb]{background:rgba(var(--toast-accent), .16);border-color:rgba(var(--toast-accent), .28)}.progress-bar-container[data-v-2edd8ccb]{background-color:#fff3;width:100%;height:4px;position:absolute;bottom:0;left:0}.progress-bar-container .progress-bar[data-v-2edd8ccb]{background:var(--toast-progress-color,#fffc);height:100%;transition:width 1s linear}.slide-fade-enter-active[data-v-2edd8ccb]{transition:all .4s cubic-bezier(.38,.1,.36,.9)}.slide-fade-leave-active[data-v-2edd8ccb]{transition:all .4s cubic-bezier(.5,0,.66,.33)}.slide-fade-enter-from[data-v-2edd8ccb]{opacity:0;filter:blur(4px);transform:translate(-50%)translateY(-10px)}.slide-fade-leave-to[data-v-2edd8ccb]{opacity:0;filter:blur(4px);transform:translate(-50%)translateY(-20px)}@keyframes message-appear-2edd8ccb{0%{opacity:0;filter:blur(4px);transform:translate(-50%)scale(.95)}to{opacity:1;filter:blur();transform:translate(-50%)scale(1)}}@media screen and (width<=400px){.toast-message[data-v-2edd8ccb]{border-radius:8px;width:calc(100% - 32px);max-width:none}.toast-message .toast-message-main[data-v-2edd8ccb]{padding:12px 16px;font-size:14px}.toast-message .progress-bar-container[data-v-2edd8ccb]{height:3px}}.webgl-bg-container[data-v-f4bb273f]{z-index:0;background-color:#0000;width:100vw;height:100vh;position:fixed;inset:0;overflow:hidden}.webgl-canvas[data-v-f4bb273f]{width:100%;height:100%;display:block}.rg-toast[data-v-be57640c]{z-index:9999;border-radius:var(--rg-radius,10px);background:var(--rg-toast-bg,#1f2937);color:var(--rg-toast-fg,#fff);align-items:center;gap:12px;padding:10px 16px;font-size:13px;display:flex;position:fixed;bottom:16px;right:16px;box-shadow:0 4px 16px #0003}.rg-toast-btn[data-v-be57640c]{color:inherit;cursor:pointer;background:0 0;border:1px solid #ffffff4d;border-radius:6px;flex-shrink:0;padding:4px 10px;font-size:12px;transition:background .15s}.rg-toast-btn[data-v-be57640c]:hover{background:#ffffff1f}.rg-overlay[data-v-be57640c]{z-index:9999;background:var(--rg-overlay-bg,#0f0f148c);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.rg-modal[data-v-be57640c]{border-radius:var(--rg-radius,16px);background:var(--rg-modal-bg,#fff);width:90vw;max-width:420px;color:var(--rg-modal-fg,#111827);padding:28px;box-shadow:0 20px 50px #0003,0 2px 8px #00000014}.rg-title[data-v-be57640c]{letter-spacing:-.01em;margin:0 0 14px;font-size:17px;font-weight:700}.rg-body[data-v-be57640c]{color:var(--rg-body-fg,#4b5563);max-height:40vh;margin:0 0 22px;font-size:13.5px;line-height:1.7;overflow-y:auto}.rg-body-empty[data-v-be57640c]{color:var(--rg-body-fg,#6b7280)}.rg-primary-btn[data-v-be57640c]{border-radius:var(--rg-btn-radius,10px);background:var(--rg-accent,#2563eb);width:100%;color:var(--rg-accent-fg,#fff);cursor:pointer;border:none;padding:11px;font-size:14px;font-weight:600;transition:filter .15s,transform 50ms}.rg-primary-btn[data-v-be57640c]:hover{filter:brightness(.92)}.rg-primary-btn[data-v-be57640c]:active{transform:scale(.99)}.rg-modal.rg-dark[data-v-be57640c]{background:var(--rg-modal-bg-dark,#1f2937);color:var(--rg-modal-fg-dark,#f3f4f6)}.rg-modal.rg-dark .rg-body[data-v-be57640c]{color:var(--rg-body-fg-dark,#d1d5db)}@media (prefers-color-scheme:dark){.rg-modal[data-v-be57640c]:not(.rg-light){background:var(--rg-modal-bg-dark,#1f2937);color:var(--rg-modal-fg-dark,#f3f4f6)}.rg-modal:not(.rg-light) .rg-body[data-v-be57640c]{color:var(--rg-body-fg-dark,#d1d5db)}}.app-container{background-color:var(--bg-base);min-height:100vh;position:relative;overflow-x:hidden}.page-node{width:100%}.page-fade-enter-active,.page-fade-leave-active{transition:opacity .28s,transform .28s}.page-fade-enter-from{opacity:0;transform:translateY(8px)}.page-fade-leave-to{opacity:0;transform:translateY(-6px)}[data-variant=default][data-v-20d1f4c0]{--bg:var(--bg-surface);--border:var(--border-color);--color:var(--text-secondary);--hover-bg:white;--hover-border:var(--color-primary);--hover-color:var(--color-primary)}[data-variant=primary][data-v-20d1f4c0]{--bg:var(--color-primary);--border:var(--color-primary);--color:white;--hover-bg:var(--color-primary-hover);--hover-border:var(--color-primary-hover);--hover-color:white}[data-variant=ghost][data-v-20d1f4c0]{--bg:transparent;--border:transparent;--color:var(--text-primary);--hover-bg:#6366f10d;--hover-border:transparent;--hover-color:var(--color-primary)}[data-variant=danger][data-v-20d1f4c0]{--bg:#fee2e2;--border:#fecaca;--color:#ef4444;--hover-bg:#ef4444;--hover-border:#ef4444;--hover-color:white}a[data-v-20d1f4c0],button[data-v-20d1f4c0]{background:var(--bg);border:1px solid var(--border);color:var(--color);cursor:pointer;border-radius:12px;outline:none;justify-content:center;align-items:center;padding:10px 24px;font-family:inherit;font-size:14px;font-weight:600;line-height:1.5;text-decoration:none;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex}a[data-v-20d1f4c0]:hover,button[data-v-20d1f4c0]:hover:not(:disabled){background:var(--hover-bg);border-color:var(--hover-border);color:var(--hover-color);box-shadow:0 8px 20px var(--shadow-hover);transform:translateY(-2px)}button[data-v-20d1f4c0]:disabled{opacity:.5;cursor:not-allowed}.is-block[data-v-20d1f4c0]{width:100%}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{height:100%;margin:0;padding:0}body{min-height:100vh;margin:0!important;padding:0!important}ul,ol{list-style:none}button,input,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}button{cursor:pointer;background:0 0;border:none}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}:focus-visible{outline:2px solid var(--color-primary,#ff7a00);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{--color-primary:#9c4a3d;--color-primary-hover:#b05a4b;--color-accent:#9c4a3d;--color-matrix:#9c4a3d;--color-matrix-glow:#9c4a3d24;--color-error:#b0483c;--color-success:#5d7d5f;--color-warning:#a8823f;--color-info:#55697d;--bg-base:#f7f4ee;--bg-surface:#fdfbf7;--bg-elevated:#fff;--text-primary:#2b2723;--text-secondary:#5c554d;--text-tertiary:#8f867b;--border-color:#2b27231a;--border-hover:#9c4a3d61;--shadow-color:#2b27230f;--shadow-hover:#2b27231a;--shadow-soft:0 2px 10px #2b27230d, 0 12px 32px #2b27230d;--glass-bg:#fdfbf7d1;--glass-border:#2b272314;--glass-shadow:0 8px 28px #2b272312;--brand-gradient:linear-gradient(135deg, #9c4a3d 0%, #b0765c 100%);--brand-gradient-hud:linear-gradient(90deg, #9c4a3d 0%, #b0765c 100%);--font-display:"Songti SC", "STSong", "Noto Serif SC", Georgia, serif;--font-sans:-apple-system, BlinkMacSystemFont, "PingFang SC", "Segoe UI", "Microsoft YaHei", sans-serif;--font-body:var(--font-sans);--font-serif:var(--font-display);--font-mono:"SF Mono", "JetBrains Mono", Menlo, monospace;--font-size-body:clamp(15px, .15vw + 14.5px, 16px);--font-size-body-lg:clamp(16px, .2vw + 15.5px, 18px);--font-size-label:12px;--font-size-title:clamp(24px, 1.4vw + 18px, 34px);--font-size-display:clamp(34px, 3vw + 18px, 60px);--grid-size:50px;--grid-color:transparent;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:40px;--space-2xl:64px;--space-3xl:104px;--radius-sm:8px;--radius-md:14px;--radius-lg:18px;--radius-xl:24px;--radius-full:99px;--transition-smooth:all .5s cubic-bezier(.25, 1, .3, 1);--transition-fast:all .22s cubic-bezier(.25, 1, .3, 1)}html{font-size:100%}body{background-color:var(--bg-base);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--font-size-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-feature-settings:"kern" 1, "liga" 1, "calt" 1;letter-spacing:.01em;background-image:linear-gradient(var(--grid-color) 1px, transparent 1px), linear-gradient(90deg, var(--grid-color) 1px, transparent 1px);background-size:var(--grid-size) var(--grid-size);background-attachment:fixed;margin:0;line-height:1.65;position:relative}h1,h2,h3,h4,h5,h6{font-family:var(--font-sans);letter-spacing:-.03em;margin:0;font-weight:800;line-height:1.12}p{margin:0}a{color:inherit;transition:var(--transition-fast);text-decoration:none}a:hover{color:var(--color-primary)}.flex-center-v{align-items:center;display:flex}.flex-center-h{justify-content:center;display:flex}.history-list{background:var(--bg-surface);box-shadow:var(--glass-shadow);z-index:1000;max-height:200px;color:var(--text-primary);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:12px;margin:0;padding:8px 0;font-size:14px;font-weight:500;list-style:none;position:absolute;overflow-y:auto}.history-list .history-item{cursor:pointer;border-radius:6px;margin:0 8px;padding:10px 16px;line-height:1.5;transition:all .2s}.history-list .history-item:hover{background:var(--bg-elevated);color:var(--color-primary);transform:translate(2px)}.history-list .history-item:active{background:var(--bg-base);transform:translate(0)}.history-list .history-item:focus{color:var(--color-primary);background:#ff7a001a;outline:none}button{appearance:none;background:var(--bg-elevated);color:var(--text-primary);height:40px;box-shadow:0 2px 8px var(--shadow-color);border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;padding:0 18px;font-size:14px;font-weight:500;line-height:40px;transition:all .2s;display:inline-flex}button:hover{border-color:var(--border-hover);box-shadow:0 4px 12px var(--shadow-hover);transform:translateY(-1px)}button:active{box-shadow:0 2px 8px var(--shadow-color);transform:translateY(0)}button:disabled{opacity:.6;cursor:not-allowed;box-shadow:none;transform:none}button[data-variant=primary]{background:var(--brand-gradient);color:#fff;border:none;box-shadow:0 4px 16px #ff7a004d}button[data-variant=primary]:hover{box-shadow:0 6px 20px #ff7a0066}button[data-variant=ghost]{border:1px solid var(--border-color);background:0 0}button[data-variant=ghost]:hover{border-color:var(--color-primary);color:var(--color-primary)}button[data-variant=danger]{background:var(--color-error);color:#fff;border:none;box-shadow:0 4px 16px #ef44444d}button[data-variant=danger]:hover{box-shadow:0 6px 20px #ef444466}button[data-size=sm]{border-radius:8px;height:32px;padding:0 12px;font-size:12px;line-height:32px}button[data-size=lg]{border-radius:12px;height:48px;padding:0 24px;font-size:16px;line-height:48px}input,select,textarea{border:1px solid var(--border-color);background:var(--bg-elevated);width:100%;color:var(--text-primary);height:40px;box-shadow:0 2px 8px var(--shadow-color);border-radius:10px;padding:0 14px;font-size:14px;transition:all .2s}input:focus,select:focus,textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #ff7a0026, 0 4px 12px var(--shadow-hover);outline:none}input:hover,select:hover,textarea:hover{border-color:var(--border-hover)}input:disabled,select:disabled,textarea:disabled{opacity:.7;cursor:not-allowed;background:var(--bg-surface)}textarea{resize:vertical;height:auto;min-height:100px;padding:12px 14px;line-height:1.5}input::placeholder,textarea::placeholder{color:var(--text-tertiary)}.liquid-metal-card{background:linear-gradient(var(--bg-elevated), var(--bg-elevated)) padding-box, linear-gradient(90deg, transparent, #ffffff0f, var(--color-primary), #ffffff0f, transparent) border-box;color:var(--text-primary);transform-style:preserve-3d;will-change:transform;-webkit-backdrop-filter:blur(28px)saturate(210%);backdrop-filter:blur(28px)saturate(210%);background-position:0 0;background-size:200% 100%;border:1px solid #ffffff0f;border-radius:20px;text-decoration:none;transition:background .3s,border-color .3s,box-shadow .3s,transform .15s ease-out;animation:20s linear infinite borderSweep;position:relative;overflow:hidden;box-shadow:inset 0 1px 1px #ffffff0d,0 4px 16px #0006}.liquid-metal-card:after{content:"";background:radial-gradient(circle 200px at var(--highlight-x,50%) var(--highlight-y,50%), #ffffff29 0%, #ec489914 50%, transparent 100%);pointer-events:none;z-index:10;opacity:0;mix-blend-mode:overlay;transition:opacity .3s;position:absolute;inset:0}.liquid-metal-card:hover{border-color:#00f5ff33;animation:3s linear infinite borderSweep;box-shadow:inset 0 1px 1px #ffffff14,0 12px 32px #00000080,0 0 40px #ec48990a}.liquid-metal-card:hover:after{opacity:1}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes pulseGlow{0%,to{box-shadow:0 0 #ff7a0066}50%{box-shadow:0 0 0 10px #ff7a0000}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes glow{0%,to{filter:brightness()}50%{filter:brightness(1.1)}}@keyframes gradient-shift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes dot-pulse{0%,80%,to{opacity:.5;transform:scale(0)}40%{opacity:1;transform:scale(1)}}@keyframes page-fade-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-fadeInUp{animation:.6s ease-out fadeInUp}.animate-fadeInDown{animation:.6s ease-out fadeInDown}.animate-fadeInLeft{animation:.6s ease-out fadeInLeft}.animate-fadeInRight{animation:.6s ease-out fadeInRight}.animate-scaleIn{animation:.4s ease-out scaleIn}.animate-pulseGlow{animation:2s infinite pulseGlow}.animate-float{animation:3s ease-in-out infinite float}.animate-glow{animation:2s ease-in-out infinite glow}.animate-shimmer{background:linear-gradient(90deg,#0000,#fff3,#0000) 0 0/200% 100%;animation:2s infinite shimmer}.text-gradient-animate{background:var(--brand-gradient);-webkit-text-fill-color:transparent;background-size:200% 200%;-webkit-background-clip:text;background-clip:text;animation:3s infinite gradient-shift}.page-transition{animation:.5s ease-out page-fade-in}.animate-delay-100{animation-delay:.1s}.animate-delay-200{animation-delay:.2s}.animate-delay-300{animation-delay:.3s}.animate-delay-400{animation-delay:.4s}.animate-delay-500{animation-delay:.5s}.animate-ease-out{animation-timing-function:ease-out}.animate-ease-in{animation-timing-function:ease-in}.animate-ease-in-out{animation-timing-function:ease-in-out}.animate-cubic{animation-timing-function:cubic-bezier(.4,0,.2,1)}.card-hover-effect{transition:all .3s cubic-bezier(.4,0,.2,1)}.card-hover-effect:hover{box-shadow:0 20px 40px var(--shadow-hover);transform:translateY(-8px)scale(1.02)}.card-glow-effect{position:relative;overflow:hidden}.card-glow-effect:before{content:"";background:linear-gradient(90deg,#0000,#ff7a001a,#0000);width:100%;height:100%;transition:left .6s;position:absolute;top:0;left:-100%}.card-glow-effect:hover:before{left:100%}.btn-hover-lift{transition:all .2s cubic-bezier(.4,0,.2,1)}.btn-hover-lift:hover{box-shadow:0 8px 24px var(--shadow-hover);transform:translateY(-2px)}.btn-hover-lift:active{transform:translateY(0)}.btn-glow-effect{position:relative;overflow:hidden}.btn-glow-effect:after{content:"";background:#ffffff4d;border-radius:50%;width:0;height:0;transition:width .6s,height .6s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.btn-glow-effect:hover:after{width:300px;height:300px}.loading-spinner{border:3px solid var(--border-color);border-top:3px solid var(--color-primary);border-radius:50%;width:40px;height:40px;animation:1s linear infinite spin}.loading-dots{gap:4px;display:inline-flex}.loading-dots span{background:var(--color-primary);border-radius:50%;width:8px;height:8px;animation:1.4s ease-in-out infinite both dot-pulse}.loading-dots span:first-child{animation-delay:-.32s}.loading-dots span:nth-child(2){animation-delay:-.16s}@media (prefers-reduced-motion:reduce){.animate-fadeInUp,.animate-fadeInDown,.animate-fadeInLeft,.animate-fadeInRight,.animate-scaleIn,.animate-pulseGlow,.animate-float,.animate-glow,.animate-shimmer,.text-gradient-animate{animation:none!important}.card-hover-effect,.btn-hover-lift{transition:none!important}.card-hover-effect:hover,.btn-hover-lift:hover{box-shadow:none!important;transform:none!important}.loading-spinner,.loading-dots span{animation:none!important}}@keyframes borderSweep{0%{background-position:200% 0}to{background-position:0 0}}
