.step-number{align-items:flex-start;padding-top:20px}
.item-complete{appearance:none;width:22px;height:22px;margin:0;border:2px solid #8fbab3;border-radius:6px;background:#fff;cursor:pointer;position:relative}
.item-complete:checked{border-color:var(--teal);background:var(--teal)}
.item-complete:checked::after{content:"✓";position:absolute;inset:-2px 0 0;color:#fff;text-align:center;font-size:15px;font-weight:800;line-height:20px}
.checklist-card-item:has(.item-complete:checked) .step-title{text-decoration:line-through;text-decoration-color:#9ab6b4;color:#77908f}
.checklist-card-item:has(.item-complete:checked){border-color:#c5ded9}
@media(max-width:650px){.item-complete{width:19px;height:19px}}
.subitems{margin:20px 0 4px;padding:16px 0 0 16px;border-top:1px solid var(--line);border-left:2px solid #d6e9e5;display:flex;flex-direction:column;gap:12px}
.subitems-label{color:var(--teal);font-size:10px;font-weight:800;letter-spacing:.14em}
.subitem{padding:13px 14px;background:#f8fbfa;border:1px solid #d9e8e5;border-radius:10px}
.subitem-heading{display:flex;align-items:center;gap:9px}
.subitem-complete{width:17px;height:17px;accent-color:var(--teal);flex:none;cursor:pointer}
.subitem-title{flex:1;min-width:0;border:1px solid transparent;background:transparent;color:var(--ink);font:inherit;font-size:15px;font-weight:700;padding:5px 6px;border-radius:6px}
.subitem-title:focus,.subitem-instruction-text:focus,.subitem-photo-caption:focus{outline:2px solid #9cd6cd;background:#fff}
.subitem:has(.subitem-complete:checked)>.subitem-heading .subitem-title{text-decoration:line-through;color:#77908f}
.subitem-tools{display:flex;gap:2px}.subitem-tools button,.subitem-instruction-delete,.subitem-photo-delete{border:0;background:transparent;color:#809a9d;cursor:pointer;font:inherit;padding:2px 5px;border-radius:5px}
.subitem-tools button:hover,.subitem-instruction-delete:hover,.subitem-photo-delete:hover{background:#e8f3f1;color:var(--teal)}
.subitem-instructions,.subitem-photos{display:flex;flex-direction:column;gap:7px;margin-top:10px}
.subitem-instruction{display:flex;align-items:flex-start;gap:6px}.subitem-bullet{color:var(--teal);font-weight:800;padding-top:5px}
.subitem-instruction-text{flex:1;min-width:0;min-height:32px;resize:vertical;border:1px solid #d7e6e3;border-radius:6px;padding:5px 7px;background:#fff;color:var(--ink);font:inherit;font-size:13px}
.subitem-photo{display:flex;align-items:center;gap:8px;padding:7px;border:1px dashed #b7d5cf;border-radius:8px;background:#fff}
.subitem-photo-preview{position:relative;width:86px;height:60px;flex:none;display:grid;place-items:center;border-radius:6px;background:#e8f3f1;color:var(--teal);cursor:pointer;overflow:hidden;font-size:11px;text-align:center}
.subitem-photo-preview img{width:100%;height:100%;object-fit:cover}.subitem-photo-input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.subitem-photo-caption{flex:1;min-width:0;border:1px solid #d7e6e3;border-radius:6px;padding:6px 8px;color:var(--ink);font:inherit;font-size:13px}
.subitem-photo-clear{border:0;border-radius:6px;background:#fff0ef;color:var(--red);font:inherit;font-size:11px;padding:6px;cursor:pointer}
.subitem-photo.uploading{opacity:.55;pointer-events:none}
.subitem-actions{display:flex;gap:7px;margin-top:11px}
.summary-subitem-row{background:#f7faf9}.summary-subitem-row td{padding-top:6px;padding-bottom:6px;font-size:12px;color:#517174}.summary-subitem-name{padding-left:13px}.summary-subitem-count{font-variant-numeric:tabular-nums}.summary-subitem-note{margin:10px 0 0;color:var(--muted);font-size:11px;line-height:1.45}
@media(max-width:650px){.subitems{padding-left:10px}.subitem{padding:10px}.subitem-photo{flex-wrap:wrap}.subitem-photo-caption{flex-basis:calc(100% - 100px)}}
