/* The free public tools: case checker, study plan, practice check. On top of landing.css and
   marketing.css, in their palette. */
.free-tool .tool-privacy{display:inline-block; background:var(--accent-bg); color:var(--accent-ink); font-weight:600; font-size:.9rem;
  border-radius:999px; padding:6px 14px; margin:0 0 8px;}
.free-tool .tool-card{max-width:none; background:var(--card); border:1px solid var(--line); border-radius:12px; padding:18px 20px; margin:12px 0 20px;}
.free-tool fieldset{border:0; padding:0; margin:12px 0 0;}
.free-tool legend{font-weight:650; margin-bottom:6px; padding:0;}
.free-tool label.inline{display:flex; gap:10px; align-items:flex-start; font-weight:400; font-size:.95rem; margin:8px 0;}
.free-tool label.inline input{width:auto; margin-top:4px; flex:none;}
.free-tool .small{font-size:.86rem; color:var(--faint);}
.free-tool .tool-result{border-left:3px solid var(--line); padding:6px 0 6px 14px; margin:14px 0;}
.free-tool .tool-result.counts{border-left-color:var(--accent);}
.free-tool .tool-result.no-credit{border-left-color:var(--warm);}
.free-tool .verdict{font-weight:700; font-size:1.05rem; margin:0 0 6px;}
.free-tool .tally-rows{display:grid; gap:6px;}
.free-tool .tally-row{display:grid; grid-template-columns:minmax(0,1fr) 5.5rem 5.5rem; gap:8px; align-items:center;}
.free-tool .tally-row input{padding:8px; text-align:right;}
.free-tool .tally-head{font-size:.78rem; font-weight:700; letter-spacing:.04em; text-transform:uppercase; color:var(--muted);}
.free-tool .tally-name{font-size:.93rem;}
.free-tool .tally-na{text-align:center; color:var(--faint);}
.free-tool .req-list{list-style:none; padding:0; margin:8px 0;}
.free-tool .req-list li{display:grid; grid-template-columns:minmax(0,1fr) auto; gap:2px 12px; padding:6px 0; border-bottom:1px solid var(--line);}
.free-tool .req-list li.met .req-label{color:var(--accent-ink); font-weight:600;}
.free-tool .req-count{font-variant-numeric:tabular-nums; color:var(--muted);}
.free-tool .req-bar{grid-column:1 / -1; height:6px; background:var(--line); border-radius:3px; overflow:hidden;}
.free-tool .req-bar span{display:block; height:100%; background:var(--accent);}
.free-tool .pc-questions{padding-left:1.4em;}
.free-tool .pc-q{margin-bottom:18px;}
.free-tool .pc-q.right .pc-why{border-left:3px solid var(--accent);}
.free-tool .pc-q.wrong .pc-why{border-left:3px solid var(--warm);}
.free-tool .pc-why{padding:4px 0 4px 12px; margin-top:6px; font-size:.93rem;}
@media (max-width:520px){ .free-tool .tally-row{grid-template-columns:minmax(0,1fr) 4.2rem 4.2rem;} }
