:root{--checkbox-accent:#08735f;--checkbox-soft:#e8f5f0;--checkbox-border:#9fb0ba}
input[type="checkbox"]{box-sizing:border-box;width:20px!important;height:20px!important;min-width:20px;min-height:20px;margin:0 7px 0 0;accent-color:var(--checkbox-accent);cursor:pointer;vertical-align:middle}
input[type="checkbox"]:focus-visible{outline:3px solid rgba(20,118,199,.25);outline-offset:3px}
input[type="checkbox"]:disabled{cursor:not-allowed;opacity:.55}
label.checkbox-control{cursor:pointer}
label.checkbox-control.is-checked{color:#075f50}
label.checkbox-control.is-disabled{cursor:not-allowed;opacity:.68}

.dispatch-form{align-items:stretch!important;gap:9px!important;min-width:540px!important;padding:12px;border:1px solid #d5e0e5;border-radius:6px;background:#f8fafb}
.dispatch-contract-picker{display:grid;gap:9px;width:100%;padding:11px;margin:0;border:1px solid #b8ccd5;border-radius:5px;background:#fff}
.dispatch-contract-picker>legend{padding:0 5px;color:#294652;font-size:13px;font-weight:700}
.dispatch-contract-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.dispatch-contract-options>label{display:grid!important;grid-template-columns:20px minmax(0,1fr);align-items:center!important;gap:8px!important;min-height:54px;padding:8px 10px;border:1px solid #cad6dc;border-radius:5px;background:#f8fafb}
.dispatch-contract-options>label.is-checked{border-color:#2c8a75;background:var(--checkbox-soft);box-shadow:inset 3px 0 0 var(--checkbox-accent)}
.dispatch-contract-options span,.dispatch-contract-options strong,.dispatch-contract-options small{display:block;min-width:0}.dispatch-contract-options small{margin-top:2px;color:#71818a;font-size:11px;font-weight:400}
.dispatch-contract-deferred{display:grid;gap:8px;padding:10px;border-left:3px solid #c88719;background:#fff8e8}.dispatch-contract-deferred[hidden]{display:none}
.dispatch-contract-deferred>label:not(.dispatch-contract-confirm){display:grid!important;gap:5px!important}.dispatch-contract-deferred textarea{width:100%;min-height:62px;resize:vertical}.dispatch-contract-deferred>small{color:#77551c;line-height:1.5}
.dispatch-contract-confirm{display:flex!important;align-items:flex-start!important;gap:7px!important;font-weight:700;color:#68480d}
.dispatch-contract-offline{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:10px;border-left:3px solid #14735e;background:#eff9f5}.dispatch-contract-offline[hidden]{display:none}.dispatch-contract-offline>label{display:grid!important;gap:5px!important}.dispatch-contract-offline .dispatch-contract-confirm{grid-column:1/-1;color:#075f50}.dispatch-contract-offline input:not([type="checkbox"]){width:100%}.dispatch-contract-offline>small{grid-column:1/-1;color:#35695d;line-height:1.5}
.contract-deferral-deadline{display:grid;grid-template-columns:repeat(4,minmax(80px,1fr)) minmax(150px,1.3fr);gap:7px;margin:0;padding:8px;border:1px solid #e3ca91;background:#fff}.contract-deferral-deadline>legend{padding:0 4px;font-size:13px;font-weight:800}.contract-deferral-deadline>label{display:flex!important;align-items:center!important;gap:6px!important;min-height:38px;padding:7px;border:1px solid #d9c89f;background:#fffdf7}.contract-deferral-deadline>input[type="date"]{min-width:0;width:100%}
.dispatch-role-picker{display:grid;grid-template-columns:repeat(4,minmax(105px,1fr));gap:7px;width:100%;padding:0;margin:0;border:0}
.dispatch-role-picker>legend{float:left;width:100%;margin-bottom:7px;padding:0;color:#294652;font-size:13px;font-weight:700}
.dispatch-role-picker>label{display:grid!important;grid-template-columns:20px minmax(0,1fr);align-items:center!important;gap:8px!important;min-height:48px;padding:7px 9px;border:1px solid #cad6dc;border-radius:5px;background:#fff;cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s}
.dispatch-role-picker>label:hover{border-color:#7da99e;background:#f4fbf8}
.dispatch-role-picker>label.is-checked{border-color:#2c8a75;background:var(--checkbox-soft);box-shadow:inset 3px 0 0 var(--checkbox-accent)}
.dispatch-role-picker>label input{margin:0}
.dispatch-role-picker>label span,.dispatch-role-picker>label strong,.dispatch-role-picker>label small{display:block;min-width:0}
.dispatch-role-picker>label strong{color:#263f49;font-size:13px}
.dispatch-role-picker>label small{margin-top:2px;color:#71818a;font-size:11px;font-weight:400}
.dispatch-role-picker>label.is-checked small{color:#08705e;font-weight:700}
.dispatch-selection-status{display:flex;align-items:center;min-height:34px;width:100%;padding:7px 10px;border-left:3px solid #0d7c66;background:#edf7f3;color:#075f50;font-size:12px;font-weight:700}
.dispatch-selection-status.is-empty{border-left-color:#b42318;background:#fff1f0;color:#9f2d25}
.dispatch-inline-error{width:100%;padding:9px 11px;border:1px solid #efb7b2;border-left:3px solid #b42318;background:#fff4f3;color:#912018;font-size:12px;font-weight:700;line-height:1.55}
.dispatch-form select,.dispatch-form input:not([type="hidden"]):not([type="checkbox"]){min-height:38px}
.dispatch-form button[type="submit"]{min-height:40px;min-width:150px}
.dispatch-form.is-submitting{opacity:.82}
.dispatch-form.is-submitting button[type="submit"]{cursor:wait}

@media(max-width:900px){.dispatch-form{min-width:330px!important}.dispatch-role-picker,.dispatch-contract-options{grid-template-columns:1fr 1fr}}
@media(max-width:520px){input[type="checkbox"]{width:22px!important;height:22px!important;min-width:22px;min-height:22px}.dispatch-form{min-width:278px!important;padding:10px}.dispatch-role-picker,.dispatch-contract-options,.dispatch-contract-offline,.contract-deferral-deadline{grid-template-columns:1fr}.dispatch-contract-offline .dispatch-contract-confirm,.dispatch-contract-offline>small{grid-column:auto}.dispatch-role-picker>label{min-height:50px}.dispatch-form select,.dispatch-form input:not([type="hidden"]):not([type="checkbox"]),.dispatch-form button[type="submit"]{width:100%;min-width:0}.dispatch-inline-error,.dispatch-selection-status{font-size:13px}}
