
.job-entry{display:block;margin:10px 16px;background:#164440;color:#c9f5e7;border:1px solid #448d7c;padding:11px 16px;font-weight:700}
.job-top-btn{white-space:nowrap}
.job-modal{border:1px solid #314c60;border-radius:18px;padding:0;color:#ecf4fd;background:#121c2c;width:min(660px,calc(100vw - 24px));max-height:90dvh;box-shadow:0 25px 100px #000b}
.job-modal::backdrop{background:#07101bc7;backdrop-filter:blur(3px)}
.job-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #2e4359;padding:16px}
.job-head h2{font-size:20px;margin:3px 0 0}
.job-tabs{display:grid;grid-template-columns:repeat(3,1fr);background:#0c1725;gap:6px;padding:10px 14px}
.job-tabs button{border:1px solid #33465d;padding:10px 5px;font-size:13px}
.job-tabs button.active{background:#235348;border-color:#69c8af;color:#d6fff4}
.job-body{padding:15px;max-height:calc(90dvh - 125px);overflow:auto;overscroll-behavior:contain}
.job-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}
.job-field{min-width:0;display:flex;flex-direction:column;gap:5px;font-size:12px;color:#b5c4d7}
.job-field input,.job-field select,.job-field textarea{width:100%;min-width:0;color:#f4f8ff;border:1px solid #30485e;border-radius:8px;background:#172438;padding:11px;font:inherit;font-size:14px;min-height:43px}
.job-field textarea{min-height:67px;resize:vertical}
.job-field:has(textarea){grid-column:1/-1}
.job-field:has(input[data-job="address"]){grid-column:1/-1}
.job-totals{margin:17px 0 8px;border:1px solid #3b645e;border-radius:12px;background:#132d2e;padding:12px;display:grid;gap:9px}
.job-totals div{display:flex;justify-content:space-between;gap:12px;align-items:center;font-size:13px}
.job-totals span{color:#accbbf}
.job-totals strong{font-weight:750;white-space:nowrap;font-variant-numeric:tabular-nums}
.job-note{padding:10px 12px;color:#b3c1cf;background:#162439;border-radius:9px;font-size:11px;line-height:1.5;margin:10px 0}
.job-wide{width:100%;min-height:43px;margin-top:10px}
.job-report-tabs{display:flex;gap:7px;margin:12px 0;flex-wrap:wrap}
.job-report-tabs button{padding:9px 12px;border:1px solid #335366;font-size:13px}
.job-report-tabs button.active{background:#23594d;color:#d9fff5;border-color:#54bca3}
#jobReportText{width:100%;min-height:250px;resize:vertical;padding:13px;background:#0d1a2d;border:1px solid #3a586b;border-radius:11px;color:#ebf5fe;font:13px/1.65 ui-monospace,SFMono-Regular,Consolas,monospace}
.job-actions{display:flex;gap:8px;margin-top:11px}
.job-actions button{flex:1;min-height:42px}
.job-warranty-row{padding:12px 8px;display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid #344459}
.job-warranty-row strong{font-size:13px}
.job-warranty-row select{width:auto;max-width:140px;flex-shrink:0;background:#17283b;padding:8px 5px;color:#edf5ff;border:1px solid #385167;border-radius:8px;font-size:12px}
.job-history-meta{color:#80bfae;font-size:12px;margin-top:9px;overflow-wrap:anywhere}
@media(max-width:840px){
 .job-top-btn{font-size:12px;padding:9px}
 .job-modal{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;border:0;border-radius:0;margin:0}
 .job-body{max-height:calc(100dvh - 124px);padding-bottom:calc(30px + env(safe-area-inset-bottom))}
 .job-fields{gap:10px}
 .job-field{grid-column:1/-1}
 .job-totals div{align-items:start}
}
