1import{r as s,j as e}from"./vendor-react-B-3Nmese.js";import{C as j}from"./CalculatorActions-DJfHY4PV.js";import{a as h}from"./military-CBSDOnXG.js";import{F as w}from"./index-C58_c92U.js";import{c as v}from"./vendor-icons-BYEb1hwq.js";import"./vendor-misc-PE8KZyAE.js";import"./data-categories-Ql6VsvhB.js";import"./data-tools-BRC0Gjxf.js";import"./data-blog-CVe_QUdW.js";function A(){const[a,l]=s.useState(240),[d,o]=s.useState(8.5),[c,n]=s.useState(35),[i,u]=s.useState(110),[m,x]=s.useState(150),[p,b]=s.useState(1020),[r,f]=s.useState(()=>h({deadliftLbs:220,powerThrowMeters:8.5,handReleasePushups:35,sprintDragCarrySecs:110,plankSecs:150,twoMileRunSecs:1020})),g=t=>{t.preventDefault(),f(h({deadliftLbs:Number(a)||140,powerThrowMeters:Number(d)||4.5,handReleasePushups:Number(c)||10,sprintDragCarrySecs:Number(i)||180,plankSecs:Number(m)||90,twoMileRunSecs:Number(p)||1260}))},N=()=>{l(240),o(8.5),n(35),u(110),x(150),b(1020),f(null)};return e.jsxs("div",{className:"bg-white border border-[#e5e5e7] rounded-2xl p-6 sm:p-8 shadow-sm",children:[e.jsxs("form",{onSubmit:g,className:"space-y-6",children:[e.jsxs("div",{className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-4",children:[e.jsxs("div",{children:[e.jsx("label",{htmlFor:"acft-mdl",className:"block text-xs font-bold text-[#141414] uppercase tracking-wider mb-1.5",children:"1. 3-Rep Trap Bar Deadlift (lbs)"}),e.jsx("input",{id:"acft-mdl",type:"number",required:!0,min:"140",max:"340",value:a,onChange:t=>l(t.target.value===""?"":Number(t.target.value)),placeholder:"140 â 340 lbs",className:"w-full px-4 py-3 rounded-xl bg-[#f7f7f8] border border-[#e5e5e7] text-sm text-[#141414] font-medium focus:bg-white focus:border-[#d01c17] focus:outline-hidden"})]}),e.jsxs("div",{children:[e.jsx("label",{htmlFor:"acft-spt",className:"block text-xs font-bold text-[#141414] uppercase tracking-wider mb-1.5",children:"2. Standing Power Throw (Meters)"}),e.jsx("input",{id:"acft-spt",type:"number",step:"0.1",required:!0,min:"4",max:"13",value:d,onChange:t=>o(t.target.value===""?"":Number(t.target.value)),placeholder:"4.5 â 12.5m",className:"w-full px-4 py-3 rounded-xl bg-[#f7f7f8] border border-[#e5e5e7] text-sm text-[#141414] font-medium focus:bg-white focus:border-[#d01c17] focus:outline-hidden"})]}),e.jsxs("div",{children:[e.jsx("label",{htmlFor:"acft-hrp",className:"block text-xs font-bold text-[#141414] uppercase tracking-wider mb-1.5",children:"3. Hand-Release Push-ups (Reps)"}),e.jsx("input",{id:"acft-hrp",type:"number",required:!0,min:"10",max:"60",value:c,onChange:t=>n(t.target.value===""?"":Number(t.target.value)),placeholder:"10 â 60 reps",className:"w-full px-4 py-3 rounded-xl bg-[#f7f7f8] border border-[#e5e5e7] text-sm text-[#141414] font-medium focus:bg-white focus:border-[#d01c17] focus:outline-hidden"})]}),e.jsxs("div",{children:[e.jsx("label",{htmlFor:"acft-sdc",className:"block text-xs font-bold text-[#141414] uppercase tracking-wider mb-1.5",children:"4. Sprint-Drag-Carry (Seconds)"}),e.jsx("input",{id:"acft-sdc",type:"number",required:!0,min:"90",max:"240",value:i,onChange:t=>u(t.target.value===""?"":Number(t.target.value)),placeholder:"93 â 180s",className:"w-full px-4 py-3 rounded-xl bg-[#f7f7f8] border border-[#e5e5e7] text-sm text-[#141414] font-medium focus:bg-white focus:border-[#d01c17] focus:outline-hidden"})]}),e.jsxs("div",{children:[e.jsx("label",{htmlFor:"acft-plk",className:"block text-xs font-bold text-[#141414] uppercase tracking-wider mb-1.5",children:"5. Forearm Plank (Seconds)"}),e.jsx("input",{id:"acft-plk",type:"number",required:!0,min:"60",max:"240",value:m,onChange:t=>x(t.target.value===""?"":Number(t.target.value)),placeholder:"90 â 210s",className:"w-full px-4 py-3 rounded-xl bg-[#f7f7f8] border border-[#e5e5e7] text-sm text-[#141414] font-medium focus:bg-white focus:border-[#d01c17] focus:outline-hidden"})]}),e.jsxs("div",{children:[e.jsx("label",{htmlFor:"acft-2mr",className:"block text-xs font-bold text-[#141414] uppercase tracking-wider mb-1.5",children:"6. 2-Mile Run (Total Seconds)"}),e.jsx("input",{id:"acft-2mr",type:"number",required:!0,min:"780",max:"1500",value:p,onChange:t=>b(t.target.value===""?"":Number(t.target.value)),placeholder:"790s (13:10) â 1260s (21:00)",className:"w-full px-4 py-3 rounded-xl bg-[#f7f7f8] border border-[#e5e5e7] text-sm text-[#141414] font-medium focus:bg-white focus:border-[#d01c17] focus:outline-hidden"})]})]}),e.jsx(j,{submitText:"Calculate Official ACFT Score",onReset:N})]}),r&&e.jsx("div",{className:"mt-8 pt-6 border-t border-[#e5e5e7]",children:e.jsxs("div",{className:"bg-[#f7f7f8] border border-slate-200 rounded-xl p-6",children:[e.jsxs("div",{className:"flex items-center gap-2 text-[#d01c17] text-xs font-bold uppercase tracking-wider mb-2",children:[e.jsx(v,{className:"w-4 h-4"}),e.jsxs("span",{children:["Official Army Combat ",e.jsx(w,{className:"text-[#d01c17] hover:text-[#991410] underline decoration-[#d01c17]/50 hover:decoration-[#991410] transition-colors",children:"Fitness"})," Test (ACFT) Standard"]})]}),e.jsxs("div",{className:"flex flex-col sm:flex-row sm:items-baseline gap-2 sm:gap-6 mb-4",children:[e.jsxs("span",{className:"text-4xl sm:text-5xl font-black text-[#141414]",children:[r.totalScore," / 600"," ",e.jsx("span",{className:"text-base font-normal text-slate-500",children:"Points"})]}),e.jsx("span",{className:`text-sm font-black px-3 py-1 rounded-md uppercase ${r.passed?"bg-emerald-100 text-emerald-800":"bg-red-100 text-red-800"}`,children:r.category})]}),e.jsx("div",{className:"grid grid-cols-2 sm:grid-cols-3 lg:grid-cols-6 gap-2 text-xs mt-4",children:r.events.map(t=>e.jsxs("div",{className:"bg-white p-3 rounded-lg border border-slate-200 text-center",children:[e.jsx("span",{className:"text-slate-500 font-semibold uppercase text-[10px] block",children:t.name}),e.jsxs("span",{className:"text-xl font-black text-[#141414] mt-1 block",children:[t.score," ",e.jsx("span",{className:"text-xs font-normal text-slate-500",children:"pts"})]}),e.jsxs("span",{className:"text-[10px] text-slate-600 font-medium block mt-0.5",children:[t.raw," (",t.status,")"]})]},t.name))})]})})]})}export{A as ArmyPFTCalculator};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.