.space-bg[data-v-e25bc25a]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:var(--color-bg);overflow:hidden}.space-bg__stars-static[data-v-e25bc25a],.space-bg__canvas[data-v-e25bc25a]{position:absolute;top:0;right:0;bottom:0;left:0}.space-bg__vignette[data-v-e25bc25a]{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 50% 40%,transparent 45%,rgba(10,14,23,.65) 100%)}.portal-header[data-v-b5db59e6]{background:var(--bg-glass-strong);border-bottom:1px solid var(--color-border);-webkit-backdrop-filter:blur(var(--glass-blur-heavy)) saturate(150%);backdrop-filter:blur(var(--glass-blur-heavy)) saturate(150%);box-shadow:0 1px #5fb8d640,0 6px 20px #0006;position:sticky;top:0;z-index:100}.header-inner[data-v-b5db59e6]{max-width:var(--container-max);margin:0 auto;padding:0 var(--container-px);height:64px;display:flex;align-items:center;gap:32px}.logo[data-v-b5db59e6]{display:flex;align-items:center;gap:12px;text-decoration:none;flex-shrink:0}.logo-img[data-v-b5db59e6]{height:32px;width:auto}.nav-links[data-v-b5db59e6]{display:flex;gap:24px;flex:1}.nav-links a[data-v-b5db59e6]{color:var(--color-text-secondary);text-decoration:none;font-size:14px;transition:color .2s}.nav-links a[data-v-b5db59e6]:hover,.nav-links a.router-link-exact-active[data-v-b5db59e6]{color:var(--color-primary)}.msg-link[data-v-b5db59e6],.drawer-msg-link[data-v-b5db59e6]{position:relative}.unread-badge[data-v-b5db59e6]{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 5px;margin-left:4px;font-size:10px;font-weight:700;line-height:1;color:#fff;background:var(--color-danger, #e05252);border-radius:8px;vertical-align:middle}.header-actions[data-v-b5db59e6]{display:flex;gap:12px;align-items:center}.btn-ghost[data-v-b5db59e6]{background:none;border:1px solid var(--color-border);color:var(--color-text-secondary);padding:6px 16px;border-radius:var(--radius);cursor:pointer;font-size:14px;text-decoration:none;transition:all .2s}.btn-ghost[data-v-b5db59e6]:hover{border-color:var(--color-primary);color:var(--color-primary)}.btn-primary[data-v-b5db59e6]{background:var(--color-primary);border:none;color:var(--color-bg);padding:6px 20px;border-radius:var(--radius);cursor:pointer;font-size:14px;font-weight:600;text-decoration:none;transition:opacity .2s}.btn-primary[data-v-b5db59e6]:hover{opacity:.85}.hamburger[data-v-b5db59e6]{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:48px;height:48px;background:none;border:none;cursor:pointer;padding:0;flex-shrink:0}.hamburger span[data-v-b5db59e6]{display:block;width:22px;height:2px;background:var(--color-text);border-radius:2px;transition:transform .3s ease,opacity .3s ease;transform-origin:center}.hamburger--active span[data-v-b5db59e6]:nth-child(1){transform:translateY(7px) rotate(45deg)}.hamburger--active span[data-v-b5db59e6]:nth-child(2){opacity:0}.hamburger--active span[data-v-b5db59e6]:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.drawer[data-v-b5db59e6]{position:fixed;top:0;right:0;bottom:0;width:min(300px,85vw);background:var(--color-card);z-index:201;display:flex;flex-direction:column;overflow-y:auto}.drawer__header[data-v-b5db59e6]{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--color-border)}.drawer__logo[data-v-b5db59e6]{display:flex;align-items:center;text-decoration:none}.drawer__logo-img[data-v-b5db59e6]{height:28px;width:auto}.drawer__close[data-v-b5db59e6]{width:48px;height:48px;background:none;border:none;cursor:pointer;position:relative;display:flex;align-items:center;justify-content:center}.drawer__close span[data-v-b5db59e6]{position:absolute;width:20px;height:2px;background:var(--color-text-secondary);border-radius:2px}.drawer__close span[data-v-b5db59e6]:first-child{transform:rotate(45deg)}.drawer__close span[data-v-b5db59e6]:last-child{transform:rotate(-45deg)}.drawer__nav[data-v-b5db59e6]{display:flex;flex-direction:column;padding:12px 0}.drawer__nav a[data-v-b5db59e6]{display:flex;align-items:center;min-height:48px;padding:14px 20px;font-size:16px;color:var(--color-text-secondary);text-decoration:none;border-left:3px solid transparent;transition:all .2s}.drawer__nav a[data-v-b5db59e6]:hover,.drawer__nav a.router-link-exact-active[data-v-b5db59e6]{color:var(--color-primary);background:#5fb8d60f;border-left-color:var(--color-primary)}.drawer__actions[data-v-b5db59e6]{padding:16px 20px;display:flex;flex-direction:column;gap:10px;border-top:1px solid rgba(255,255,255,.05)}.drawer__btn[data-v-b5db59e6]{display:flex;align-items:center;justify-content:center;min-height:48px;padding:12px 20px;border-radius:8px;font-size:16px;font-family:inherit;cursor:pointer;text-decoration:none;transition:all .2s}.drawer__btn--ghost[data-v-b5db59e6]{background:none;border:1px solid var(--color-border);color:var(--color-text-secondary)}.drawer__btn--ghost[data-v-b5db59e6]:hover{border-color:var(--color-primary);color:var(--color-primary)}.drawer__btn--primary[data-v-b5db59e6]{background:var(--color-primary);border:none;color:var(--color-bg);font-weight:600}.drawer__btn--primary[data-v-b5db59e6]:hover{opacity:.85}.drawer__safe-area[data-v-b5db59e6]{height:var(--safe-bottom);flex-shrink:0}.drawer-overlay[data-v-b5db59e6]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:200}.drawer-slide-enter-active[data-v-b5db59e6],.drawer-slide-leave-active[data-v-b5db59e6]{transition:transform .3s ease}.drawer-slide-enter-from[data-v-b5db59e6],.drawer-slide-leave-to[data-v-b5db59e6]{transform:translate(100%)}.drawer-fade-enter-active[data-v-b5db59e6],.drawer-fade-leave-active[data-v-b5db59e6]{transition:opacity .3s ease}.drawer-fade-enter-from[data-v-b5db59e6],.drawer-fade-leave-to[data-v-b5db59e6]{opacity:0}@media(max-width:767px){.header-inner[data-v-b5db59e6]{height:var(--header-h, 56px);gap:12px;padding:0 16px}.hamburger[data-v-b5db59e6]{display:flex}.nav-links[data-v-b5db59e6],.header-actions[data-v-b5db59e6]{display:none}.logo[data-v-b5db59e6]{flex:1;justify-content:center}.logo-img[data-v-b5db59e6]{height:26px}}@media(min-width:768px){.hamburger[data-v-b5db59e6]{display:none}.header-inner[data-v-b5db59e6]{height:64px}}.portal-footer[data-v-b3758faf]{position:relative;z-index:1;background:var(--bg-glass-strong);border-top:1px solid var(--color-border);-webkit-backdrop-filter:blur(var(--glass-blur-heavy));backdrop-filter:blur(var(--glass-blur-heavy));box-shadow:0 -1px #5fb8d640;padding:40px 0 24px;margin-top:auto}.footer-inner[data-v-b3758faf]{max-width:1200px;margin:0 auto;padding:0 24px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:40px}.footer-brand[data-v-b3758faf]{display:flex;flex-direction:column;gap:6px}.footer-slogan[data-v-b3758faf]{font-size:14px;color:var(--color-primary);font-weight:600;letter-spacing:2px;margin-bottom:8px}.footer-copyright[data-v-b3758faf]{font-size:12px;color:var(--color-text-secondary)}.footer-icp[data-v-b3758faf]{font-size:12px;color:var(--color-text-secondary);text-decoration:none}.footer-icp[data-v-b3758faf]:hover{color:var(--color-primary)}.footer-links h4[data-v-b3758faf],.footer-contact h4[data-v-b3758faf]{font-size:13px;color:var(--color-text);margin-bottom:12px;letter-spacing:1px;font-weight:600}.footer-links a[data-v-b3758faf]{display:block;font-size:13px;color:var(--color-text-secondary);text-decoration:none;margin-bottom:8px;transition:color .2s}.footer-links a[data-v-b3758faf]:hover{color:var(--color-primary)}.footer-contact p[data-v-b3758faf]{font-size:13px;color:var(--color-text-secondary);margin-bottom:8px;line-height:1.6}.footer-contact a[data-v-b3758faf]{color:var(--color-primary);text-decoration:none}.footer-contact a[data-v-b3758faf]:hover{text-decoration:underline}@media(max-width:767px){.footer-inner[data-v-b3758faf]{grid-template-columns:1fr;gap:20px;text-align:center;padding:0 16px}.portal-footer[data-v-b3758faf]{padding:28px 0 calc(20px + env(safe-area-inset-bottom,0px))}.footer-brand[data-v-b3758faf]{align-items:center}.footer-links a[data-v-b3758faf]{display:flex;align-items:center;justify-content:center;min-height:var(--touch-min);margin-bottom:4px;font-size:14px}.footer-contact p[data-v-b3758faf]{font-size:14px}.footer-contact a[data-v-b3758faf],.footer-icp[data-v-b3758faf]{display:inline-flex;align-items:center;min-height:var(--touch-min)}}.app-shell[data-v-7831e309]{position:relative;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}.main-content[data-v-7831e309]{flex:1;position:relative;z-index:1;padding-bottom:var(--safe-bottom)}:root{--color-primary: #5FB8D6;--color-primary-rgb: 95, 184, 214;--color-bright: #6BB3FF;--color-bg: #0A0E17;--color-card: #152535;--color-success: #5FB88D;--color-warning: #E8A33D;--color-danger: #E05252;--color-text: #FFFFFF;--color-text-secondary: #9CA3AF;--color-border: rgba(95, 184, 214, .3);--font-mono: "Share Tech Mono", "Courier New", monospace;--font-sans: "PingFang SC", "Microsoft YaHei", "Source Han Sans SC", sans-serif;--radius: 8px;--shadow-card: 0 0 20px rgba(95, 184, 214, .08);--container-px: 24px;--container-max: 1200px;--touch-min: 44px;--input-min-h: 48px;--header-h: 56px;--safe-bottom: env(safe-area-inset-bottom, 16px);--color-text-weak: #6E7D8A;--color-primary-10: rgba(95, 184, 214, .1);--color-primary-15: rgba(95, 184, 214, .15);--section-gap: 40px;--ease-out: cubic-bezier(.33, 1, .68, 1);--bg-glass: rgba(21, 37, 53, .55);--bg-glass-strong: rgba(10, 14, 23, .65);--bg-trans: rgba(255, 255, 255, .05);--glass-blur: 12px;--glass-blur-heavy: 20px;--border-hover: rgba(95, 184, 214, .6);--glow-color: rgba(95, 184, 214, .4);--glow-strong: rgba(95, 184, 214, .8);--shadow-glow-sm: 0 0 12px rgba(95, 184, 214, .2);--shadow-glow-md: 0 0 20px rgba(95, 184, 214, .15);--shadow-lift: 0 8px 24px rgba(0, 0, 0, .2)}*{margin:0;padding:0;box-sizing:border-box}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased}input[type=date]{color-scheme:dark}input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:1;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%235FB8D6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'/%3E%3Cline x1='16' y1='2' x2='16' y2='6'/%3E%3Cline x1='8' y1='2' x2='8' y2='6'/%3E%3Cline x1='3' y1='10' x2='21' y2='10'/%3E%3C/svg%3E");background-size:16px 16px;background-repeat:no-repeat;background-position:center;width:20px;height:20px}input[type=date]::-webkit-calendar-picker-indicator:hover{filter:brightness(1.35)}.app-shell{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}.main-content{flex:1}img{max-width:100%;height:auto}.fade-enter-active,.fade-leave-active{transition:opacity .2s ease}.fade-enter-from,.fade-leave-to{opacity:0}@media(max-width:767px){body{font-size:16px;-webkit-text-size-adjust:100%}:root{--container-px: 16px}input,select,textarea{min-height:var(--input-min-h)}input[type=checkbox],input[type=radio]{min-height:0}button,.btn-submit,.btn-primary,.btn-ghost{min-height:var(--touch-min);min-width:var(--touch-min)}a:not([class]):active,button:not([class]):active,[role=button]:not([class]):active{opacity:.7;transition:opacity .05s ease}}@supports not ((backdrop-filter: blur(2px)) or (-webkit-backdrop-filter: blur(2px))){.glass,.glass-card{background:var(--color-card)}.glass-light{background:#152535e6}.glass-heavy{background:var(--color-bg)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#5fb8d647;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#5fb8d680}::-webkit-scrollbar-corner{background:transparent}*{scrollbar-width:thin;scrollbar-color:rgba(95,184,214,.28) transparent}.toast-container{position:fixed;top:24px;left:50%;transform:translate(-50%);z-index:2000;display:flex;flex-direction:column;align-items:center;gap:8px;pointer-events:none}.toast{max-width:min(86vw,420px);padding:10px 18px;border-radius:8px;font-size:14px;line-height:1.5;color:#fff;background:var(--color-card);border:1px solid var(--color-border);box-shadow:0 8px 30px #00000073;opacity:0;transform:translateY(-10px);transition:opacity .25s ease,transform .25s ease}.toast--show{opacity:1;transform:translateY(0)}.toast--hide{opacity:0;transform:translateY(-10px)}.toast--error{background:#e052521f;border-color:#e0525266;color:#f07c7c}.toast--success{background:#5fb88d1f;border-color:#5fb88d66;color:#6fd3a3}.toast--info{background:#5fb8d61f;border-color:#5fb8d666;color:#5fb8d6}.glass{background:var(--bg-glass);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur))}.glass-light{background:var(--bg-trans);-webkit-backdrop-filter:blur(6px) saturate(120%);backdrop-filter:blur(6px) saturate(120%)}.glass-heavy{background:var(--bg-glass-strong);-webkit-backdrop-filter:blur(var(--glass-blur-heavy)) saturate(150%);backdrop-filter:blur(var(--glass-blur-heavy)) saturate(150%)}.glass-card{background:var(--bg-glass);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-glow-md)}.glow-text{text-shadow:0 0 8px var(--glow-color)}.glow-text-strong{text-shadow:0 0 12px var(--glow-strong),0 0 20px var(--glow-color)}.border-precise{border:1px solid var(--color-border);transition:border-color .3s var(--ease-out),box-shadow .3s var(--ease-out)}.border-precise:hover{border-color:var(--border-hover);box-shadow:var(--shadow-glow-sm)}.sys-card-conic-glow{position:relative;overflow:hidden;cursor:pointer;background:#5fb8d608;border:1px solid rgba(95,184,214,.1);border-radius:var(--radius);transition:all .3s var(--ease-out)}.sys-card-conic-glow:after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;content:"";border-radius:var(--radius)}.sys-card-conic-glow:before{position:absolute;top:-200%;right:-200%;bottom:-200%;left:-200%;z-index:-1;content:"";background:conic-gradient(from 0deg,transparent 0deg,var(--color-primary) 30deg,transparent 60deg,transparent 180deg,var(--color-primary) 210deg,transparent 240deg);border-radius:var(--radius);opacity:0}.sys-card-conic-glow:hover{background:#5fb8d614;border-color:transparent;box-shadow:var(--shadow-lift),0 0 20px #5fb8d626;transform:translateY(-4px)}.sys-card-conic-glow:hover:before{opacity:1;animation:rotate-border 3s linear infinite}.sys-card-conic-glow:hover:after{background:linear-gradient(135deg,rgba(95,184,214,.08) 0%,var(--color-bg) 100%)}@keyframes rotate-border{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.slide-in-up{opacity:0;animation:slideInUp .6s var(--ease-out) forwards}.slide-in-up--delay-1{animation-delay:.1s}.slide-in-up--delay-2{animation-delay:.2s}.hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(to right,rgb(0 0 0 / 80%) 0%,rgb(0 0 0 / 20%) 60%,transparent 100%),linear-gradient(to bottom,transparent 90%,var(--color-bg) 100%)}.btn-sci-fi{position:relative;overflow:hidden;background:linear-gradient(135deg,var(--color-primary),var(--color-bright));transition:transform .3s var(--ease-out),box-shadow .3s var(--ease-out)}.btn-sci-fi:before{position:absolute;top:0;left:0;width:100%;height:100%;content:"";pointer-events:none;background:linear-gradient(90deg,#fff0,#ffffff59,#fff0);background-size:200% 100%;opacity:0;transition:opacity .3s var(--ease-out)}.btn-sci-fi:hover{box-shadow:0 0 20px #5fb8d64d,0 0 40px #5fb8d626;transform:translateY(-2px)}.btn-sci-fi:hover:before{opacity:1;animation:shimmer 2s linear infinite}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.star-field-static{position:absolute;top:0;right:0;bottom:0;left:0;opacity:.6;background-image:radial-gradient(1px 1px at 10% 8%,rgba(255,255,255,.6),transparent),radial-gradient(1px 1px at 25% 15%,rgba(255,255,255,.3),transparent),radial-gradient(1px 1px at 40% 22%,rgba(255,255,255,.5),transparent),radial-gradient(1px 1px at 55% 8%,rgba(255,255,255,.2),transparent),radial-gradient(1px 1px at 70% 18%,rgba(255,255,255,.4),transparent),radial-gradient(1px 1px at 85% 10%,rgba(95,184,214,.5),transparent),radial-gradient(1px 1px at 15% 32%,rgba(255,255,255,.3),transparent),radial-gradient(1px 1px at 30% 42%,rgba(95,184,214,.6),transparent),radial-gradient(1px 1px at 50% 38%,rgba(255,255,255,.2),transparent),radial-gradient(1px 1px at 65% 32%,rgba(255,255,255,.5),transparent),radial-gradient(1px 1px at 80% 45%,rgba(255,255,255,.3),transparent),radial-gradient(1.5px 1.5px at 90% 28%,rgba(95,184,214,.7),transparent),radial-gradient(1px 1px at 5% 52%,rgba(255,255,255,.4),transparent),radial-gradient(1px 1px at 20% 62%,rgba(255,255,255,.2),transparent),radial-gradient(1px 1px at 38% 55%,rgba(255,255,255,.5),transparent),radial-gradient(1px 1px at 52% 68%,rgba(95,184,214,.4),transparent),radial-gradient(1px 1px at 68% 58%,rgba(255,255,255,.3),transparent),radial-gradient(1px 1px at 82% 65%,rgba(255,255,255,.4),transparent),radial-gradient(1px 1px at 12% 78%,rgba(255,255,255,.2),transparent),radial-gradient(1px 1px at 35% 82%,rgba(255,255,255,.5),transparent),radial-gradient(1px 1px at 58% 75%,rgba(95,184,214,.3),transparent),radial-gradient(1px 1px at 72% 88%,rgba(255,255,255,.4),transparent),radial-gradient(1px 1px at 88% 80%,rgba(255,255,255,.2),transparent),radial-gradient(1px 1px at 8% 92%,rgba(255,255,255,.3),transparent),radial-gradient(1px 1px at 45% 90%,rgba(255,255,255,.5),transparent);background-size:300px 300px}
