:root{--c-bg:#0e0f10;--c-surface:#16181a;--c-surface-2:#1e2124;--c-rule:#30353a;--c-rule-strong:#4a5157;--c-fg:#f0f1f2;--c-fg-body:#c9cccf;--c-fg-muted:#949a9f;--c-accent:#ff8c1a;--c-accent-deep:#e07000;--c-accent-wash:#ff8c1a1a;--c-accent-edge:#ff8c1a47;--c-ok:#5bbf7b;--c-warn:#e0a93a;--c-bad:#e8655f;--font-sans:ui-sans-serif, system-ui, "Segoe UI", Roboto, "Helvetica Neue", "Liberation Sans", Arial, sans-serif;--font-mono:ui-monospace, "JetBrains Mono", "SF Mono", "Cascadia Mono", "Roboto Mono", Consolas, "Liberation Mono", monospace;--t-11:.6875rem;--t-12:.75rem;--t-13:.8125rem;--t-14:.875rem;--t-16:1rem;--t-18:1.125rem;--t-21:1.3125rem;--t-26:1.625rem;--t-32:2rem;--t-40:2.5rem;--lh-tight:1.15;--lh-snug:1.35;--lh-body:1.65;--tr-tight:-.02em;--tr-label:.09em;--w-regular:400;--w-medium:500;--w-bold:700;--u:4px;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:24px;--s-6:32px;--s-7:48px;--s-8:64px;--s-9:96px;--max-w:1180px;--measure:68ch;--col-min:272px;--gutter:var(--s-4);--tap:44px;--r-0:0;--r-1:2px;--r-2:3px;--shadow-none:none;--shadow-rule:inset 0 -1px 0 0 var(--c-rule);--shadow-edge:0 1px 0 0 var(--c-rule);--shadow-sticky:0 1px 2px #0000008c;--dur-1:.12s;--ease:cubic-bezier(.2, 0, 0, 1);--bg:var(--c-bg);--bg-card:var(--c-surface);--bg-card-hover:var(--c-surface-2);--border:var(--c-rule);--border-hover:var(--c-rule-strong);--text:var(--c-fg-body);--text-muted:var(--c-fg-muted);--accent:var(--c-accent);--accent-dim:var(--c-accent-deep);--accent-glow:var(--c-accent-wash);--font:var(--font-sans);--radius:var(--r-2);--radius-sm:var(--r-1)}@media (prefers-reduced-motion:reduce){:root{--dur-1:0s}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{font-family:var(--font-sans);font-size:var(--t-16);line-height:var(--lh-body);background:var(--c-bg);color:var(--c-fg-body);text-rendering:optimizelegibility;min-height:100vh}a{color:var(--c-accent);transition:color var(--dur-1) var(--ease);text-decoration:none}a:hover{color:var(--c-fg)}:focus-visible{outline:2px solid var(--c-accent);outline-offset:2px;border-radius:var(--r-1)}::selection{background:var(--c-accent);color:#000}h1,h2,h3,h4{font-family:var(--font-sans);font-weight:var(--w-bold);letter-spacing:var(--tr-tight);line-height:var(--lh-tight);color:var(--c-fg);text-wrap:balance}strong{color:var(--c-fg);font-weight:var(--w-bold)}hr{border:0;border-top:1px solid var(--c-rule);margin:var(--s-6) 0}.skip-link{left:var(--s-4);top:calc(-1 * var(--s-9));z-index:200;background:var(--c-accent);color:#000;font-family:var(--font-mono);font-size:var(--t-13);padding:var(--s-3) var(--s-4);min-height:var(--tap);transition:top var(--dur-1) var(--ease);align-items:center;display:inline-flex;position:absolute}.skip-link:focus{top:var(--s-2);color:#000}.label{font-family:var(--font-mono);font-size:var(--t-11);font-weight:var(--w-medium);letter-spacing:var(--tr-label);text-transform:uppercase;color:var(--c-fg-muted);line-height:var(--lh-snug)}.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}.header{background:var(--c-bg);border-bottom:1px solid var(--c-rule);box-shadow:var(--shadow-sticky);z-index:100;padding:0 var(--s-5);position:sticky;top:0}.header-inner{max-width:var(--max-w);justify-content:space-between;align-items:center;gap:var(--s-4);min-height:56px;margin:0 auto;display:flex}.logo{align-items:center;gap:var(--s-2);min-height:var(--tap);font-family:var(--font-mono);font-size:var(--t-14);font-weight:var(--w-bold);letter-spacing:var(--tr-label);text-transform:uppercase;color:var(--c-fg);display:inline-flex}.logo:hover{color:var(--c-fg)}.logo:hover .logo-mark{background:var(--c-fg)}.logo-mark{background:var(--c-accent);width:10px;height:10px;transition:background var(--dur-1) var(--ease);flex:none}.nav{align-items:stretch;gap:var(--s-1);flex-wrap:wrap;display:flex}.nav a{min-height:var(--tap);min-width:var(--tap);padding:0 var(--s-3);font-family:var(--font-mono);font-size:var(--t-12);letter-spacing:.04em;text-transform:uppercase;color:var(--c-fg-muted);border-bottom:2px solid #0000;justify-content:center;align-items:center;display:inline-flex}.nav a:hover{color:var(--c-fg);border-bottom-color:var(--c-accent)}.main{max-width:var(--max-w);padding:var(--s-6) var(--s-5) var(--s-9);margin:0 auto}.masthead{padding:var(--s-6) 0 var(--s-7);border-bottom:1px solid var(--c-rule);margin-bottom:var(--s-7)}.masthead h1{font-size:var(--t-32);margin:var(--s-3) 0 var(--s-4);max-width:26ch}.masthead-lede{font-size:var(--t-18);color:var(--c-fg-body);max-width:var(--measure);line-height:var(--lh-snug)}.dataline{gap:0 var(--s-5);margin:var(--s-5) 0 0;padding-top:var(--s-4);border-top:1px solid var(--c-rule);flex-wrap:wrap;list-style:none;display:flex}.dataline li{align-items:baseline;gap:var(--s-2);padding:var(--s-2) 0;display:flex}.dataline b{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:var(--t-18);font-weight:var(--w-bold);color:var(--c-fg)}.dataline span{font-size:var(--t-13);color:var(--c-fg-muted)}.routes{align-items:center;gap:0 var(--s-5);margin-top:var(--s-4);flex-wrap:wrap;display:flex}.routes a{align-items:center;gap:var(--s-2);min-height:var(--tap);font-family:var(--font-mono);font-size:var(--t-13);letter-spacing:.03em;border-bottom:1px solid var(--c-accent-edge);display:inline-flex}.routes a:hover{border-bottom-color:var(--c-fg)}.routes a[data-primary]{padding:0 var(--s-4);background:var(--c-accent);color:#000;font-weight:var(--w-bold);text-transform:uppercase;border-bottom:0}.routes a[data-primary]:hover{background:var(--c-fg);color:#000}.routes .routes-note{font-size:var(--t-13);color:var(--c-fg-muted)}.section{margin-bottom:var(--s-8);scroll-margin-top:72px}.section-head{border-top:1px solid var(--c-rule);padding-top:var(--s-3);margin-bottom:var(--s-5);align-items:baseline;gap:var(--s-2) var(--s-4);flex-wrap:wrap;display:flex}.section-head h2{font-size:var(--t-26);flex:auto}.section-head .label{margin-bottom:var(--s-2);flex:0 0 100%}.section-head .count{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:var(--t-13);color:var(--c-fg-muted)}.section-note{max-width:var(--measure);color:var(--c-fg-body);margin-bottom:var(--s-4)}.section-title{font-size:var(--t-21);font-weight:var(--w-bold);letter-spacing:var(--tr-tight);color:var(--c-fg);margin-bottom:var(--s-4);padding-top:var(--s-3);border-top:1px solid var(--c-rule);align-items:baseline;gap:var(--s-3);display:flex}.section-title .count{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:var(--t-13);font-weight:var(--w-regular);color:var(--c-fg-muted);background:0 0;border-radius:0;padding:0}.grid{grid-template-columns:repeat(auto-fill, minmax(var(--col-min), 1fr));gap:var(--gutter);margin-bottom:var(--s-6);display:grid}.card{gap:var(--s-2);background:var(--c-surface);border:1px solid var(--c-rule);border-radius:var(--r-1);padding:var(--s-4);min-height:var(--tap);color:var(--c-fg-body);transition:border-color var(--dur-1) var(--ease), background var(--dur-1) var(--ease);flex-direction:column;display:flex}.card:hover{border-color:var(--c-rule-strong);background:var(--c-surface-2);color:var(--c-fg-body)}.card:hover .card-title{color:var(--c-accent)}.card-title{font-size:var(--t-16);font-weight:var(--w-bold);letter-spacing:var(--tr-tight);line-height:var(--lh-snug);color:var(--c-fg);transition:color var(--dur-1) var(--ease)}.card-subtitle{font-family:var(--font-mono);font-size:var(--t-12);letter-spacing:.03em;color:var(--c-fg-muted)}.card-city{font-size:var(--t-13);color:var(--c-fg-muted)}.card-specs{gap:var(--s-1);flex-wrap:wrap;display:flex}.card-spec{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:var(--t-12);color:var(--c-accent);background:var(--c-bg);border:1px solid var(--c-rule);border-radius:var(--r-1);padding:2px var(--s-2)}.card-tags{gap:var(--s-1);flex-wrap:wrap;margin-top:auto;display:flex}.card-tag{font-size:var(--t-12);color:var(--c-fg-muted);border:1px solid var(--c-rule);border-radius:var(--r-1);padding:1px var(--s-2);background:0 0}.catalog{--col-min:300px}.catalog .card{gap:var(--s-3)}.specrow{gap:var(--s-2);border-top:1px solid var(--c-rule);border-bottom:1px solid var(--c-rule);padding:var(--s-2) 0;grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.specrow>div{flex-direction:column;gap:2px;min-width:0;display:flex}.specrow dt,.specrow .specrow-k{font-family:var(--font-mono);font-size:var(--t-11);letter-spacing:var(--tr-label);text-transform:uppercase;color:var(--c-fg-muted)}.specrow dd,.specrow .specrow-v{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:var(--t-13);color:var(--c-fg);overflow-wrap:break-word}.rowlist{border-top:1px solid var(--c-rule);list-style:none}.rowlist li{border-bottom:1px solid var(--c-rule)}.rowlist a{align-items:baseline;gap:var(--s-2) var(--s-4);min-height:var(--tap);padding:var(--s-3) 0;color:var(--c-fg);flex-wrap:wrap;display:flex}.rowlist a:hover{color:var(--c-accent)}.rowlist a>span:first-child{font-weight:var(--w-medium);min-width:14ch}.rowlist .rowlist-meta{font-family:var(--font-mono);font-size:var(--t-12);color:var(--c-fg-muted)}.qa{border-top:1px solid var(--c-rule);max-width:var(--measure)}.qa-item{border-bottom:1px solid var(--c-rule);padding:var(--s-4) 0}.qa-item h3{font-size:var(--t-16);margin-bottom:var(--s-2)}.qa-item p{color:var(--c-fg-body)}.article{max-width:820px}.back-link{align-items:center;gap:var(--s-2);min-height:var(--tap);font-family:var(--font-mono);font-size:var(--t-12);letter-spacing:.03em;text-transform:uppercase;color:var(--c-fg-muted);margin-bottom:var(--s-4);display:inline-flex}.back-link:hover{color:var(--c-accent)}.article h1{font-size:var(--t-32);margin-bottom:var(--s-5)}.crumbs{align-items:center;gap:var(--s-2);font-family:var(--font-mono);font-size:var(--t-12);color:var(--c-fg-muted);margin-bottom:var(--s-4);flex-wrap:wrap;display:flex}.crumbs a{min-height:var(--tap);align-items:center;display:inline-flex}.crumbs .sep{color:var(--c-rule-strong)}.ident{gap:var(--s-2) var(--s-3);margin-bottom:var(--s-2);flex-wrap:wrap;align-items:baseline;display:flex}.ident .ident-make{font-family:var(--font-mono);font-size:var(--t-13);letter-spacing:var(--tr-label);text-transform:uppercase;color:var(--c-fg)}.ident .ident-type{font-family:var(--font-mono);font-size:var(--t-11);letter-spacing:var(--tr-label);text-transform:uppercase;color:var(--c-accent);border:1px solid var(--c-accent-edge);background:var(--c-accent-wash);padding:2px var(--s-2)}.specsheet caption{text-align:left;padding-bottom:var(--s-2)}.specsheet{border-collapse:collapse;border-top:1px solid var(--c-rule-strong);border-bottom:1px solid var(--c-rule-strong);width:100%;margin-bottom:var(--s-6)}.specsheet tr+tr{border-top:1px solid var(--c-rule)}.specsheet th{text-align:left;vertical-align:top;width:30%;padding:var(--s-3) var(--s-4) var(--s-3) 0;font-family:var(--font-mono);font-size:var(--t-11);font-weight:var(--w-medium);letter-spacing:var(--tr-label);text-transform:uppercase;color:var(--c-fg-muted);background:0 0;border-bottom:0}.specsheet td{padding:var(--s-3) 0;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:var(--t-14);color:var(--c-fg);overflow-wrap:anywhere;border-bottom:0}.status{align-items:baseline;gap:var(--s-2) var(--s-3);border:1px solid var(--c-accent-edge);background:var(--c-accent-wash);border-radius:var(--r-1);padding:var(--s-3) var(--s-4);margin-bottom:var(--s-6);font-size:var(--t-14);color:var(--c-fg-body);flex-wrap:wrap;display:flex}.status .label{color:var(--c-accent)}.chips{gap:var(--s-2);flex-wrap:wrap;display:flex}.chip{align-items:center;gap:var(--s-2);font-family:var(--font-mono);font-size:var(--t-12);padding:var(--s-2) var(--s-3);border:1px solid var(--c-rule);border-radius:var(--r-1);color:var(--c-fg-body);background:var(--c-surface);display:inline-flex}a.chip,button.chip{min-height:var(--tap);color:var(--c-accent)}a.chip:hover{border-color:var(--c-accent);color:var(--c-fg)}.chip[data-tone=ok]{color:var(--c-ok);border-color:#5bbf7b4d}.note{font-size:var(--t-14);color:var(--c-fg-muted);max-width:var(--measure)}.block{border-top:1px solid var(--c-rule);padding-top:var(--s-5);margin-top:var(--s-6)}.block>h2{font-size:var(--t-18);margin-bottom:var(--s-3)}.block>.label{margin-bottom:var(--s-3);display:block}.field{margin-bottom:var(--s-6)}.field>.label{margin-bottom:var(--s-2);display:block}.compare{border-collapse:collapse;width:100%;font-size:var(--t-13)}.compare th{text-align:left;padding:var(--s-2) var(--s-3) var(--s-2) 0;font-family:var(--font-mono);font-size:var(--t-11);font-weight:var(--w-medium);letter-spacing:var(--tr-label);text-transform:uppercase;color:var(--c-fg-muted);border-bottom:1px solid var(--c-rule-strong);background:0 0}.compare td{border-bottom:1px solid var(--c-rule);padding:0}.compare td>a,.compare td>span{min-height:var(--tap);padding:var(--s-2) var(--s-3) var(--s-2) 0;align-items:center;display:flex}.compare td:not(:first-child)>span{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--c-fg)}.compare tr[data-self] td>span:first-child,.compare tr[data-self] td{color:var(--c-fg-muted)}.compare tr[data-self]{background:var(--c-surface)}.article-content{font-size:var(--t-16);line-height:var(--lh-body)}.article-content>p,.article-content>ul,.article-content>ol,.article-content>h2,.article-content>h3{max-width:var(--measure)}.article-content h2{font-size:var(--t-21);margin:var(--s-7) 0 var(--s-3);padding-top:var(--s-3);border-top:1px solid var(--c-rule)}.article-content h3{font-size:var(--t-16);margin:var(--s-5) 0 var(--s-2)}.article-content p{margin-bottom:var(--s-4);color:var(--c-fg-body)}.article-content ul,.article-content ol{margin-bottom:var(--s-4);padding-left:var(--s-5)}.article-content li{margin-bottom:var(--s-2)}p a,li a,.qa a,.section-note a{padding-block:4px}td a{padding-block:var(--s-3)}table{border-collapse:collapse;width:100%}.article-content table,.main>section table,.table{margin-bottom:var(--s-5);font-size:var(--t-14);border-top:1px solid var(--c-rule-strong)}th{font-family:var(--font-mono);font-size:var(--t-11);font-weight:var(--w-medium);letter-spacing:var(--tr-label);text-transform:uppercase;color:var(--c-fg-muted);text-align:left;padding:var(--s-3) var(--s-3) var(--s-3) 0;border-bottom:1px solid var(--c-rule-strong);background:0 0}td{padding:var(--s-3) var(--s-3) var(--s-3) 0;border-bottom:1px solid var(--c-rule);vertical-align:top;color:var(--c-fg-body)}td.num,th.num{font-variant-numeric:tabular-nums}.table-wrap{margin-bottom:var(--s-5);overflow-x:auto}.hero{padding:var(--s-6) 0 var(--s-7);text-align:left}.hero h1{font-size:var(--t-32);-webkit-text-fill-color:currentColor;color:var(--c-fg);margin-bottom:var(--s-4);background:0 0}.hero p{font-size:var(--t-18);color:var(--c-fg-body);max-width:var(--measure);margin:0}.hero-cta{margin-top:var(--s-5);align-items:center;gap:var(--s-2);min-height:var(--tap);padding:0 var(--s-4);background:var(--c-accent);color:#000;font-family:var(--font-mono);font-size:var(--t-13);font-weight:var(--w-bold);letter-spacing:.04em;text-transform:uppercase;border-radius:var(--r-1);display:inline-flex}.hero-cta:hover{background:var(--c-fg);color:#000}.article-meta{gap:var(--s-3) var(--s-5);border-top:1px solid var(--c-rule-strong);border-bottom:1px solid var(--c-rule-strong);padding:var(--s-4) 0;margin-bottom:var(--s-6);background:0 0;border-radius:0;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));display:grid}.article-meta-item{flex-direction:column;gap:2px;display:flex}.article-meta-label{font-family:var(--font-mono);font-size:var(--t-11);letter-spacing:var(--tr-label);text-transform:uppercase;color:var(--c-fg-muted)}.article-meta-value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:var(--t-14);color:var(--c-fg)}.footer{border-top:1px solid var(--c-rule);padding:var(--s-6) var(--s-5) var(--s-7);text-align:left;color:var(--c-fg-muted);font-size:var(--t-13)}.footer-inner{max-width:var(--max-w);justify-content:space-between;gap:var(--s-4) var(--s-6);flex-wrap:wrap;margin:0 auto;display:flex}.footer p{max-width:var(--measure)}.footer nav{gap:0 var(--s-4);flex-wrap:wrap;display:flex}.footer nav a{min-height:var(--tap);min-width:var(--tap);font-family:var(--font-mono);font-size:var(--t-12);letter-spacing:.03em;text-transform:uppercase;align-items:center;display:inline-flex}@media (width<=800px){.main{padding:var(--s-5) var(--s-4) var(--s-8)}.header{padding:0 var(--s-4)}.footer{padding:var(--s-5) var(--s-4) var(--s-6)}.masthead h1{font-size:var(--t-26)}.section-head h2{font-size:var(--t-21)}.article h1{font-size:var(--t-26)}.header-inner{padding:var(--s-2) 0;flex-wrap:wrap}.specsheet th{width:42%}}@media (width<=560px){.grid,.catalog{grid-template-columns:1fr}.specrow,.article-meta{grid-template-columns:1fr 1fr}.nav{gap:0}.nav a{padding:0 var(--s-2);font-size:var(--t-11)}.compare{font-size:var(--t-12)}}.l-wrap-960{max-width:960px;margin:0 auto}.l-lede{color:var(--c-fg-muted);margin-bottom:2rem;font-size:1.1rem}.l-mb-3{margin-bottom:3rem}.l-mb-125{margin-bottom:1.25rem}.l-mt-2{margin-top:2rem}.l-max-1000{max-width:1000px}.l-scroll-x{overflow-x:auto}.l-block-rule{border-top:1px solid var(--c-rule);margin-top:2rem;padding-top:2rem}.l-h3{margin-bottom:.75rem;font-size:1.1rem;font-weight:600}.l-note{color:var(--c-fg-muted);margin-bottom:.75rem;font-size:.85rem}.l-h2{margin:2rem 0 1rem;font-size:1.35rem;font-weight:700}.l-more-link{color:var(--c-accent);margin-top:.5rem;font-size:.85rem}.l-mt-25{margin-top:2.5rem}.l-small-muted{color:var(--c-fg-muted);font-size:.9rem}.l-chips-tight{flex-wrap:wrap;gap:.375rem;margin-top:.25rem;display:flex}.l-tag{color:var(--c-fg-muted);background:#94a3b814;border-radius:4px;padding:.125rem .5rem;font-size:.75rem}.l-wrap-780{max-width:780px;margin:0 auto}.l-note-sm{color:var(--c-fg-muted);font-size:.85rem}.l-warn-box{border-radius:var(--r-1);background:#f9731614;border:1px solid #f9731633;margin-bottom:2rem;padding:1rem}.l-accent-block{color:var(--c-accent);margin-bottom:.5rem;display:block}.l-list{margin:0;padding-left:1.25rem}.l-small-muted-2{color:var(--c-fg-muted);font-size:.9rem}.l-h2-1{color:#fff;margin-bottom:1rem;font-size:1.35rem;font-weight:700}.l-mb-1{margin-bottom:1rem}.l-chips{flex-wrap:wrap;gap:.5rem;display:flex}.l-warn-chip{color:var(--c-accent);background:#f9731614;border:1px solid #f9731633;border-radius:6px;padding:.375rem .75rem;font-size:.85rem}a.l-warn-chip,a.l-tag,.l-chips a,.l-chips-tight a,.l-more-link{min-height:var(--tap);align-items:center;display:inline-flex}
