:root{--bg: #ffffff;--bg-alt: #f7f8fa;--bg-card: #ffffff;--ink: #0b1220;--ink-soft: #4b5870;--ink-faint: #8a93a6;--accent: #1d4ed8;--accent-hi: #2563eb;--rule: #e5e8ee;--max-width: 1080px;--max-narrow: 680px;--radius: 14px;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, "PingFang TC", "PingFang SC", "Noto Sans CJK TC", "Noto Sans CJK SC", sans-serif;--font-mono: "JetBrains Mono", "SF Mono", Menlo, Consolas, monospace}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;font-family:var(--font-sans);background:var(--bg);color:var(--ink);line-height:1.55;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none}a:hover{color:var(--accent-hi)}img,svg{max-width:100%;height:auto;display:block}h1,h2,h3{font-weight:700;letter-spacing:-.02em;line-height:1.15;margin:0 0 .6em}h1{font-size:clamp(2.4rem,5.5vw,4.2rem)}h2{font-size:clamp(1.8rem,3.5vw,2.6rem);margin-bottom:.8em}h3{font-size:1.18rem;margin-bottom:.5em}p{margin:0 0 1em}.container{width:100%;max-width:var(--max-width);padding:0 24px;margin:0 auto}.container.narrow{max-width:var(--max-narrow)}.site-header{position:sticky;top:0;z-index:50;background:#fffffff2;backdrop-filter:saturate(180%) blur(12px);-webkit-backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid var(--rule)}.brand-logo{height:88px;width:auto;display:block}.footer-logo{height:120px;width:auto;display:block;margin-bottom:8px}.nav{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;height:120px}.brand{display:inline-flex;align-items:baseline;gap:6px;font-weight:700;letter-spacing:-.01em}.brand-mark{color:var(--accent);font-size:1.25rem}.brand-tag{color:var(--ink-soft);font-size:.95rem}.nav-links{display:flex;gap:28px;align-items:center}.nav-links a{font-size:.92rem;color:var(--ink-soft);font-weight:500}.nav-links a:hover{color:var(--ink)}.cta-link{color:var(--accent)!important;border:1px solid var(--accent);border-radius:999px;padding:6px 14px}.cta-link:hover{background:var(--accent);color:var(--bg)!important}.lang-toggle{font-size:.88rem!important;color:var(--ink)!important;border:1px solid var(--rule);border-radius:6px;padding:4px 10px;margin-left:4px}.lang-toggle:hover{border-color:var(--accent);color:var(--accent)!important}@media (max-width: 720px){.nav-links{gap:16px}.nav-links a:not(.cta-link):not(.lang-toggle){display:none}}.hero{padding:130px 0 110px;background:var(--bg);position:relative;overflow:hidden}.hero .container{position:relative;z-index:2}.hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1;overflow:hidden}.hero-bg:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(29,78,216,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(29,78,216,.06) 1px,transparent 1px);background-size:60px 60px;mask-image:radial-gradient(ellipse 80% 60% at center,black 0%,transparent 75%);-webkit-mask-image:radial-gradient(ellipse 80% 60% at center,black 0%,transparent 75%)}.hero-orb{position:absolute;border-radius:50%;filter:blur(110px);opacity:.18;animation:orb-float 18s ease-in-out infinite alternate}.orb-1{width:480px;height:480px;background:radial-gradient(circle at 30% 30%,#93c5fd 0%,transparent 70%);top:-120px;left:-80px}.orb-2{width:560px;height:560px;background:radial-gradient(circle at 70% 70%,#c7d2fe 0%,transparent 70%);top:20%;right:-160px;animation-delay:-7s;opacity:.16}@keyframes orb-float{0%{transform:translate(0) scale(1)}50%{transform:translate(40px,-30px) scale(1.05)}to{transform:translate(-30px,40px) scale(.95)}}@media (prefers-reduced-motion: reduce){.hero-orb{animation:none}}.hl{color:var(--ink);font-weight:600;border-bottom:2px solid var(--accent);padding-bottom:1px}.muted{color:var(--ink-faint);font-size:.9rem}.eyebrow{color:var(--accent);font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.12em;margin-bottom:18px}.lede{color:var(--ink-soft);font-size:1.18rem;max-width:640px;margin-bottom:36px;line-height:1.65}.accent{color:var(--accent)}.cta-row{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:60px}.btn{display:inline-flex;align-items:center;font-size:.95rem;font-weight:600;padding:13px 26px;border-radius:999px;transition:all .18s ease;cursor:pointer}.btn-primary{background:var(--accent);color:var(--bg)}.btn-primary:hover{background:var(--accent-hi);color:var(--bg);transform:translateY(-1px)}.btn-ghost{background:transparent;border:1px solid var(--rule);color:var(--ink)}.btn-ghost:hover{border-color:var(--accent);color:var(--accent-hi)}.stack{display:flex;align-items:stretch;justify-content:center;gap:14px;margin:0 auto 60px;flex-wrap:wrap;max-width:920px}.stack-step{flex:1 1 180px;background:var(--bg-card);border:1px solid var(--rule);border-radius:var(--radius);padding:22px 18px;text-align:center;transition:border-color .2s ease,transform .2s ease}.stack-step:hover{border-color:#60a5fa73;transform:translateY(-2px)}.stack-step.accent-step{background:linear-gradient(135deg,#60a5fa2e,#60a5fa0f);border-color:#60a5fa80}.stack-num{font-family:var(--font-mono);font-size:.78rem;color:var(--accent);margin-bottom:8px;letter-spacing:.1em}.stack-label{font-size:1.2rem;font-weight:700;color:var(--ink);margin-bottom:4px}.stack-detail{font-size:.82rem;color:var(--ink-soft)}.stack-arrow{display:flex;align-items:center;font-size:1.4rem;color:var(--accent);font-weight:600;-webkit-user-select:none;user-select:none}@media (max-width: 720px){.stack-arrow{transform:rotate(90deg);margin:-4px 0}.stack-step{flex-basis:100%}}.strive{background:var(--bg);padding:28px 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}.strive-strip{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 32px;justify-content:center;font-size:.88rem;color:var(--ink-soft);line-height:1.5}.strive-strip li{display:inline-flex;align-items:baseline;gap:6px}.strive-key{color:var(--ink);font-weight:600}.section{padding:90px 0;border-top:1px solid var(--rule)}.section-alt{background:var(--bg-alt)}.section-eyebrow{color:var(--accent);font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.14em;margin-bottom:12px}.section-lede{color:var(--ink-soft);font-size:1.06rem;max-width:680px;margin-bottom:50px;line-height:1.7}.grid-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:22px;margin-bottom:60px}.card{background:var(--bg-card);border:1px solid var(--rule);border-radius:var(--radius);padding:26px 24px;transition:border-color .2s ease,transform .2s ease}.card:hover{border-color:#60a5fa66;transform:translateY(-2px)}.card h3{color:var(--accent);font-size:1rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:14px}.card ul{list-style:none;padding:0;margin:0}.card li{padding:8px 0;border-bottom:1px solid var(--rule);color:var(--ink-soft);font-size:.93rem}.card li:last-child{border-bottom:none}.card li strong{color:var(--ink);font-weight:600}.product-variants{margin-top:40px}.product-variants h3{font-size:.85rem;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-soft);margin-bottom:18px}.spec-table{width:100%;border-collapse:collapse;background:var(--bg-card);border:1px solid var(--rule);border-radius:var(--radius);overflow:hidden;font-size:.93rem}.spec-table th,.spec-table td{padding:14px 18px;text-align:left;border-bottom:1px solid var(--rule)}.spec-table th{background:#60a5fa0f;color:var(--accent);font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em}.spec-table tbody tr:last-child td{border-bottom:none}.spec-table td:first-child{font-weight:600;color:var(--ink)}@media (max-width: 640px){.spec-table{font-size:.84rem}.spec-table th,.spec-table td{padding:10px 12px}}.tech-block{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;padding:36px 0;border-top:1px solid var(--rule)}.tech-block:first-of-type{border-top:none}.tech-block.reverse .tech-text{order:2}.tech-block.reverse .tech-figure{order:1}@media (max-width: 800px){.tech-block{grid-template-columns:1fr;gap:24px}.tech-block.reverse .tech-text,.tech-block.reverse .tech-figure{order:initial}}.tech-text h3{color:var(--ink);font-size:1.45rem;margin-bottom:14px}.tech-text p{color:var(--ink-soft);font-size:1rem;line-height:1.7}.tech-meta{color:var(--accent)!important;font-size:.88rem!important;font-weight:500!important;margin-top:12px!important}.tech-figure{background:var(--bg-card);border:1px solid var(--rule);border-radius:var(--radius);padding:24px 22px;overflow-x:auto}.diagram{font-family:var(--font-mono);font-size:.86rem;color:var(--ink);line-height:1.6;margin:0;white-space:pre}.papers{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}.paper{background:var(--bg-card);border:1px solid var(--rule);border-radius:var(--radius);padding:22px;transition:border-color .2s ease}.paper:hover{border-color:#60a5fa66}.paper-venue{display:inline-block;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--accent);background:#60a5fa1a;padding:4px 10px;border-radius:6px;margin-bottom:12px}.paper h3{color:var(--ink);font-size:1.02rem;margin-bottom:10px;line-height:1.35}.paper p{color:var(--ink-soft);font-size:.91rem;margin:0;line-height:1.6}.role-group-heading{font-size:.85rem;text-transform:uppercase;letter-spacing:.12em;color:var(--ink-soft);margin:40px 0 18px;font-weight:600}.role-group-heading:first-of-type{margin-top:12px}.role-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:18px}.role{background:var(--bg-card);border:1px solid var(--rule);border-radius:var(--radius);padding:26px 24px;transition:border-color .2s ease,transform .2s ease;display:flex;flex-direction:column}.role:hover{border-color:#60a5fa66;transform:translateY(-2px)}.role header{border-bottom:1px solid var(--rule);padding-bottom:14px;margin-bottom:14px}.role-tag{display:inline-block;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;padding:3px 10px;border-radius:999px;margin-bottom:8px}.tag-exec{background:#1d4ed81a;color:var(--accent)}.tag-dir{background:#1d4ed80f;color:var(--accent)}.tag-ic{background:#f1f3f7;color:var(--ink-soft)}.role h4{font-size:1.15rem;margin:0 0 6px;color:var(--ink);letter-spacing:-.01em}.role-summary{font-size:.86rem;color:var(--ink-soft);margin:0;font-style:italic}.role>p{color:var(--ink-soft);font-size:.93rem;margin:0 0 14px;line-height:1.6}.role ul{list-style:none;padding:0;margin:0}.role li{font-size:.88rem;color:var(--ink-soft);padding:7px 0 7px 18px;position:relative;line-height:1.55;border-bottom:1px solid var(--rule)}.role li:last-child{border-bottom:none}.role li:before{content:"›";color:var(--accent);position:absolute;left:4px;font-weight:700}.role li strong{color:var(--ink);font-weight:600}.apply-note{margin-top:24px;font-size:.92rem;color:var(--ink-faint);font-style:italic}.contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin-top:32px}.contact-card{display:flex;flex-direction:column;background:var(--bg-card);border:1px solid var(--rule);border-radius:var(--radius);padding:22px;transition:border-color .2s ease,transform .2s ease}.contact-card:hover{border-color:var(--accent);transform:translateY(-2px)}.contact-label{font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-soft);margin-bottom:6px}.contact-value{color:var(--accent-hi);font-family:var(--font-mono);font-size:1.02rem;font-weight:500}.site-footer{border-top:1px solid var(--rule);padding:40px 0;background:var(--bg-alt)}.footer-row{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:24px}.footer-brand .brand-mark{font-size:1.1rem}.footer-brand .brand-tag{font-size:.9rem}.footer-tag{margin:8px 0 0;color:var(--ink-faint);font-size:.88rem}.footer-meta{text-align:right;color:var(--ink-faint);font-size:.82rem}.footer-meta p{margin:4px 0}@media (max-width: 600px){.footer-row{flex-direction:column;align-items:flex-start}.footer-meta{text-align:left}}.modal-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#0b12208c;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);align-items:center;justify-content:center;padding:20px}.modal-overlay.open{display:flex}.modal{background:var(--bg);border-radius:var(--radius);border:1px solid var(--rule);box-shadow:0 24px 64px #0b12202e;width:100%;max-width:520px;padding:40px 40px 36px;position:relative;max-height:92vh;overflow-y:auto}.modal-close{position:absolute;top:14px;right:16px;background:none;border:none;font-size:1.35rem;color:var(--ink-faint);cursor:pointer;line-height:1;padding:6px 10px;border-radius:6px;font-family:inherit;transition:background .15s,color .15s}.modal-close:hover{color:var(--ink);background:var(--bg-alt)}.modal-title{margin:0 0 .25em;font-size:1.45rem}.modal-sub{color:var(--ink-soft);font-size:.91rem;margin:0 0 1.8em;line-height:1.55}.form-field{margin-bottom:1.15em}.form-field>label{display:block;font-size:.78rem;font-weight:600;color:var(--ink-soft);margin-bottom:6px;letter-spacing:.08em;text-transform:uppercase}.form-field input:not([type=checkbox]){width:100%;padding:11px 14px;border:1px solid var(--rule);border-radius:8px;font-family:var(--font-sans);font-size:.95rem;color:var(--ink);background:var(--bg);transition:border-color .15s,box-shadow .15s;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.form-field input:not([type=checkbox]):focus{border-color:var(--accent);box-shadow:0 0 0 3px #1d4ed81a}.form-field input[type=file]{padding:9px 12px;cursor:pointer;color:var(--ink-soft);font-size:.88rem}.form-field textarea{width:100%;padding:11px 14px;border:1px solid var(--rule);border-radius:8px;font-family:var(--font-sans);font-size:.95rem;color:var(--ink);background:var(--bg);transition:border-color .15s,box-shadow .15s;outline:none;resize:vertical}.form-field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #1d4ed81a}.form-field select{width:100%;padding:11px 36px 11px 14px;border:1px solid var(--rule);border-radius:8px;font-family:var(--font-sans);font-size:.95rem;color:var(--ink);background:var(--bg) 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='%238a93a6' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") no-repeat right 12px center;-webkit-appearance:none;-moz-appearance:none;appearance:none;transition:border-color .15s,box-shadow .15s;outline:none;cursor:pointer}.form-field select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #1d4ed81a}.form-field select option[value=""]{color:var(--ink-faint)}.form-section{padding-bottom:20px;margin-bottom:20px;border-bottom:1px solid var(--rule)}.form-section:last-of-type{border-bottom:none;margin-bottom:0;padding-bottom:0}.form-section-label{display:block;font-size:.78rem;font-weight:700;color:var(--ink-soft);letter-spacing:.1em;text-transform:uppercase;margin-bottom:14px}.form-section-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media (max-width: 640px){.form-section-row{grid-template-columns:1fr}}.file-hint{margin-top:5px;font-size:.77rem;color:var(--ink-faint)}.checkbox-group{border:1px solid var(--rule);border-radius:8px;max-height:210px;overflow-y:auto;background:var(--bg);transition:border-color .15s,box-shadow .15s}.checkbox-group:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #1d4ed81a}.checkbox-group-section{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--ink-faint);padding:10px 14px 4px;position:sticky;top:0;background:var(--bg-alt);border-bottom:1px solid var(--rule);border-top:1px solid var(--rule)}.checkbox-group-section:first-child{border-top:none}.checkbox-item{display:flex;align-items:center;gap:10px;padding:8px 14px;cursor:pointer;font-size:.9rem;color:var(--ink);transition:background .1s;-webkit-user-select:none;user-select:none}.checkbox-item:hover{background:#1d4ed80a}.checkbox-item input[type=checkbox]{width:15px;height:15px;accent-color:var(--accent);cursor:pointer;flex-shrink:0;margin:0}.modal-actions{display:flex;gap:12px;margin-top:2em}.modal-actions .btn{flex:1;justify-content:center;text-align:center;border:none;font-family:var(--font-sans);-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.modal-actions .btn-ghost{border:1px solid var(--rule)!important;background:transparent}.modal-actions .btn-ghost:hover{border-color:var(--accent)!important}.form-message{display:none;margin-top:1em;padding:10px 14px;border-radius:8px;font-size:.87rem;line-height:1.5}.form-message.success{display:block;background:#ecfdf5;color:#065f46;border:1px solid #a7f3d0}.form-message.error{display:block;background:#fef2f2;color:#991b1b;border:1px solid #fecaca}@media (max-width: 560px){.modal{padding:28px 20px 24px}.modal-actions{flex-direction:column-reverse}}.app-shell{display:flex;min-height:100vh;align-items:stretch}.sidebar{width:240px;flex-shrink:0;display:flex;flex-direction:column;background:var(--bg);border-right:1px solid var(--rule);padding:20px 16px;position:sticky;top:0;height:100vh;overflow-y:auto}.sidebar-logo{display:block;padding:4px 8px 20px}.sidebar-logo .brand-logo{height:48px}.sidebar-section{margin-bottom:22px}.sidebar-section-label{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-faint);padding:0 10px;margin-bottom:8px}.sidebar-link{display:block;padding:9px 10px;border-radius:8px;font-size:.92rem;font-weight:500;color:var(--ink-soft);margin-bottom:2px}.sidebar-link:hover{background:var(--bg-alt);color:var(--ink)}.sidebar-link.active{background:#1d4ed814;color:var(--accent);font-weight:600}.main-content{flex:1;min-width:0;padding:40px 48px 60px}.top-bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.breadcrumbs{display:flex;align-items:center;gap:8px;font-size:.85rem;color:var(--ink-faint)}.breadcrumbs a{color:var(--ink-faint)}.breadcrumbs a:hover{color:var(--accent)}.breadcrumbs-sep{color:var(--ink-faint)}.top-bar-right{display:flex;align-items:center;gap:8px}.top-bar-icon-link{display:inline-flex;align-items:center;gap:6px;font-size:.9rem;font-weight:500;font-family:inherit;color:var(--ink-soft);padding:6px 12px;border:none;border-radius:8px;background:transparent;cursor:pointer}.top-bar-icon-link:hover{background:var(--bg-alt);color:var(--ink)}.top-bar-icon-link.active{background:#1d4ed814;color:var(--accent);font-weight:600}@media (max-width: 860px){.app-shell{flex-direction:column}.sidebar{width:100%;height:auto;position:static;flex-direction:row;flex-wrap:wrap;align-items:center}.sidebar-logo{padding:4px 8px}.sidebar-section{margin-bottom:0;display:flex;align-items:center;gap:6px}.sidebar-section-label{display:none}.main-content{padding:24px 20px 40px}}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;margin-bottom:40px}.dashboard-card{background:var(--bg-card);border:1px solid var(--rule);border-radius:var(--radius);padding:22px 24px}.dashboard-card-label{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-soft);margin-bottom:8px}.dashboard-card-value{font-size:2rem;font-weight:700;color:var(--ink);font-family:var(--font-mono)}.dashboard-section-title{margin:40px 0 16px}.dashboard-section-title:first-child{margin-top:0}
