:root{color:#213b34;font-synthesis:none;background:#f3f6f4;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}main{max-width:1080px;margin:auto;padding:28px 24px 60px}button,input{font:inherit}button{cursor:pointer;min-height:48px;padding:12px 20px}h1{letter-spacing:.025em;margin:8px 0 12px;font-size:clamp(1.45rem,3.4vw,2rem)}h2{margin:0 0 14px;font-size:1.4rem}h3{font-size:1.1rem}p{line-height:1.7}header{margin-bottom:24px}.eyebrow{color:#146b59;margin:0;font-weight:700}.panel{background:#fff;border:1px solid #dce5df;border-radius:16px;margin:20px 0;padding:28px}button,.file-button{color:#fff;background:#146b59;border:1px solid #146b59;border-radius:9px;font-weight:650}button:disabled{opacity:.5;cursor:not-allowed}button:focus-visible,summary:focus-visible,.file-button:focus-within{outline-offset:4px;outline:3px solid #e2a329}button:hover:not(:disabled),.file-button:hover{filter:brightness(.95)}.secondary{color:#146b59;background:#fff}.file-button{cursor:pointer;align-items:center;min-height:50px;padding:12px 22px;display:inline-flex;position:relative;overflow:hidden}.file-button input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.file-button:has(input:disabled){opacity:.5}.actions{flex-wrap:wrap;gap:12px;display:flex}.photo-grid{grid-template-columns:repeat(auto-fill,minmax(205px,1fr));gap:18px;margin:18px 0 28px;display:grid}.review-grid{grid-template-columns:repeat(auto-fill,minmax(min(320px,100%),1fr))}.photo-card{border:1px solid #dce5df;border-radius:12px;min-width:0;padding:12px;overflow:hidden}.photo-card>img{object-fit:contain;background:#eef2ef;border-radius:6px;width:100%;height:165px;display:block}.filename{overflow-wrap:anywhere;margin:10px 0;font-size:.9rem}.start{width:100%;margin-top:18px;font-size:1.15rem}.mode-note{background:#e6efeb;border-radius:10px;padding:14px 18px}.notice{white-space:pre-wrap;overflow-wrap:anywhere;background:#fff5df;border-left:4px solid #c28017;padding:16px}.count{font-weight:650}.progress-count{font-size:2rem;font-weight:700}progress{accent-color:#146b59;width:100%;height:20px}footer{color:#5a6d64;margin-top:28px;font-size:.9rem}@media (max-width:560px){main{padding:20px 14px 40px}.panel{padding:18px}.photo-grid{grid-template-columns:1fr}}.empty{text-align:center;color:#5a6d64;border:2px dashed #dce5df;border-radius:10px;padding:30px 10px}.summary{font-weight:650}.needs-review{background:#fffcf6;border-color:#ddb76d}.photo-view{background:#eef2ef;border-radius:6px;width:100%;position:relative;overflow:hidden}.photo-view img{width:100%;height:auto;display:block}.markers{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.image-button{background:0 0;border:0;border-radius:6px;width:100%;padding:0;display:block}.image-button:hover{outline:2px solid #c28017;filter:none!important}.ok-results{background:#f0f5f1;border-radius:10px;margin-top:28px;padding:18px}summary{cursor:pointer;min-height:44px;font-weight:650;line-height:1.7}.failures{background:#fff3f0;border-left:4px solid #cb513f;margin:18px 0;padding:8px 18px 20px}.failure{gap:16px;margin:18px 0;display:flex}.failure img{object-fit:contain;width:80px;height:80px}.failure div{min-width:0}dialog{color:#213b34;border:none;border-radius:16px;width:min(900px,94vw);max-height:92dvh;padding:24px;overflow:auto}dialog::backdrop{background:#10251ecc}.dialog-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.dialog-heading h2{margin:0}
