.salary-tool .row > div { min-width: 0; }
.salary-checkbox { display: flex; align-items: flex-start; gap: 9px; margin: 18px 0 12px; color: var(--ink); font-size: 15px; }
.salary-checkbox input { width: 18px; height: 18px; flex: none; margin: 3px 0 0; accent-color: var(--accent); }
.salary-tool [hidden] { display: none; }
.salary-tool .result .big { font-size: clamp(23px, 4vw, 30px); overflow-wrap: anywhere; }
.salary-tool select { font-size: 16px; }
.salary-tool :disabled { opacity: .65; }
.salary-bar { display: flex; height: 12px; margin-top: 20px; border-radius: 99px; overflow: hidden; background: var(--hi); }
.salary-bar-net { display: block; background: var(--accent); }
.salary-legend { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 6px 14px; font-size: 13px; margin: 8px 0 12px; }
.salary-legend span:first-child { color: var(--accent); }
.salary-change { font-weight: 800; font-size: 24px; color: var(--accent); overflow-wrap: anywhere; }
.salary-more .is-error { color: #8c2626; }
.salary-table { overflow-x: auto; margin: 18px 0 26px; }
.salary-table table { width: 100%; border-collapse: collapse; font-variant-numeric: tabular-nums; }
.salary-table caption { text-align: left; color: var(--muted); font-size: 14px; padding-bottom: 10px; }
.salary-table th, .salary-table td { padding: 10px 9px; border-bottom: 1px solid var(--line); text-align: right; white-space: nowrap; }
.salary-table th:first-child { text-align: left; }
.salary-table thead { background: var(--soft); font-size: 14px; }
.salary-table tbody th { font-weight: 600; }
.salary-figure { margin: 36px 0 28px; }
.salary-figure img { display: block; width: 100%; height: auto; border: 1px solid var(--line); border-radius: 14px; }
.salary-figure figcaption { margin-top: 10px; color: var(--muted); font-size: 13px; line-height: 1.6; }
@media (max-width: 420px) { .salary-table th, .salary-table td { padding: 8px 6px; font-size: 13px; } }
