@charset "UTF-8";
:root{color-scheme:dark;--ink:#efefef;--muted:#a3a3a3;--line:#292929;--bg:#0a0a0a}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--bg);font-family:system-ui,-apple-system,"PingFang TC","Microsoft JhengHei",sans-serif;font-size:16px;line-height:1.8}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:5px}a:focus-visible,button:focus-visible{outline:2px solid #b3d5f5;outline-offset:5px}.wrap{width:min(960px,calc(100% - 64px));margin-inline:auto}.skip{position:absolute;top:-100px;padding:12px;background:#fff;color:#000;z-index:2}.skip:focus{top:10px}header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:30px;border-bottom:1px solid var(--line)}.brand{font-size:18px;font-weight:650;letter-spacing:-.025em}.brand-caption{display:block;font-size:10px;font-weight:450;letter-spacing:.13em;color:var(--muted);margin-top:3px}.language-switch{display:flex;gap:2px;padding:3px;border:1px solid #353535;border-radius:6px}.language-switch button{font:inherit;font-size:13px;min-width:48px;min-height:34px;padding:4px 10px;cursor:pointer;border:0;border-radius:3px;background:transparent;color:var(--muted)}.language-switch button[aria-pressed="true"]{background:#ededed;color:#151515}.language-switch button:hover{color:white;background:#363636}.language-switch button[aria-pressed="true"]:hover{background:white;color:#151515}.intro{padding:58px 0 45px}.label{font-size:12px;letter-spacing:.13em;color:var(--muted);margin:0 0 15px}h1{font-size:clamp(30px,4.3vw,45px);line-height:1.3;font-weight:600;letter-spacing:-.035em;margin:0 0 22px}.intro>p:last-child{max-width:720px;color:var(--muted);margin:0}.offering{display:grid;grid-template-columns:175px 1fr;gap:35px;border-top:1px solid var(--line);padding:33px 0}.section-label{display:flex;gap:12px;align-items:baseline;font-size:13px;color:var(--muted)}.section-label span{font-size:12px;font-variant-numeric:tabular-nums;color:#737373}.section-label p{margin:0}h2{font-size:22px;line-height:1.5;font-weight:550;letter-spacing:-.02em;margin:0 0 13px}.offering>div>p{color:var(--muted);margin:0 0 16px}.offering>div>p:last-child{margin-bottom:0}dl{margin:20px 0 0}dl>div{display:grid;grid-template-columns:130px 1fr;gap:15px;padding:6px 0}dt{font-size:14px;font-weight:550}dd{font-size:14px;color:var(--muted);margin:0}.note{font-size:14px;color:var(--muted)}h3{font-size:16px;font-weight:550;line-height:1.6;margin:0 0 7px}.education{border-left:2px solid #4b4b4b;padding-left:20px;margin-top:20px}.education p{font-size:14px;color:var(--muted);margin:3px 0}.education .degree{color:#c8c8c8}.education .note{margin-top:11px}.experience-title{margin-top:27px}.experience{margin:10px 0 0;padding-left:19px;color:var(--muted);font-size:14px}.experience li{padding-left:3px;margin:5px 0}.experience li::marker{color:#6f6f6f}footer{display:flex;justify-content:space-between;gap:24px;border-top:1px solid var(--line);padding-block:25px 35px;font-size:14px}footer span{color:var(--muted)}@media(max-width:650px){.wrap{width:calc(100% - 40px)}header{padding-block:22px;gap:10px}.brand{font-size:17px}.brand-caption{font-size:9px}.intro{padding-block:38px 30px}h1{font-size:31px}.offering{grid-template-columns:1fr;gap:15px;padding-block:27px}h2{font-size:21px}dl>div{grid-template-columns:108px 1fr;gap:10px}.education{padding-left:15px}footer{font-size:13px;flex-wrap:wrap;gap:8px}.language-switch button{min-width:43px;padding-inline:8px}}@media print{:root{color-scheme:light;--ink:#111;--muted:#555;--line:#ccc;--bg:#fff}.language-switch{display:none}.wrap{width:100%}.intro,.offering{padding-block:20px}.education .degree{color:#333}}

.background-note{font-size:14px;color:var(--muted);margin:7px 0 0}

/* Startup sections */
.intro>p.cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px;color:var(--ink)}
.cta{display:inline-block;padding:10px 18px;border-radius:6px;background:#ededed;color:#111;font-size:15px;font-weight:550}
.cta:hover{background:#fff;text-decoration:none}
.cta-secondary{display:inline-block;padding:9px 17px;border:1px solid #444;border-radius:6px;font-size:15px;color:var(--ink)}
.cta-secondary:hover{border-color:#777;text-decoration:none}
.pillars{list-style:none;padding:0;margin:36px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.pillars a{display:block;height:100%;border:1px solid var(--line);border-radius:10px;padding:14px 16px;background:#101010}
.pillars a:hover{border-color:#4a4a4a;text-decoration:none}
.pillars span{display:block;font-size:12px;color:#737373;font-variant-numeric:tabular-nums}
.pillars strong{display:block;font-weight:550;margin-top:2px}
.pillars em{display:block;font-style:normal;font-size:13px;color:var(--muted)}
.points{margin:6px 0 0;padding-left:20px;color:var(--muted)}
.points li{margin:10px 0;padding-left:4px}
.points strong{color:var(--ink);font-weight:550}
.status{display:inline-block;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);border:1px solid #3a3a3a;border-radius:999px;padding:1px 10px;margin:0 0 10px}
.status-live{color:#b3d5f5;border-color:#2f4a63}
.mock{margin:24px 0 20px}
.mock figcaption{font-size:13px;color:#8a8a8a;margin-top:10px}
.tablet{border:10px solid #1d1d1d;border-radius:22px;background:#0f1114;overflow:hidden;box-shadow:0 0 0 1px #2c2c2c}
.mock-bar{display:flex;align-items:center;gap:6px;padding:8px 12px;border-bottom:1px solid #22262c;font-size:12px;color:#9aa3ad}
.mock-bar span{width:8px;height:8px;border-radius:50%;background:#333a42}
.mock-bar b{font-weight:500;margin-left:8px}
.mock-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr)}
.mock-side{padding:14px;border-right:1px solid #22262c}
.mock-h{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#7d8791;margin:4px 0 8px}
.mock-side .mock-h:not(:first-child){margin-top:16px}
.chip{display:flex;justify-content:space-between;font-size:13px;margin:6px 0;padding:5px 10px;border-radius:6px;background:#171b20}
.chip i{font-style:normal;font-variant-numeric:tabular-nums}
.chip.bad i{color:#f0a58f}.chip.ok i{color:#8fd1a8}
.mock-q{font-size:13px;line-height:1.6;color:#d4d8dd;margin:0}
.mock-code{padding:14px;min-width:0}
.mock-code pre{margin:0;font:12.5px/1.65 ui-monospace,SFMono-Regular,Menlo,monospace;color:#d4d8dd;overflow-x:auto}
.mock-code .k{color:#b3d5f5}
.tests{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 0;font-size:12px}
.tests span{padding:2px 8px;border-radius:4px;background:#171b20}
.tests .pass{color:#8fd1a8}.tests .fail{color:#f0a58f}
.hint{margin:10px 0 0;padding:9px 11px;border-left:2px solid #b3d5f5;background:#13181e;font-size:13px;line-height:1.6;color:#c9d3dc}
.sim{display:block;width:100%;height:auto}
.s-frame{fill:#0f1114;stroke:#2c2c2c}
.s-board{fill:#16324a;stroke:#2f5a80}
.s-pins rect{fill:#c9a24a}
.s-dev{fill:#171b20;stroke:#3a414a}
.s-t{fill:#d4d8dd;font:14px system-ui,sans-serif}
.s-big{font-size:18px;font-weight:600}
.s-small{font-size:12.5px;fill:#9aa3ad}
.s-wire{fill:none;stroke-width:2.5}
.s-w1{stroke:#8fd1a8}.s-w2{stroke:#b3d5f5}.s-w3{stroke:#f0a58f}.s-w4{stroke:#d7b6f0}
.s-led{fill:#f0a58f}.s-glow{fill:#f0a58f;opacity:.15}
.s-rotor{fill:#d7b6f0}
.s-div{stroke:#22262c}
.s-clk{fill:none;stroke:#8fd1a8;stroke-width:2}
.s-data{fill:none;stroke:#b3d5f5;stroke-width:2}
.s-note{fill:#13181e;stroke:#2f4a63}
.steps{list-style:none;counter-reset:step;margin:4px 0 0;padding:0;display:grid;gap:2px}
.steps li{counter-increment:step;display:grid;grid-template-columns:34px 110px 1fr;gap:10px;align-items:baseline;padding:8px 0;border-bottom:1px solid #1c1c1c;font-size:14px}
.steps li::before{content:counter(step,decimal-leading-zero);color:#737373;font-variant-numeric:tabular-nums;font-size:12px}
.steps strong{font-weight:550}
.steps span{color:var(--muted)}
.stats{list-style:none;padding:0;margin:8px 0 18px;display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.stats li{border:1px solid var(--line);border-radius:10px;padding:14px;background:#101010}
.stats b{display:block;font-size:24px;font-weight:600;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.stats span{display:block;font-size:12.5px;line-height:1.5;color:var(--muted);margin-top:4px}
.lead{color:var(--muted);margin:0 0 6px;max-width:680px}
dl dt{font-size:14px}
@media(max-width:820px){.stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.pillars{grid-template-columns:1fr}.mock-grid{grid-template-columns:1fr}.mock-side{border-right:0;border-bottom:1px solid #22262c}.tablet{border-width:6px;border-radius:14px}.steps li{grid-template-columns:28px 1fr}.steps li span{grid-column:2}}
@media print{.pillars a,.stats li{background:none}.cta,.cta-secondary{display:none}}
.mock-side .chip{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px}
.chip i{color:#b3d5f5}
.ask{margin:12px 0 0;margin-left:auto;width:fit-content;max-width:90%;padding:7px 11px;border-radius:12px 12px 2px 12px;background:#2a2f36;font-size:13px;color:#e6e9ec}
.report{margin-top:12px;border:1px solid #2f4a63;border-radius:10px;padding:12px 14px;background:#0f141a}
.report p:last-child{margin:0;font-size:13px;line-height:1.6;color:#c9d3dc}
.impact{margin:18px 0 0;padding:12px 14px;border-left:2px solid #b3d5f5;background:#101418;color:#d4d8dd;font-size:15px}
.chip span{min-width:0}
.chip.now{outline:1px solid #2f4a63}.chip.now i{color:#b3d5f5}
.mock-code .blank{display:block;background:#141a21;border-left:2px dashed #3a4a5a;margin-left:-6px;padding-left:4px}
.cursor{color:#b3d5f5}
.try{margin:8px 0 0;padding:8px 11px;border-left:2px solid #8fd1a8;background:#121a16;font-size:13px;line-height:1.6;color:#cfe3d6}
.split{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.split dl>div{grid-template-columns:1fr;gap:2px}
@media(max-width:820px){.split{grid-template-columns:1fr;gap:0}}
