.tool-options { display:flex; flex-wrap:wrap; align-items:center; gap:16px; margin:18px 0; }
.tool-options .check-label { font-size:13px; }
.tool-fieldset { margin:0 0 20px; padding:18px; border:1px solid var(--line); border-radius:var(--radius-field); min-width:0; }
.tool-fieldset legend { padding:0 7px; font-size:13px; font-weight:600; }
.tool-fieldset .tool-options { margin:0; }
.tool-controls { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:14px; }
.tool-controls .lab-label { margin-bottom:12px; }
.tool-summary { display:flex; flex-wrap:wrap; gap:10px; margin:0 0 20px; color:var(--muted); font-size:13px; }
.tool-tag { padding:6px 10px; border-radius:8px; border:1px solid var(--line); background:var(--surface-soft); }
.tool-tag.add { color:var(--accent-teal); background:var(--teal-soft); }
.tool-tag.remove { color:var(--danger); background:var(--danger-soft); }
.diff-result { margin-top:22px; }
.diff-table-wrap { max-height:600px; overflow:auto; border:1px solid var(--line); border-radius:var(--radius-field); }
.diff-table,.units-table { width:100%; border-collapse:collapse; table-layout:fixed; font-size:13px; }
.diff-table th,.units-table th { text-align:left; font-weight:500; color:var(--muted); background:var(--surface-soft); }
.diff-table th { padding:10px 4px; }
.diff-table th:first-child,.diff-table th:nth-child(2) { width:48px; text-align:center; }
.diff-table td { padding:5px 4px; border-top:1px solid var(--line); vertical-align:top; }
.diff-table td:first-child,.diff-table td:nth-child(2) { color:var(--muted); text-align:center; font-variant-numeric:tabular-nums; font-size:12px; }
.diff-table pre { margin:0; font:inherit; font-family:ui-monospace,SFMono-Regular,Consolas,monospace; white-space:pre-wrap; overflow-wrap:anywhere; }
.diff-table .diff-add { background:var(--teal-soft); color:var(--accent-teal); }
.diff-table .diff-remove { background:var(--danger-soft); color:var(--danger); }
.tool-empty { margin:20px 0; color:var(--muted); font-size:13px; line-height:1.9; }
.password-output { font-family:ui-monospace,SFMono-Regular,Consolas,monospace; font-size:19px; letter-spacing:.03em; min-height:60px; margin-bottom:16px; }
.tool-result-number { display:block; font-size:clamp(26px,5vw,40px); line-height:1.4; color:var(--primary); font-variant-numeric:tabular-nums; overflow-wrap:anywhere; margin:10px 0; }
.tool-result-unit { color:var(--muted); font-size:14px; }
.units-table { margin-top:20px; }
.units-table th,.units-table td { padding:12px 8px; border-bottom:1px solid var(--line); overflow-wrap:anywhere; }
.units-table td:last-child { font-family:ui-monospace,SFMono-Regular,Consolas,monospace; font-variant-numeric:tabular-nums; }
.units-table caption { text-align:left; margin-bottom:10px; color:var(--muted); font-size:12px; }
@media(max-width:640px) { .tool-controls { grid-template-columns:minmax(0,1fr); gap:0; } .diff-table th:first-child,.diff-table th:nth-child(2) { width:34px; } .diff-result { padding:18px 12px; } .tool-fieldset { padding:16px 12px; } }
