:root{--bg:#F3F6F9;--surface:#FFFFFF;--soft:#EAF0F5;--ink:#14202C;--muted:#536271;--line:#D5DDE5;--ok:#1E8A4C;--soon:#8693A0;--no:#C93A2C;--brand:#8FC8EA;--on-brand:#0E2638;--accent:#F27A1F;--on-accent:#1C0E02;--brand-2:#F27A1F;--f-display:"Barlow Condensed","Arial Narrow",Arial,sans-serif;--f-body:"Barlow",system-ui,-apple-system,"Segoe UI",sans-serif;--f-mono:"IBM Plex Mono",ui-monospace,Consolas,monospace;--r:10px;color-scheme:light}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--bg:#0D141B;--surface:#152029;--soft:#1B2833;--ink:#E6ECF1;--muted:#9AA8B5;--line:#283745;--ok:#4CC27E;--soon:#73818E;--no:#F07465;color-scheme:dark}}:root[data-theme=dark]{--bg:#0D141B;--surface:#152029;--soft:#1B2833;--ink:#E6ECF1;--muted:#9AA8B5;--line:#283745;--ok:#4CC27E;--soon:#73818E;--no:#F07465;color-scheme:dark}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--f-body);font-size:16px;line-height:1.55}img{max-width:100%}[hidden]{display:none!important}.wrap{max-width:1120px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}h1,h2,h3{font-family:var(--f-display);font-weight:700;line-height:1.05;text-wrap:balance;margin:0;letter-spacing:.005em}h1{font-size:clamp(2.1rem,5vw,3.3rem)}h2{font-size:clamp(1.6rem,3vw,2.1rem)}h3{font-size:1.25rem}p{margin:0}a{color:inherit}.mono{font-family:var(--f-mono);font-size:.86em;letter-spacing:.01em}.label{font-family:var(--f-display);font-weight:600;text-transform:uppercase;letter-spacing:.09em;font-size:.82rem;color:var(--muted)}button,a.btn{font:inherit;cursor:pointer}:focus-visible{outline:3px solid var(--brand-2);outline-offset:2px;border-radius:4px}.skip{position:absolute;left:-9999px}.skip:focus{left:16px;top:8px;z-index:99;background:var(--surface);padding:8px 12px}header.site{background:var(--brand);color:var(--on-brand)}header.site .wrap{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;padding-block:12px}.brand{display:flex;align-items:center;text-decoration:none;color:inherit}.brand img{height:58px;width:auto;display:block}nav.main{display:flex;gap:4px 18px;flex-wrap:wrap;font-weight:600}nav.main a{text-decoration:none;padding:4px 0;border-bottom:2px solid transparent}nav.main a:hover,nav.main a[aria-current=page]{border-color:currentColor}.search{margin-left:auto;display:flex;min-width:0;flex:1 1 240px;max-width:340px}.search input{flex:1;min-width:0;border:0;border-radius:8px 0 0 8px;padding:9px 12px;font:inherit;background:#fff;color:#14202c}.search button{border:0;border-radius:0 8px 8px 0;padding:0 14px;background:var(--accent);color:var(--on-accent);font-weight:600}.search-msg{flex-basis:100%;font-size:.88rem;font-weight:500}main{padding-block:28px 56px}.view{display:grid;gap:40px}.hero{display:grid;grid-template-columns:1.2fr 1fr;gap:32px;align-items:end}.hero p.lead{font-size:1.15rem;color:var(--muted);max-width:52ch;margin-top:12px}.checklabel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:16px 18px;display:grid;gap:6px;font-size:.95rem}.checklabel .mono{background:var(--soft);padding:1px 6px;border-radius:4px}.models{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.model{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:16px 14px 14px;text-decoration:none;color:var(--ink);display:grid;gap:4px;position:relative}.model b{font-family:var(--f-display);font-size:2rem;line-height:1}.model small{color:var(--muted)}.model .tag{font-size:.78rem;font-weight:600;margin-top:6px}.model.live{border-color:var(--brand);box-shadow:0 0 0 1px var(--brand)}.model.live .tag{color:var(--ok)}.model.off{opacity:.62}.model.live:hover{transform:translateY(-2px)}@media (prefers-reduced-motion:no-preference){.model{transition:transform .15s}}.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;counter-reset:s;padding:0;margin:0}.steps li{list-style:none;display:grid;gap:6px;counter-increment:s;align-content:start}.steps li:before{content:counter(s);font-family:var(--f-display);font-weight:700;font-size:1.1rem;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:var(--on-accent)}.trust{display:flex;flex-wrap:wrap;gap:10px 28px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-block:14px;font-weight:600}.trust span{display:flex;gap:8px;align-items:center}.trust span:before{content:"";width:8px;height:8px;border-radius:2px;background:var(--brand-2);flex:none}.crumbs{font-size:.9rem;color:var(--muted);display:flex;gap:6px;flex-wrap:wrap;padding:0;margin:0;list-style:none}.crumbs li+li:before{content:"/";margin-right:6px}.crumbs a{color:var(--muted)}.mhead{display:flex;flex-wrap:wrap;gap:10px 24px;align-items:baseline;justify-content:space-between}.mgrid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:28px;align-items:start}.drawing{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:12px;position:relative}.drawing svg{display:block;width:100%;height:auto;max-height:560px}.drawing .hint{position:absolute;left:14px;bottom:12px;font-size:.82rem;color:var(--muted)}.mach{fill:var(--surface);stroke:var(--ink);stroke-width:2.4;stroke-linejoin:round;stroke-linecap:round}.mach-soft{fill:var(--soft);stroke:var(--ink);stroke-width:2.4;stroke-linejoin:round}.mach-line{fill:none;stroke:var(--ink);stroke-width:1.6;stroke-linecap:round}.hs{cursor:pointer}.hs circle.dot{fill:var(--surface);stroke:var(--soon);stroke-width:2}.hs text{font-family:var(--f-display);font-weight:700;font-size:15px;fill:var(--soon);text-anchor:middle;dominant-baseline:central}.hs.live circle.dot{fill:var(--accent);stroke:var(--ink)}.hs.live text{fill:var(--on-accent)}.hs line{stroke:var(--soon);stroke-width:1.4;stroke-dasharray:3 3}.hs.live line{stroke:var(--ink);stroke-dasharray:none}.hs.on circle.dot{stroke-width:4;stroke:var(--brand-2)}.part-target{fill:transparent;stroke:transparent;stroke-width:3}.hs.on .part-target,.hs:hover .part-target{fill:var(--accent);fill-opacity:.25;stroke:var(--accent)}.hs circle.ring{fill:none;stroke:var(--accent);stroke-width:2;opacity:0}.hs.live circle.ring{opacity:1}@media (prefers-reduced-motion:no-preference){.hs.live circle.ring{animation:pulse 2s infinite}}@keyframes pulse{0%{r:14;opacity:.9}to{r:24;opacity:0}}.parts{display:grid;gap:8px;padding:0;margin:0;list-style:none}.prow{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:12px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:12px 14px;text-decoration:none;color:var(--ink)}.prow .n{font-family:var(--f-display);font-weight:700;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;border:2px solid var(--soon);color:var(--soon);font-size:.95rem}.prow.live .n{background:var(--accent);border-color:var(--ink);color:var(--on-accent)}.prow .t{min-width:0}.prow .t b{display:block;font-weight:600}.prow .t .mono{color:var(--muted)}.prow .p{font-family:var(--f-display);font-weight:700;font-size:1.3rem;text-align:right}.prow .p small{display:block;font-family:var(--f-body);font-weight:600;font-size:.75rem;color:var(--ok)}.prow.off .p{font-family:var(--f-body);font-size:.82rem;font-weight:600;color:var(--soon)}.prow.on{border-color:var(--brand-2);box-shadow:0 0 0 1px var(--brand-2)}.prow.live:hover{border-color:var(--ink)}.pgrid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:start}.photo{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:12px;position:relative}.photo img{display:block;width:100%;height:auto;border-radius:6px}.mainimg{display:block;width:100%;border:0;padding:0;background:transparent;cursor:zoom-in}.thumbs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-top:10px}.thumbs button{border:2px solid #D5DDE5;border-radius:6px;padding:0;background:#fff;cursor:pointer;aspect-ratio:1;overflow:hidden;max-width:100%}.thumbs button img{width:100%;height:100%;object-fit:cover;display:block}.thumbs button[aria-current=true]{border-color:var(--brand-2)}.dims{display:flex;justify-content:space-between;font-family:var(--f-mono);font-size:.8rem;color:#536271;padding:8px 4px 0}.buy{display:grid;gap:16px}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{border:1px solid var(--line);background:var(--surface);border-radius:6px;padding:3px 9px;font-size:.86rem}.chip.key{border-color:var(--ink);font-weight:600}.price{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}.price b{font-family:var(--f-display);font-size:2.8rem;line-height:1}.price span{color:var(--ok);font-weight:600}.price span.soon{color:var(--soon)}a.btn{display:inline-flex;justify-content:center;align-items:center;gap:8px;text-decoration:none;background:var(--accent);color:var(--on-accent);font-weight:600;padding:13px 22px;border-radius:8px;border:2px solid var(--accent);font-size:1.05rem}a.btn.ghost{background:transparent;color:var(--ink);border-color:var(--line)}.btnrow{display:flex;flex-wrap:wrap;gap:10px}.fit{display:grid;grid-template-columns:1fr 1fr;gap:14px}.fitbox{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:14px 16px;display:grid;gap:8px;align-content:start}.fitbox h2{font-size:1.15rem;display:flex;gap:8px;align-items:center}.fitbox ul{margin:0;padding-left:18px;display:grid;gap:4px}.fitbox.yes h2:before{content:"✓";color:var(--ok)}.fitbox.no h2:before{content:"✕";color:var(--no)}.note{font-size:.92rem;color:var(--muted)}.sec{display:grid;gap:14px}.howto{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:start}.howto ol{margin:0;padding-left:22px;display:grid;gap:8px}.video{aspect-ratio:16/9;max-width:100%;border-radius:var(--r);border:2px dashed var(--line);background:var(--soft);display:grid;place-items:center;text-align:center;color:var(--muted);padding:16px}.video b{font-family:var(--f-display);font-size:1.3rem;color:var(--ink);display:block}a.video{border-style:solid;text-decoration:none}table.spec{border-collapse:collapse;width:100%;font-size:.95rem}table.spec th,table.spec td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--line)}table.spec th{color:var(--muted);font-weight:500;width:42%}.scroll-x{overflow-x:auto}.lb{position:fixed;inset:0;z-index:50;background:#080e14e6;display:grid;place-items:center;padding:max(16px,env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) max(16px,env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px))}.lb img{max-width:min(92vw,1000px);max-height:80vh;background:#fff;border-radius:8px;display:block;margin:0 auto}.lb .cap{color:#fff;text-align:center;margin-top:10px;font-size:.95rem}.lb .ctl{position:absolute;top:max(14px,env(safe-area-inset-top,0px));right:max(14px,env(safe-area-inset-right,0px))}.lb button{border:0;border-radius:8px;padding:10px 14px;background:#fff;color:#14202c;font-weight:600;cursor:pointer;font-size:1rem}.lb .nav{position:absolute;top:50%;transform:translateY(-50%);font-size:1.4rem;line-height:1}.lb .prev{left:max(12px,env(safe-area-inset-left,0px))}.lb .next{right:max(12px,env(safe-area-inset-right,0px))}.prose{max-width:68ch;display:grid;gap:14px}.prose h2{margin-top:14px}.prose ul{margin:0;padding-left:20px;display:grid;gap:4px}.prose .mono{background:var(--soft);padding:1px 6px;border-radius:4px}.callout{background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:var(--r);padding:14px 16px}.empty{background:var(--surface);border:2px dashed var(--line);border-radius:var(--r);padding:28px 20px;text-align:center;color:var(--muted)}.empty b{display:block;font-family:var(--f-display);font-size:1.4rem;color:var(--ink)}footer.site{border-top:1px solid var(--line);background:var(--surface);font-size:.88rem;color:var(--muted)}footer.site .wrap{padding-block:24px;display:grid;gap:10px}footer.site nav{display:flex;flex-wrap:wrap;gap:6px 18px}footer.site strong{color:var(--ink)}@media (max-width:900px){.models{grid-template-columns:repeat(3,minmax(0,1fr))}.hero,.mgrid,.pgrid,.howto{grid-template-columns:minmax(0,1fr)}.search{max-width:none;margin-left:0}}@media (max-width:560px){.steps,.fit{grid-template-columns:minmax(0,1fr)}.models{grid-template-columns:repeat(2,minmax(0,1fr))}.thumbs{grid-template-columns:repeat(3,minmax(0,1fr))}.brand img{height:48px}}
