.lp{--lp-ground:#f4f7fc;--lp-surface:#fff;--lp-ink:#101828;--lp-ink-2:#5a6479;--lp-ink-3:#8b93a6;--lp-line:#e4e9f2;--lp-blue:#2563eb;--lp-blue-700:#1b47c4;--lp-blue-050:#eaf0fe;--lp-cluster:#0c1322;--lp-cluster-2:#141d31;--lp-cluster-line:#ffffff1a;--lp-cluster-ink:#e9eef9;--lp-cluster-ink-2:#8a96b4;--lp-ev:#13b981;--lp-amber:#e08a1e;--lp-sans:"PingFang SC", "SF Pro Display", -apple-system, BlinkMacSystemFont, system-ui, "Microsoft YaHei", sans-serif;--lp-mono:ui-monospace, "SF Mono", "JetBrains Mono", "Roboto Mono", Menlo, Consolas, monospace;--lp-radius:16px;background:var(--lp-ground);color:var(--lp-ink);font-family:var(--lp-sans);-webkit-font-smoothing:antialiased;text-align:left;scroll-behavior:smooth;font-size:17px;line-height:1.6;position:fixed;inset:0;overflow:hidden auto}.lp *,.lp :before,.lp :after{box-sizing:border-box}.lp .wrap{max-width:1120px;margin-inline:auto;padding-inline:24px}.lp .mono{font-family:var(--lp-mono);font-variant-numeric:tabular-nums}.lp .eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--lp-blue);margin:0;font-size:12.5px;font-weight:700}.lp h1,.lp h2,.lp h3{text-wrap:balance;letter-spacing:-.015em;margin:0;line-height:1.12}.lp h1{font-size:clamp(34px,5.4vw,58px);font-weight:800}.lp h2{font-size:clamp(26px,3.6vw,40px);font-weight:800}.lp h3{letter-spacing:-.01em;font-size:20px;font-weight:700}.lp p{margin:0}.lp a{color:inherit;text-decoration:none}.lp button{font-family:inherit}.lp :focus-visible{outline:2.5px solid var(--lp-blue);outline-offset:3px;border-radius:6px}.lp .top{z-index:50;background:color-mix(in srgb, var(--lp-ground) 82%, transparent);-webkit-backdrop-filter:saturate(1.4)blur(12px);backdrop-filter:saturate(1.4)blur(12px);border-bottom:1px solid #0000;transition:border-color .3s;position:sticky;top:0}.lp .top.scrolled{border-bottom-color:var(--lp-line)}.lp .top .row{align-items:center;gap:20px;height:64px;display:flex}.lp .brand{letter-spacing:-.01em;align-items:center;gap:10px;font-size:17px;font-weight:800;display:flex}.lp .top nav{color:var(--lp-ink-2);gap:24px;margin-left:auto;font-size:14.5px;font-weight:500;display:flex}.lp .top nav a:hover{color:var(--lp-ink)}.lp .langsw{background:var(--lp-surface);border:1px solid var(--lp-line);border-radius:999px;gap:2px;padding:3px;display:flex}.lp .langsw button{color:var(--lp-ink-2);cursor:pointer;background:0 0;border:none;border-radius:999px;padding:5px 11px;font-size:12.5px;font-weight:600;transition:background .15s,color .15s}.lp .langsw button.on{background:var(--lp-blue);color:#fff}.lp .btn{cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:8px;padding:11px 20px;font-size:15px;font-weight:600;transition:transform .15s,background .2s,border-color .2s;display:inline-flex}.lp .btn-primary{background:var(--lp-blue);color:#fff;box-shadow:0 1px 2px #2563eb59,0 8px 24px -10px #2563eb99}.lp .btn-primary:hover{background:var(--lp-blue-700);transform:translateY(-1px)}.lp .btn-ghost{color:var(--lp-ink);border-color:var(--lp-line);background:0 0}.lp .btn-ghost:hover{border-color:var(--lp-ink-3);transform:translateY(-1px)}.lp .top .btn{padding:9px 18px}@media (width<=780px){.lp .top nav{display:none}}.lp .hero{padding-block:clamp(48px,7vw,92px) clamp(56px,8vw,100px)}.lp .hero .grid{grid-template-columns:1.05fr .95fr;align-items:center;gap:clamp(32px,5vw,68px);display:grid}.lp .hero .lede{max-width:34ch;color:var(--lp-ink-2);margin-top:22px;font-size:clamp(17px,1.9vw,19.5px)}.lp .hero h1 .hl{color:var(--lp-blue)}.lp .hero .cta-row{flex-wrap:wrap;gap:14px;margin-top:34px;display:flex}.lp .hero .meta{color:var(--lp-ink-3);flex-wrap:wrap;align-items:center;gap:10px;margin-top:22px;font-size:13.5px;display:flex}.lp .dot{opacity:.5;background:currentColor;border-radius:50%;width:4px;height:4px}@media (width<=880px){.lp .hero .grid{grid-template-columns:1fr;gap:40px}.lp .hero .lede{max-width:46ch}}.lp .cluster{background:radial-gradient(120% 90% at 50% -10%, var(--lp-cluster-2), var(--lp-cluster) 62%);color:var(--lp-cluster-ink);border:1px solid #ffffff0f;border-radius:22px;padding:30px 30px 26px;position:relative;overflow:hidden;box-shadow:0 40px 80px -40px #0c132299}.lp .cluster:before{content:"";pointer-events:none;background:radial-gradient(60% 50% at 50% 8%,#2563eb38,#0000 70%);position:absolute;inset:0}.lp .c-label{letter-spacing:.18em;text-transform:uppercase;color:var(--lp-cluster-ink-2);text-align:center;margin:0;font-size:11.5px;font-weight:700;position:relative}.lp .gauge-wrap{place-items:center;margin-top:4px;display:grid;position:relative}.lp .gauge-wrap svg{width:300px;max-width:100%;height:auto;display:block;overflow:visible}.lp .gauge-num{text-align:center;width:100%;position:absolute;bottom:6px}.lp .gauge-num .val{font-family:var(--lp-mono);font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:62px;font-weight:600;line-height:1}.lp .gauge-num .unit{font-family:var(--lp-mono);color:var(--lp-cluster-ink-2);letter-spacing:.04em;margin-top:6px;font-size:14px}.lp .c-stats{background:var(--lp-cluster-line);border-radius:12px;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:22px;display:grid;position:relative;overflow:hidden}.lp .c-stat{text-align:center;background:#ffffff04;padding:13px 8px}.lp .c-stat .k{letter-spacing:.08em;text-transform:uppercase;color:var(--lp-cluster-ink-2);font-size:10px;font-weight:600}.lp .c-stat .v{font-family:var(--lp-mono);font-variant-numeric:tabular-nums;color:var(--lp-cluster-ink);margin-top:5px;font-size:16px}.lp .c-stat .v small{color:var(--lp-cluster-ink-2);font-size:11px}.lp .c-plate{color:var(--lp-cluster-ink-2);justify-content:center;align-items:center;gap:9px;margin-top:18px;font-size:12.5px;display:flex;position:relative}.lp .c-plate .tag{font-family:var(--lp-mono);border:1px solid var(--lp-cluster-line);color:var(--lp-cluster-ink);letter-spacing:.06em;background:#ffffff0f;border-radius:6px;padding:2px 8px}.lp .band{padding-block:clamp(60px,9vw,118px)}.lp .band+.band{border-top:1px solid var(--lp-line)}.lp .sec-head{max-width:42ch}.lp .sec-head h2{margin-top:14px}.lp .sec-head p{color:var(--lp-ink-2);margin-top:18px;font-size:18px}.lp .method .flow{background:var(--lp-surface);border:1px solid var(--lp-line);border-radius:var(--lp-radius);grid-template-columns:auto 1fr auto auto auto;align-items:center;gap:22px;margin-top:44px;padding:28px clamp(20px,3vw,34px);display:grid;box-shadow:0 18px 40px -30px #10182840}.lp .fill{text-align:center}.lp .fill .pump{background:var(--lp-blue-050);width:52px;height:52px;color:var(--lp-blue);border:1px solid color-mix(in srgb, var(--lp-blue) 18%, var(--lp-line));border-radius:14px;place-items:center;margin-inline:auto;display:grid}.lp .fill .cap{color:var(--lp-ink-2);margin-top:10px;font-size:12.5px;font-weight:600}.lp .fill .amt{font-family:var(--lp-mono);font-variant-numeric:tabular-nums;color:var(--lp-ink);margin-top:3px;font-size:14px}.lp .track{background:linear-gradient(90deg, var(--lp-line), var(--lp-blue) 50%, var(--lp-line));border-radius:2px;height:2px;position:relative}.lp .track .km{background:var(--lp-surface);border:1px solid var(--lp-line);font-family:var(--lp-mono);font-variant-numeric:tabular-nums;color:var(--lp-ink);white-space:nowrap;border-radius:999px;padding:3px 12px;font-size:13px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.lp .eq{font-family:var(--lp-mono);color:var(--lp-ink-3);text-align:center;font-size:26px;font-weight:500}.lp .result{text-align:center}.lp .result .r-val{font-family:var(--lp-mono);font-variant-numeric:tabular-nums;color:var(--lp-blue);letter-spacing:-.01em;font-size:34px;font-weight:600}.lp .result .r-unit{font-family:var(--lp-mono);color:var(--lp-ink-2);margin-top:2px;font-size:12.5px}.lp .method .note{color:var(--lp-ink-2);max-width:64ch;margin-top:22px;font-size:15px}.lp .method .note b{color:var(--lp-ink);font-weight:600}@media (width<=760px){.lp .method .flow{text-align:center;grid-template-columns:1fr;gap:20px}.lp .track{height:40px}.lp .eq{transform:rotate(90deg)}}.lp .triad{grid-template-columns:repeat(3,1fr);gap:18px;margin-top:44px;display:grid}.lp .mode{background:var(--lp-surface);border:1px solid var(--lp-line);border-radius:var(--lp-radius);padding:24px;transition:border-color .2s,transform .2s,box-shadow .2s}.lp .mode:hover{border-color:color-mix(in srgb, var(--lp-blue) 40%, var(--lp-line));transform:translateY(-3px);box-shadow:0 24px 44px -30px #10182859}.lp .mtag{letter-spacing:.04em;border-radius:999px;align-items:center;gap:7px;padding:5px 11px;font-size:12px;font-weight:700;display:inline-flex}.lp .mtag.oil{color:#b4700e;background:#fef3e6}.lp .mtag.ele{color:#0b7c55;background:#e4f8f0}.lp .mtag.phev{background:var(--lp-blue-050);color:var(--lp-blue-700)}.lp .mode h3{margin-top:16px}.lp .mode p{color:var(--lp-ink-2);margin-top:9px;font-size:15px}.lp .mode .metric{border-top:1px dashed var(--lp-line);justify-content:space-between;align-items:baseline;margin-top:18px;padding-top:16px;display:flex}.lp .mode .metric .m-v{font-family:var(--lp-mono);font-variant-numeric:tabular-nums;font-size:22px;font-weight:600}.lp .mode .metric .m-k{color:var(--lp-ink-3);letter-spacing:.04em;font-size:12px}@media (width<=820px){.lp .triad{grid-template-columns:1fr}}.lp .features{grid-template-columns:repeat(6,1fr);gap:18px;margin-top:46px;display:grid}.lp .feat{background:var(--lp-surface);border:1px solid var(--lp-line);border-radius:var(--lp-radius);grid-column:span 2;padding:24px;transition:border-color .2s,transform .2s,box-shadow .2s}.lp .feat:hover{border-color:color-mix(in srgb, var(--lp-blue) 40%, var(--lp-line));transform:translateY(-3px);box-shadow:0 24px 44px -30px #10182859}.lp .feat.wide{grid-column:span 3}.lp .feat .ic{background:var(--lp-blue-050);width:40px;height:40px;color:var(--lp-blue);border-radius:11px;place-items:center;display:grid}.lp .feat h3{margin-top:16px}.lp .feat p{color:var(--lp-ink-2);margin-top:8px;font-size:14.5px}.lp .feat .demo{margin-top:18px}@media (width<=900px){.lp .features{grid-template-columns:repeat(2,1fr)}.lp .feat,.lp .feat.wide{grid-column:span 1}}@media (width<=560px){.lp .features{grid-template-columns:1fr}}.lp .bars{align-items:flex-end;gap:7px;height:68px;display:flex}.lp .bars i{background:var(--lp-blue-050);border-radius:5px 5px 2px 2px;flex:1;display:block}.lp .bars i.on{background:var(--lp-blue)}.lp .rowline{border:1px solid var(--lp-line);background:#fbfcfe;border-radius:10px;align-items:center;gap:10px;padding:10px 12px;display:flex}.lp .rowline+.rowline{margin-top:8px}.lp .rowline .rl-ic{background:var(--lp-blue-050);width:26px;height:26px;color:var(--lp-blue);border-radius:7px;flex:none;place-items:center;display:grid}.lp .rowline .rl-main{flex:1;min-width:0}.lp .rowline .rl-t{font-size:13px;font-weight:600}.lp .rowline .rl-s{color:var(--lp-ink-3);font-size:11.5px;font-family:var(--lp-mono)}.lp .pill-ok{color:var(--lp-ev);background:#e4f8f0;border-radius:999px;flex:none;padding:3px 9px;font-size:11px;font-weight:700}.lp .pill-warn{color:var(--lp-amber);background:#fcf1df;border-radius:999px;flex:none;padding:3px 9px;font-size:11px;font-weight:700}.lp .catalog{font-family:var(--lp-mono);color:var(--lp-ink-2);flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;display:flex}.lp .catalog b{color:var(--lp-ink);font-weight:600}.lp .catalog .arw{color:var(--lp-blue)}.lp .avatars{display:flex}.lp .avatars span{border:2px solid var(--lp-surface);color:#fff;border-radius:50%;place-items:center;width:30px;height:30px;margin-left:-8px;font-size:12px;font-weight:700;display:grid}.lp .avatars span:first-child{margin-left:0}.lp .platforms{text-align:center}.lp .platforms .plist{flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;margin-top:30px;display:flex}.lp .chip{border:1px solid var(--lp-line);background:var(--lp-surface);border-radius:999px;align-items:center;gap:9px;padding:12px 20px;font-size:15px;font-weight:600;display:inline-flex}.lp .langs{font-family:var(--lp-mono);color:var(--lp-ink-3);letter-spacing:.02em;margin-top:20px;font-size:13.5px}.lp .closer{text-align:center}.lp .closer .box{background:var(--lp-cluster);color:var(--lp-cluster-ink);border-radius:26px;padding:clamp(44px,6vw,72px) 28px;position:relative;overflow:hidden;box-shadow:0 50px 90px -50px #0c1322b3}.lp .closer .box:before{content:"";background:radial-gradient(70% 120% at 50% -20%,#2563eb59,#0000 60%);position:absolute;inset:0}.lp .closer h2{color:#fff;position:relative}.lp .closer p{color:var(--lp-cluster-ink-2);margin-top:16px;font-size:16px;position:relative}.lp .closer .btn{margin-top:30px;position:relative}.lp .closer .fine{font-family:var(--lp-mono);color:var(--lp-cluster-ink-2);margin-top:18px;font-size:12.5px;position:relative}.lp .foot{color:var(--lp-ink-3);padding-block:40px 56px}.lp .foot .row{flex-wrap:wrap;align-items:center;gap:16px;font-size:13.5px;display:flex}.lp .foot .brand{color:var(--lp-ink-2);font-size:15px}.lp .foot .sp{margin-left:auto}.lp .reveal{opacity:0;transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1);transform:translateY(18px)}.lp .reveal.inview{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.lp .reveal{opacity:1!important;transition:none!important;transform:none!important}.lp{scroll-behavior:auto}}:root{--primary:#004ac6;--primary-container:#2563eb;--bg:#f7f9fb;--surface:#fff;--ink:#2b2f33;--sub:#6b7178;--border:#e2e8f0;--field:#f1f5f9;--success:#10b981;--warning:#f59e0b;--error:#ba1a1a;--radius:16px;--radius-sm:12px}*{box-sizing:border-box;margin:0}body{background:var(--bg);color:var(--ink);font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,sans-serif}#root{max-width:960px;margin:0 auto;padding:0 16px 48px}.topbar{border-bottom:1px solid var(--border);align-items:center;gap:16px;margin-bottom:20px;padding:14px 0;display:flex}.topbar h1{color:var(--primary);font-size:20px;font-weight:700}.topbar .spacer{flex:1}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:16px;padding:16px}.grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;display:grid}.kpis{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;display:grid}.kpi{background:var(--field);border-radius:var(--radius-sm);padding:12px}.kpi .label{color:var(--sub);letter-spacing:.05em;font-size:12px;font-weight:600}.kpi .value{margin-top:4px;font-size:22px;font-weight:700}.kpi .value.blue{color:var(--primary)}.kpi .value.green{color:var(--success)}button{font:inherit;cursor:pointer;border-radius:var(--radius-sm);border:none;padding:10px 18px;font-weight:600}button.primary{background:var(--primary);color:#fff}button.primary:disabled{opacity:.5;cursor:default}button.ghost{color:var(--primary);background:0 0}button.outline{color:var(--ink);border:1px solid var(--border);background:0 0}button.danger{color:var(--error);border:1px solid var(--border);background:0 0}label{color:var(--sub);margin:12px 0 6px;font-size:12px;font-weight:600;display:block}input,select{font:inherit;border-radius:var(--radius-sm);background:var(--field);border:1px solid #0000;width:100%;padding:11px 14px}input:focus,select:focus{border-color:var(--primary);background:#fff;outline:none}.row{gap:12px;display:flex}.row>*{flex:1}.timeline-item{border-bottom:1px solid var(--border);align-items:center;gap:14px;padding:14px 0;display:flex}.timeline-item:last-child{border-bottom:none}.timeline-item .icon{background:var(--field);border-radius:50%;flex:none;justify-content:center;align-items:center;width:42px;height:42px;font-size:18px;display:flex}.timeline-item .main{flex:1;min-width:0}.timeline-item .title{font-weight:600}.timeline-item .sub{color:var(--sub);margin-top:2px;font-size:12px}.timeline-item .amount{color:var(--primary);text-align:right;font-weight:700}.timeline-item .eff{color:var(--success);text-align:right;font-size:12px;font-weight:700}.pill{border-radius:999px;padding:3px 10px;font-size:11px;font-weight:700;display:inline-block}.pill.warn{color:#92400e;background:#fef3cd}.pill.ok{color:#065f46;background:#d1fae5}.modal-backdrop{z-index:50;background:#14182873;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal{background:var(--surface);border-radius:var(--radius);width:100%;max-width:460px;max-height:90vh;padding:24px;overflow-y:auto}.modal h2{margin-bottom:4px;font-size:18px}.banner{border-radius:var(--radius-sm);margin-bottom:12px;padding:10px 14px;font-size:14px}.banner.ok{color:#065f46;background:#d1fae5}.banner.err{color:var(--error);background:#ffe4e1}.muted{color:var(--sub);font-size:13px}.section-title{margin:20px 0 10px;font-weight:700}a{color:var(--primary);text-decoration:none}@font-face{font-family:Material Icons;font-style:normal;font-weight:400;src:url(/material-icons.ttf)format("truetype")}.mi{letter-spacing:normal;text-transform:none;vertical-align:-.22em;white-space:nowrap;word-wrap:normal;font-feature-settings:"liga";-webkit-font-smoothing:antialiased;direction:ltr;font-family:Material Icons;font-size:1.2em;font-style:normal;font-weight:400;line-height:1;display:inline-block}.topnav{gap:14px;margin-left:18px;display:flex}.topnav a{color:var(--sub,#64748b);font-size:14px;font-weight:600;text-decoration:none}.topnav a:hover{color:var(--primary)}@media (prefers-color-scheme:dark){:root{--bg:#101418;--card:#1a1f24;--border:#2e3742;--sub:#9ba3ac;--text:#e4e8ec;--field:#232a31;--primary:#9db8ff;--primary-soft:#2c3a52}body{background:var(--bg);color:var(--text)}.card,.modal{background:var(--card);border-color:var(--border)}input,select,textarea{background:var(--field);color:var(--text);border-color:var(--border)}.kpi{background:var(--card)}.topbar{background:var(--card);border-color:var(--border)}button.outline{border-color:var(--border);color:var(--text)}}
