/* v36 Contractor report (INTERNAL) sheet - phone first */
.cr-modal { width: min(560px, 100%); }
.cr-sheet { display: grid; gap: 14px; }
.cr-internal { display: flex; gap: 8px; align-items: flex-start; background: #fbe9e9; color: #8a1c1c; border: 1.5px solid #e2a3a3; border-radius: 12px; padding: 10px 12px; font-size: .9rem; line-height: 1.35; }
.cr-internal svg { flex: none; margin-top: 2px; }
.cr-sec h3 { margin: 0 0 6px; font-size: .95rem; }
.cr-sec textarea, .cr-sec input:not([type=checkbox]) { width: 100%; box-sizing: border-box; font: inherit; font-size: 16px; border: 1.5px solid var(--line); border-radius: 12px; padding: 10px 12px; }
.cr-summary { list-style: none; margin: 0; padding: 10px 12px; background: var(--bg-soft, #f6f4f0); border-radius: 12px; display: grid; gap: 4px; font-size: .92rem; }
.cr-sched { font-weight: 700; } .cr-behind { color: #b02020; } .cr-on-track { color: #1c7c3c; } .cr-on-hold { color: #b56e00; }
.cr-row { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 8px; }
.cr-row h3 { margin: 0; }
.cr-seg { display: inline-flex; border: 1.5px solid var(--line); border-radius: 99px; overflow: hidden; }
.seg-btn { min-height: 36px; padding: 0 14px; border: 0; background: #fff; font: inherit; font-size: .88rem; cursor: pointer; }
.seg-btn.on { background: var(--brand, #17233a); color: #fff; }
.cr-stepper { display: flex; align-items: center; gap: 10px; margin-bottom: 8px; }
.cr-stepper b { font-size: 1.15rem; min-width: 1.5em; text-align: center; }
.cr-photo-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 6px; }
.cr-photo { position: relative; padding: 0; border: 2px solid transparent; border-radius: 10px; overflow: hidden; aspect-ratio: 1; background: #eee; cursor: pointer; opacity: .55; }
.cr-photo.on { border-color: var(--accent, #c65d3b); opacity: 1; }
.cr-photo img { width: 100%; height: 100%; object-fit: cover; display: block; }
.cr-check { position: absolute; top: 4px; right: 4px; width: 22px; height: 22px; border-radius: 50%; background: var(--accent, #c65d3b); color: #fff; font-size: 13px; font-weight: 700; display: grid; place-items: center; }
.cr-actions { display: grid; gap: 6px; }
.btn.block { width: 100%; justify-content: center; min-height: 50px; }
.cr-recips { display: grid; gap: 6px; margin-bottom: 10px; }
.cr-recip { display: flex; gap: 10px; align-items: center; border: 1.5px solid var(--line); border-radius: 12px; padding: 8px 12px; }
.cr-recip input { width: 22px; height: 22px; }
.cr-recip span { display: grid; } .cr-recip small { color: var(--muted, #62707d); }
.cr-tab-card { border-left: 4px solid #b02020; }
