/* Small, task-focused affordances for route sequence editing. */
.route-stop-actions{display:flex;align-items:center;flex-wrap:wrap;gap:5px;margin:5px 0}
.route-stop-actions button{min-width:30px;min-height:30px;padding:3px 8px;border:1px solid #cbd8e5;border-radius:6px;background:#fff;color:#1b3c63;font-weight:750;cursor:pointer}
.route-stop-actions button:disabled{opacity:.45;cursor:not-allowed}
.route-stop-actions span{color:#61748a;font-size:10px;line-height:1.45}
.route-geometry-key{display:inline-flex;align-items:center;gap:7px;font-size:11px;line-height:1.4;color:#c5d4e6}
.route-geometry-key i{display:block;width:20px;height:0;border-top:4px solid #69a9ff;border-radius:4px;box-shadow:0 0 0 2px #fff}
/* O estilo legado aplica 20×20 a todo SVG, o que recorta o SVG vetorial do Leaflet no mapa principal. */
#map .leaflet-overlay-pane svg{width:auto!important;height:auto!important}
.route-visit-sequence [draggable="true"]{cursor:grab;transition:background-color .14s ease,border-color .14s ease,opacity .14s ease}
.route-visit-sequence [draggable="true"]:active{cursor:grabbing}
.route-visit-sequence [draggable="true"].is-dragging{opacity:.46}
.route-visit-sequence [data-fixed-stop="true"]{cursor:default}
.route-order-pending{margin:8px;padding:10px 12px;border:1px solid #ebc979;border-left:4px solid #d7961c;border-radius:7px;background:#fff9e9;color:#624a1e;font-size:12px;line-height:1.5}
body.route-planning-active .route-stop-focus{font-size:12px;line-height:1.4}
body.route-planning-active .route-visit-sequence li>small,
body.route-planning-active .route-visit-status{font-size:11px;line-height:1.45;overflow-wrap:anywhere}
body.route-planning-active .route-history-link{min-height:36px!important;padding:6px 0!important;font-size:11px!important}
body.route-planning-active .route-stop-actions button{min-width:38px;min-height:38px}
@media(max-width:900px){body.route-planning-active .route-history-link{display:inline-flex!important;align-items:center}}
button:not(:disabled):hover{box-shadow:0 4px 12px #1769ed20}
button:not(:disabled):active{transform:scale(.985)}
dialog[open],.remote-dialog[open]{animation:milebs-dialog-enter 190ms cubic-bezier(.2,.75,.25,1) both}
.app-message:not([hidden]){animation:milebs-toast-enter 180ms ease-out both}
@keyframes milebs-dialog-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@keyframes milebs-toast-enter{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.route-visit-sequence [draggable="true"]{transition:none}}
@media(prefers-reduced-motion:reduce){dialog[open],.remote-dialog[open],.app-message:not([hidden]){animation:none}button:not(:disabled):hover,button:not(:disabled):active{transform:none;box-shadow:none}}
