/* Operations workspace: touch-friendly forms and a readable calendar. */
.action-center{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px;border-left:5px solid #d6a62c;background:linear-gradient(110deg,#fffdf5,#fff)}
.action-center h2{font-size:22px;margin:8px 0}.action-center p,.task-row p{color:#596c80}.eyebrow{font-size:11px;font-weight:800;letter-spacing:.12em;color:#7e5c16}
.operations-dialog{width:min(680px,100%)}.operations-dialog header{margin-bottom:12px}.operations-dialog header h2{margin:0}.operations-dialog fieldset{border:1px solid #dce4ef;border-radius:10px;margin:20px 0;padding:14px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.form-grid label:last-child{grid-column:1/-1}
.task-filters{display:flex;gap:8px;margin-bottom:16px}.task-row{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:12px;padding:20px}.task-row h3{margin:10px 0 6px}.task-row .actions{flex-shrink:0;max-width:250px}.overdue{background:#fff0ed!important;color:#9f3022!important}
.price-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:18px}.price-grid .metric small{font-size:14px;font-weight:400}.history-entry{border-left:3px solid #d9ad43;padding:10px 16px;margin:12px 0;background:#f5f7fb}.related-job{display:block;width:100%;text-align:left;margin:8px 0}
.calendar-scroll{overflow-x:auto;border:1px solid #dce4ef;border-radius:12px;background:white}.month-grid{display:grid;grid-template-columns:repeat(7,minmax(100px,1fr));min-width:700px}.weekday{padding:12px;font-size:12px;font-weight:700;text-align:center;background:#f0f4f8}.calendar-day,.calendar-blank{min-height:130px;border-right:1px solid #e7ecf2;border-top:1px solid #e7ecf2;padding:9px}.calendar-blank{background:#f7f9fc}.calendar-day>strong{font-size:13px;display:inline-block;padding:4px}.calendar-day.today>strong{background:#183e63;color:white;border-radius:50%;width:26px;text-align:center}.calendar-event{display:block;width:100%;text-align:left;padding:6px;font-size:11px;margin-top:5px;background:#edf3fa;color:#153758;overflow-wrap:anywhere;border-left:3px solid #d6a62c;border-radius:4px}.setup-steps{padding-left:24px}.setup-steps li{padding:10px 0}.setup-steps p{line-height:1.6;color:#596c80}.job-tools{margin:20px 0}.job-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0}.job-summary>div{background:#f2f5f9;padding:12px;border-radius:8px}.job-summary strong{display:block;font-size:20px;margin-top:7px}#ops-error{color:#a32c22}
button:focus-visible,a:focus-visible{outline:3px solid #bc8c19;outline-offset:3px}button:disabled{opacity:.6;cursor:wait}[hidden]{display:none!important}
@media(min-width:801px){.shell>aside{position:sticky;top:0;height:100vh;overflow-y:auto}.shell>main{align-self:start;margin-top:0}.shell>aside nav button{padding:8px 12px;margin:2px 0}}
@media(max-width:600px){.action-center,.task-row{display:block}.action-center .actions,.task-row .actions{margin-top:16px;max-width:none}.actions button{min-height:40px}.form-grid{display:block}.job-summary{grid-template-columns:1fr}.operations-dialog{padding:18px}.toolbar h2{font-size:19px}.workspace-tools{flex-wrap:wrap}.badge{max-width:160px}.modal{padding:10px}.dialog{max-height:94dvh}}

.field-section{border:1px solid #dce4ec;border-radius:10px;margin:18px 0;padding:16px}.field-section legend{font-weight:700;padding:0 8px;color:#173750}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.field-grid label:has(textarea){grid-column:1/-1}.dialog:has(.field-section){width:min(820px,100%)}.contact-card{border:1px solid #dce4ec;background:#f7f9fc;padding:16px;margin:12px 0;border-radius:10px}.contact-card h4{margin:0;font-size:17px}.contact-card p{margin:6px 0;overflow-wrap:anywhere}.detail-grid{display:grid;grid-template-columns:160px 1fr;gap:10px 20px}.detail-grid dt{text-transform:capitalize;font-weight:600}.detail-grid dd{margin:0;overflow-wrap:anywhere;white-space:pre-wrap}.job-specifications{padding:18px;background:#f3f6fa;border-radius:8px}.job-specifications summary{cursor:pointer;font-weight:600}
@media(max-width:600px){.field-grid{display:block}.detail-grid{grid-template-columns:1fr;gap:5px}.detail-grid dd{margin-bottom:10px}}

.field-grid{align-items:end}

/* Financial and field workspace */
.change-line{border-bottom:1px solid #ccd5df;padding:14px 0}.attachment-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.job-photo{width:100%;max-height:220px;object-fit:contain}.card>strong{display:block;font-size:1.25rem;margin-top:8px}.operations-dialog input[type=checkbox]{width:auto;display:inline}.operations-dialog .grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}@media print{.operations-dialog>header{display:none}.print-letter{overflow-wrap:anywhere}.print-letter table{font-size:11px}}
