.rf{flex-direction:column;gap:14px;display:flex}.rf-in{flex-wrap:wrap;align-items:flex-end;gap:8px 10px;display:flex}.rf-f{flex-direction:column;gap:4px;display:inline-flex}.rf-f label{color:var(--muted);font-size:14px}.rf-f input{font:inherit;border:1px solid var(--line);background:var(--surface);width:7.5ch;min-height:44px;color:var(--fg);text-align:center;letter-spacing:.08em;border-radius:8px;padding:6px 10px}.rf-sep{padding-bottom:6px;font-size:26px}.rf-chips{flex-wrap:wrap;gap:8px;display:flex}.rf-chips button,.rf-ctl button{border:1px solid var(--line);background:var(--bg);cursor:pointer;font-variant-numeric:tabular-nums;border-radius:999px;min-width:44px;min-height:44px;padding:4px 14px}.rf-chips button:hover,.rf-ctl button:hover{border-color:var(--accent)}.rf-chips button[aria-pressed=true],.rf-ctl button.pri{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.rf-ctl{flex-wrap:wrap;gap:8px;display:flex}.rf-steps{counter-reset:s;flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.rf-steps li{counter-increment:s;border:1px solid var(--line);background:var(--bg);border-radius:8px;padding:8px 12px 8px 44px;line-height:1.8;position:relative}.rf-steps li:before{content:counter(s);background:var(--accent);width:22px;height:22px;color:var(--on-accent);border-radius:50%;place-items:center;font-size:13px;display:grid;position:absolute;top:8px;left:12px}.rf-steps .eq{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:19px;font-weight:600}.rf-steps .why{color:var(--muted);font-size:15px;display:block}.rf-steps li.final{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 10%, var(--surface))}.rf-out{border:1px solid var(--line);background:var(--bg);border-radius:8px;min-height:3.5em;padding:12px 14px}.rf-out.err{border-color:var(--phys)}.rf-note{color:var(--muted);margin:4px 0 0;font-size:15px}.rf .dt{display:inline-block;position:relative}.rf .dt:before{content:"";background:var(--accent);border-radius:50%;width:5px;height:5px;margin-left:-2.5px;position:absolute;top:-.1em;left:50%}.tc{flex-direction:column;gap:12px;display:flex}.tc-in{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.tc-in label{align-items:center;gap:4px;font-weight:600;display:inline-flex}.tc-in input{width:6ch;font:inherit;border:1px solid var(--line);background:var(--surface);min-height:42px;color:var(--fg);letter-spacing:.1em;border-radius:8px;padding:6px 8px}.tc-eg{flex-wrap:wrap;gap:6px;display:inline-flex}.tc-eg button,.tc-ctl button{border:1px solid var(--line);background:var(--bg);min-height:40px;color:var(--fg);font:inherit;cursor:pointer;border-radius:10px;padding:4px 14px}.tc-eg button:hover,.tc-ctl button:hover:not(:disabled){border-color:var(--accent)}.tc-ctl{flex-wrap:wrap;gap:8px;display:flex}.tc-ctl button:first-child{background:var(--accent);color:var(--on-accent);border-color:var(--accent);font-weight:600}.tc-ctl button:disabled{opacity:.45}.tc-grid{background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:12px;overflow-x:auto}.tc-row{white-space:nowrap;align-items:center;min-height:44px;display:flex}.tc-h{text-align:right;width:8.5ch;color:var(--muted);flex:none;padding-right:10px;font-weight:600}.tc-c{text-align:center;min-width:1.15em;font-size:24px;font-weight:600;display:inline-block}.tc-c.dot{min-width:.6em}.tc-tail{border:2px solid #0000;border-radius:8px;padding:0 6px;display:inline-flex}.tc-tail.same{background:color-mix(in srgb, var(--mark) 38%, transparent);border-color:var(--accent);border-style:dashed}.tc-line{border-top:2px solid var(--fg);height:0;margin-top:4px;margin-bottom:4px;margin-left:8.5ch;position:relative}.tc-minus{color:var(--muted);font-size:22px;position:absolute;top:-16px;left:-2ch}.tc-row.res .tc-c{color:var(--accent)}.tc-gone{color:var(--muted);padding-left:4px;font-size:18px;text-decoration:line-through}.tc-say{border-left:4px solid var(--chem);background:color-mix(in srgb, var(--chem) 8%, var(--surface));border-radius:0 8px 8px 0;margin:0;padding:8px 12px}.tc-err{border-left:4px solid var(--bad);background:color-mix(in srgb, var(--bad) 8%, var(--surface));margin:0;padding:8px 12px}
