.fx-hub-head{max-width:720px;margin:8px 0 26px}.fx-eyebrow{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:10px;font-size:11px}.fx-hub-title{letter-spacing:-.02em;color:var(--ink);font-size:clamp(26px,4vw,38px);line-height:1.12}.fx-hub-lead{color:var(--ink-2);margin-top:12px;font-size:16px;line-height:1.6}.fx-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;margin-top:6px;display:grid}.fx-card{border:1px solid var(--line);border-radius:var(--r-2,14px);background:var(--surface);transition:border-color var(--dur), transform var(--dur), box-shadow var(--dur);flex-direction:column;gap:8px;padding:18px;text-decoration:none;display:flex}.fx-card:hover{border-color:var(--accent-line);transform:translateY(-2px);box-shadow:0 8px 26px #00000012}.fx-card-ic{background:var(--surface-3);width:40px;height:40px;color:var(--accent-ink);border-radius:11px;place-items:center;margin-bottom:4px;display:grid}.fx-card-title{color:var(--ink);font-size:16.5px;font-weight:650;line-height:1.25}.fx-group{margin:0 0 26px}.fx-group-title{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 6px;font-size:11px}.fx-group-desc{max-width:760px;color:var(--ink-2);margin:0 0 14px;font-size:14px;line-height:1.55}.fx-hub-cta{margin-top:6px}.fx-cta-sub{color:var(--muted);margin-top:4px;font-size:13.5px;display:block}.fx-card-desc{color:var(--muted);flex:1;font-size:13.5px;line-height:1.55}.fx-card-more{color:var(--accent-ink);font-size:13px;font-weight:600}.fx-hero-cta{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.fx-btn-line{border:1px solid var(--line-2);color:var(--ink-2);background:0 0}.fx-btn-line:hover{border-color:var(--accent-line);color:var(--accent-ink);background:var(--surface-3)}.fx-stats{background:var(--map-grid);border:1px solid var(--map-grid);border-radius:var(--r-2,14px);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;margin:8px 0 26px;display:grid;overflow:hidden}.fx-stat{background:var(--map-bg);flex-direction:column;gap:6px;padding:20px 18px;display:flex}.fx-stat-val{letter-spacing:-.02em;color:#fff;font-variant-numeric:tabular-nums;transition:color var(--dur);font-size:clamp(20px,2.4vw,27px);font-weight:700;line-height:1.05}.fx-stat-lbl{font-family:var(--font-mono);letter-spacing:.09em;text-transform:uppercase;color:var(--map-ink);font-size:10.5px;line-height:1.4}.fx-stat-link{transition:background var(--dur);text-decoration:none;position:relative}.fx-stat-link:hover{background:var(--map-bg-2)}.fx-stat-link:hover .fx-stat-val{color:#85bcf5;color:lab(74.208% -7.269 -34.3341)}.fx-stat-go{color:#85bcf5;color:lab(74.208% -7.269 -34.3341);opacity:0;transition:opacity var(--dur);position:absolute;top:14px;right:14px}.fx-stat-link:hover .fx-stat-go{opacity:1}.fx-ai{background:linear-gradient(120deg,#3f75dd,#9769dc 45%,#4ebede);background:linear-gradient(120deg,lab(49.7123% 9.43285 -59.8923),lab(53.3687% 36.7191 -52.7111) 45%,lab(71.5682% -25.6543 -26.0659));border-radius:17px;margin:0 0 26px;padding:1px}.fx-ai-inner{background:var(--surface);border-radius:16px;padding:20px 22px}.fx-ai-head{align-items:center;gap:10px;margin-bottom:14px;display:flex}.fx-ai-badge{font-family:var(--font-mono);letter-spacing:.1em;color:#fff;background:linear-gradient(120deg,#326ad9,#9260da);background:linear-gradient(120deg,lab(45.9974% 12.2645 -63.2639),lab(50.8162% 39.6458 -55.6955));border-radius:7px;padding:3px 9px;font-size:10.5px;font-weight:700}.fx-ai-head h2{letter-spacing:-.01em;color:var(--ink);font-size:18px}.fx-ai-answer{background:var(--surface-2);border-radius:13px;align-items:flex-start;gap:12px;min-height:56px;margin-bottom:14px;padding:14px 16px;display:flex}.fx-ai-spark{color:#fff;background:linear-gradient(135deg,#326ad9,#9769dc);background:linear-gradient(135deg,lab(45.9974% 12.2645 -63.2639),lab(53.3687% 36.7191 -52.7111));border-radius:50%;flex:none;place-items:center;width:28px;height:28px;display:grid}.fx-ai-msg{align-self:center;min-width:0}.fx-ai-msg p{color:var(--ink-2);font-size:15px;line-height:1.62}.fx-ai-err{color:var(--muted);font-size:14.5px;font-style:italic}.fx-ai-dots{gap:5px;padding:6px 0;display:inline-flex}.fx-ai-dots i{background:var(--accent);border-radius:50%;width:7px;height:7px;animation:1.05s ease-in-out infinite fx-dot}.fx-ai-dots i:nth-child(2){animation-delay:.16s}.fx-ai-dots i:nth-child(3){animation-delay:.32s}@keyframes fx-dot{0%,to{opacity:.25;transform:translateY(0)}50%{opacity:1;transform:translateY(-3px)}}.fx-ai-chips{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.fx-ai-chip{color:var(--ink-2);background:var(--surface);border:1px solid var(--line);cursor:pointer;transition:border-color var(--dur), color var(--dur), background var(--dur);border-radius:999px;padding:7px 13px;font-size:12.5px}.fx-ai-chip:hover{border-color:var(--accent-line);color:var(--accent-ink);background:var(--surface-2)}.fx-ai-form{position:relative}.fx-ai-form input{border:1px solid var(--line);background:var(--surface);width:100%;height:48px;color:var(--ink);transition:border-color var(--dur);border-radius:999px;padding:0 128px 0 18px;font-size:14.5px}.fx-ai-form input:focus{border-color:var(--accent-line);outline:none}.fx-ai-send{border-radius:999px;height:38px;padding:0 16px;position:absolute;top:5px;right:5px}@media (max-width:560px){.fx-ai-inner{padding:16px}.fx-ai-form input{padding-right:62px}.fx-ai-send{justify-content:center;width:38px;padding:0}.fx-ai-send span{display:none}}.fx-value{margin:0 0 30px}.fx-value-title,.fx-grid-title{letter-spacing:-.01em;color:var(--ink);margin:6px 0 16px;font-size:22px}.fx-pillars{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;display:grid}.fx-pillar{border:1px solid var(--line);border-radius:var(--r-2,14px);background:var(--surface);padding:18px}.fx-pillar-ic{background:var(--surface-3);width:38px;height:38px;color:var(--accent-ink);border-radius:10px;place-items:center;margin-bottom:10px;display:grid}.fx-pillar h3{color:var(--ink);margin-bottom:6px;font-size:16px;font-weight:650;line-height:1.25}.fx-pillar p{color:var(--muted);font-size:14px;line-height:1.55}.fx-article{max-width:760px}@media (min-width:1100px){.fx-article{max-width:1080px}}.fx-layout{grid-template-columns:minmax(0,1fr);align-items:start;gap:40px;display:grid}@media (min-width:1100px){.fx-layout{grid-template-columns:minmax(0,720px) 280px}}.fx-body{min-width:0}.fx-sec{scroll-margin-top:84px}.fx-toc{display:none}@media (min-width:1100px){.fx-toc{display:block}}.fx-toc-box{border:1px solid var(--line);border-radius:var(--r-2,14px);background:var(--surface);padding:14px 12px;position:sticky;top:20px}.fx-toc-title{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 8px;padding:0 10px;font-size:10.5px}.fx-toc-nav{flex-direction:column;gap:2px;display:flex}.fx-toc-nav a{color:var(--ink-2);transition:background var(--dur), color var(--dur);border-radius:8px;padding:8px 10px;font-size:13.5px;line-height:1.35;text-decoration:none;display:block}.fx-toc-nav a:hover{background:var(--surface-3);color:var(--accent-ink)}.fx-toc-cta{justify-content:center;width:100%;margin-top:12px}.fx-toc-m{border:1px solid var(--line);border-radius:var(--r-1);background:var(--surface-2);margin:0 0 24px}@media (min-width:1100px){.fx-toc-m{display:none}}.fx-toc-m summary{cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--ink);justify-content:space-between;align-items:center;padding:13px 16px;font-size:14.5px;font-weight:600;list-style:none;display:flex}.fx-toc-m summary::-webkit-details-marker{display:none}.fx-toc-m summary:after{content:"+";color:var(--muted);font-size:18px;line-height:1}.fx-toc-m[open] summary:after{content:"–"}.fx-toc-m nav{flex-direction:column;padding:0 8px 10px;display:flex}.fx-toc-m nav a{color:var(--ink-2);border-radius:8px;padding:11px 10px;font-size:14px;line-height:1.4;text-decoration:none;display:block}.fx-toc-m nav a:active,.fx-toc-m nav a:hover{background:var(--surface-3);color:var(--accent-ink)}.fx-crumbs{color:var(--muted);align-items:center;gap:8px;margin:4px 0 18px;font-size:12.5px;display:flex}.fx-crumbs a{color:var(--accent-ink);text-decoration:none}.fx-crumbs a:hover{text-decoration:underline}.fx-crumbs-cur{color:var(--faint);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fx-art-head{margin-bottom:26px}.fx-art-ic{background:var(--surface-3);width:46px;height:46px;color:var(--accent-ink);border-radius:12px;place-items:center;margin-bottom:14px;display:inline-grid}.fx-art-head h1{letter-spacing:-.02em;color:var(--ink);font-size:clamp(26px,4.4vw,40px);line-height:1.1}.fx-art-lead{color:var(--ink-2);margin-top:12px;font-size:17px;line-height:1.6}.fx-art-cta{margin-top:18px}.fx-sec{margin:28px 0}.fx-sec h2{letter-spacing:-.01em;color:var(--ink);margin-bottom:10px;font-size:21px;line-height:1.25}.fx-sec p{color:var(--ink-2);margin:0 0 12px;font-size:15.5px;line-height:1.7}.fx-bullets{flex-direction:column;gap:7px;margin:6px 0 12px;padding-left:20px;display:flex}.fx-bullets li{color:var(--ink-2);font-size:15px;line-height:1.55;list-style:outside}.fx-example{border-left:3px solid var(--accent-line);background:var(--surface-2);border-radius:0 var(--r-1) var(--r-1) 0;color:var(--ink-2);flex-direction:column;gap:4px;margin:14px 0;padding:12px 16px;font-size:14.5px;line-height:1.6;display:flex}.fx-example-lbl{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:10.5px}.fx-how .fx-steps{counter-reset:fxstep;flex-direction:column;gap:12px;margin:10px 0;padding-left:0;display:flex}.fx-steps li{color:var(--ink-2);align-items:center;min-height:28px;padding-left:40px;font-size:15px;line-height:1.55;list-style:none;display:flex;position:relative}.fx-steps li:before{counter-increment:fxstep;content:counter(fxstep);background:var(--accent);width:28px;height:28px;color:var(--on-accent);font-size:13px;font-weight:700;font-family:var(--font-mono);border-radius:50%;place-items:center;display:grid;position:absolute;top:0;left:0}.fx-acc-list{flex-direction:column;gap:10px;margin-top:8px;display:flex}.fx-acc{border:1px solid var(--line);border-radius:var(--r-1);background:var(--surface);transition:border-color var(--dur)}.fx-acc[open]{border-color:var(--accent-line)}.fx-acc summary{cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--ink);justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;font-size:15px;font-weight:600;line-height:1.4;list-style:none;display:flex}.fx-acc summary::-webkit-details-marker{display:none}.fx-acc summary .ic{color:var(--faint);transition:transform var(--dur);flex:none}.fx-acc[open] summary .ic{transform:rotate(180deg)}.fx-acc>p{color:var(--ink-2);margin:0;padding:0 16px 15px;font-size:14.5px;line-height:1.65}@media (max-width:640px){.fx-art-head h1{font-size:25px}.fx-art-lead{font-size:15.5px}.fx-sec h2{font-size:19px}.fx-sec p,.fx-bullets li{font-size:14.5px}.fx-example{padding:10px 13px}.fx-cta-band{padding:16px}.fx-art-cta{justify-content:center;width:100%}}.fx-cta-band{border-radius:var(--r-2,14px);background:var(--surface-3);border:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin:32px 0;padding:20px 22px;display:flex}.fx-cta-band p{color:var(--ink);font-size:16px;font-weight:600}.fx-ennote{border-radius:var(--r-1);border:1px dashed var(--line-2);background:var(--surface-2);color:var(--muted);margin:0 0 18px;padding:10px 14px;font-size:13px}.fxd{margin:0 0 30px}.fxd-window{border:1px solid var(--line);border-radius:var(--r-2,14px);background:var(--surface);margin:0;overflow:hidden;box-shadow:0 10px 34px #0f1e3c12}.fxd-bar{background:var(--surface-2);border-bottom:1px solid var(--line);align-items:center;gap:6px;padding:10px 14px;display:flex}.fxd-bar i{background:var(--line-2);border-radius:50%;width:9px;height:9px}.fxd-bar span{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-left:8px;font-size:10.5px}.fxd-body{flex-direction:column;gap:10px;padding:14px;display:flex}.fxd-cap{color:var(--faint);text-align:center;margin-top:8px;font-size:12.5px}.fxd-ac{border:1px solid var(--line);transition:border-color var(--dur), background var(--dur);border-radius:12px;align-items:center;gap:14px;padding:12px;text-decoration:none;display:flex}.fxd-ac:hover{border-color:var(--accent-line);background:var(--surface-2)}.fxd-ac>.ic{color:var(--faint);flex:none}.fxd-photo{color:#fff;background:linear-gradient(135deg, var(--map-bg), var(--map-grid));border-radius:10px;flex:none;place-items:center;width:86px;height:64px;display:grid}.fxd-ac-body{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.fxd-ac-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.fxd-ac-top b{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-size:15px;overflow:hidden}.fxd-tail,.fxd-price,.fxd-hash,.fxd-icao{font-family:var(--font-mono);font-variant-numeric:tabular-nums;white-space:nowrap}.fxd-tail{border:1px solid var(--line-2);color:var(--ink-2);border-radius:6px;padding:2px 8px;font-size:12px}.fxd-price{color:var(--ink);font-size:14px;font-weight:700}.fxd-meta{color:var(--muted);font-size:12.5px}.fxd-badges{flex-wrap:wrap;gap:6px;display:flex}.fxd-pad{padding:0 2px}.fxd-badge{color:var(--ink-2);background:var(--surface-3);border-radius:999px;align-items:center;gap:4px;padding:3px 9px;font-size:11.5px;font-weight:600;display:inline-flex}.fxd-badge.ok{color:#006435;color:lab(36.5764% -38.8313 20.109);background:#daf7e3;background:lab(94.7394% -12.4067 6.35767)}.fxd-badge .ic{color:currentColor}.fxd-modules{flex-direction:column;gap:6px;display:flex}.fxd-mod{border:1px solid var(--line);color:var(--ink-2);transition:border-color var(--dur), background var(--dur), color var(--dur);border-radius:10px;align-items:center;gap:10px;padding:11px 12px;font-size:13.5px;font-weight:500;text-decoration:none;display:flex}.fxd-mod:hover{border-color:var(--accent-line);background:var(--surface-2);color:var(--accent-ink)}.fxd-mod>.ic:first-child{color:var(--faint)}.fxd-mod span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.fxd-hash{color:var(--muted);font-size:11px}.fxd-verify{border-style:dashed}.fxd-route{border:1px solid var(--line);transition:border-color var(--dur), background var(--dur);border-radius:12px;align-items:center;gap:12px;padding:14px;text-decoration:none;display:flex}.fxd-route:hover{border-color:var(--accent-line);background:var(--surface-2)}.fxd-icao{color:var(--ink);font-size:17px;font-weight:700}.fxd-dash{border-top:2px dashed var(--line-2);flex:1;min-width:60px;height:0;position:relative}.fxd-dash .ic{color:var(--accent);background:var(--surface);padding:0 3px;position:absolute;top:-9px;left:50%;transform:translate(-50%)rotate(45deg)}.fxd-route .fxd-meta{flex:none}.fxd-stepper{flex-wrap:wrap;gap:6px;display:flex}.fxd-step{border:1px solid var(--line);color:var(--muted);transition:border-color var(--dur), color var(--dur);border-radius:999px;align-items:center;gap:7px;padding:7px 11px;font-size:12.5px;font-weight:600;text-decoration:none;display:inline-flex}.fxd-step i{background:var(--surface-3);width:17px;height:17px;color:var(--muted);border-radius:50%;place-items:center;font-size:10.5px;font-style:normal;display:grid}.fxd-step.done{color:var(--ink-2)}.fxd-step.done i{color:#006435;color:lab(36.5764% -38.8313 20.109);background:#daf7e3;background:lab(94.7394% -12.4067 6.35767)}.fxd-step.cur{border-color:var(--accent-line);color:var(--accent-ink)}.fxd-step.cur i{background:var(--accent);color:var(--on-accent)}.fxd-step:hover{border-color:var(--accent-line)}.fxd-split{grid-template-columns:1fr 1fr;gap:8px;display:grid}.fxd-cell{border:1px solid var(--line);transition:border-color var(--dur), background var(--dur);border-radius:12px;flex-direction:column;align-items:flex-start;gap:4px;padding:12px 14px;text-decoration:none;display:flex}.fxd-cell:hover{border-color:var(--accent-line);background:var(--surface-2)}.fxd-cell .ic{color:var(--faint)}.fxd-cell b{color:var(--ink);font-variant-numeric:tabular-nums;font-size:17px}.fxd-cell span{color:var(--muted);font-size:12px}.fxd-post{border:1px solid var(--line);transition:border-color var(--dur), background var(--dur);border-radius:12px;flex-direction:column;gap:9px;padding:14px;text-decoration:none;display:flex}.fxd-post:hover{border-color:var(--accent-line);background:var(--surface-2)}.fxd-post-top{align-items:center;gap:8px;display:flex}.fxd-post-top b{color:var(--ink);font-size:13.5px}.fxd-ava{background:var(--surface-3);width:24px;height:24px;color:var(--muted);border-radius:50%;place-items:center;display:grid}.fxd-post p{color:var(--ink-2);font-size:14px;line-height:1.5}.fxd-poll{background:var(--surface-2);border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:8px 12px;display:flex;position:relative;overflow:hidden}.fxd-poll b{background:#c9e0ff;background:lab(88.2615% -3.35276 -18.0059);position:absolute;inset:0 auto 0 0}.fxd-poll span,.fxd-poll em{color:var(--ink-2);font-size:12.5px;font-style:normal;position:relative}.fxd-poll em{font-variant-numeric:tabular-nums;font-weight:700}.fx-cta-hero{border-radius:var(--r-2,14px);background:var(--map-bg-2);border:1px solid var(--map-grid);text-align:center;margin:34px 0 8px;padding:34px 26px;position:relative;overflow:hidden}.fx-cta-route{color:#6ba0e8;color:lab(64.5894% -2.72703 -42.1062);opacity:.2;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.fx-cta-route path{fill:none;stroke:currentColor;stroke-width:1.4px;stroke-dasharray:2 7}.fx-cta-route circle{fill:currentColor}.fx-cta-hero-inner{flex-direction:column;align-items:center;gap:12px;display:flex;position:relative}.fx-cta-hero h2{letter-spacing:-.02em;color:#fff;max-width:22ch;font-size:clamp(21px,3.4vw,30px);line-height:1.15}.fx-cta-hero p{color:var(--map-ink);max-width:52ch;font-size:14.5px;line-height:1.55}.fx-cta-hero .btn{margin-top:4px}.fx-cta-note{font-family:var(--font-mono);letter-spacing:.06em;color:var(--map-ink);opacity:.8;font-size:11px}@media (max-width:560px){.fxd-photo{width:64px;height:52px}.fxd-split{grid-template-columns:1fr}.fxd-route{flex-wrap:wrap}.fxd-route .fxd-meta{width:100%}}.fx-related{border-top:1px solid var(--line);margin-top:34px;padding-top:22px}.fx-related h3{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:12px;font-size:13px}.fx-related-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;display:grid}.fx-rel-card{border:1px solid var(--line);border-radius:var(--r-1);background:var(--surface);color:var(--ink-2);transition:border-color var(--dur), color var(--dur);align-items:center;gap:9px;padding:11px 13px;font-size:14px;font-weight:500;text-decoration:none;display:flex}.fx-rel-card:hover{border-color:var(--accent-line);color:var(--accent-ink)}.fx-rel-card .ic{color:var(--faint);flex:none}
