:root{--inc:#3B6E8C;--alt:#8C949B;--rec:#EF3E35}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--inc:#6FA8C9;--alt:#7D868E;--rec:#F2564D}}
:root[data-theme="dark"]{--inc:#6FA8C9;--alt:#7D868E;--rec:#F2564D}
a:focus-visible,button:focus-visible,input:focus-visible,label:focus-within{outline:2px solid var(--red);outline-offset:2px}
.stack{display:flex;flex-direction:column;gap:18px}
.verdict p{color:var(--panel-ink)}
.spread{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:28px}
.idea{background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:26px;display:flex;flex-direction:column;gap:14px;min-width:0}
.idea header{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.idea .name{font-family:var(--display);font-stretch:112%;font-weight:750;font-size:1.35rem}
.idea .tag{font-family:var(--mono);font-size:.75rem;color:var(--muted)}
.idea svg{width:100%;height:auto;display:block}
.idea p{font-size:.98rem}
.idea ul{margin:0;padding-left:18px;font-size:.95rem;display:flex;flex-direction:column;gap:6px}
@media (max-width:760px){.spread{grid-template-columns:1fr}}
.field .row{display:flex;align-items:center;gap:10px}
.field input[type=range]{flex:1;min-width:0;accent-color:var(--red)}
.field output,.num{font-family:var(--mono);font-size:.92rem;font-variant-numeric:tabular-nums}
.field output{min-width:5.2ch;text-align:right}
.pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.pair label{display:flex;flex-direction:column;gap:3px;font-size:.74rem;font-weight:500;color:var(--muted)}
.chart{padding:24px;display:flex;flex-direction:column;gap:18px;min-width:0}
.lanes{display:flex;flex-direction:column;gap:16px;position:relative}
.lane{display:grid;grid-template-columns:132px minmax(0,1fr);gap:14px;align-items:center}
.lane .lbl{font-size:.86rem;line-height:1.25}
.lane .lbl b{display:block;font-weight:600}
.lane .lbl span{font-family:var(--mono);font-size:.74rem;color:var(--muted)}
.track{position:relative;height:34px;background:var(--bg);border-radius:3px;overflow:hidden}
.fill{position:absolute;inset:0 auto 0 0;border-radius:3px;transition:width .45s cubic-bezier(.2,.7,.2,1)}
.fill.inc{background:var(--inc)}
.fill.alt{background:var(--alt)}
.fill.rec{background:var(--rec)}
.fill .v{position:absolute;right:8px;top:50%;transform:translateY(-50%);font-family:var(--mono);font-size:.76rem;color:#fff;white-space:nowrap}
.fill.narrow .v{right:auto;left:calc(100% + 8px);color:var(--ink)}
.need{position:absolute;top:-6px;bottom:-6px;width:0;border-left:2px dashed var(--ink);transition:left .45s cubic-bezier(.2,.7,.2,1);pointer-events:none}
.needlbl{position:absolute;top:-26px;transform:translateX(-50%);font-family:var(--mono);font-size:.72rem;background:var(--ink);color:var(--bg);padding:1px 6px;border-radius:2px;white-space:nowrap;transition:left .45s cubic-bezier(.2,.7,.2,1)}
.lanes-inner{position:relative;margin-left:146px;height:0}
.axis{display:flex;justify-content:space-between;margin-left:146px;font-family:var(--mono);font-size:.7rem;color:var(--muted)}
.readout{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;border-top:1px solid var(--line);padding-top:18px}
.ro{display:flex;flex-direction:column;gap:4px;min-width:0}
.ro .h{font-size:.76rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.ro .state{display:inline-flex;align-items:center;gap:6px;font-size:.92rem;font-weight:600}
.ro .state i{width:8px;height:8px;border-radius:50%;display:inline-block;background:var(--muted)}
.ro .state.ok i{background:#2E8B57}
.ro .state.short i{background:var(--red)}
.ro p{font-size:.86rem;color:var(--muted);line-height:1.45}
.ro p .m,.m{font-family:var(--mono);color:var(--ink);font-variant-numeric:tabular-nums}
.ro dl{margin:4px 0 0;display:grid;grid-template-columns:auto auto;justify-content:start;gap:2px 14px;font-size:.84rem}
.ro dt{color:var(--muted)}
.ro dd{margin:0;font-family:var(--mono);font-variant-numeric:tabular-nums}
.breakeven{font-size:.92rem;line-height:1.55;background:var(--red-wash);border-radius:4px;padding:12px 14px;display:flex;flex-direction:column;gap:8px}
.breakeven .m{font-weight:500}
.breakeven ul{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:6px 22px}
.breakeven:empty{display:none}
@media (max-width:560px){.lane{grid-template-columns:1fr;gap:6px}.lanes-inner,.axis{margin-left:0}.readout{grid-template-columns:1fr}}
.ladder{margin-top:28px;display:flex;flex-direction:column;gap:12px;max-width:760px}
.rung{display:grid;grid-template-columns:150px minmax(0,1fr) 78px;gap:14px;align-items:center}
.rung .br{height:100%;background:var(--alt)}
.rung.focus .br{background:var(--rec)}
.rung.inc .br{background:var(--inc)}
.rung.inc .nm{font-weight:500;color:var(--muted)}
.tiers{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:28px;border:1px solid var(--line);border-radius:6px;background:var(--surface);overflow:hidden}
.tier .tn{font-family:var(--display);font-stretch:112%;font-weight:750;font-size:1.3rem;line-height:1}
.tier .tp{font-family:var(--mono);font-size:.86rem;color:var(--muted)}
.tier .tp b{color:var(--ink);font-weight:500}
.tier ul{margin:0;padding-left:16px;font-size:.86rem;display:flex;flex-direction:column;gap:5px;color:var(--ink)}
.mx-tools{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:24px}
.toggle{display:inline-flex;align-items:center;gap:8px;font-size:.84rem;color:var(--muted);margin-left:auto;cursor:pointer;border-radius:4px;padding:2px}
.toggle input{accent-color:var(--red)}
.mx-wrap{margin-top:16px;overflow:auto;max-height:80vh;border:1px solid var(--line);border-radius:6px;background:var(--surface)}
table{border-collapse:separate;border-spacing:0;width:100%;min-width:1060px;font-size:.86rem}
th,td{text-align:left;vertical-align:top;padding:10px 12px;border-bottom:1px solid var(--line)}
thead th{position:sticky;top:0;z-index:2;background:var(--surface);font-size:.74rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:600;border-bottom:2px solid var(--ink)}
thead th.vn{color:var(--red-ink)}
thead th:first-child{left:0;z-index:3}
thead th .p{display:block;font-family:var(--mono);letter-spacing:0;text-transform:none;font-weight:500;color:var(--muted);margin-top:2px}
tbody th{font-weight:500;width:19%;position:sticky;left:0;background:var(--surface);z-index:1}
td.inc{background:color-mix(in srgb,var(--inc) 5%,var(--surface))}
td.first-inc{border-left:2px solid var(--line)}
tr.cat th{background:var(--bg);font-family:var(--display);font-stretch:112%;font-weight:700;font-size:.82rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ink);padding-block:8px}
tr.cat td{background:var(--bg)}
td{width:13.5%;color:var(--ink)}
td .y{display:inline-flex;align-items:center;gap:6px;font-weight:600}
td .y::before{content:"";width:9px;height:9px;border-radius:50%;background:currentColor}
td.vn .y{color:var(--red-ink)}
td.inc .y{color:var(--inc)}
td .n{color:var(--muted)}
td small{display:block;color:var(--muted);font-size:.76rem;line-height:1.4;margin-top:2px}
tr.hide{display:none}
.sr{position:absolute;left:-9999px}
.mx-search{margin-top:24px;max-width:520px}
.mx-search input{font-family:var(--body);font-size:.95rem;padding:10px 12px}
.toggles{display:inline-flex;flex-wrap:wrap;gap:6px 18px;margin-left:auto}
.toggles .toggle{margin-left:0}
.fx{all:unset;cursor:pointer;display:flex;gap:8px;align-items:flex-start;border-radius:3px;line-height:1.4}
.fx:hover span:last-child{text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--line)}
.fx:focus-visible{outline:2px solid var(--red);outline-offset:2px}
.chev{flex:none;width:16px;height:16px;margin-top:2px;border:1px solid var(--line);border-radius:50%;position:relative;transition:transform .2s}
.chev::before{content:"";position:absolute;left:5px;top:4px;width:4px;height:4px;border-right:1.5px solid var(--muted);border-bottom:1.5px solid var(--muted);transform:rotate(-45deg)}
tr.open .chev{transform:rotate(90deg);border-color:var(--red)}
tr.open th,tr.open td{border-bottom-color:transparent}
tr.detail td{background:var(--bg);padding:0;width:auto}
.dx{position:sticky;left:0;max-width:min(980px,calc(100vw - 48px));padding:14px 16px 18px 40px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px 28px;font-size:.88rem;line-height:1.5}
.dx p{margin-top:3px}
.dk{font-size:.7rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.dx div:nth-child(2) .dk{color:var(--red-ink)}
.dtag{grid-column:1/-1}
.pill{display:inline-block;font-size:.74rem;font-weight:600;border:1px solid var(--line);border-radius:999px;padding:2px 9px;background:var(--surface);color:var(--ink)}
.mx-empty{padding:20px;color:var(--muted);font-size:.9rem}
@media (max-width:700px){.dx{grid-template-columns:1fr;padding-left:16px}}
.faq summary:focus-visible{outline:2px solid var(--red);outline-offset:2px}
.aijobs{margin-top:28px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.aijob:nth-child(2){grid-column:1/-1}
.aijob{background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:22px;display:flex;flex-direction:column;gap:10px;min-width:0}
.aijob:first-child{grid-column:1/-1}
.aijob h3{font-family:var(--display);font-stretch:112%;font-weight:700;font-size:1.2rem}
.aijob > p{font-size:.92rem}
.aif{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column}
.aif li{padding:12px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;align-items:baseline}
.aif strong{font-weight:600;font-size:.95rem}
.aif .pl{font-size:.72rem;font-weight:600;border:1px solid var(--line);border-radius:999px;padding:1px 8px;color:var(--muted);white-space:nowrap}
.aif .ex{grid-column:1/-1;font-size:.9rem;line-height:1.5;color:var(--ink);padding-left:12px;border-left:2px solid var(--line)}
.aijob:nth-child(-n+2) .aif{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px}
@media (max-width:900px){.aijobs{grid-template-columns:1fr}.aijob:nth-child(-n+2) .aif{grid-template-columns:1fr}}
.routes{margin-top:28px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.route{background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:22px;display:flex;flex-direction:column;gap:12px;min-width:0}
.route h3{font-family:var(--display);font-stretch:112%;font-weight:700;font-size:1.15rem}
.route > p{font-size:.92rem}
.route .leads{gap:10px;font-size:.88rem}
.route .note{margin-top:auto;padding-top:10px;border-top:1px solid var(--line)}
@media (max-width:900px){.routes{grid-template-columns:1fr}}
#agents .aipoint{margin-top:16px}
.mixed{margin-top:44px;padding-top:32px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:14px}
.mixed .twin{margin-top:10px}
@media (prefers-reduced-motion:reduce){.fill,.need,.needlbl{transition:none}}
.flow{margin-top:20px;background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:16px;overflow-x:auto}
.flow svg{display:block;width:100%;min-width:620px;height:auto}
td.msr{background:color-mix(in srgb,var(--inc) 9%,var(--surface))}
.fill.ms{background:color-mix(in srgb,var(--inc) 55%,var(--surface))}
.fill.ms .v{color:var(--ink)}
.big{font-size:1.15rem;font-weight:500;color:var(--ink)}
.lane.total .lbl b{color:var(--red-ink)}
.lane.total{padding-top:12px;border-top:1px dashed var(--line)}
.finder{margin-top:28px;display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);border:1px solid var(--line);border-radius:6px;background:var(--surface);overflow:hidden}
.fq{padding:24px;display:flex;flex-direction:column;gap:10px;min-width:0}
.fq h3{font-family:var(--display);font-stretch:112%;font-weight:700;font-size:1.2rem}
.checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 18px;margin-top:6px}
.chk{display:flex;gap:10px;align-items:flex-start;font-size:.9rem;line-height:1.4;padding:6px 4px;border-radius:4px;cursor:pointer}
.chk input{margin-top:3px;accent-color:var(--red);flex:none}
.chk:hover{background:var(--bg)}
.fa{background:var(--panel);color:var(--panel-ink);padding:24px;display:flex;flex-direction:column;gap:10px;min-width:0}
.fa .kicker{color:var(--panel-muted)}
.ftier{font-family:var(--display);font-stretch:112%;font-weight:750;font-size:1.7rem;line-height:1.1;color:#fff}
.fprice{color:var(--panel-ink);font-size:.95rem}
.fa .m{color:var(--panel-ink)}
.fa p{font-size:.92rem;color:var(--panel-muted)}
@media (max-width:860px){.finder{grid-template-columns:1fr}.checks{grid-template-columns:1fr}}
.flow.stack svg{min-width:640px}
.probs{margin-top:28px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.prob{background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:22px;display:flex;flex-direction:column;gap:12px;min-width:0}
.prob .says{font-family:var(--display);font-stretch:108%;font-weight:650;font-size:1.18rem;line-height:1.25}
.prob .says::before{content:"\201C";color:var(--red)}
.prob .says::after{content:"\201D";color:var(--red)}
.prob dl{margin:0;display:flex;flex-direction:column;gap:10px;font-size:.92rem;line-height:1.5}
.prob dt{font-size:.7rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.prob dd{margin:2px 0 0}
.prob dt.own{color:var(--red-ink)}
.prob dd.down{color:var(--muted)}
.prob.wide{grid-column:1/-1}
@media (max-width:820px){.probs{grid-template-columns:1fr}}
.rt{display:inline-flex;align-items:center;gap:7px;font-weight:600;white-space:nowrap}
.rt::before{content:"";width:10px;height:10px;border-radius:50%;flex:none;box-sizing:border-box}
.rt.f::before{background:var(--ink)}
.rt.p::before{border:1.5px solid var(--ink);background:linear-gradient(90deg,var(--ink) 50%,transparent 50%)}
.rt.b::before{border:1.5px solid var(--ink);background:transparent}
.rt.n{color:var(--muted);font-weight:400}
.rt.n::before{width:10px;height:2px;border-radius:0;background:var(--muted)}
.legend{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:16px;font-size:.84rem;color:var(--muted)}
.legend .rt{font-weight:500;color:var(--ink)}
table.cov{min-width:980px}
table.cov tbody th{width:22%}
table.cov td{width:19.5%}
td.dxc{background:var(--red-wash)}
td.msc{background:color-mix(in srgb,var(--inc) 7%,var(--surface))}
thead th.msh{color:var(--inc)}
.dx.cov2 div:nth-child(2) .dk{color:var(--red-ink)}
.paths{margin-top:24px;display:flex;flex-direction:column;gap:12px}
.path{background:var(--surface);border:1px solid var(--line);border-radius:6px;display:grid;grid-template-columns:200px minmax(0,1fr);overflow:hidden}
.pn{padding:18px;border-right:1px solid var(--line);background:var(--bg);display:flex;flex-direction:column;gap:4px}
.pn b{font-family:var(--display);font-stretch:112%;font-weight:700;font-size:1.1rem}
.pn span{font-size:.8rem;color:var(--muted);line-height:1.4}
.pt{list-style:none;margin:0;padding:14px 18px;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px 18px}
.pt li{display:flex;flex-direction:column;gap:2px;font-size:.9rem;font-weight:600;padding-left:20px;position:relative;line-height:1.35}
.pt li span{font-weight:400;font-size:.82rem;color:var(--muted)}
.pt li::before{content:"";position:absolute;left:0;top:.3em;width:11px;height:11px;border-radius:50%;box-sizing:border-box}
.pt li.sees::before{background:var(--rec)}
.pt li.part::before{border:1.5px solid var(--rec);background:linear-gradient(90deg,var(--rec) 50%,transparent 50%)}
.pt li.dom::before{border:1.5px solid var(--ink)}
.pt li.none::before{top:.6em;height:2px;border-radius:0;background:var(--muted)}
.pt li.none{color:var(--muted)}
@media (max-width:700px){.path{grid-template-columns:1fr}.pn{border-right:0;border-bottom:1px solid var(--line)}}
.plegend{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:14px;font-size:.84rem;color:var(--muted)}
.plegend span{position:relative;padding-left:18px}
.plegend span::before{content:"";position:absolute;left:0;top:.3em;width:11px;height:11px;border-radius:50%;box-sizing:border-box}
.plegend .sees::before{background:var(--rec)}
.plegend .part::before{border:1.5px solid var(--rec);background:linear-gradient(90deg,var(--rec) 50%,transparent 50%)}
.plegend .dom::before{border:1.5px solid var(--ink)}
.plegend .none::before{top:.6em;height:2px;border-radius:0;background:var(--muted)}
.steps{list-style:none;margin:28px 0 0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;border:1px solid var(--line);border-radius:6px;background:var(--surface);overflow:hidden;counter-reset:st}
.steps li{padding:20px 18px;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:8px;min-width:0;counter-increment:st;font-size:.9rem;line-height:1.5}
.steps li:last-child{border-right:0}
.steps li::before{content:counter(st);font-family:var(--display);font-stretch:112%;font-weight:800;font-size:1.6rem;line-height:1;color:var(--red)}
.steps li b{font-weight:600;font-size:.95rem}
.steps li .where{font-family:var(--mono);font-size:.72rem;color:var(--muted)}
@media (max-width:960px){.steps{grid-template-columns:1fr}.steps li{border-right:0;border-bottom:1px solid var(--line)}.steps li:last-child{border-bottom:0}}
.simple-wrap{margin-top:24px;overflow:auto;border:1px solid var(--line);border-radius:6px;background:var(--surface)}
table.simple{min-width:860px}
table.simple tbody th{position:static;width:22%}
table.simple td{width:auto}
table.simple td.own{font-weight:600}
table.simple td.own small{font-weight:400}
.vendors{margin-top:28px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.vendor{background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:22px;display:flex;flex-direction:column;gap:10px;min-width:0}
.vendor h3{font-family:var(--display);font-stretch:112%;font-weight:700;font-size:1.15rem}
.vendor > p{font-size:.92rem}
.vendor .leads{gap:9px;font-size:.88rem}
.vendor .note{margin-top:auto;padding-top:10px;border-top:1px solid var(--line)}
.vendor.dxv{border-color:var(--rec)}
@media (max-width:960px){.vendors{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.vendors{grid-template-columns:1fr}}
.sub2{margin-top:56px}
.flist{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:10px}
.flist li{border-left:3px solid var(--panel-line);padding-left:12px;font-size:.9rem;color:var(--panel-muted);line-height:1.45}
.flist li b{display:block;color:#fff;font-weight:600;font-size:.98rem}
.flist li.add{border-left-color:var(--red)}
.flist li.warn{border-left-color:#E6B35C}
.flist li.warn b{color:#F3D08F}
.blines{display:flex;flex-direction:column;gap:0}
.bl{display:grid;grid-template-columns:minmax(0,1fr) 64px 76px;gap:8px;align-items:center;padding:7px 0;border-top:1px solid var(--line)}
.bl:first-child{border-top:0}
.bl .bn{font-size:.84rem;line-height:1.25}
.bl .bn span{display:block;font-size:.72rem;color:var(--muted)}
.bl input{padding:6px 7px;font-size:.84rem}
.bhead{display:grid;grid-template-columns:minmax(0,1fr) 64px 76px;gap:8px;font-size:.7rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.bgroup{font-size:.7rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--red-ink);margin-top:12px}
.presets{display:flex;flex-wrap:wrap;gap:8px}
.fill.std{background:color-mix(in srgb,var(--inc) 75%,var(--surface))}
.warnbox{font-size:.9rem;line-height:1.5;background:var(--amber-wash);border:1px solid var(--amber-line);border-radius:4px;padding:10px 14px;display:flex;flex-direction:column;gap:6px}
.warnbox:empty{display:none}
.primer{margin-top:28px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.pc{background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:22px;display:flex;flex-direction:column;gap:10px;min-width:0}
.pc h3{font-family:var(--display);font-stretch:112%;font-weight:700;font-size:1.15rem}
.pc > p{font-size:.92rem;line-height:1.55}
.pc .like{color:var(--muted);border-left:2px solid var(--line);padding-left:12px}
.pc .say{margin-top:auto;padding-top:10px;border-top:1px solid var(--line)}
.pc .like b,.pc .say b{display:block;font-size:.7rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:2px}
.pc .say b{color:var(--red-ink)}
.pc.dxp{border-top:3px solid var(--rec)}
.pc.msp{border-top:3px solid var(--inc)}
.pc.msp .ajn{color:var(--inc)}
@media (max-width:960px){.primer{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.primer{grid-template-columns:1fr}}
.aipoint.next{border-left:4px solid var(--rec)}
table.cov tbody th{width:20%}
table.cov td{width:20%}
table.cov{min-width:1000px}
.optcard{background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:22px;gap:12px!important}
.optcard.ms{border-top:3px solid var(--inc)}
.optcard.dxo{border-top:3px solid var(--rec)}
.optcard.ms .ajn{color:var(--inc)}
.optcard h3{font-family:var(--display);font-stretch:112%;font-weight:700;font-size:1.3rem}
table.cov2c{}
