.dispatch-page{--dispatch-red:#d94b5d;--dispatch-red-soft:#fff1f3;--dispatch-purple:#5f52e8;gap:18px}.dispatch-create-panel{border-top:5px solid var(--dispatch-red);background:linear-gradient(145deg,#fff 0%,#fff8f8 100%)}.dispatch-create-form{display:grid;gap:15px}.dispatch-location-grid{display:grid;grid-template-columns:1fr 1fr .45fr .45fr;gap:12px}.dispatch-choice-list{display:flex;flex-wrap:wrap;gap:8px;border:0;padding:0;margin:0}.dispatch-choice-list legend{width:100%;font-weight:800;margin-bottom:6px}.dispatch-choice-list label{display:flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:999px;background:#fff;padding:8px 11px;font-size:.8rem}.dispatch-send-button{min-height:52px;font-size:1rem;background:linear-gradient(135deg,var(--dispatch-red),#7461f0)}.dispatch-config-warning{align-items:flex-start}.dispatch-config-warning>div{flex:1}.dispatch-config-warning .row-actions{margin-top:12px}.dispatch-board{display:grid;gap:16px}.dispatch-case-card{border-left:5px solid var(--dispatch-purple)}.dispatch-case-card>header,.dispatch-response-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.dispatch-case-card h2,.dispatch-response-card h2{margin:8px 0 4px;line-height:1.35}.dispatch-case-card header p,.dispatch-response-card header p{margin:0;color:var(--muted)}.dispatch-note{margin:14px 0;padding:12px 14px;background:var(--surface-muted);border-radius:10px;line-height:1.7}.dispatch-response-list{display:grid;gap:8px;margin:16px 0}.dispatch-response-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--line);border-radius:12px;padding:12px;background:#fff}.dispatch-response-row.assigned{border-color:#2f7d4e;background:var(--green-soft)}.dispatch-response-row strong,.dispatch-response-row span,.dispatch-response-row small{display:block}.dispatch-response-row span{font-weight:800;margin-top:2px}.dispatch-response-row small{color:var(--muted);margin-top:4px;line-height:1.5}.dispatch-event-list{display:grid;gap:6px;margin-top:12px}.dispatch-event-list>div{display:grid;grid-template-columns:180px 1fr;gap:12px;padding:8px 0;border-bottom:1px solid var(--line)}.dispatch-event-list time{color:var(--muted);font-size:.78rem}.dispatch-admin-details>summary{font-weight:900;cursor:pointer}.dispatch-admin-details[open]>summary{margin-bottom:18px}.dispatch-vehicle-list{display:grid;gap:8px;margin-top:14px}.dispatch-vehicle-list>div{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:9px}.dispatch-employee-hero{background:linear-gradient(135deg,#fff 0%,#f1efff 100%);border-top:5px solid var(--dispatch-red)}.dispatch-employee-hero h2{font-size:clamp(1.8rem,6vw,2.5rem);margin:5px 0}.dispatch-employee-hero>p{line-height:1.7}.dispatch-gps-state{margin:15px 0 8px;padding:10px 12px;border-radius:10px;background:#f4f4f8;font-weight:800}.dispatch-gps-state.captured{background:var(--green-soft);color:var(--green)}.dispatch-gps-state.loading{background:var(--amber-soft);color:#815800}.dispatch-gps-state.unavailable{background:#f2f3f4;color:var(--muted)}.dispatch-response-card{border:2px solid #6555f545}.dispatch-primary-actions{display:grid;grid-template-columns:1.3fr 1fr;gap:10px;margin-top:16px}.dispatch-primary-actions .btn{min-height:58px;font-size:1rem}.dispatch-response-status{color:var(--muted);font-size:.8rem;margin:12px 0 0;text-align:center}.dispatch-safety-card{border:3px solid var(--dispatch-red);background:var(--dispatch-red-soft);text-align:center}.dispatch-safety-card h2{font-size:2rem;margin:0 0 8px}.dispatch-safety-card .btn{min-height:58px;margin-top:14px}.pwa-push-guide{margin-top:14px}.nav-button[data-nav-view="dispatch"]{position:relative}.nav-button[data-nav-view="dispatch"] svg{color:#ff9aa8}
@media(max-width:900px){.dispatch-location-grid{grid-template-columns:1fr 1fr}.dispatch-response-row{align-items:flex-start}.dispatch-event-list>div{grid-template-columns:1fr;gap:2px}}
@media(max-width:640px){.dispatch-page{gap:12px}.dispatch-create-panel,.dispatch-case-card,.dispatch-response-card{border-radius:14px}.dispatch-location-grid,.dispatch-primary-actions{grid-template-columns:1fr}.dispatch-case-card>header,.dispatch-response-card>header,.dispatch-response-row{display:grid}.dispatch-case-card header .row-actions{width:100%}.dispatch-response-row .row-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.dispatch-response-row .btn{min-height:44px}.dispatch-choice-list{display:grid;grid-template-columns:1fr}.dispatch-choice-list label{border-radius:10px;min-height:44px}.dispatch-send-button{position:sticky;bottom:82px;z-index:3}.dispatch-employee-page{padding-bottom:18px}.dispatch-response-card h2{font-size:1.5rem}.dispatch-config-warning .row-actions{display:grid}.dispatch-event-list>div{padding:10px 0}}
.dispatch-vehicle-case{display:grid;gap:6px;margin:12px 0;padding:12px;border-radius:10px;background:#eef7f7}.dispatch-vehicle-case span{color:var(--muted);font-size:.8rem}
@media(prefers-reduced-motion:reduce){.dispatch-page *{scroll-behavior:auto!important}}
.dispatch-loading{display:grid;gap:14px;min-height:280px;overflow:hidden}.dispatch-loading-head{display:flex;justify-content:space-between;gap:18px}.dispatch-loading-head span,.dispatch-loading-card span{display:block;border-radius:999px;background:linear-gradient(90deg,#eeeaff 20%,#fff 50%,#eeeaff 80%);background-size:220% 100%;animation:dispatch-shimmer 1.25s linear infinite}.dispatch-loading-head span:first-child{width:min(220px,55%);height:22px}.dispatch-loading-head span:last-child{width:92px;height:22px}.dispatch-loading-card{display:grid;gap:10px;border:1px solid var(--line);border-radius:14px;padding:18px}.dispatch-loading-card span{height:13px}.dispatch-loading-card span:nth-child(2){width:78%}.dispatch-loading-card span:nth-child(3){width:54%}@keyframes dispatch-shimmer{to{background-position:-220% 0}}@media(max-width:640px){.dispatch-loading{min-height:220px;padding:16px}.dispatch-loading-head span:last-child{display:none}.dispatch-loading-card{padding:14px}}@media(prefers-reduced-motion:reduce){.dispatch-loading-head span,.dispatch-loading-card span{animation:none}}
