.ztool-ats { min-width: 0; }
.ztool-ats-form { display: grid; gap: 24px; }
.ztool-ats-field { display: grid; gap: 8px; min-width: 0; }
.ztool-ats-field label { color: var(--ink); font-weight: 600; }
.ztool-ats-field textarea { width: 100%; max-width: 100%; min-height: 240px; resize: vertical; padding: 16px; font: 400 14px/1.6 var(--mono); }
.ztool-ats-field small, .ztool-ats-note { font-size: var(--fs-small); color: var(--ink-2); overflow-wrap: anywhere; }
.ztool-ats-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-block: 16px; }
.ztool-ats-status { min-height: 1.6em; margin-block: 24px; color: var(--ink); }
.ztool-ats-results { border-top: 1px solid var(--line); padding-top: 28px; }
.ztool-ats-score { display: block; font: 500 clamp(2.5rem, 7vw, 5rem)/1.2 var(--sans); color: var(--ink); margin-block: 16px; }
.ztool-ats-scroll { overflow-x: auto; width: 100%; border: 1px solid var(--line); margin-block: 24px; }
.ztool-ats-table { width: 100%; min-width: 600px; border-collapse: collapse; font-size: var(--fs-small); }
.ztool-ats-table caption { text-align: left; padding: 16px; color: var(--ink); }
.ztool-ats-table th, .ztool-ats-table td { text-align: left; padding: 14px; border-bottom: 1px solid var(--line); vertical-align: top; }
.ztool-ats-table thead th { background: var(--mist-1); color: var(--ink); }
.ztool-ats-table tbody th { color: var(--ink); min-width: 140px; }
.ztool-ats-list { list-style: decimal; padding-left: 24px; margin-block: 24px; }
.ztool-ats-list li { margin-block: 14px; }
.ztool-ats-signals { display: grid; gap: 8px; margin-block: 20px; }
.ztool-ats-keywords { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; margin-block: 24px; }
.ztool-ats-terms { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px; }
.ztool-ats-terms li { border: 1px solid var(--line); padding: 6px 10px; color: var(--ink-2); font-size: var(--fs-small); overflow-wrap: anywhere; }
.ztool-ats [hidden] { display: none; }
.ztool-ats :focus-visible { outline: 2px solid var(--amber); outline-offset: 3px; }
@media (max-width: 600px) {
  .ztool-ats-keywords { grid-template-columns: minmax(0, 1fr); }
  .ztool-ats-actions > .btn { width: 100%; }
}
