.jbm-mfg{max-width:1000px;margin:1.5rem auto;padding:clamp(1rem,2.5vw,2rem);background:#fff;border:1px solid #e2e8f0;border-radius:14px}
.jbm-mfg__intro{max-width:72ch;color:#334155}
.jbm-mfg__fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.3rem 0}
.jbm-mfg-field{display:flex;flex-direction:column;gap:.4rem;font-weight:700;color:#0f172a}
.jbm-mfg-field input,.jbm-mfg-field select,.jbm-mfg textarea,.jbm-mfg-tracker input,.jbm-mfg-tracker select{box-sizing:border-box;width:100%;min-height:48px;padding:.6rem .7rem;border:1px solid #94a3b8;border-radius:8px;background:#fff;color:#0f172a;font:inherit}
.jbm-mfg textarea{min-height:150px;resize:vertical;margin:.6rem 0}
.jbm-mfg button,.jbm-mfg__actions a,.jbm-mfg-hub a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.55rem .9rem;border:1px solid #c8102e;border-radius:8px;background:#c8102e;color:#fff;font-family:inherit;font-size:.93rem;font-weight:700;line-height:1.2;text-decoration:none;cursor:pointer}
.jbm-mfg button:hover,.jbm-mfg__actions a:hover,.jbm-mfg-hub a:hover{background:#a50d26;color:#fff}
.jbm-mfg :is(input,select,textarea,button,a):focus-visible,.jbm-mfg-hub a:focus-visible{outline:3px solid #c8102e;outline-offset:2px}
.jbm-mfg__result:not(:empty){margin-top:1.4rem;padding:1.2rem;border:1px solid #cbd5e1;border-left:4px solid #16a34a;border-radius:8px;background:#f8fafc;scroll-margin-top:6rem}
.jbm-mfg__result h2{font-size:clamp(1.35rem,1.1rem + .5vw,1.7rem);margin:.1rem 0 .8rem}
.jbm-mfg__result li{padding:.3rem 0}
.jbm-mfg__actions{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1rem}
.jbm-mfg__actions button{background:#fff;color:#a50d26}
.jbm-mfg__privacy{font-size:.85rem;color:#475569;line-height:1.5}
.jbm-mfg-hub{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:1.5rem 0}
.jbm-mfg-hub article{padding:1.35rem;border:1px solid #e2e8f0;border-top:4px solid #c8102e;border-radius:10px;background:#fff}
.jbm-mfg-hub h2{font-size:1.3rem;margin:0 0 .7rem}.jbm-mfg-hub p{min-height:5em}
.jbm-mfg-tracker{margin-top:2rem;border-top:1px solid #e2e8f0}
.jbm-mfg-tracker__bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem}
.jbm-mfg-tracker__bar h2{font-size:1.4rem}
.jbm-mfg-tracker__bar button,.jbm-mfg-tracker td button{margin:.2rem;background:#fff;color:#a50d26}
.jbm-mfg-tracker__scroll{overflow-x:auto}
.jbm-mfg-tracker table{width:100%;min-width:760px;border-collapse:collapse;font-size:.88rem}
.jbm-mfg-tracker th,.jbm-mfg-tracker td{padding:.6rem;border-bottom:1px solid #e2e8f0;text-align:left;vertical-align:top}
.jbm-mfg-tracker th{background:#f1f5f9}
.jbm-mfg-tracker td input,.jbm-mfg-tracker td select{min-width:125px;min-height:44px}
.jbm-mfg-tracker td button{min-height:38px;padding:.35rem .55rem}
.jbm-mfg-badge{display:inline-block;margin-top:.25rem;padding:.2rem .5rem;border-radius:999px;background:#e2e8f0;color:#334155;font-size:.75rem;font-weight:700}
.jbm-mfg-badge.is-overdue{background:#fdecef;color:#a50d26}.jbm-mfg-badge.is-due{background:#fff3df;color:#9a5300}
@media(max-width:700px){.jbm-mfg__fields,.jbm-mfg-hub{grid-template-columns:1fr}.jbm-mfg-hub p{min-height:0}.jbm-mfg{padding:1rem}.jbm-mfg-tracker__bar{align-items:flex-start;flex-direction:column}}

.jbm-mfg-funnel{display:grid;gap:.55rem;margin:1.1rem 0;padding:1rem;border:1px solid #e2e8f0;border-radius:.7rem;background:#fff}
.jbm-mfg-funnel__row{display:grid;grid-template-columns:minmax(7rem,10rem) 1fr;align-items:center;gap:.7rem;font-size:.9rem}
.jbm-mfg-funnel__track{display:block;height:.7rem;border-radius:1rem;background:#e2e8f0;overflow:hidden}
.jbm-mfg-funnel__fill{display:block;height:100%;border-radius:1rem;background:#c8102e}
.jbm-mfg-copy{margin-top:.75rem;border:1px solid #c8102e;border-radius:.4rem;padding:.6rem .9rem;background:#fff;color:#a50d26;font:inherit;font-weight:700;cursor:pointer}
@media(max-width:480px){.jbm-mfg-funnel__row{grid-template-columns:1fr;gap:.2rem}}

.jbm-utility__privacy,.jbm-mfg__privacy{font-size:.875rem;color:#475569;line-height:1.5}
.jbm-mfg-tracker__filters{display:flex;flex-wrap:wrap;gap:1rem;margin:1rem 0}.jbm-mfg-tracker__filters label{display:flex;flex-direction:column;gap:.25rem;font-weight:650}.jbm-mfg-tracker__filters input,.jbm-mfg-tracker__filters select,.jbm-mfg-tracker td input[type=text]{min-height:42px;padding:.5rem;border:1px solid #94a3b8;border-radius:6px;font:inherit}.jbm-mfg-tracker td input[type=text]{min-width:130px;max-width:180px;width:100%}.jbm-mfg-tracker [data-jbm-tracker-summary]{padding:.75rem 1rem;background:#f8fafc;border-left:3px solid #c8102e;line-height:1.5}
