:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#233b50;background:#f2f6fb;color-scheme:light;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent;font:inherit}button,.action-link{min-height:48px;border:1px solid #b8c8da;border-radius:12px;padding:12px 16px;background:#fff;color:#254969;font-weight:650;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-align:center;text-decoration:none}button:disabled{background:#edf1f5;color:#667588;cursor:default}a{color:#1756a5}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #2281e7;outline-offset:3px}[hidden]{display:none!important}.primary{background:#176bd6;color:white;border-color:#176bd6;min-height:54px}.field-header{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:18px;min-height:82px;padding:12px max(18px,calc((100vw - 960px)/2));background:#17375a;color:white;border-bottom:1px solid #244a72}.field-header img{object-fit:contain;background:white;border-radius:9px;padding:3px}.field-header>div{flex:1}.field-header span{font-size:10px;letter-spacing:.15em;color:#bfdaf4}.field-header h1{font-size:23px;margin:0}.field-header button{padding:0;width:48px;flex-shrink:0;font-size:28px}main{max-width:996px;margin:auto;padding:20px 18px 30px}#fieldStatus{font-size:14px;line-height:1.5;min-height:22px;margin:0 0 16px}#fieldStatus.error{color:#9e2637;background:#fff0f2;padding:12px;border-radius:10px}.visit-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.field-card{min-width:0;border:1px solid #d0dce8;background:white;border-radius:16px;overflow:hidden;box-shadow:0 3px 12px #14345609}.field-card>header{background:#17375a;color:white;padding:18px 20px;min-height:80px;display:flex;gap:12px;align-items:center;justify-content:space-between}.field-card h2{margin:4px 0;font-size:21px}.field-card h3{margin:0 0 8px;font-size:18px}.eyebrow{font-size:11px;letter-spacing:.1em;font-weight:700}.card-body{padding:20px}.card-body p{line-height:1.55;margin:6px 0 14px;overflow-wrap:anywhere}.muted{color:#607486;font-size:14px}.visit-list .primary{width:100%;margin-top:12px}.step-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;padding:0;margin:0;background:#eef4fb;border-bottom:1px solid #d0dce8}.step-list li{padding:14px 4px;font-size:12px;text-align:center;color:#526a81}.step-list b{display:block;margin:auto auto 5px;width:24px;height:24px;border-radius:50%;background:#dce7f3;line-height:24px}.step-list .current{color:#165fb7;font-weight:750;background:#e2efff}.step-list .current b{background:#176bd6;color:white}.work-actions{display:flex;gap:12px;flex-wrap:wrap}.work-actions .primary{flex:1 1 220px}.work-actions .action-link{flex:1 1 170px}.crew{display:flex;flex-wrap:wrap;gap:12px;margin:12px 0 18px}.crew>span{display:flex;align-items:center;gap:8px;font-size:13px}.crew img{width:34px;height:34px;border-radius:50%;object-fit:cover;border:1px solid #d0dce8}.work-section{margin-top:18px}.work-section>summary{cursor:pointer;padding:18px 20px;font-size:18px;font-weight:700;min-height:56px}.section-heading{display:flex;gap:12px;justify-content:space-between;align-items:center}.photo-actions{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}.photo-actions button{flex:1 1 180px}.evidence-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;margin:14px 0}.evidence{border:1px solid #d0dce8;border-radius:12px;padding:12px;min-width:0;background:#f8fbff}.evidence-thumb{padding:0;border:0;display:block;width:100%;height:132px;overflow:hidden;background:#e4ecf5}.evidence-thumb img{width:100%;height:100%;object-fit:contain}.evidence p{font-size:13px}.evidence form{display:grid;gap:12px}.evidence .primary{width:100%;font-size:14px}label{display:grid;gap:7px;color:#30495f;font-size:14px;font-weight:600;margin-top:12px}input,select,textarea{min-height:48px;width:100%;min-width:0;border:1px solid #aabdd1;border-radius:10px;padding:12px;color:#233b50;background:white;font-weight:400;font-size:16px}textarea{min-height:100px;resize:vertical;line-height:1.5}.inline-result{margin:8px 0;color:#246244;font-size:13px;line-height:1.5}.warning{color:#8a4614!important}.save-diagnosis{margin-top:12px}.parts-row{padding:14px 0;border-bottom:1px solid #d0dce8}.parts-row button{margin-top:8px;margin-right:8px}.finish-form{display:grid;gap:12px}.finish-form button{margin-top:8px}.field-empty{text-align:center;padding:50px 20px}.field-empty h2{font-size:23px}dialog{padding:0;border:1px solid #b7c9dd;border-radius:16px;width:min(640px,calc(100vw - 20px));max-height:calc(100dvh - 20px);overflow:auto;color:#233b50;background:#fff;overscroll-behavior:contain}dialog::backdrop{background:#102b4acc}dialog>header{position:sticky;top:0;z-index:2;background:#17375a;color:white;padding:16px;display:flex;align-items:center;justify-content:space-between;gap:16px}dialog h2{margin:0;font-size:19px}dialog small{font-size:10px;letter-spacing:.1em}dialog>header button{width:44px;min-height:44px;padding:0;flex-shrink:0;font-size:27px}dialog>p{margin:16px;font-size:14px;line-height:1.5}dialog footer{display:grid;gap:12px;padding:16px}#fieldPhoto>img{display:block;width:100%;max-height:65dvh;object-fit:contain}.camera-view{position:relative;aspect-ratio:4/3;overflow:hidden;background:#102334}.camera-view video{width:100%;height:100%;object-fit:cover;display:block}.capture-guide{position:absolute;left:8%;right:8%;top:30%;bottom:30%;border:2px solid white;border-radius:10px;box-shadow:0 0 0 2000px #06152277;pointer-events:none}.camera-view.appliance .capture-guide{left:7%;right:7%;top:7%;bottom:7%}.busy{opacity:.7}body:has(dialog[open]){overflow:hidden}@media(max-width:650px){.visit-list{grid-template-columns:minmax(0,1fr)}.field-header{padding:12px 14px;gap:12px}.field-header img{width:92px;height:36px}.field-header h1{font-size:21px}main{padding:16px 12px}.card-body{padding:16px}.field-card>header{padding:16px}.evidence-list{grid-template-columns:minmax(0,1fr)}.evidence-thumb{height:180px}.work-actions>*{width:100%}.step-list li{font-size:11px}.section-heading{align-items:flex-start}dialog{margin:10px auto}dialog>header{min-height:78px}}@media(prefers-reduced-motion:no-preference){.busy{animation:field-working 1.6s ease-in-out infinite}@keyframes field-working{50%{opacity:.5}}}

/* Shared visual language; field controls retain their larger touch targets. */
body { font-family: var(--wr-font); color: var(--wr-ink); background: var(--wr-canvas); }
.field-header { box-shadow: 0 2px 8px #17375a0d; }
.field-header h1,.field-card h2 { letter-spacing: -.025em; }
.field-card { border-color: var(--wr-line); box-shadow: var(--wr-shadow); }
.field-card > header { box-shadow: inset 0 1px 0 #ffffff0d; }
button,.action-link { border-color: #c9d6e5; box-shadow: 0 1px 2px #17375a06; transition: background var(--wr-fast),border-color var(--wr-fast),box-shadow var(--wr-fast); }
.primary { background: linear-gradient(180deg,#2c70ed,#2460d5) #2460d5; border-color: #2460d5; box-shadow: inset 0 1px 0 #ffffff24,0 2px 5px #2563eb14; }
button:active:not(:disabled),.action-link:active { box-shadow: inset 0 1px 3px #17375a22; }
:is(input,select,textarea):focus-visible { box-shadow: var(--wr-focus); }
.step-list { background: #f5f8fc; }
.step-list b { background: #e5ecf5; }
.step-list .current { background: #edf3ff; color: #2459ac; }
.step-list .current b { background: #2563db; }
.evidence { background: #f8fafd; border-color: var(--wr-line); }
.crew img { box-shadow: 0 0 0 3px #f2f6fc; }
dialog { position: fixed; inset: max(12px,env(safe-area-inset-top)) 0 auto; margin: 0 auto; max-height: calc(100dvh - max(12px,env(safe-area-inset-top)) - 12px); box-shadow: 0 16px 60px #142b4633; }
dialog::backdrop { background: #12243b99; }
@media (hover:hover) {
  button:hover:not(:disabled),.action-link:hover { border-color: #9cb8db; background: #f1f6fd; }
  .primary:hover:not(:disabled) { background: #1e56c6; border-color: #1e56c6; color: #fff; }
}
@media (prefers-reduced-motion:reduce) {
  *,*::before,*::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; }
}

/* One identification editor per appliance; retaken photos remain compact. */
.evidence.active-identification{grid-column:1/-1}
.evidence.active-identification form{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
.evidence.active-identification form>.primary,.evidence.active-identification form>.inline-result,.evidence.active-identification [data-exception-note]{grid-column:1/-1}
.evidence-actions{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}
.evidence-actions button{flex:1 1 120px;font-size:14px;padding:10px}
.inline-result.error{color:#9e2637}
[data-confirm], [data-appliance-section]{scroll-margin-top:100px}
@media(max-width:650px){.evidence.active-identification form{grid-template-columns:minmax(0,1fr)}}

.label-exception-summary{padding:14px 16px;margin:12px 0;border:1px solid #aad8c4;background:#edf8f2;border-radius:12px;color:#21553f;overflow-wrap:anywhere}
.label-exception-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.label-exception-actions .primary{flex:1 1 220px}
#fieldLabelException .card-body>p{font-size:14px;line-height:1.55}

/* Completion feedback belongs beside the action, including on long phone pages. */
.finish-result{margin:8px 0 0;padding:12px 14px;border-radius:10px;background:#edf4fc;overflow-wrap:anywhere;scroll-margin:110px 0 24px}
.finish-result.error{background:#fff0f2;border:1px solid #e9bcc5;color:#912237}
.finish-result:focus{outline:2px solid #2766bd;outline-offset:3px}
.field-property-access{margin:16px 0;padding:12px;border:1px solid #b5c9e1;border-radius:12px;background:#edf4fc}
.field-property-access button{width:100%;min-height:44px;text-align:left}
.field-property-access p{white-space:pre-wrap;overflow-wrap:anywhere;padding:12px;margin:10px 0 0;background:#fff;border:1px solid #b5c9e1;border-radius:8px;color:#173957}

.photo-clarity{color:#14633f;font-size:14px}.evidence-list{display:flex;gap:12px;flex-wrap:wrap}.evidence-list .evidence{width:120px;padding:4px}.evidence-list .evidence-thumb,.evidence-list .evidence-thumb img{width:104px;height:84px;object-fit:cover;border-radius:10px}.evidence-list .evidence p{font-size:12px}
