.ft-form{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:.5rem}
.ft-field{display:block;min-width:0}
.ft-wide{grid-column:1/-1}
.ft select,.ft input{width:100%;min-height:44px;padding:.35rem .5rem;border:2px solid var(--line);border-radius:8px;background:var(--bg);color:var(--ink);font:inherit}
.ft select:focus-visible,.ft input:focus-visible{outline:3px solid var(--ink);outline-offset:2px}
.ft-desc{margin:0 0 .6rem;color:var(--mut);font-size:.85rem}
.ft-out:empty{display:none}
.ft-h{margin:.5rem 0;font-size:1rem}
.ft-stats{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:.6rem}
.ft-chart{display:block;width:100%;height:140px;margin-bottom:.25rem;background:var(--bg);border:1px solid var(--line);border-radius:8px}
.ft-line{stroke:var(--a);stroke-width:1.6;vector-effect:non-scaling-stroke}
.ft-base{stroke:var(--mut);stroke-width:1;stroke-dasharray:4 3;vector-effect:non-scaling-stroke}
.ft-step{margin-top:.75rem;padding-top:.75rem;border-top:2px dashed var(--line)}
.ft-sug{margin:0 0 .6rem;padding:.5rem .6rem;border:2px solid var(--a);border-radius:10px;background:var(--bg)}
.ft-sug-main{display:block;font-size:1.05rem}
.ft-sug-note{display:block;color:var(--mut);font-size:.8rem}
@media(min-width:40rem){.ft-form{grid-template-columns:2fr 1fr 1fr 1fr 1fr}.ft-wide{grid-column:auto}.ft-stats{grid-template-columns:repeat(4,1fr)}}
