.card h2 { margin: 0; }
.coef { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.coef input, #lin input { text-align: center; }
.eq { margin: 0 0 12px; font-weight: 600; text-align: center; overflow-wrap: anywhere; }
dl.result dd, .steps li { overflow-wrap: anywhere; }
.steps li + li { margin-top: 4px; }
#s-out details { margin-top: 12px; }
.graph { margin: 0; }
.graph svg { display: block; width: 100%; height: auto; border: 1px solid var(--line); border-radius: 8px; background: var(--bg); overflow: hidden; }
.graph .axis { stroke: var(--muted); stroke-width: 1; }
.graph .sym { stroke: var(--muted); stroke-width: 1; stroke-dasharray: 4 4; }
.graph .curve { fill: none; stroke: var(--accent); stroke-width: 2.5; stroke-linejoin: round; }
.graph .vertex { fill: var(--accent); }
.graph .root { fill: var(--bg); stroke: var(--accent); stroke-width: 2; }
.graph figcaption { margin-top: 6px; }
