/* Lawrenceville tool pages — extends style.css design system (navy/teal/orange).
   Duluth lesson applied: width rule ONLY for text/number inputs and selects;
   checkboxes/radios keep natural width so labels sit beside the box. */
.tool-hero{background:linear-gradient(135deg,var(--navy),var(--teal2));color:#fff;border-radius:var(--radius);padding:30px 28px;margin:0 0 22px;box-shadow:0 10px 28px rgba(15,42,68,.25)}
.tool-hero h1{color:#fff;margin:0 0 10px}
.tool-hero p{color:#dbe7f3;max-width:760px;margin:0}
.tool-hero .pill{display:inline-block;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.35);color:#fff;border-radius:999px;padding:4px 12px;font-size:15px;font-weight:700;margin:0 8px 8px 0}
.tool-box{border:2px solid var(--teal);border-radius:var(--radius);padding:26px 26px;background:linear-gradient(180deg,#eef7f6,#fff);box-shadow:0 4px 18px rgba(15,42,68,.08)}
.tool-box h2{margin-top:0}
.tool-box label{display:block;font-weight:700;color:var(--navy);margin:16px 0 6px}
.tool-box input[type="text"],.tool-box input[type="number"],.tool-box select{width:100%;max-width:22em;padding:12px 14px;border:1px solid var(--line);border-radius:10px;font-size:17px;background:#fff;color:var(--text)}
.tool-box input[type="checkbox"],.tool-box input[type="radio"]{width:auto;margin:0 8px 0 0;accent-color:var(--teal);transform:scale(1.25)}
.tool-box .check{margin:10px 0;font-weight:600}
.tool-box .check span{font-weight:400;color:var(--muted)}
.tool-box button,.tool-box .btn{cursor:pointer}
.tool-box button:focus-visible,.tool-box input:focus-visible,.tool-box select:focus-visible{outline:3px solid #f2b705;outline-offset:2px}
.tool-result{display:none;margin-top:20px;border-left:6px solid var(--orange);background:#fff7ed;border-radius:12px;padding:20px 22px}
.tool-result.show{display:block}
.tool-result .big{font-size:26px;font-weight:800;color:var(--navy)}
.tool-result .band{display:inline-block;background:var(--navy);color:#fff;border-radius:999px;padding:5px 14px;font-weight:800;margin:6px 0}
.meter{height:18px;background:#dbe3ea;border-radius:999px;overflow:hidden;margin:12px 0}
.meter i{display:block;height:100%;background:linear-gradient(90deg,var(--teal),var(--orange))}
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin:18px 0}
.step{border:1px solid var(--line);border-radius:12px;padding:16px;background:#fff;position:relative}
.step b.num{display:inline-flex;width:34px;height:34px;border-radius:50%;background:var(--teal);color:#fff;align-items:center;justify-content:center;font-size:17px;margin-bottom:8px}
.info{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin:18px 0}
.info .card h3{margin-top:0}
.bar-row{margin:12px 0}
.bar-row .lbl{display:flex;justify-content:space-between;font-weight:700;color:var(--navy)}
.bar-row .bar{height:16px;background:#dbe3ea;border-radius:999px;overflow:hidden}
.bar-row .bar i{display:block;height:100%;background:var(--teal)}
.callout{border:1px solid var(--line);border-left:6px solid var(--orange);border-radius:12px;padding:18px 20px;background:#fff;margin:18px 0}
.example{font-size:16px;color:var(--muted)}
@media(max-width:720px){.tool-hero,.tool-box{padding:20px 18px}.tool-box input[type="text"],.tool-box input[type="number"],.tool-box select{max-width:100%}}
