/* ReparaDirect 4.6 · Ruta de mañana / Mi Ruta · planificación en una sola pantalla */
.rd-route-shell{display:grid;gap:16px}.rd-route-top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:20px 22px;border:1px solid #e5e7eb;border-radius:18px;background:linear-gradient(135deg,#fff 0%,#fff7f8 100%)}.rd-route-top h2{margin:2px 0 5px;font-size:24px}.rd-route-top .muted{margin:0}.rd-route-date-tools{display:flex;align-items:end;gap:8px;flex-wrap:wrap}.rd-route-date-tools label{font-size:11px;font-weight:800;text-transform:uppercase;color:#6b7280;display:grid;gap:5px}.rd-route-date-tools input{min-width:160px}.rd-route-progress{display:grid;grid-template-columns:minmax(210px,1.2fr) repeat(5,minmax(110px,1fr));gap:10px}.rd-route-progress>div{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:13px 15px;display:grid;gap:4px;box-shadow:0 5px 18px rgba(17,24,39,.04)}.rd-route-progress .main{background:#17191e;color:#fff;border-color:#17191e}.rd-route-progress span{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:#71717a}.rd-route-progress .main span{color:#d1d5db}.rd-route-progress strong{font-size:20px}.rd-route-progress small{font-size:11px;color:#9ca3af}.rd-route-ready{font-weight:900;color:#15803d}.rd-route-not-ready{font-weight:850;color:#b45309}
.rd-route-tech-picker{display:grid;grid-template-columns:auto minmax(210px,320px) auto 1fr;gap:8px;align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:12px}.rd-route-tech-picker select{height:42px}.rd-route-tech-indicators{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.rd-route-tech-dot{border:1px solid #e5e7eb;background:#f8fafc;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:800;cursor:pointer}.rd-route-tech-dot.validated{background:#ecfdf5;border-color:#86efac;color:#166534}.rd-route-tech-dot.modified,.rd-route-tech-dot.pending{background:#fff7ed;border-color:#fdba74;color:#9a3412}.rd-route-tech-dot.none{color:#52525b}.rd-route-tech-dot.unavailable{background:#f4f4f5;color:#71717a;text-decoration:line-through}.rd-route-tech-dot.active{outline:2px solid #c8102e;outline-offset:1px}
.rd-route-tech-head{background:#fff;border:1px solid #e5e7eb;border-radius:18px;padding:18px;display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.rd-route-tech-head h2{margin:0 0 6px}.rd-route-tech-status{display:grid;gap:4px}.rd-route-plan-state{display:inline-flex;align-items:center;width:max-content;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:900}.rd-route-plan-state.validated{background:#dcfce7;color:#166534}.rd-route-plan-state.modified,.rd-route-plan-state.pending{background:#ffedd5;color:#9a3412}.rd-route-plan-state.none{background:#f4f4f5;color:#52525b}.rd-route-plan-state.unavailable{background:#fee2e2;color:#991b1b}.rd-route-tech-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.rd-route-summary{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.rd-route-summary span{background:#f8fafc;border:1px solid #e5e7eb;border-radius:9px;padding:6px 9px;font-size:12px;font-weight:750}.rd-route-tabs{display:flex;gap:7px;overflow:auto;border-bottom:1px solid #e5e7eb;padding-bottom:8px}.rd-route-tabs button{white-space:nowrap;border:1px solid #e5e7eb;background:#fff;border-radius:11px;padding:9px 12px;font-weight:850;cursor:pointer}.rd-route-tabs button.active{background:#c8102e;border-color:#c8102e;color:#fff}.rd-route-modified{display:flex;justify-content:space-between;gap:14px;align-items:center;background:#fff7ed;border:1px solid #fdba74;color:#9a3412;border-radius:14px;padding:12px 14px;margin-bottom:12px}.rd-route-section{display:grid;gap:10px}.rd-section-title{display:flex;justify-content:space-between;gap:14px;align-items:center}.rd-section-title>div{display:grid;gap:2px}.rd-section-title span{font-size:12px;color:#6b7280}.rd-route-committed{display:grid;gap:8px;background:#f8fafc;border:1px solid #e5e7eb;border-radius:16px;padding:14px}.rd-committed-row{display:grid;grid-template-columns:90px 1fr auto;gap:10px;align-items:center;background:#fff;border-radius:12px;padding:10px 12px;border:1px solid #e5e7eb}.rd-committed-row.warning{border-color:#f59e0b;background:#fffbeb}.rd-committed-row strong{font-size:13px}.rd-committed-row span{font-size:12px;color:#6b7280}
.rd-office-route-list{display:grid;gap:9px}.rd-office-service{display:grid;grid-template-columns:22px 118px minmax(0,1fr) auto;gap:12px;align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:15px;padding:12px;box-shadow:0 5px 18px rgba(17,24,39,.035)}.rd-office-service.urgent{border-left:4px solid #dc2626}.rd-office-service.dragging{opacity:.45}.rd-drag{font-size:20px;color:#9ca3af;cursor:grab}.rd-office-time{display:grid;gap:3px}.rd-office-time strong{font-size:17px}.rd-office-time span{font-size:12px;color:#6b7280}.rd-office-main{display:grid;gap:5px;min-width:0}.rd-office-main>strong{font-size:14px}.rd-office-main>small{font-size:11px;color:#6b7280;overflow:hidden;text-overflow:ellipsis}.rd-office-actions{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.rd-office-tags{display:flex;gap:5px;flex-wrap:wrap}.rd-chip{display:inline-flex;align-items:center;border-radius:999px;padding:4px 7px;font-size:10px;font-weight:900}.rd-chip.appointment{background:#e0f2fe;color:#075985}.rd-chip.urgent{background:#fee2e2;color:#991b1b}.rd-chip.team{background:#ede9fe;color:#5b21b6}.rd-route-material-box{display:grid;gap:3px;background:#fff8d8;border:1px solid #fde68a;border-radius:10px;padding:8px 10px;margin-top:3px;font-size:11px;color:#713f12}.rd-route-material-box span{display:block}.rd-route-no-material{font-size:11px;color:#6b7280}.rd-material-warning{background:#fff7ed;color:#9a3412;border:1px solid #fed7aa;border-radius:9px;padding:6px 8px;font-size:11px;font-weight:850}.rd-candidate-list{display:grid;gap:8px}.rd-candidate{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:12px}.rd-candidate>div:first-child{display:grid;gap:4px}.rd-candidate span,.rd-candidate small{font-size:11px;color:#6b7280}.rd-candidate-material{color:#854d0e!important}.rd-candidate-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.rd-nearby-box{border:1px dashed #f59e0b;background:#fffbeb;border-radius:16px;padding:14px;display:grid;gap:9px}.rd-nearby-title{display:flex;justify-content:space-between;align-items:center;gap:10px}.rd-nearby-title strong{color:#92400e}
.rd-dash-route-head{display:flex;justify-content:space-between;gap:14px;align-items:center}.rd-dash-route-head>div{display:grid;gap:3px}.rd-dash-route-head span{font-size:13px}.rd-dash-route-kpis{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.rd-dash-route-kpis span{background:#f8fafc;border:1px solid #e5e7eb;border-radius:9px;padding:7px 9px;font-size:11px;font-weight:800}.rd-critical-absence{margin-top:10px;background:#fff1f2;border:1px solid #fda4af;border-radius:12px;padding:10px;display:flex;justify-content:space-between;gap:10px;align-items:center}.rd-critical-absence>div{display:grid}.rd-critical-absence span{font-size:11px;color:#9f1239}
.rd-tech-route-wrap{max-width:820px;margin:0 auto;display:grid;gap:13px}.rd-tech-route-hero{background:#17191e;color:#fff;border-radius:20px;padding:19px;display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.rd-tech-route-hero h2{margin:2px 0 4px}.rd-tech-route-hero .muted{color:#b8bdc8}.rd-tech-date-switch{display:flex;gap:7px}.rd-tech-date-switch button{border:1px solid #43464e;background:#26282e;color:#fff;border-radius:10px;padding:8px 12px;font-weight:850}.rd-tech-date-switch button.active{background:#c8102e;border-color:#c8102e}.rd-tech-route-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.rd-tech-route-summary>div{background:#fff;border:1px solid #e5e7eb;border-radius:13px;padding:11px;display:grid;gap:3px}.rd-tech-route-summary span{font-size:10px;text-transform:uppercase;color:#6b7280;font-weight:800}.rd-tech-route-summary strong{font-size:19px}.rd-tech-route-list{display:grid;gap:12px}.rd-tech-service{background:#fff;border:1px solid #e5e7eb;border-radius:18px;padding:15px;box-shadow:0 8px 25px rgba(17,24,39,.05);display:grid;gap:10px}.rd-tech-service.urgent{border-top:4px solid #dc2626}.rd-tech-service-time{display:flex;justify-content:space-between;gap:10px;align-items:center}.rd-tech-service-time strong{font-size:24px;color:#c8102e}.rd-tech-service-time span{font-size:13px;font-weight:900}.rd-tech-service-head{display:flex;justify-content:space-between;gap:10px}.rd-tech-service-head>strong{font-size:16px}.rd-tech-service-head span{font-size:11px;color:#6b7280}.rd-tech-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:8px}.rd-tech-grid>div{background:#f8fafc;border-radius:11px;padding:9px;display:grid;gap:2px}.rd-tech-grid span{font-size:9px;font-weight:900;text-transform:uppercase;color:#71717a}.rd-tech-grid strong{font-size:12px}.rd-tech-grid small{font-size:10px;color:#6b7280}.rd-tech-note{background:#fff7ed;border:1px solid #fdba74;border-radius:11px;padding:9px;display:grid;gap:2px;font-size:11px}.rd-tech-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.rd-tech-route-update{background:#eff6ff;border:1px solid #93c5fd;border-radius:14px;padding:12px;display:grid;grid-template-columns:1fr auto;gap:8px}.rd-tech-route-update>div:first-child{display:grid}.rd-tech-route-update span{font-size:11px;color:#1e40af}.rd-tech-change-list{grid-column:1/-1;display:grid;gap:3px;padding-top:4px}.rd-tech-route-empty,.rd-tech-route-preparing{border:1px dashed #cbd5e1;background:#fff;border-radius:15px;padding:26px;text-align:center;display:grid;gap:5px}.rd-tech-route-preparing{background:#fff7ed;border-color:#fdba74;color:#9a3412}.rd-completed{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:10px}.rd-completed summary{cursor:pointer;font-weight:900;font-size:12px}.rd-completed-row{display:grid;grid-template-columns:1fr 1fr auto;gap:8px;align-items:center;padding:9px 0;border-top:1px solid #eee;font-size:11px}
.rd-service-summary{background:#f8fafc;border-radius:12px;padding:10px;display:grid;gap:3px;margin-bottom:10px}.rd-service-summary span{font-size:11px;color:#6b7280}.rd-appointment-warning{background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe;padding:8px 10px;border-radius:10px;font-size:12px;font-weight:800;margin-bottom:10px}.rd-check-line{display:flex;align-items:flex-start;gap:9px;background:#f8fafc;border-radius:10px;padding:10px}.rd-check-line input{margin-top:2px}.rd-reagenda-count{display:inline-flex;background:#fee2e2;color:#991b1b;border-radius:999px;padding:6px 10px;font-size:11px;font-weight:900}.rd-reagenda-list{display:grid;gap:9px;max-height:45vh;overflow:auto;padding-right:3px}.rd-reagenda-row{border:1px solid #e5e7eb;border-radius:13px;padding:11px;display:grid;gap:8px}.rd-reagenda-row>label{display:flex;gap:9px}.rd-reagenda-row>label span{display:grid;gap:2px}.rd-reagenda-row small{font-size:10px;color:#6b7280}.rd-reagenda-suggestions{display:flex;gap:6px;flex-wrap:wrap}.rd-reagenda-suggestions span{font-size:10px;background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;padding:5px 7px}.rd-reagenda-days{font-size:10px;color:#075985;background:#f0f9ff;border-radius:8px;padding:6px 7px}.rd-reagenda-contact{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.rd-reagenda-contact .status{font-size:10px;font-weight:900;background:#f4f4f5;padding:5px 7px;border-radius:7px}.rd-reagenda-actions{display:flex;gap:5px;flex-wrap:wrap}.rd-reagenda-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.rd-reagenda-grid .span2{grid-column:1/-1}
@media(max-width:980px){.rd-route-progress{grid-template-columns:repeat(4,1fr)}.rd-route-progress .main{grid-column:1/-1}.rd-route-tech-picker{grid-template-columns:auto 1fr auto}.rd-route-tech-indicators{grid-column:1/-1;justify-content:flex-start}.rd-office-service{grid-template-columns:20px 95px 1fr}.rd-office-actions{grid-column:2/-1;justify-content:flex-start}.rd-route-tech-head{display:grid}.rd-route-tech-actions{justify-content:flex-start}}
@media(max-width:680px){.rd-route-top{display:grid;padding:15px}.rd-route-date-tools{display:grid;grid-template-columns:1fr auto;width:100%}.rd-route-date-tools label{grid-column:1/2}.rd-route-date-tools input{width:100%}.rd-route-progress{grid-template-columns:1fr 1fr}.rd-route-progress .main{grid-column:1/-1}.rd-route-tech-picker{grid-template-columns:44px 1fr 44px}.rd-route-tech-indicators{overflow:auto;flex-wrap:nowrap;padding-bottom:3px}.rd-route-tech-head{padding:14px}.rd-route-tech-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.rd-route-tech-actions .btn{width:100%}.rd-office-service{grid-template-columns:1fr;padding:12px}.rd-drag{display:none}.rd-office-time{display:flex;justify-content:space-between;align-items:center}.rd-office-time strong{font-size:20px;color:#c8102e}.rd-office-actions{grid-column:auto;display:grid;grid-template-columns:1fr 1fr}.rd-office-actions .btn:last-child{grid-column:1/-1}.rd-candidate{grid-template-columns:1fr}.rd-candidate-actions{justify-content:flex-start}.rd-committed-row{grid-template-columns:1fr}.rd-tech-route-wrap{margin:0}.rd-tech-route-hero{display:grid;padding:15px}.rd-tech-route-summary{grid-template-columns:1fr 1fr}.rd-tech-service{padding:13px}.rd-tech-grid{grid-template-columns:1fr}.rd-tech-actions{grid-template-columns:1fr 1fr}.rd-tech-actions .btn.primary{grid-column:1/-1}.rd-tech-service-time strong{font-size:22px}.rd-reagenda-grid{grid-template-columns:1fr}.rd-reagenda-grid .span2{grid-column:auto}.rd-reagenda-actions{display:grid;grid-template-columns:1fr 1fr}.rd-reagenda-actions .btn{width:100%}.rd-dash-route-head,.rd-critical-absence{display:grid}.rd-dash-route-head .btn,.rd-critical-absence .btn{width:100%}}
.rd-chip.sla{background:#f1f5f9;color:#334155}.rd-route-warning{background:#fff7ed;border:1px solid #fdba74;color:#9a3412;border-radius:13px;padding:10px 12px;display:flex;gap:10px;justify-content:space-between;align-items:center;margin-bottom:10px}.rd-route-sortable{display:grid;gap:9px}.rd-route-section-actions{display:flex;gap:6px;flex-wrap:wrap}.rd-committed{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;background:#f8fafc;border:1px solid #e5e7eb;border-radius:12px;padding:10px 12px}.rd-committed.warning{background:#fffbeb;border-color:#f59e0b}.rd-committed>div{display:grid;gap:2px}.rd-committed span{font-size:11px;color:#6b7280}
@media(max-width:680px){.rd-route-warning,.rd-committed{display:grid}.rd-route-section-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.rd-route-section-actions .btn:last-child{grid-column:1/-1}}
.rd-reagenda-future-impact{background:#fff7ed;border:1px solid #fdba74;border-radius:12px;padding:10px;display:flex;gap:6px;align-items:center;flex-wrap:wrap}.rd-reagenda-future-impact>strong{font-size:11px;color:#9a3412;margin-right:4px}.rd-reagenda-future-impact button{border:1px solid #fed7aa;background:#fff;border-radius:8px;padding:6px 8px;font-size:10px;font-weight:850;color:#9a3412;cursor:pointer}.rd-route-end-warning{margin-top:10px;background:#fff7ed;border:1px solid #fdba74;color:#9a3412;border-radius:10px;padding:8px 10px;font-size:11px;font-weight:900}
.rd-service-materials{margin-top:12px;border-top:1px solid #e5e7eb;padding-top:12px;display:grid;gap:8px}.rd-service-materials>div:first-child{display:grid;gap:2px}.rd-service-materials>div:first-child small{font-size:10px;color:#6b7280}.rd-service-materials details{border:1px solid #e5e7eb;border-radius:11px;padding:9px}.rd-service-materials summary{cursor:pointer;font-size:11px;font-weight:900;color:#374151}.rd-service-materials #rdServiceCourtesyMaterials{margin-top:8px}.rd-service-materials #rdServiceBrowseCourtesy{margin-top:8px}

/* 4.5 · Oficina: ruta + bandeja de planificación siempre visibles en la misma pantalla */
.rd-route-workspace{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(390px,.85fr);gap:14px;align-items:start}.rd-route-main-column{min-width:0}.rd-route-planner-panel{min-width:0;background:#fff;border:1px solid #e5e7eb;border-radius:18px;padding:14px;display:grid;gap:11px;position:sticky;top:12px;max-height:calc(100vh - 28px);overflow:hidden;box-shadow:0 10px 30px rgba(17,24,39,.05)}.rd-route-planner-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.rd-route-planner-head h3{margin:1px 0 3px;font-size:18px}.rd-route-planner-head .muted{margin:0;font-size:11px;line-height:1.4}.rd-route-planner-badge{display:inline-grid;place-items:center;min-width:35px;height:35px;border-radius:999px;background:#c8102e;color:#fff;font-weight:950;font-size:13px;padding:0 10px}.rd-route-planner-panel .rd-route-tabs{padding-bottom:0;border-bottom:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.rd-route-planner-panel .rd-route-tabs button{font-size:10px;padding:8px 7px;white-space:normal;line-height:1.15}.rd-route-planner-tools{display:grid;grid-template-columns:minmax(0,1fr) 145px;gap:7px}.rd-route-planner-tools input,.rd-route-planner-tools select{min-width:0;height:38px;font-size:11px}.rd-route-planner-content{min-height:0;overflow:hidden;display:grid}.rd-planner-list-head{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:2px 1px 8px}.rd-planner-list-head>div{display:grid;gap:2px}.rd-planner-list-head strong{font-size:12px}.rd-planner-list-head span{font-size:10px;color:#6b7280}.rd-planner-list{display:grid;gap:8px;overflow:auto;max-height:calc(100vh - 365px);padding-right:4px;align-content:start}.rd-route-planner-panel .rd-candidate{grid-template-columns:1fr;padding:10px}.rd-route-planner-panel .rd-candidate.urgent{border-left:4px solid #dc2626}.rd-route-planner-panel .rd-candidate-actions{justify-content:flex-start}.rd-route-planner-panel .rd-candidate-actions .btn{font-size:10px;padding:6px 8px}.rd-chip.unassigned{background:#f4f4f5;color:#52525b}.rd-route-commitments{margin-bottom:12px}.rd-route-main-column .rd-route-section{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:14px}.rd-route-main-column .rd-route-modified,.rd-route-main-column .rd-route-warning{margin-bottom:10px}
@media(max-width:1180px){.rd-route-workspace{grid-template-columns:1fr}.rd-route-planner-panel{position:static;max-height:none}.rd-planner-list{max-height:520px}.rd-route-planner-panel .rd-route-tabs{grid-template-columns:repeat(4,1fr)}}
@media(max-width:680px){.rd-route-workspace{gap:10px}.rd-route-planner-panel{padding:11px;border-radius:14px}.rd-route-planner-head{display:grid;grid-template-columns:1fr auto}.rd-route-planner-tools{grid-template-columns:1fr}.rd-route-planner-panel .rd-route-tabs{grid-template-columns:1fr}.rd-route-planner-panel .rd-route-tabs button{font-size:11px}.rd-planner-list{max-height:none;overflow:visible}.rd-route-main-column .rd-route-section{padding:11px}}

/* 4.6 · Planificación arriba, sin contadores duplicados y sin saltos visuales */
.rd-route-workspace{grid-template-columns:1fr!important;gap:12px!important}
.rd-route-planner-panel.rd-route-planner-top{position:static!important;top:auto!important;max-height:none!important;overflow:visible!important;padding:16px 18px;background:linear-gradient(135deg,#fff 0%,#fffafb 100%);border-color:#eadde0;box-shadow:0 8px 24px rgba(17,24,39,.045)}
.rd-route-planner-top .rd-route-planner-head{align-items:center}
.rd-route-planner-top .rd-route-planner-head h3{font-size:20px;margin:2px 0 3px}
.rd-route-planner-top .rd-route-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;border:0;padding:0}
.rd-route-planner-top .rd-route-tabs button{font-size:11px;padding:10px 12px}
.rd-route-planner-top .rd-route-planner-tools{grid-template-columns:minmax(0,1fr) 190px;gap:9px}
.rd-route-planner-top .rd-route-planner-tools input,.rd-route-planner-top .rd-route-planner-tools select{height:42px;font-size:12px}
.rd-route-planner-top .rd-planner-list{grid-template-columns:repeat(2,minmax(0,1fr));max-height:360px;overflow:auto;gap:9px;padding:2px 5px 3px 1px;scrollbar-gutter:stable}
.rd-route-planner-top .rd-candidate{height:100%;align-content:start;background:#fff}
.rd-route-planner-top .rd-candidate-actions{margin-top:4px}
.rd-route-planner-top .rd-candidate-actions .btn{font-size:10px;padding:7px 9px}
.rd-route-main-column .rd-route-section{box-shadow:0 5px 18px rgba(17,24,39,.035)}
.rd-route-tech-picker{scroll-margin-top:12px}
.rd-route-phone-strip{margin-top:8px;padding-top:8px;border-top:1px solid #e5e7eb;display:grid;gap:7px}
.rd-route-phone-strip>span{font-size:10px!important;font-weight:900!important;text-transform:uppercase;color:#6b7280!important}
.rd-route-phone-list{display:flex;gap:7px;flex-wrap:wrap}
.rd-route-phone-item{display:flex;align-items:center;gap:7px;background:#fff;border:1px solid #dfe3e8;border-radius:10px;padding:7px 8px}
.rd-route-phone-item div{display:grid;gap:1px}
.rd-route-phone-item small{font-size:9px;color:#6b7280;font-weight:800;text-transform:uppercase}
.rd-route-phone-item strong{font-size:13px;color:#111827}
.rd-route-phone-item .btn{padding:6px 8px;font-size:10px}
.rd-route-phone-empty{font-size:11px;color:#9a3412;background:#fff7ed;border:1px solid #fed7aa;border-radius:9px;padding:7px 9px}
@media(max-width:1050px){.rd-route-planner-top .rd-planner-list{grid-template-columns:1fr}.rd-route-planner-top .rd-route-planner-tools{grid-template-columns:1fr 170px}}
@media(max-width:680px){.rd-route-planner-panel.rd-route-planner-top{padding:12px}.rd-route-planner-top .rd-route-planner-head{display:grid;grid-template-columns:1fr auto}.rd-route-planner-top .rd-route-tabs{grid-template-columns:1fr}.rd-route-planner-top .rd-route-planner-tools{grid-template-columns:1fr}.rd-route-planner-top .rd-planner-list{max-height:none;overflow:visible}.rd-route-phone-list{display:grid}.rd-route-phone-item{justify-content:space-between}}

/* ReparaDirect 4.8 · cita con contexto completo y franjas horarias */
.rd-cite-head{display:grid;gap:2px}
.rd-cite-head>strong{font-size:15px}
.rd-cite-context{margin-top:9px;border-top:1px solid #e5e7eb;padding-top:9px}
.rd-cite-context-title{font-size:11px;font-weight:950;text-transform:uppercase;letter-spacing:.04em;color:#991b1b;margin-bottom:7px}
.rd-cite-context-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.rd-cite-context-grid>div{background:#fff;border:1px solid #e5e7eb;border-radius:9px;padding:8px 9px;min-width:0}
.rd-cite-context-grid>div.wide{grid-column:1/-1}
.rd-cite-context-grid>div.important{background:#fff7ed;border-color:#fed7aa}
.rd-cite-context-grid small{display:block;font-size:9px;font-weight:900;color:#6b7280;margin-bottom:3px;letter-spacing:.03em}
.rd-cite-context-grid strong,.rd-cite-context-grid p{display:block;margin:0;font-size:11px;line-height:1.42;color:#1f2937;white-space:pre-wrap;overflow-wrap:anywhere}
#rdServiceTime{font-weight:800}
.modal.stacked-modal{z-index:2600!important}
#courtesyStockModal{z-index:2600!important}
#courtesyStockModal .modal-card{position:relative;z-index:2601}
@media(max-width:680px){.rd-cite-context-grid{grid-template-columns:1fr}.rd-cite-context-grid>div.wide{grid-column:auto}}
#rdServiceModal .modal-card{width:min(700px,100%)}
#rdServiceModal .rd-check-line>span{display:grid;gap:2px}
#rdServiceModal .rd-check-line small{font-size:10px;color:#6b7280;line-height:1.35}

/* ReparaDirect FULL 4.17 · comentario específico para la ruta del técnico */
.rd-tech-comment-preview{margin-top:8px;border:1px solid #bae6fd;background:#f0f9ff;border-radius:10px;padding:8px 10px;display:grid;gap:3px}
.rd-tech-comment-preview strong{font-size:9px;color:#0369a1;letter-spacing:.04em}
.rd-tech-comment-preview span{font-size:11px;font-weight:800;color:#0f172a;line-height:1.35}
.rd-tech-route-comment{margin-top:10px;border:2px solid #0ea5e9;background:#f0f9ff;border-radius:12px;padding:10px 12px;display:grid;gap:4px}
.rd-tech-route-comment strong{font-size:11px;color:#0369a1}
.rd-tech-route-comment span{font-size:13px;font-weight:850;color:#0f172a;line-height:1.4;white-space:pre-wrap}
.rd-tech-comment-summary{border:1px solid #e5e7eb;background:#f8fafc;border-radius:12px;padding:10px 12px;display:grid;gap:3px;margin-bottom:10px}
.rd-tech-comment-summary strong{font-size:13px;color:#111827}.rd-tech-comment-summary span{font-size:11px;color:#6b7280}
.rd-tech-comment-help{margin:6px 0 0;font-size:10px;line-height:1.4}

/* FULL 4.19 · arrastre de ruta */
.rd-drag{user-select:none;touch-action:none;cursor:grab;font-weight:900;padding:10px 4px;text-align:center}.rd-drag:active{cursor:grabbing}.rd-route-sortable.is-dragging{outline:2px dashed #d1d5db;outline-offset:6px;border-radius:14px}.rd-office-service.dragging{opacity:.55;box-shadow:0 12px 30px rgba(17,24,39,.16);transform:scale(.997)}


/* ReparaDirect FULL 4.26 · seguimiento dentro de Citar (implementación estable) */
.rd-cite-followup{margin:12px 0 14px;border:1px solid #dfe3e8;border-radius:12px;background:#fff;padding:11px;display:grid;gap:9px}
.rd-cite-followup-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.rd-cite-followup-title{display:flex;flex-direction:column;gap:3px;min-width:0}
.rd-cite-followup-title strong{display:block;font-size:12px;line-height:1.3;color:#17191e}
.rd-cite-followup-title small{display:block;font-size:10px;line-height:1.4;color:#6b7280}
.rd-cite-followup-list{display:grid;gap:7px;max-height:210px;overflow:auto;padding-right:2px}
.rd-cite-followup-item{border:1px solid #e2e6ea;border-radius:9px;background:#f8f9fb;padding:9px;display:grid;gap:5px}
.rd-cite-followup-meta{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;flex-wrap:wrap}
.rd-cite-followup-meta strong{font-size:10px;color:#343a40}.rd-cite-followup-meta small{font-size:9px;color:#727982}
.rd-cite-followup-subject{font-size:11px;font-weight:900;color:#17191e}
.rd-cite-followup-copy{font-size:10px;line-height:1.45;color:#3f464f;white-space:pre-wrap;overflow-wrap:anywhere}
.rd-cite-followup-next{font-size:9px;font-weight:850;color:#7b1a2b;background:#fff2f4;border-radius:7px;padding:5px 7px}
.rd-cite-followup-empty{font-size:10px;color:#6b7280;background:#f8f9fb;border:1px dashed #cfd5dc;border-radius:9px;padding:10px}
.rd-route-interaction-modal{z-index:2800!important}
.rd-route-interaction-modal .modal-card{z-index:2801;position:relative}
.rd-route-interaction-summary{border:1px solid #e2e6ea;background:#f8f9fb;border-radius:10px;padding:10px 11px;display:grid;gap:3px;margin-bottom:4px}
.rd-route-interaction-summary strong{font-size:12px;color:#17191e}.rd-route-interaction-summary span{font-size:10px;color:#6b7280}
@media(max-width:680px){.rd-cite-followup-head{display:grid}.rd-cite-followup-head .btn{width:100%}.rd-cite-followup-list{max-height:260px}}

.rd-route-load{background:#fff8dc;border:1px solid #f4ce59;border-radius:14px;padding:15px;margin-bottom:12px}.rd-route-load h3{margin:0 0 10px;font-size:16px}.rd-route-load-part{padding:9px 0;border-top:1px solid #ecd99b;display:grid;gap:6px}.rd-route-load-part small{display:block;color:#635526}.rd-route-load p{margin:0;font-size:13px}

/* 4.43: cierres pendientes de citas anteriores */
.rd-overdue{margin:16px 0;padding:16px;border:1px solid #f1c465;border-radius:14px;background:#fffaf0;color:#17212b}.rd-overdue h3{margin:0 0 8px;font-size:17px}.rd-overdue p{font-size:13px;line-height:1.5;margin:8px 0}.rd-overdue summary{cursor:pointer;font-weight:700;padding:12px 0;min-height:44px}.rd-overdue-date{display:block;padding:10px 2px;color:#854d0e}.rd-overdue .rd-tech-service{background:#fff}
