.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.checklist-shell{margin:2.5rem 0}
.checklist-progress{display:grid;grid-template-columns:1fr auto;gap:.45rem 1.5rem;background:var(--pale);border:1px solid #cde3da;border-radius:8px;padding:1.4rem 1.6rem;margin-bottom:1.2rem}
.checklist-progress .eyebrow{margin-bottom:.25rem}
.checklist-progress strong{font-size:1.25rem}
.checklist-progress>span{font-size:1.8rem;line-height:1.2;font-weight:800;color:var(--green)}
.progress-track{grid-column:1/-1;height:10px;background:#d6e4e8;border-radius:99px;overflow:hidden}
.progress-track i{display:block;height:100%;background:var(--green);border-radius:inherit;transition:width .2s ease}
.checklist-progress>p{grid-column:1/-1;margin:0;color:var(--muted);font-size:.88rem!important}
.check-group{border:1px solid var(--line);border-radius:8px;padding:1.2rem 1.4rem .8rem;margin:0 0 1rem}
.check-group legend{font-size:1.2rem;font-weight:750;padding:0 .4rem}
.check-item{display:flex;align-items:flex-start;gap:.8rem;padding:.75rem 0;border-bottom:1px solid #edf1f3;cursor:pointer}
.check-item:last-child{border-bottom:0}
.check-item input{appearance:none;width:1.25rem;height:1.25rem;flex:0 0 auto;border:2px solid #8097a3;border-radius:3px;margin:.25rem 0 0;background:#fff;display:grid;place-content:center}
.check-item input:before{content:'';width:.6rem;height:.35rem;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg) scale(0)}
.check-item input:checked{background:var(--green);border-color:var(--green)}
.check-item input:checked:before{transform:rotate(-45deg) scale(1)}
.check-item input:focus-visible{outline:3px solid rgba(8,127,93,.25);outline-offset:3px}
.check-item input:checked+span{text-decoration:line-through;color:var(--muted)}
.checklist-finish{border-left:5px solid var(--green);background:#f5f8f9;padding:1.3rem 1.5rem;margin-top:1.2rem}
.checklist-finish p:last-of-type{color:var(--muted);font-size:.92rem}
.checklist-finish button{border:1px solid #9eb2bc;background:#fff;color:var(--ink);border-radius:5px;padding:.7rem 1rem;font:inherit;font-weight:650;cursor:pointer}
.checklist-finish button:hover{border-color:var(--green);color:var(--green)}
@media(max-width:600px){.checklist-progress{padding:1.2rem}.check-group{padding:1rem}.checklist-progress>span{font-size:1.45rem}}
