.qfc-calc *,.qfc-calc *::before,.qfc-calc *::after{box-sizing:border-box}.qfc-section-label{font-size:.6875rem;font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.05em;color:var(--ink-500);margin-top:.1rem}.qfc-hint{padding:.65rem .85rem;background:var(--brand-50);border-left:3px solid var(--brand-500);border-radius:0 var(--radius-md) var(--radius-md) 0;font-size:.8125rem;color:var(--ink-700);line-height:1.5;word-break:break-word}.qfc-hint code{font-family:'SFMono-Regular',Consolas,monospace;font-size:.8125rem;background:var(--bg-card);padding:.05rem .4rem;border-radius:4px;color:var(--ink-800)}.dark .qfc-hint{background:rgb(99 102 241 / .08);color:var(--sky-100)}.dark .qfc-hint code{background:rgb(0 0 0 / .35);color:var(--sky-50)}.qfc-equation-line{display:flex;align-items:flex-end;flex-wrap:wrap;gap:.5rem;padding:.85rem;background:var(--bg-card);border:1px solid var(--border-soft);border-radius:var(--radius-md)}.qfc-field{display:flex;flex-direction:column;gap:.25rem;min-width:4rem;flex:1 1 4rem}.qfc-field label{display:flex;align-items:center;gap:.25rem;font-size:.8125rem;font-weight:var(--fw-bold);color:var(--ink-700);font-style:italic}.dark .qfc-field label{color:var(--sky-100)}.qfc-field input[type="text"]{width:100%;min-width:0;padding:.55rem .7rem;border:1px solid var(--border-soft);border-radius:var(--radius-md);background:var(--bg-card);color:var(--ink-800);font-size:.9375rem;font-family:inherit;font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;text-align:center;transition:var(--transition-base)}.qfc-field input[type="text"]:focus{outline:none;border-color:var(--brand-400);box-shadow:0 0 0 3px rgb(99 102 241 / .12)}.dark .qfc-field input[type="text"]{background-color:var(--bg-soft);color:var(--sky-50)}.qfc-eq-sym{font-size:1rem;font-weight:var(--fw-bold);color:var(--ink-700);padding-bottom:.5rem;font-style:italic}.dark .qfc-eq-sym{color:var(--sky-100)}@media (max-width:480px){.qfc-equation-line{gap:.4rem;padding:.7rem}.qfc-field{min-width:3.5rem}.qfc-eq-sym{font-size:.875rem;padding-bottom:.4rem}}.qfc-forms-card{padding:.85rem .95rem;background:var(--bg-card);border:1px solid var(--border-soft);border-radius:var(--radius-md)}.qfc-forms-card[hidden]{display:none!important}.qfc-forms-label{font-size:.6875rem;font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.05em;color:var(--ink-500);margin-bottom:.5rem}.qfc-form-row{display:flex;align-items:baseline;flex-wrap:wrap;gap:.5rem;padding:.35rem 0;font-size:.8125rem;color:var(--ink-700);border-bottom:1px dashed var(--border-soft)}.qfc-form-row:last-child{border-bottom:0}.qfc-form-name{font-weight:var(--fw-bold);color:var(--ink-600);min-width:4.5rem}.qfc-form-row code{font-family:'SFMono-Regular',Consolas,monospace;font-size:.8125rem;background:var(--bg-soft);color:var(--brand-700);padding:.1rem .45rem;border-radius:4px;font-variant-numeric:tabular-nums;font-weight:var(--fw-bold);word-break:break-word}.dark .qfc-form-row code{background:rgb(99 102 241 / .18);color:#c7d2fe}.qfc-steps-details{border:1px dashed var(--border-soft);border-radius:var(--radius-md);background:var(--bg-card)}.qfc-steps-summary{display:flex;align-items:center;gap:.6rem;padding:.65rem .9rem;cursor:pointer;user-select:none;list-style:none;transition:var(--transition-base)}.qfc-steps-summary::-webkit-details-marker{display:none}.qfc-steps-summary:hover{background:var(--brand-50);border-radius:var(--radius-md)}.dark .qfc-steps-summary:hover{background:rgb(99 102 241 / .1)}.qfc-steps-summary-label{flex:1;display:inline-flex;align-items:center;gap:.5rem;font-size:.8125rem;font-weight:var(--fw-semibold);color:var(--brand-600)}.dark .qfc-steps-summary-label{color:var(--brand-300)}.qfc-steps-summary-label svg{color:var(--brand-500);flex-shrink:0}.qfc-steps-summary-chevron{color:var(--brand-500);transition:transform 0.2s ease;flex-shrink:0}.qfc-steps-details[open] .qfc-steps-summary-chevron{transform:rotate(180deg)}.qfc-steps{margin:0;padding:0 1.2rem .85rem 2.1rem;font-size:.875rem;line-height:1.6;color:var(--ink-800)}.qfc-steps li{margin-bottom:.45rem}.qfc-steps li:last-child{margin-bottom:0}.qfc-steps strong{color:var(--ink-900);font-weight:var(--fw-bold)}.dark .qfc-steps strong{color:var(--sky-50)}.qfc-steps code{font-family:'SFMono-Regular',Consolas,monospace;font-size:.8125rem;color:var(--brand-700);font-variant-numeric:tabular-nums;font-weight:var(--fw-bold)}.dark .qfc-steps code{color:#c7d2fe}.qfc-graph-wrap{display:flex;justify-content:center;padding:.4rem .5rem;background:var(--bg-card);border:1px solid var(--border-soft);border-radius:var(--radius-md)}.qfc-graph-svg{width:100%;max-width:480px;height:auto}.qfc-grid line{stroke:var(--border-soft);stroke-width:.5}.qfc-axis{stroke:var(--ink-500);stroke-width:1.25}.qfc-parabola{fill:none;stroke:var(--brand-500);stroke-width:2.25;stroke-linecap:round;stroke-linejoin:round}.qfc-root-dot{fill:#dc2626;stroke:#fff;stroke-width:1.5}.qfc-vertex-dot{fill:#f59e0b;stroke:#fff;stroke-width:1.5}.dark .qfc-graph-wrap{background:rgb(15 23 42 / .4)}.dark .qfc-grid line{stroke:rgb(148 163 184 / .2)}.dark .qfc-axis{stroke:var(--ink-300)}.qfc-roots-display{display:flex;flex-direction:column;gap:.2rem;font-size:1.5rem;font-weight:var(--fw-extrabold);line-height:1.15;font-variant-numeric:tabular-nums;letter-spacing:-.01em}@media (min-width:480px){.qfc-roots-display{font-size:1.6rem}}.qfc-root-row{word-break:break-word}.qfc-roots-exact{margin-top:.5rem;font-size:.8125rem;font-weight:var(--fw-medium);color:rgb(255 255 255 / .85);line-height:1.5;font-variant-numeric:tabular-nums}.qfc-roots-exact code{background:rgb(255 255 255 / .18);color:#fff;padding:.1rem .45rem;border-radius:4px;font-family:'SFMono-Regular',Consolas,monospace;font-size:.8125rem}.qfc-info-sub{margin-top:.2rem;font-size:.6875rem;font-weight:var(--fw-medium);color:var(--ink-500);line-height:1.3}.qfc-info-sub.discriminant-positive{color:#16a34a;font-weight:var(--fw-bold)}.qfc-info-sub.discriminant-zero{color:#ca8a04;font-weight:var(--fw-bold)}.qfc-info-sub.discriminant-negative{color:#dc2626;font-weight:var(--fw-bold)}.qfc-warning{display:flex;align-items:flex-start;gap:.55rem;padding:.7rem .85rem;background:#fffbeb;border:1px solid #fde68a;border-radius:var(--radius-md);color:#92400e;font-size:.8125rem;line-height:1.45}.qfc-warning svg{flex-shrink:0;margin-top:1px}.dark .qfc-warning{background:rgb(217 119 6 / .12);border-color:rgb(217 119 6 / .3);color:#fcd34d}.qfc-warning[hidden]{display:none!important}