:root{color:#e7ecff;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:radial-gradient(circle at top,#4e70ff47,#0000 30%),linear-gradient(#081120 0%,#07101c 35%,#050b14 100%);font-family:Inter,Noto Sans SC,Noto Sans CJK SC,Source Han Sans SC,PingFang SC,Hiragino Sans GB,Microsoft YaHei,WenQuanYi Micro Hei,Heiti SC,Droid Sans Fallback,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;margin:0}a{color:inherit;text-decoration:none}[role=button]{cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}#app{min-height:100vh}.page-shell{width:min(1180px,100% - 32px);margin:0 auto;padding:32px 0 40px;position:relative}.ambient{z-index:0;filter:blur(50px);pointer-events:none;opacity:.45;border-radius:50%;width:420px;height:420px;position:fixed}.ambient-left{background:#4fabff2e;top:-120px;left:-120px}.page-shell>*{z-index:1;position:relative}.topbar,.footer-panel,.hero,.metrics-grid,.dual-grid{margin-bottom:24px}.topbar{justify-content:space-between;align-items:flex-end;gap:20px;display:flex}.eyebrow{letter-spacing:.24em;text-transform:uppercase;color:#8ea5ff;margin:0 0 8px;font-size:12px}.brand,.hero h2,.section-heading h2,.footer-panel h2,.metric-card h3,.capability-card h3,.skill-card h3,.timeline-card h3,.project-card h3{color:#f8fbff;margin:0}.brand{font-size:clamp(1.8rem,2.6vw,2.8rem)}.topnav{flex-wrap:wrap;gap:12px;display:flex}.topnav a,.status-chip,.project-stack li,.capability-card li,.education-note span{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0b14249e;border:1px solid #9bb3ff2e}.topnav a{color:#d6defe;border-radius:999px;padding:10px 14px;transition:transform .2s,border-color .2s,background .2s}.topnav a:hover,.topnav a:focus-visible{background:#12233ed9;border-color:#7bb7ff6b;transform:translateY(-1px)}.topnav a:active,.button:active,.interactive-card:active{transform:scale(.98)}.panel{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:linear-gradient(#0c1526eb,#070e1beb);border:1px solid #8ea6ff24;border-radius:28px;box-shadow:0 24px 80px #00000052}.hero,.section-block,.footer-panel{padding:clamp(24px,4vw,40px)}.hero{grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);align-items:center;gap:28px;display:grid}.status-chip{color:#dbe4ff;border-radius:999px;align-items:center;gap:8px;margin-bottom:18px;padding:10px 16px;display:inline-flex}.hero h2,.section-heading h2,.footer-panel h2{font-size:clamp(1.85rem,3.4vw,3.4rem);line-height:1.12}.hero h2 span{color:#72d6ff}.lead,.section-heading p,.metric-card p,.capability-card p,.skill-card p,.timeline-card p,.project-summary,.project-bullets li,.advantage-list li,.contact-inline a,.contact-inline span,.project-spotlight,.project-period{color:#b3bfdc}.hero-actions,.footer-actions{flex-wrap:wrap;gap:14px;margin:28px 0;display:flex}.footer-actions{min-width:110px}.button{border-radius:14px;justify-content:center;align-items:center;min-height:48px;padding:0 20px;font-weight:600;transition:transform .2s,box-shadow .2s,border-color .2s;display:inline-flex}.button:hover,.button:focus-visible{transform:translateY(-2px)}.button,.topnav a,.contact-inline a,.interactive-card{cursor:pointer}.button-primary{color:#05111f;background:linear-gradient(135deg,#79d4ff,#90a2ff);box-shadow:0 14px 30px #72adff42}.button-secondary{color:#eef3ff;background:#0b1424b3;border:1px solid #93abff38}.contact-inline{flex-wrap:wrap;gap:12px;margin:0;padding:0;list-style:none;display:flex}.contact-inline li{background:#08101dbd;border:1px solid #91aaff1f;border-radius:18px;width:fit-content;max-width:100%;padding:14px 16px}.contact-inline a{transition:color .2s}.contact-inline a:hover,.contact-inline a:focus-visible{color:#eef4ff}.interactive-card{transition:transform .2s,border-color .2s,box-shadow .2s}.interactive-card:hover,.interactive-card:focus-visible{border-color:#7bb7ff5c;outline:none;transform:translateY(-4px);box-shadow:0 20px 45px #09122157}.contact-inline span{margin-bottom:8px;font-size:13px;display:block}.hero-visual{gap:18px;display:grid}.console-card,.radar-card,.metric-card,.capability-card,.micro-case-card,.skill-card,.timeline-card,.project-card{background:#08101fe0;border:1px solid #99b5ff24;border-radius:24px;position:relative;overflow:hidden}.console-card:after,.radar-card:after,.metric-card:after,.capability-card:after,.micro-case-card:after,.skill-card:after,.timeline-card:after,.project-card:after{content:"";pointer-events:none;background:linear-gradient(135deg,#78d6ff14,#0000 45%,#7386ff14);position:absolute;inset:0}.console-head{border-bottom:1px solid #91aaff24;align-items:center;gap:8px;padding:14px 18px;display:flex}.console-head span{background:#ff8e8e;border-radius:50%;width:10px;height:10px}.console-head span:nth-child(2){background:#ffd16f}.console-head span:nth-child(3){background:#77f3b0}.console-head p{color:#93a8ef;margin:0 0 0 6px;font-size:13px}.console-body{color:#dce5ff;padding:18px;font-family:JetBrains Mono,SFMono-Regular,Consolas,monospace;font-size:14px;line-height:1.8}.console-body strong{color:#7bd9ff}.radar-card{background:radial-gradient(circle,#6fcdff2e,#0000 55%),#08101fe0;min-height:280px}.radar-grid,.radar-orbit{border:1px solid #83b5ff2e;border-radius:50%;position:absolute;inset:50%;transform:translate(-50%,-50%)}.radar-grid{width:220px;height:220px;box-shadow:inset 0 0 0 40px #7c92ff08,inset 0 0 0 80px #7c92ff08}.radar-orbit{width:260px;height:260px}.orbit-one{animation:14s linear infinite spin}.orbit-two{width:180px;height:180px;animation:12s linear infinite spinReverse}.radar-node{color:#eef4ff;background:#0a1528e6;border:1px solid #76b1ff3d;border-radius:999px;padding:8px 12px;font-size:13px;position:absolute}.node-vue{top:26px;left:50%;transform:translate(-50%)}.node-data{top:94px;right:22px}.node-mqtt{bottom:26px;right:60px}.node-map{bottom:54px;left:26px}.node-devops{top:102px;left:22px}.metrics-grid,.dual-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.metric-card,.capability-card,.micro-case-card,.skill-card,.timeline-card,.project-card{padding:24px}.metric-value{color:#7fd7ff;margin:0 0 10px;font-size:clamp(1.7rem,2.5vw,2.3rem);font-weight:700}.section-block,.section-heading{margin-bottom:24px}.capability-grid,.micro-case-grid,.timeline-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.micro-case-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.micro-case-card{flex-direction:column;gap:16px;display:flex}.case-meta{flex-direction:column;gap:14px;display:flex}.case-label{letter-spacing:.16em;color:#7fd7ff;background:#0b1628b8;border:1px solid #7db6ff2e;border-radius:999px;align-self:flex-start;padding:8px 12px;font-size:12px;font-weight:700;display:inline-flex}.case-stack,.case-approach{margin:0;padding:0;list-style:none}.case-stack{flex-wrap:wrap;gap:10px;display:flex}.case-stack li{color:#deebff;background:#0a1322ad;border:1px solid #95b0ff24;border-radius:999px;padding:7px 12px;font-size:12px}.case-scene,.case-impact,.case-block p,.case-approach li{color:#b3bfdc}.case-block{background:#0a1323b8;border:1px solid #91aaff1a;border-radius:20px;padding:16px}.case-block strong{color:#eef4ff;margin-bottom:10px;display:inline-flex}.case-block p{margin:0}.case-approach li{padding-left:18px;position:relative}.case-approach li+li{margin-top:10px}.case-approach li:before{content:"";background:linear-gradient(135deg,#71d5ff,#8d9eff);border-radius:50%;width:8px;height:8px;position:absolute;top:.72em;left:0}.case-impact{border-top:1px solid #91aaff1f;margin:0;padding-top:4px}.capability-card ul,.project-stack,.advantage-list,.project-bullets{margin:18px 0 0;padding:0;list-style:none}.capability-card ul,.project-stack{flex-wrap:wrap;gap:10px;display:flex}.capability-card li,.project-stack li,.education-note span{color:#deebff;border-radius:999px;padding:8px 12px;font-size:13px}.skill-groups,.project-list{gap:18px;display:grid}.skill-card-head{margin-bottom:18px}.skill-item+.skill-item{margin-top:18px}.skill-item-top{color:#edf3ff;justify-content:space-between;gap:12px;margin-bottom:10px;display:flex}.skill-item-top strong{color:#7fd7ff}.skill-bar{background:#9db1ff1f;border-radius:999px;width:100%;height:10px;margin-bottom:10px;overflow:hidden}.skill-bar-fill{border-radius:inherit;background:linear-gradient(90deg,#72d4ff,#92a2ff);height:100%}.timeline-card span{color:#79d4ff;letter-spacing:.16em;margin-bottom:14px;font-weight:700;display:inline-flex}.project-list{grid-template-columns:repeat(2,minmax(0,1fr))}.project-card{flex-direction:column;gap:16px;display:flex}.project-header{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.project-period{letter-spacing:.12em;text-transform:uppercase;margin:0 0 8px;font-size:13px}.project-spotlight{text-align:right;max-width:240px;margin:0}.project-bullets li{padding-left:18px;position:relative}.project-bullets li+li,.advantage-list li+li{margin-top:12px}.project-bullets li:before,.advantage-list li:before{content:"";background:linear-gradient(135deg,#71d5ff,#8d9eff);border-radius:50%;width:8px;height:8px;position:absolute;top:.72em;left:0}.compact-panel{height:100%}.dual-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.advantage-list li{padding-left:18px;position:relative}.education-note{flex-wrap:wrap;gap:10px;display:flex}.footer-panel{justify-content:space-between;align-items:center;gap:24px;display:flex}@keyframes spin{0%{transform:translate(-50%,-50%)rotate(0)}to{transform:translate(-50%,-50%)rotate(360deg)}}@keyframes spinReverse{0%{transform:translate(-50%,-50%)rotate(360deg)}to{transform:translate(-50%,-50%)rotate(0)}}@media (width<=1080px){.hero,.metrics-grid,.capability-grid,.micro-case-grid,.timeline-grid,.project-list,.dual-grid,.footer-panel{grid-template-columns:1fr}.hero,.footer-panel{display:grid}.project-header{flex-direction:column}.project-spotlight{text-align:left;max-width:none}}@media (width<=720px){.page-shell{width:min(100% - 20px,1180px);padding:20px 0 28px}.topbar{flex-direction:column;align-items:flex-start}.hero,.section-block,.footer-panel{padding:22px}.contact-inline{flex-direction:column;align-items:stretch}.button,.topnav a{width:100%}.hero-actions,.footer-actions,.topnav{flex-direction:column}.radar-card{min-height:240px}.radar-grid{width:180px;height:180px}.radar-orbit{width:210px;height:210px}.orbit-two{width:150px;height:150px}.radar-node{font-size:12px}}
