/* Movilidad / DantaAdminFormDialog / Trazar recorrido · Mobile 7686e83. */
.dui-route-target { display:flow-root; }
.dui-route { position:relative; padding:.75em 1em 0; }
.dui-route>.dui-heading { flex:none; }
.dui-route>.dui-heading h2,.dui-route-trace>.dui-heading h2 { font-size:1.375em; }
.dui-route .dui-flow-intro p { font-size:.875em; }
.dui-route-card { padding:.875em 1em 1em; margin:0 0 .75em; border:1px solid var(--dui-line); border-radius:1.125em; background:white; }
.dui-route-card h3 { font-size:1.125em; }
.dui-route-target>h3 { font-size:1.125em; }
.dui-route-target .dui-flow-field { margin-top:1em; }
.dui-route-card-title { display:flex; align-items:center; gap:.5em; margin-bottom:.75em; }
.dui-route-card-title h3 { flex:1; font-size:1em; }
.dui-route-card-title .dui-flow-action { padding:.75em .25em; font-size:.875em; }
.dui-route-new .dui-flow-action { padding:.75em .25em; font-size:.875em; }
.dui-route-status { display:flex; align-items:start; gap:.625em; padding:.875em; border-radius:1.125em; color:#0d47a1; background:#e3f2fd; margin:.75em 0; font-size:.875em; line-height:1.35; }
.dui-route-status.is-configured { color:#1b5e20; background:#e8f5e9; }
.dui-route-values { display:grid; gap:.65em; margin:.875em 0 0; font-size:.875em; }
.dui-route-values>div { display:flex; align-items:start; gap:1em; }
.dui-route-values dt { flex:1; color:var(--dui-muted); }
.dui-route-values dd { flex:1.8; margin:0; text-align:right; font-weight:600; overflow-wrap:anywhere; }
.dui-route-help { font-size:.875em; color:var(--dui-muted); margin:.75em 0!important; line-height:1.4; }
.dui-route-save { margin-top:1em; display:flex; justify-content:flex-end; }
.dui-route-save .dui-flow-action { font-size:.875em; }
.dui-route-empty { padding:1em; background:#f1f4f5; border-radius:.875em; font-size:.875em; }
.dui-route-trip { border:1px solid var(--dui-ink); border-radius:1em; padding:1em .75em; margin:1em 0; }
.dui-route-trip-row { display:flex; align-items:center; gap:.75em; }
.dui-route-trip-row>div:not(.dui-route-trip-tools) { flex:1; min-width:0; }
.dui-route-trip-row b { font-size:.875em; }
.dui-route-trip-row small { display:block; margin-top:.375em; color:var(--dui-muted); font-size:.75em; }
.dui-route-radio { width:1.1em; height:1.1em; border:2px solid var(--dui-ink); border-radius:50%; padding:.18em; flex:none; }
.dui-route-radio::after { content:''; display:block; width:100%; height:100%; background:var(--dui-ink); border-radius:50%; }
.dui-route-trip-tools { display:flex; align-items:center; gap:.75em; }
.dui-route-trip-tools .dui-icon { width:1.3em; height:1.3em; }
.dui-route-trace-open .dui-icon { width:1.3em; height:1.3em; }
.dui-route-principal .dui-flow-action { font-size:.875em; }
.dui-route-toast { position:absolute; bottom:.75em; left:1em; right:1em; padding:.875em; background:var(--dui-ink); color:white; border-radius:.75em; font-size:.875em; display:flex; align-items:center; gap:.5em; }
.dui-route-admin>.dui-heading { flex:none; padding:1em 1.5em .75em; margin:0; }
.dui-route-admin h2 { font-size:1.375em; }
.dui-route-admin>.dui-page-content { padding:.5em 1.5em 1em; }
.dui-route-generated { padding:.75em; background:#f5f5f5; border:1px solid #e0e0e0; border-radius:.875em; }
.dui-route-generated small { display:block; font-size:.75em; color:#616161; font-weight:700; }
.dui-route-generated b { display:block; margin-top:.25em; }
.dui-route-admin-field { margin-top:.75em; padding-bottom:1.25em; }
.dui-route-admin-field>b { display:block; font-size:.875em; font-weight:600; margin-bottom:.625em; }
.dui-route-admin-field>div { border:1px solid var(--dui-line); border-radius:1em; padding:1em; min-height:3.25em; background:white; }
.dui-route-admin-field>small { display:block; font-size:.75em; color:var(--dui-muted); margin:.4em 1em 0; }
.dui-route-map-row { display:flex; align-items:center; justify-content:space-between; gap:.5em; font-size:.875em; color:var(--dui-muted); }
.dui-route-map-row .dui-flow-action { font-size:1em; padding:.5em; flex:none; }
.dui-route-admin hr { border:0; border-top:1px solid var(--dui-line); margin:.75em 0; }
.dui-route-admin-notes .dui-route-admin-field>div { min-height:4.5em; }
.dui-route-admin-actions { flex:none; display:flex; align-items:center; justify-content:flex-end; gap:.75em; padding:.75em 1.5em 1em; border-top:1px solid var(--dui-line); font-size:.875em; }
.dui-route-map-dialog { position:absolute; inset:3em .875em; border-radius:1.375em; background:var(--dui-paper); overflow:hidden; display:flex; flex-direction:column; }
.dui-route-map-dialog>.dui-heading { padding:.75em; flex:none; margin:0; }
.dui-route-map-dialog h2 { font-size:1.125em; }
.dui-route-picker-map,.dui-route-trace-map { position:relative; flex:1; min-height:0; overflow:hidden; }
.dui-route-map-art { display:block; width:100%; height:100%; }
.dui-route-map-note { position:absolute; top:.75em; left:.75em; right:.75em; padding:.75em; border-radius:1em; background:white; box-shadow:0 .125em .4em #0002; display:flex; align-items:start; gap:.5em; font-size:.8125em; }
.dui-route-map-controls { position:absolute; top:.75em; right:.75em; display:grid; gap:.5em; }
.dui-route-picker-map .dui-route-map-controls { top:6.5em; }
.dui-route-map-controls>* { display:grid; place-items:center; width:2.5em; height:2.5em; border-radius:.875em; background:#eaf4ed; box-shadow:0 .125em .4em #0003; }
.dui-route-map-controls .is-selected { color:white; background:var(--dui-ink); }
.dui-route-map-controls .is-disabled { color:#9ba49d; background:#e5e8e2; }
.dui-route-map-confirm { position:absolute; left:.75em; right:.75em; bottom:.75em; padding:.75em; border-radius:.875em; background:white; box-shadow:0 .125em .4em #0002; }
.dui-route-map-confirm>strong { display:block; font-size:.8125em; }
.dui-route-map-confirm>div { display:flex; justify-content:flex-end; gap:.5em; margin-top:.5em; font-size:.875em; }
.dui-route-map-confirm .dui-flow-action { padding:.7em 1em; }
.dui-route-trace { position:relative; }
.dui-route-trace>.dui-heading { flex:none; padding:.75em 1em; margin:0; }
.dui-route-trace-heading { flex:none; padding:0 1em .75em; }
.dui-route-trace-heading>b { display:block; }
.dui-route-trace-heading>span { display:inline-block; padding:.25em .6em; margin:.5em 0; border-radius:1em; background:var(--dui-soft); font-size:.75em; font-weight:700; }
.dui-route-trace-heading>p { font-size:.8125em; color:var(--dui-muted); }
.dui-route-map-canvas { position:absolute; inset:18% 0; overflow:hidden; }
.tutorial-focus-popover-clone.dui-route-map-canvas { position:relative; inset:auto; height:100%; }
.tutorial-focus-popover-clone .dui-route-city-labels { visibility:hidden; }
.dui-route-map-canvas>.dui-route-map-art { position:absolute; height:156.25%; top:-28.125%; }
.dui-route-adding-note { position:absolute; top:.75em; left:.75em; right:4em; background:var(--dui-ink); color:white; border-radius:.875em; padding:.75em; font-size:.8125em; }
.dui-route-order { position:absolute; bottom:.75em; left:.75em; right:.75em; display:flex; align-items:center; gap:.5em; padding:.625em; overflow:hidden; border-radius:1.125em; background:white; box-shadow:0 .2em .4em #0003; white-space:nowrap; font-size:.8125em; }
.dui-route-order>span { display:flex; align-items:center; gap:.35em; flex:none; padding:.4em .6em; border:1px solid var(--dui-line); border-radius:2em; }
.dui-route-order>span.is-selected { background:var(--dui-soft); }
.dui-route-order i { display:grid; place-items:center; width:1.35em; height:1.35em; border-radius:50%; color:white; background:#3568c0; font-size:.875em; font-style:normal; }
.dui-route-order i.is-origin { background:#16835d; }
.dui-route-order i.is-final { background:#d6453a; }
.dui-route-trace-footer { flex:none; padding:0 1em 1em; background:white; }
.dui-route-trace-footer .dui-flow-field { margin-top:1em; margin-bottom:.75em; min-height:3.5em; font-size:.875em; }
.dui-route-trace .dui-route-toast { bottom:4.75em; }
.dui-route-service { display:flex; align-items:center; gap:1em; padding:1em .5em; margin:1em 0; }
.dui-route-service>div { flex:1; }
.dui-route-service small { display:block; color:var(--dui-muted); margin-top:.3em; }
.dui-route-service>i { width:1.25em; height:1.25em; border-radius:.15em; background:var(--dui-ink); color:white; }
.dui-route-service .dui-icon { width:1.25em; height:1.25em; }
@media(max-width:900px) {
  .tutorial-player-root--route .tutorial-step-card { padding:16px; border-radius:22px; }
  .tutorial-player-root--route .tutorial-step h2 { font-size:clamp(1.5rem,6vw,2.125rem); line-height:1.08; margin-bottom:12px; letter-spacing:-.045em; }
  .tutorial-player-root--route .tutorial-step-kicker { margin-bottom:10px; font-size:.65rem; }
  .tutorial-player-root--route .tutorial-step-card>p:not(.tutorial-step-kicker) { font-size:.86rem; line-height:1.5; margin-bottom:12px; }
  .tutorial-player-root--route .tutorial-step-tips li { font-size:.67rem; line-height:1.45; padding:7px 10px; border-radius:16px; }
  .tutorial-player-root--route .tutorial-step-links { margin-top:10px; }
  .tutorial-player-root--route .tutorial-step-links a { font-size:.67rem; padding:9px 11px; }
}
