.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;height:100%;width:100%;font-family:Inter,Microsoft YaHei,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:#0f172a;color:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}ul,li{padding:0;margin:0;list-style-type:none}i{font-style:normal}a{color:inherit;text-decoration:none}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-thumb{border-radius:5px;background:#00d2ff59}::-webkit-scrollbar-track{border-radius:0;background:#575b6914}.anticon{display:inline-flex;align-items:center;justify-content:center;line-height:0;vertical-align:-.125em;flex-shrink:0}@keyframes gradientBG{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes pulseGlow{0%,to{box-shadow:0 0 10px #00d2ff33,inset 0 0 20px #00d2ff1a}50%{box-shadow:0 0 20px #00d2ff73,inset 0 0 30px #00d2ff33}}@keyframes floatSphere{0%{transform:translateY(0) scale(1);opacity:.6}to{transform:translateY(20px) scale(1.1);opacity:1}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.home{height:100vh;width:100vw;display:flex;flex-direction:column;background:linear-gradient(-45deg,#0f172a,#1e1b4b,#001529,#082f49);background-size:400% 400%;animation:gradientBG 15s ease infinite;color:#fff;overflow:hidden}.home .header{position:relative;width:100%;height:110px;flex-shrink:0;display:flex;justify-content:center;align-items:center;background:#0f172a99;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(0,210,255,.3);z-index:10;box-shadow:0 4px 30px #00000080}.home .header:before{content:"";position:absolute;bottom:0;left:0;width:100%;height:1px;background:linear-gradient(90deg,transparent,#00d2ff,transparent)}.home .header .header-brand-link{display:inline-flex;align-items:center;justify-content:center}.home .header .title{height:48px;width:auto;object-fit:contain;filter:drop-shadow(0 0 8px rgba(0,210,255,.8))}.home .main{flex:1;display:flex;flex-direction:row;height:calc(100vh - 110px);position:relative;padding:24px;gap:24px;min-height:0}.home .main .nav{width:260px;flex-shrink:0;height:100%;background:#0f172a66;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.1);border-right:1px solid rgba(0,210,255,.3);border-radius:16px;display:flex;flex-direction:column;align-items:center;padding:16px 0;box-shadow:0 8px 32px #0000005e;animation:pulseGlow 4s infinite;overflow:hidden}.home .main .nav .menudiv{width:100%;height:100%;overflow-y:auto}.home .main .nav .menudiv::-webkit-scrollbar{width:6px}.home .main .nav .menudiv::-webkit-scrollbar-track{background:transparent}.home .main .nav .menudiv::-webkit-scrollbar-thumb{background:#00d2ff4d;border-radius:4px}.home .main .nav .menudiv .ant-menu{background:transparent;color:#ffffffd9;width:100%}.home .main .nav .menudiv .ant-menu .nav-list{display:flex;flex-direction:column;gap:4px}.home .main .nav .menudiv .ant-menu .ant-menu-item-icon{font-size:18px;margin-right:10px;color:#0ff}.home .main .nav .menudiv .ant-menu .ant-menu-item>a,.home .main .nav .menudiv .ant-menu .ant-menu-submenu-title{display:flex;align-items:center;margin:4px 12px;padding:11px 16px;width:calc(100% - 24px);border-radius:8px;transition:all .25s ease;font-size:16px;letter-spacing:.5px;color:#0ff;background:transparent;border:none;cursor:pointer;font-family:inherit;text-align:left}.home .main .nav .menudiv .ant-menu .ant-menu-item>a:hover,.home .main .nav .menudiv .ant-menu .ant-menu-submenu-title:hover{color:#00d2ff;background:#00d2ff1f;text-shadow:0 0 8px rgba(0,210,255,.6)}.home .main .nav .menudiv .ant-menu .ant-menu-submenu-title{justify-content:space-between}.home .main .nav .menudiv .ant-menu .ant-menu-submenu-title .submenu-title-content{display:inline-flex;align-items:center}.home .main .nav .menudiv .ant-menu .ant-menu-submenu-title .ant-menu-submenu-arrow{font-size:14px;color:#0ff;transition:transform .25s ease}.home .main .nav .menudiv .ant-menu .ant-menu-submenu{margin-bottom:8px}.home .main .nav .menudiv .ant-menu .ant-menu-submenu:not(.ant-menu-submenu-open) .ant-menu-sub{display:none}.home .main .nav .menudiv .ant-menu .ant-menu-submenu:not(.ant-menu-submenu-open) .ant-menu-submenu-arrow{transform:rotate(-90deg)}.home .main .nav .menudiv .ant-menu .ant-menu-sub{background:#00000038;padding:4px 0;margin-top:2px}.home .main .nav .menudiv .ant-menu .ant-menu-sub .ant-menu-item>a{padding-left:38px;font-size:15px}.home .main .nav .menudiv .ant-menu .ant-menu-item-selected>a{background:linear-gradient(90deg,#00d2ff38,#3a7bd51a);color:#fff;border-left:3px solid #00d2ff;box-shadow:inset 2px 0 8px #00d2ff33;border-radius:0 8px 8px 0;margin-left:0;width:calc(100% - 12px)}.home .main .nav .menudiv .ant-menu .ant-menu-item-selected>a .ant-menu-item-icon{color:#fff}.home .main .routerChildren{flex:1;height:100%;min-width:0;background:#0f172a66;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.1);border-radius:16px;box-shadow:0 8px 32px #0000005e;overflow-y:auto;padding:24px;position:relative}.home .main .routerChildren:before{content:"";position:absolute;top:0;left:0;width:30px;height:30px;border-top:2px solid #00d2ff;border-left:2px solid #00d2ff;border-top-left-radius:16px;opacity:.8;pointer-events:none}.home .main .routerChildren:after{content:"";position:absolute;bottom:0;right:0;width:30px;height:30px;border-bottom:2px solid #00d2ff;border-right:2px solid #00d2ff;border-bottom-right-radius:16px;opacity:.8;pointer-events:none}.home .main .routerChildren::-webkit-scrollbar{width:8px;height:8px}.home .main .routerChildren::-webkit-scrollbar-track{background:transparent}.home .main .routerChildren::-webkit-scrollbar-thumb{background:#00d2ff66;border-radius:4px}.home .main .routerChildren::-webkit-scrollbar-thumb:hover{background:#00d2ffcc;box-shadow:0 0 10px #00d2ff}.mainpage-container{width:100%;min-height:100%;display:flex;flex-direction:column;gap:24px;color:#fff}.mainpage-container .welcome-banner{position:relative;flex-shrink:0;padding:32px 40px;background:linear-gradient(135deg,#00d2ff1a,#3a7bd51a);border-radius:16px;border:1px solid rgba(0,210,255,.3);overflow:hidden;box-shadow:inset 0 0 20px #00d2ff0d}.mainpage-container .welcome-banner .banner-content{position:relative;z-index:2}.mainpage-container .welcome-banner .banner-content h1{font-size:32px;font-weight:700;margin:0 0 12px;background:linear-gradient(to right,#fff,#00d2ff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:1px}.mainpage-container .welcome-banner .banner-content p{font-size:16px;color:#ffffffbf;margin:0;letter-spacing:.5px}.mainpage-container .welcome-banner .glow-sphere{position:absolute;top:-50%;right:5%;width:200px;height:200px;background:radial-gradient(circle,#00d2ff66,#0000 70%);border-radius:50%;z-index:1;animation:floatSphere 6s ease-in-out infinite alternate;pointer-events:none}.mainpage-container .dashboard-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;flex:1}.mainpage-container .dashboard-grid .glass-card{background:#0f172a4d;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.06);border-radius:16px;padding:24px;transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease,background-color .3s ease;box-shadow:0 4px 15px #0003;display:flex;flex-direction:column}.mainpage-container .dashboard-grid .glass-card:hover{transform:translateY(-5px);border-color:#00d2ff66;box-shadow:0 8px 25px #00d2ff26;background:#0f172a80}.mainpage-container .dashboard-grid .glass-card .card-header{display:flex;align-items:center;margin-bottom:20px;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:12px}.mainpage-container .dashboard-grid .glass-card .card-header .card-icon{font-size:24px;color:#00d2ff;margin-right:12px;filter:drop-shadow(0 0 5px rgba(0,210,255,.5))}.mainpage-container .dashboard-grid .glass-card .card-header h2{font-size:20px;color:#fff;margin:0;font-weight:500;letter-spacing:.5px}.mainpage-container .dashboard-grid .glass-card .card-body{flex:1}.mainpage-container .dashboard-grid .glass-card .card-body .tag-list{display:flex;flex-wrap:wrap;gap:12px}.mainpage-container .dashboard-grid .glass-card .card-body .tag-list .tech-tag{padding:8px 16px;background:#00d2ff1a;border:1px solid rgba(0,210,255,.3);border-radius:20px;font-size:14px;color:#00d2ff;transition:all .2s}.mainpage-container .dashboard-grid .glass-card .card-body .tag-list .tech-tag:hover{background:#00d2ff;color:#000;box-shadow:0 0 10px #00d2ff99}.mainpage-container .dashboard-grid .glass-card .card-body .feature-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:16px}.mainpage-container .dashboard-grid .glass-card .card-body .feature-list li{display:flex;align-items:center;font-size:15px;color:#ffffffd9}.mainpage-container .dashboard-grid .glass-card .card-body .feature-list li .anticon{color:#00d2ff;margin-right:8px;font-size:18px}.mainpage-container .dashboard-grid .glass-card .card-body .profile-text{font-size:15px;line-height:1.8;color:#ffffffd9;margin:0}.mainpage-container .dashboard-grid .glass-card .card-body .profile-text strong{color:#00d2ff;font-weight:600}.mainpage-container .dashboard-grid .glass-card .card-body.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.mainpage-container .dashboard-grid .glass-card .card-body.contact-grid .contact-item{display:flex;align-items:center;padding:16px;background:#ffffff08;border-radius:12px;transition:background .3s}.mainpage-container .dashboard-grid .glass-card .card-body.contact-grid .contact-item:hover{background:#ffffff14}.mainpage-container .dashboard-grid .glass-card .card-body.contact-grid .contact-item .anticon{font-size:28px;color:#00d2ff;margin-right:16px}.mainpage-container .dashboard-grid .glass-card .card-body.contact-grid .contact-item .contact-info{display:flex;flex-direction:column}.mainpage-container .dashboard-grid .glass-card .card-body.contact-grid .contact-item .contact-info .label{font-size:12px;color:#ffffff8c;margin-bottom:4px}.mainpage-container .dashboard-grid .glass-card .card-body.contact-grid .contact-item .contact-info .value{font-size:14px;color:#fff}.mainpage-container .dashboard-grid .glass-card.wide-card{grid-column:span 2}.inner-page-container{width:100%;min-height:100%;display:flex;flex-direction:column;gap:24px;color:#fff}.glass-panel{background:#0f172a66;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:32px 40px;box-shadow:0 8px 32px #0000005e;display:flex;flex-direction:column;transition:border-color .3s ease,box-shadow .3s ease}.glass-panel:hover{border-color:#00d2ff4d;box-shadow:0 8px 32px #00d2ff26}.content-title{font-size:32px;font-weight:700;color:#0ff;margin:0 0 24px;text-shadow:0 0 10px rgba(0,255,255,.4);background:linear-gradient(to right,#0ff,#00d2ff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.content-subtitle{font-size:20px;font-weight:700;color:#ef0;margin:24px 0 12px;text-shadow:0 0 8px rgba(238,255,0,.3);align-self:flex-start}.content-body{font-size:16px;color:#ffffffd9;line-height:1.8;margin:0 0 16px;text-indent:32px;text-align:left;letter-spacing:.5px}.ant-image.glow-image-wrapper{display:flex;justify-content:center;width:100%;margin:12px 0 24px}.ant-image.glow-image-wrapper .glow-image-trigger{position:relative;display:inline-flex;justify-content:center;align-items:center;max-width:90%;padding:0;border:none;background:transparent;cursor:zoom-in;border-radius:12px}.ant-image.glow-image-wrapper .glow-image-trigger .glow-image{max-width:100%;height:auto;border-radius:12px;box-shadow:0 0 20px #00d2ff33;border:1px solid rgba(0,210,255,.15);transition:transform .3s ease,box-shadow .3s ease;display:block}.ant-image.glow-image-wrapper .glow-image-trigger .glow-image-mask{position:absolute;inset:0;border-radius:12px;background:#0f172a8c;color:#fff;display:flex;align-items:center;justify-content:center;gap:6px;font-size:14px;opacity:0;transition:opacity .25s ease;pointer-events:none}.ant-image.glow-image-wrapper .glow-image-trigger:hover .glow-image{box-shadow:0 0 30px #00d2ff80;transform:scale(1.015)}.ant-image.glow-image-wrapper .glow-image-trigger:hover .glow-image-mask{opacity:1}.scadapage .ant-image.glow-image-wrapper .glow-image-trigger{max-width:80%}.lightbox-backdrop{position:fixed;inset:0;z-index:9999;background:#050a18e0;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px;opacity:0;pointer-events:none;transition:opacity .2s ease}.lightbox-backdrop.is-open{opacity:1;pointer-events:auto}.lightbox-backdrop .lightbox-close{position:absolute;top:20px;right:28px;width:44px;height:44px;border-radius:50%;border:1px solid rgba(0,210,255,.4);background:#0f172abf;color:#fff;font-size:24px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.lightbox-backdrop .lightbox-close:hover{background:#00d2ff;color:#000}.lightbox-backdrop .lightbox-img{max-width:92vw;max-height:84vh;object-fit:contain;border-radius:12px;border:1px solid rgba(0,210,255,.35);box-shadow:0 0 40px #00d2ff4d}.lightbox-backdrop .lightbox-caption{margin-top:14px;color:#ffffffd9;font-size:14px}.footer-glass{margin-top:auto;padding:16px 24px;background:#0f172a66;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:12px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;font-size:13px;color:#ffffff8c;border:1px solid rgba(255,255,255,.06)}.footer-glass a{color:#ffffff8c;text-decoration:none;transition:color .3s;display:inline-flex;align-items:center}.footer-glass a img{height:14px;width:auto;margin-right:4px}.footer-glass a:hover{color:#00d2ff}.footer-glass .divider{margin:0 12px;color:#fff3}@media(max-width:1024px){.home{height:auto;min-height:100vh;overflow-y:auto}.home .header{height:80px}.home .header .title{height:38px}.home .main{flex-direction:column;height:auto;padding:16px;gap:16px}.home .main .nav{width:100%;height:auto}.home .main .routerChildren{height:auto;overflow-y:visible}.mainpage-container .dashboard-grid{grid-template-columns:1fr}.mainpage-container .dashboard-grid .glass-card.wide-card{grid-column:span 1}.mainpage-container .dashboard-grid .glass-card .card-body.contact-grid{grid-template-columns:1fr}}@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media(prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}[data-astro-transition-scope]{animation:none!important}}
