.container{max-width:800px;margin:0 auto;padding:26px 20px 48px}.container .surface{margin:18px 0}.container a{display:inline-block;padding:12px;border:1px solid var(--line);border-radius:8px}.container #message:empty{display:none}.container .notice{white-space:pre-wrap}.container #saved-files p{font-size:13px;overflow-wrap:anywhere}#technician-panel form{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0}#technician-panel form input{flex:1;min-width:180px}#technician-panel>button{margin:6px 0 6px 8px}#technician-panel .checkbox{margin:16px 0}#technician-panel textarea{margin:14px 0 6px}#technician-panel .notice input{margin:8px 0}@media(max-width:600px){.container .form-grid{grid-template-columns:1fr}.container .form-actions{display:flex;flex-direction:column;align-items:stretch}.container h1{font-size:26px}#technician-panel form{display:block}#technician-panel form button{margin-top:10px;width:100%}}

/* Admin workflow: distinct queues and one clear next step per request. */
#request-counts{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
#request-counts .count-filter{border-top:3px solid #c2d0df;min-height:82px}
#request-counts .count-filter[data-request-status="report"]{border-top-color:#427ba6}
#request-counts .count-filter[data-request-status="repair"]{border-top-color:#c08a35}
#request-counts .count-filter[data-request-status="approved"]{border-top-color:#39846c}
.request-next{color:var(--muted);font-size:12px;margin-top:9px;max-width:420px;line-height:1.8}
.workflow-summary{background:var(--blue);padding:20px;border-radius:10px;margin:20px 0;border-right:4px solid #6186aa}
.workflow-summary strong{font-size:18px}.workflow-summary p{margin:8px 0 0;font-size:14px}
.workflow-summary.stage-approved{background:var(--green-bg);border-color:var(--green);color:var(--green)}
.workflow-summary.stage-repair,.workflow-summary.stage-changes{background:var(--amber-bg);border-color:var(--amber)}
.badge.stage-approved{background:var(--green-bg);color:var(--green)}
.badge.stage-repair,.badge.stage-changes{background:var(--amber-bg);color:var(--amber)}
.review-section{border:1px solid var(--line);border-radius:10px;padding:18px;margin:20px 0}
.review-section summary,.inspection-tools summary{cursor:pointer;font-weight:500}
.review-section-head{padding-top:20px;border-top:1px solid var(--line);margin-top:25px}
.inspection-tools{padding:16px;border:1px solid var(--line);border-radius:8px;margin-top:20px}
#technician-panel{margin-top:20px;background:#fbfcfe;padding:20px}
#technician-panel .details{margin-bottom:20px}
@media(max-width:600px){#request-counts{grid-template-columns:repeat(2,minmax(0,1fr))}.workflow-summary{padding:16px}.request-actions .badge{white-space:normal}.review-section{padding:14px}#technician-panel{padding:14px}}

#customer-source-fields[hidden]{display:none}#customer-edit-form .form-grid{margin-top:18px}#customer-correction-form textarea{margin:12px 0}#review-history summary,#technician-panel>summary{cursor:pointer;font-weight:500;font-size:16px}#technician-panel>summary{padding:3px 0 12px}#review-history:not([open]){padding-top:18px;padding-bottom:18px}#edit-customer{margin-top:16px}#review-fields{padding:18px;background:var(--blue);border-radius:8px}#customer-source .hint{margin-top:12px}

.invalid-field{border:2px solid #b42318!important;background-color:#fff8f7!important}.invalid-field:focus{outline:2px solid #f6b4af;outline-offset:2px}.field-error{color:#b42318;font-size:13px;font-weight:500;margin:6px 0 12px;line-height:1.7}.field-error:empty,.field-error[hidden]{display:none}.pin-hint,#technician-panel form>.field-error{flex-basis:100%;margin:0}#report .field-error{scroll-margin-top:25px}#confirm.invalid-field{outline:2px solid #b42318;outline-offset:3px}

/* Customer progress: RTL grid, compact on phones without horizontal scrolling. */
.tracking-steps{list-style:none;padding:0;margin:1.4rem 0 0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.65rem}
.tracking-step{display:flex;flex-direction:column;align-items:center;text-align:center;position:relative;gap:.45rem;min-width:0;color:#6c7c91}
.step-mark{display:grid;place-items:center;width:2.3rem;height:2.3rem;border:2px solid #d5dfeb;border-radius:50%;background:#fff;font-weight:700;position:relative;z-index:1}
.tracking-step:not(:last-child)::after{content:"";position:absolute;top:1.15rem;right:calc(50% + 1.15rem);width:calc(100% - 1.65rem);height:2px;background:#d5dfeb}
.tracking-step.complete{color:#21745d}.tracking-step.complete .step-mark{background:#e7f4ee;border-color:#63a58e}.tracking-step.complete::after{background:#63a58e}
.tracking-step.current{color:#193c60;font-weight:700}.tracking-step.current .step-mark{background:#193c60;border-color:#193c60;color:white;box-shadow:0 0 0 4px #e7eef6}
.step-title{font-size:.85rem;line-height:1.65}.step-state{font-size:.72rem;font-weight:400}.tracking-progress .section-head{gap:.7rem;flex-wrap:wrap}
#tracking-print{display:inline-block;text-decoration:none;padding:.8rem 1.3rem;border-radius:.6rem;background:#193c60;color:#fff}
@media(max-width:700px){.tracking-steps{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:1.3rem}.tracking-step:nth-child(3)::after{display:none}.step-title{font-size:.8rem}}
@media(max-width:370px){.tracking-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.tracking-step:nth-child(3)::after{display:block}.tracking-step:nth-child(2n)::after{display:none}}
