.hero-sub code{font:600 13px var(--mono);background:var(--cyan-bg-2);color:var(--cyan);padding:2px 6px;border-radius:5px}
.section-sub code{font:600 13px var(--mono);background:var(--blue-bg-2);color:var(--blue-bright);padding:1px 5px;border-radius:4px}

/* Make the bigger step-card code chips readable */
.step-card code{font:600 12px var(--mono);background:var(--blue-bg-2);color:var(--blue-bright);padding:1px 5px;border-radius:4px}

/* merged problem grid spacing */
.problem-grid{margin-top:28px;display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.problem-grid > div{border:1px solid var(--border);border-radius:12px;padding:16px 18px;background:var(--bg)}
.problem-grid b{display:block;font-size:15px;margin-bottom:6px;color:var(--text)}
.problem-grid span{font-size:13px;color:var(--text-2);line-height:1.55}
@media(max-width:900px){.problem-grid{grid-template-columns:1fr}}

/* refund-policy query bar */
.query-bar{display:flex;align-items:center;gap:14px;border:1px solid var(--border);background:var(--bg);border-radius:10px;padding:10px 14px;margin:0 0 12px}
.query-bar .qlabel{font:700 11px/1 var(--mono);letter-spacing:.14em;color:var(--blue-bright)}
.query-bar .qtext{font:500 15px/1.4 var(--mono);color:var(--text)}

/* bad panel dotspace */
.dotspace circle{fill:var(--text-3)}
.dotspace .bad-halo{fill:var(--bad);opacity:.18}
.dotspace .bad-dot{fill:var(--bad);opacity:1}
.dotspace .bad-line{stroke:var(--bad);stroke-width:1.3;stroke-dasharray:3 3;opacity:.75}
.dotspace text{font:700 11px var(--mono);fill:var(--bad)}
.dotspace .bad-sub{font-weight:500;opacity:.7;font-size:10px}

/* graphspace nodes */
.graphspace .gn-old{fill:#2a2e3a;stroke:var(--text-3);stroke-width:1.5;opacity:.65}
.graphspace .gn-parent{fill:var(--blue-border);stroke:#5b8def;stroke-width:1.8}
.graphspace .gn-cite{fill:rgba(125,108,240,.3);stroke:#7d6cf0;stroke-width:1.5}
.graphspace .gn-lbl{font:700 10px var(--mono);fill:var(--text);text-anchor:middle;letter-spacing:.06em}
.graphspace .gn-sub{font:500 9px var(--mono);fill:var(--text-3);text-anchor:middle}
.graphspace .gn-lbl.muted,.graphspace .gn-sub.muted{fill:var(--text-3)}
.graphspace .gn-match{font:700 11px var(--mono);fill:var(--cyan);text-anchor:middle;letter-spacing:.06em}

/* result rows under each viz */
.viz-result{border-top:1px solid var(--border);padding-top:12px;display:flex;flex-direction:column;gap:6px}
.viz-result .vr-row{display:flex;justify-content:space-between;align-items:center;gap:10px}
.viz-result b{font-size:14px;color:var(--text)}
.viz-result > span{font-size:13px;color:var(--text-2);line-height:1.5}
.viz-result .vr-foot{font:500 11.5px var(--mono);color:var(--text-3);margin-top:4px}
.vr-pill{font:700 10px var(--mono);letter-spacing:.1em;padding:3px 7px;border-radius:999px;border:1px solid transparent}
.vr-pill.bad{color:var(--bad);border-color:var(--bad-border);background:var(--bad-bg)}
.vr-pill.good{color:var(--cyan);border-color:var(--cyan-border);background:var(--cyan-bg-1)}

/* dimension chips under the good panel */
.dim-chips{margin-top:12px;display:grid;grid-template-columns:repeat(5,1fr);gap:6px}
.dchip{display:flex;flex-direction:column;align-items:center;gap:2px;border:1px solid var(--cyan-border);background:var(--cyan-bg-1);border-radius:8px;padding:6px 4px}
.dchip i{font-style:normal;font:600 9.5px var(--mono);color:var(--text-3);letter-spacing:.08em;text-transform:uppercase}
.dchip b{font:700 12px var(--mono);color:var(--cyan)}

/* shared dot styling for both vector spaces */
.dotspace .dot-lbl{font:700 10px var(--mono);fill:var(--text);text-anchor:middle;letter-spacing:.06em}
.dotspace .dot-lbl.muted{fill:var(--text-3)}
.dotspace .dot-lbl.bad-lbl{fill:var(--bad)}
.dotspace .dot-lbl.good-lbl{fill:var(--cyan)}
.dotspace .dot-cos{font:600 9.5px var(--mono);fill:var(--text-3);text-anchor:middle}
.dotspace .dot-cos.muted{fill:var(--text-3);text-decoration:line-through}
.dotspace .dot-cos.good{fill:var(--cyan)}
.dotspace .dot-pen{font:600 9px var(--mono);fill:var(--bad);text-anchor:middle;letter-spacing:.04em}
.dotspace .dot-pen.good{fill:var(--cyan)}
.dotspace .alt-dot{fill:var(--text-3);opacity:.55}
.dotspace .dim-dot{fill:var(--text-3);opacity:.5}
.dotspace .good-halo{fill:var(--cyan);opacity:.22}
.dotspace .good-dot{fill:var(--cyan)}
.dotspace .crown{font:800 11px var(--mono);fill:var(--text);text-anchor:middle;letter-spacing:.06em}
.dotspace .crown.bad{fill:var(--bad)}
.dotspace .crown.good{fill:var(--cyan)}
.dotspace .flip-arrow{stroke:var(--cyan);stroke-width:1.6;stroke-dasharray:4 3;opacity:.85;marker-end:none}
.dotspace .flip-lbl{font:700 9.5px var(--mono);fill:var(--cyan);text-anchor:middle;letter-spacing:.06em}

/* query marker + distance lines */
.dotspace .q-mark{fill:var(--text);stroke:var(--bg);stroke-width:1}
.dotspace .q-mark.good{fill:var(--cyan)}
.dotspace .q-mark.small{transform:scale(.9)}
.dotspace .q-lbl{font:800 9.5px var(--mono);fill:var(--text);text-anchor:middle;letter-spacing:.08em}
.dotspace .q-lbl.good{fill:var(--cyan)}
.dotspace .q-line{stroke:var(--text-3);stroke-width:1.2;stroke-dasharray:3 3;opacity:.7}
.dotspace .q-line.bad{stroke:var(--bad);opacity:.9;stroke-dasharray:none;stroke-width:1.5}
.dotspace .q-line.good{stroke:var(--cyan);opacity:.9;stroke-dasharray:none;stroke-width:1.5}
.dotspace .q-line.muted{stroke:var(--text-3);opacity:.5}
.dotspace .q-dist{font:700 9px var(--mono);fill:var(--text-3);text-anchor:middle;letter-spacing:.04em}
.dotspace .q-dist.bad{fill:var(--bad)}
.dotspace .q-dist.good{fill:var(--cyan)}
.dotspace .q-dist.muted{fill:var(--text-3)}
