@charset "UTF-8";.toast-message[data-v-2edd8ccb]{position:fixed;top:10vh;left:50%;transform:translate(-50%);width:90%;max-width:380px;z-index:10000;border-radius:12px;font-size:16px;transition:all .3s cubic-bezier(.25,.8,.25,1);overflow:hidden;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff26;border:1px solid rgba(255,255,255,.1);box-shadow:0 8px 32px #0003;animation:message-appear-2edd8ccb .3s cubic-bezier(.38,.1,.36,.9) forwards}.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);line-height:1.5;font-weight:500;text-shadow:0 1px 2px rgba(0,0,0,.2)}.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]{position:absolute;bottom:0;left:0;width:100%;height:4px;background-color:#fff3}.progress-bar-container .progress-bar[data-v-2edd8ccb]{height:100%;transition:width 1s linear;background:var(--toast-progress-color, rgba(255, 255, 255, .8))}.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]{transform:translate(-50%) translateY(-10px);opacity:0;filter:blur(4px)}.slide-fade-leave-to[data-v-2edd8ccb]{transform:translate(-50%) translateY(-20px);opacity:0;filter:blur(4px)}@keyframes message-appear-2edd8ccb{0%{transform:translate(-50%) scale(.95);opacity:0;filter:blur(4px)}to{transform:translate(-50%) scale(1);opacity:1;filter:blur(0)}}@media screen and (max-width:400px){.toast-message[data-v-2edd8ccb]{width:calc(100% - 32px);max-width:none;border-radius:8px}.toast-message .toast-message-main[data-v-2edd8ccb]{padding:12px 16px;font-size:14px}.toast-message .progress-bar-container[data-v-2edd8ccb]{height:3px}}.app-container{position:relative;min-height:100vh;overflow-x:hidden;background-color:var(--bg-base)}.app-container:before{content:"";position:fixed;inset:0;background:radial-gradient(circle 380px at var(--mouse-x, -999px) var(--mouse-y, -999px),rgba(197,168,128,.022) 0%,transparent 85%);pointer-events:none;z-index:1}.global-spotlight{position:fixed;top:0;left:0;right:0;height:60vh;pointer-events:none;z-index:900;mix-blend-mode:screen;transition:opacity .3s}.canvas-interface{position:fixed;inset:0;pointer-events:none;z-index:950}.crosshair{position:absolute;width:14px;height:14px;border-color:#c5a88040;border-style:solid}.crosshair.top-left{top:24px;left:24px;border-width:1px 0 0 1px}.crosshair.top-right{top:24px;right:24px;border-width:1px 1px 0 0}.crosshair.bottom-left{bottom:24px;left:24px;border-width:0 0 1px 1px}.crosshair.bottom-right{bottom:24px;right:24px;border-width:0 1px 1px 0}.telemetry-panel{position:absolute;bottom:24px;left:24px;display:flex;flex-direction:column;gap:4px;font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;color:var(--text-tertiary);background:#0b0b0f4d;padding:8px 12px;border-radius:4px;border:1px solid var(--border-color);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.telemetry-panel .telemetry-row{display:flex;gap:8px}.telemetry-panel .telemetry-row .label{color:var(--color-primary);font-weight:700}.telemetry-panel .telemetry-row .val{color:var(--text-primary)}.telemetry-status{position:absolute;bottom:24px;right:24px;display:flex;flex-direction:column;gap:4px;font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;color:var(--text-tertiary);background:#0b0b0f4d;padding:8px 12px;border-radius:4px;border:1px solid var(--border-color);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.telemetry-status .status-item{display:flex;align-items:center;gap:8px}.telemetry-status .status-item .label{font-weight:700}.telemetry-status .status-item .val{color:var(--text-primary)}.telemetry-status .status-item .dot{width:4px;height:4px;border-radius:50%;background:var(--color-primary);display:inline-block;box-shadow:0 0 8px var(--color-primary)}.canvas-node{width:100%;transition:all .75s cubic-bezier(.25,1,.35,1);will-change:transform,opacity}.fly-projects-enter-from{opacity:0;transform:translate3d(40vw,20vh,0) scale(1.1) rotate(1deg)}.fly-projects-leave-to{opacity:0;transform:translate3d(-40vw,-20vh,0) scale(.85) rotate(-1deg)}.fly-insights-enter-from{opacity:0;transform:translate3d(-50vw,0,0) scale(1.05)}.fly-insights-leave-to{opacity:0;transform:translate3d(50vw,0,0) scale(.9)}.fly-tutor-enter-from{opacity:0;transform:translate3d(0,40vh,0) scale(.95)}.fly-tutor-leave-to{opacity:0;transform:translate3d(0,-40vh,0) scale(.9)}.fly-home-enter-from{opacity:0;transform:translate3d(0,-20vh,0) scale(.9)}.fly-home-leave-to{opacity:0;transform:translate3d(0,20vh,0) scale(1.05)}[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: rgba(99, 102, 241, .05);--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]{display:inline-flex;align-items:center;justify-content:center;padding:10px 24px;border-radius:12px;background:var(--bg);border:1px solid var(--border);color:var(--color);transition:all .2s cubic-bezier(.4,0,.2,1);text-decoration:none;cursor:pointer;font-family:inherit;font-size:14px;font-weight:600;line-height:1.5;outline:none}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);transform:translateY(-2px);box-shadow:0 8px 20px var(--shadow-hover)}button[data-v-20d1f4c0]:disabled{opacity:.5;cursor:not-allowed}.is-block[data-v-20d1f4c0]{width:100%}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{margin:0;padding:0;height:100%}body{margin:0!important;padding:0!important;min-height:100vh}ul,ol{list-style:none}button,input,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}button{cursor:pointer;border:none;background:none}a{text-decoration:none;color:inherit}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{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}:root{--color-primary: #C5A880;--color-primary-hover: #D8C3A5;--color-accent: #E2E8F0;--color-error: #ef4444;--color-success: #10b981;--color-warning: #f59e0b;--color-info: #E2E8F0;--bg-base: #0B0B0F;--bg-surface: #121216;--bg-elevated: #18181E;--text-primary: #E2E8F0;--text-secondary: #9E9EA8;--text-tertiary: #5E5E66;--border-color: rgba(255, 255, 255, .05);--border-hover: rgba(197, 168, 128, .3);--shadow-color: rgba(0, 0, 0, .6);--shadow-hover: rgba(197, 168, 128, .05);--glass-bg: rgba(18, 18, 22, .7);--glass-border: rgba(255, 255, 255, .04);--glass-shadow: 0 16px 48px rgba(0, 0, 0, .5);--brand-gradient: linear-gradient(135deg, #E2E8F0 0%, #9E9EA8 100%);--font-sans: Outfit, SF Pro Display, SF Pro Text, PingFang SC, Hiragino Sans GB, Noto Sans SC, Microsoft YaHei, sans-serif;--font-mono: JetBrains Mono, SF Mono, IBM Plex Mono, ui-monospace, monospace;--font-size-body: clamp(15px, .18vw + 14.4px, 16px);--font-size-body-lg: clamp(16px, .28vw + 15.2px, 18px);--font-size-label: 12px;--font-size-title: clamp(24px, 1.6vw + 20px, 36px);--font-size-display: clamp(32px, 3vw + 16px, 54px);--grid-size: 40px;--grid-color: rgba(255, 255, 255, .035)}html{font-size:100%}body{position:relative;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;line-height:1.65;letter-spacing:.01em;margin:0;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}h1,h2,h3,h4,h5,h6{font-family:var(--font-sans);font-weight:760;line-height:1.14;letter-spacing:-.03em;margin:0}p{margin:0}a{color:inherit;text-decoration:none;transition:all .2s cubic-bezier(.4,0,.2,1)}a:hover{color:var(--color-primary)}.flex-center-v{display:flex;align-items:center}.flex-center-h{display:flex;justify-content:center}.history-list{background:var(--bg-surface);border-radius:12px;box-shadow:var(--glass-shadow);z-index:1000;max-height:200px;overflow-y:auto;list-style:none;color:var(--text-primary);font-weight:500;padding:8px 0;margin:0;font-size:14px;position:absolute;border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.history-list .history-item{padding:10px 16px;line-height:1.5;cursor:pointer;transition:all .2s ease;border-radius:6px;margin:0 8px}.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{outline:none;background:#ff7a001a;color:var(--color-primary)}button{appearance:none;border:1px solid transparent;background:var(--bg-elevated);color:var(--text-primary);border-radius:10px;padding:0 18px;height:40px;font-weight:500;line-height:40px;transition:all .2s ease;font-size:14px;box-shadow:0 2px 8px var(--shadow-color);display:inline-flex;align-items:center;justify-content:center}button:hover{border-color:var(--border-hover);box-shadow:0 4px 12px var(--shadow-hover);transform:translateY(-1px)}button:active{transform:translateY(0);box-shadow:0 2px 8px var(--shadow-color)}button:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}button[data-variant=primary]{background:var(--brand-gradient);border:none;color:#fff;box-shadow:0 4px 16px #ff7a004d}button[data-variant=primary]:hover{box-shadow:0 6px 20px #ff7a0066}button[data-variant=ghost]{background:transparent;border:1px solid var(--border-color)}button[data-variant=ghost]:hover{border-color:var(--color-primary);color:var(--color-primary)}button[data-variant=danger]{background:var(--color-error);border:none;color:#fff;box-shadow:0 4px 16px #ef44444d}button[data-variant=danger]:hover{box-shadow:0 6px 20px #ef444466}button[data-size=sm]{height:32px;padding:0 12px;border-radius:8px;font-size:12px;line-height:32px}button[data-size=lg]{height:48px;padding:0 24px;border-radius:12px;font-size:16px;line-height:48px}input,select,textarea{width:100%;border:1px solid var(--border-color);background:var(--bg-elevated);color:var(--text-primary);border-radius:10px;height:40px;padding:0 14px;font-size:14px;transition:all .2s ease;box-shadow:0 2px 8px var(--shadow-color)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #ff7a0026,0 4px 12px var(--shadow-hover)}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{min-height:100px;padding:12px 14px;height:auto;resize:vertical;line-height:1.5}input::placeholder,textarea::placeholder{color:var(--text-tertiary)}.liquid-metal-card{position:relative;background:linear-gradient(var(--bg-elevated),var(--bg-elevated)) padding-box,linear-gradient(90deg,transparent,rgba(255,255,255,.06),var(--color-primary),rgba(255,255,255,.06),transparent) border-box;border:1px solid rgba(255,255,255,.06);background-size:200% 100%;background-position:0% 0%;border-radius:20px;color:var(--text-primary);text-decoration:none;transition:background .3s,border-color .3s,box-shadow .3s,transform .15s ease-out;overflow:hidden;transform-style:preserve-3d;will-change:transform;animation:borderSweep 20s linear infinite;-webkit-backdrop-filter:blur(28px) saturate(210%);backdrop-filter:blur(28px) saturate(210%);box-shadow:inset 0 1px 1px #ffffff0d,0 4px 16px #0006}.liquid-metal-card:after{content:"";position:absolute;inset:0;background:radial-gradient(circle 200px at var(--highlight-x, 50%) var(--highlight-y, 50%),rgba(255,255,255,.16) 0%,rgba(197,168,128,.06) 50%,transparent 100%);pointer-events:none;z-index:10;opacity:0;transition:opacity .3s ease;mix-blend-mode:overlay}.liquid-metal-card:hover{border-color:#c5a88033;box-shadow:inset 0 1px 1px #ffffff14,0 12px 32px #00000080,0 0 40px #c5a8800a;animation:borderSweep 3s linear infinite}.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 shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes glow{0%,to{filter:brightness(1)}50%{filter:brightness(1.1)}}@keyframes gradient-shift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes dot-pulse{0%,80%,to{transform:scale(0);opacity:.5}40%{transform:scale(1);opacity:1}}@keyframes page-fade-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-fadeInUp{animation:fadeInUp .6s ease-out}.animate-fadeInDown{animation:fadeInDown .6s ease-out}.animate-fadeInLeft{animation:fadeInLeft .6s ease-out}.animate-fadeInRight{animation:fadeInRight .6s ease-out}.animate-scaleIn{animation:scaleIn .4s ease-out}.animate-pulseGlow{animation:pulseGlow 2s infinite}.animate-float{animation:float 3s ease-in-out infinite}.animate-glow{animation:glow 2s ease-in-out infinite}.animate-shimmer{background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);background-size:200% 100%;animation:shimmer 2s infinite}.text-gradient-animate{background:var(--brand-gradient);background-size:200% 200%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:gradient-shift 3s ease infinite}.page-transition{animation:page-fade-in .5s ease-out}.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{transform:translateY(-8px) scale(1.02);box-shadow:0 20px 40px var(--shadow-hover)}.card-glow-effect{position:relative;overflow:hidden}.card-glow-effect:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,122,0,.1),transparent);transition:left .6s ease}.card-glow-effect:hover:before{left:100%}.btn-hover-lift{transition:all .2s cubic-bezier(.4,0,.2,1)}.btn-hover-lift:hover{transform:translateY(-2px);box-shadow:0 8px 24px var(--shadow-hover)}.btn-hover-lift:active{transform:translateY(0)}.btn-glow-effect{position:relative;overflow:hidden}.btn-glow-effect:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);transition:width .6s,height .6s}.btn-glow-effect:hover:after{width:300px;height:300px}.loading-spinner{width:40px;height:40px;border:3px solid var(--border-color);border-top:3px solid var(--color-primary);border-radius:50%;animation:spin 1s linear infinite}.loading-dots{display:inline-flex;gap:4px}.loading-dots span{width:8px;height:8px;background:var(--color-primary);border-radius:50%;animation:dot-pulse 1.4s infinite ease-in-out both}.loading-dots span:nth-child(1){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{transform:none!important;box-shadow:none!important}.loading-spinner,.loading-dots span{animation:none!important}}@keyframes borderSweep{0%{background-position:200% 0%}to{background-position:0% 0%}}
