/* Route presentation only: shared by Mercaderistas and Impulsadoras. */
#ssp-rutero-planner, #ssp-personal-rutero { color:#24324c; --route-border:#e2e8f4; }
#ssp-rutero-planner { display:grid; grid-template-columns:minmax(0,1fr); gap:20px; align-items:start; }
#ssp-rutero-planner > * { min-width:0; margin-top:0!important; }
#ssp-rutero-planner .ssp-route-editor,
#ssp-personal-rutero .glass-panel { background:#fff!important; border:1px solid var(--route-border)!important; border-radius:14px!important; box-shadow:0 3px 12px #263c6510!important; padding:18px; }
#ssp-rutero-planner .ssp-route-editor > div:first-child { padding-bottom:12px; border-bottom:1px solid var(--route-border); margin-bottom:14px; }
#ssp-rutero-planner .ssp-route-editor h3 { font-size:17px; color:#24324c!important; }
#ssp-rutero-planner .ssp-route-editor p { font-size:11px; line-height:1.5; color:#71809b!important; }
/* La vista solicitada utiliza títulos y controles sin textos secundarios. */
#ssp-rutero-planner .ssp-route-editor p { display:none!important; }
#ssp-personal-rutero p { display:none!important; }
#ssp-rutero-planner #ruteroForm > .grid > div:nth-child(2) > div:first-child {
  flex-direction:column!important;
  align-items:stretch!important;
}
#ssp-rutero-planner label:has(#ruteroEnableMultiEmployee) {
  width:100%;
  max-width:100%;
  box-sizing:border-box;
  justify-content:center;
  white-space:normal;
  text-align:center;
}
#ssp-rutero-planner #ruteroEnableMultiEmployee { flex:0 0 auto; }
#ssp-rutero-planner #ruteroForm > .grid > div { padding:10px; border-radius:10px; background:#f8faff!important; }
#ssp-rutero-planner #ruteroForm > .glass-panel { background:#fff!important; padding:14px; border:1px solid var(--route-border)!important; border-radius:12px; box-shadow:none; }
#ssp-rutero-planner #ruteroForm input:not([type=checkbox]),
#ssp-rutero-planner #ruteroForm select { min-height:42px; padding:9px 10px; border-radius:7px; font-size:12px; background:#fff!important; color:#24324c!important; border-color:var(--route-border)!important; max-width:100%; }
#ssp-rutero-planner #ruteroForm label { letter-spacing:.08em; font-size:10px; }
#ssp-rutero-planner #ruteroForm button { border-radius:7px; }
#ssp-rutero-planner #ruteroForm button[type=submit] { background:#6042ed!important; padding:12px; font-size:11px; box-shadow:0 3px 8px #6042ed25; }
#ssp-rutero-planner #ruteroLocalListWithTimes > div,
#ssp-rutero-planner .rutero-local-row { border-radius:8px; background:#f8faff!important; padding:8px; }
#ssp-rutero-planner .rutero-local-name { display:block; white-space:nowrap!important; overflow:hidden; text-overflow:ellipsis; }
#ssp-rutero-planner .rutero-row-time-start,
#ssp-rutero-planner .rutero-row-time-end { width:100%!important; min-width:0!important; }
#ssp-rutero-planner #ruteroLocalListWithTimes { max-height:240px; }
#ssp-rutero-planner #ruteroProductList { max-height:160px; }
#ssp-rutero-planner .ssp-route-calendar { border:1px solid var(--route-border)!important; border-radius:14px; background:#f7f9fd!important; box-shadow:0 3px 12px #263c6510!important; }
#ssp-rutero-planner .ssp-route-calendar > div:first-child { background:#111d38!important; padding:16px; flex-wrap:wrap; }
#ssp-rutero-planner .ssp-route-calendar h4 { color:#fff!important; font-size:14px; }
#ssp-rutero-planner .ssp-route-calendar > div:first-child button { padding:8px 10px; border-radius:6px; min-height:36px; }
#ssp-rutero-planner .ssp-route-calendar > div:nth-child(2) { background:#f7f9fd!important; padding:12px; max-height:1050px; }
#ssp-rutero-planner .ssp-route-calendar section { border:1px solid var(--route-border)!important; border-radius:9px; background:#fff!important; margin-top:10px; }
#ssp-rutero-planner .ssp-route-calendar section:first-child { margin-top:0; }
#ssp-rutero-planner .ssp-route-calendar section > div:first-child { padding:10px; border-color:var(--route-border)!important; gap:8px; }
#ssp-rutero-planner .ssp-route-calendar section > div:first-child > div:first-child { width:30px; height:30px; border-radius:7px; background:#eeebff!important; }
#ssp-rutero-planner .ssp-route-calendar section > div:first-child .text-lg { font-size:12px; color:#5141be!important; }
#ssp-rutero-planner .ssp-route-calendar section [class*="text-white"] { color:#64748b!important; }
#ssp-rutero-planner .ssp-route-calendar section > .p-4 { padding:10px; }
#ssp-rutero-planner .ssp-route-calendar section .grid { grid-template-columns:minmax(0,1fr); }
#ssp-rutero-planner .ssp-route-calendar article { background:#f9fbff!important; border-color:var(--route-border)!important; border-radius:8px; padding:10px; }
#ssp-rutero-planner .ssp-route-calendar article .text-white { color:#24324c!important; }
#ssp-rutero-planner .ssp-route-calendar article [class*="text-indigo-200"] { color:#6654c7!important; }
#ssp-rutero-planner .ssp-route-calendar article span[class*="border-indigo"] { background:#e5faf1!important; border-color:#bcecd9!important; color:#058766!important; }
#ssp-rutero-planner .ssp-route-calendar article [class*="text-sky-200"] { color:#31729e!important; background:#eef7ff!important; }
#ssp-rutero-planner .ssp-route-calendar article [class*="text-emerald-200"] { color:#08785b!important; background:#eefbf5!important; }
#ssp-rutero-planner .ssp-route-calendar .btn-edit-rutero { color:#6042ed!important; background:#f0edff!important; padding:8px; }
#ssp-rutero-planner .ssp-route-calendar .btn-del-rutero { color:#bd314a!important; background:#fff0f3!important; padding:8px; }
#ssp-rutero-planner .ssp-route-calendar .border-dashed { padding:18px 8px; border-color:var(--route-border)!important; background:#fafbff!important; }
#ssp-rutero-planner .ssp-route-calendar .border-dashed svg { width:20px; height:20px; margin-bottom:6px; color:#a29acb; }
#ssp-personal-rutero #ruteroMainPanel > div:first-child { background:#111d38; border-radius:10px; padding:16px; }
#ssp-personal-rutero #ruteroMainPanel > div:first-child h2 { color:#fff!important; font-size:19px; }
#ssp-personal-rutero #ruteroMainPanel > div:first-child p { color:#c3cce1!important; font-size:12px; }
#ssp-personal-rutero #ruteroMainPanel > .space-y-4 > div { background:#fff!important; border-radius:10px; border-color:var(--route-border)!important; }
#ssp-personal-rutero #ruteroMainPanel > .space-y-4 > div > div:first-child { background:#f6f7ff!important; padding:12px; }
#ssp-personal-rutero #ruteroMainPanel article { background:#fff!important; border-color:var(--route-border)!important; border-radius:8px; }
#ssp-personal-rutero #ruteroMainPanel article .text-indigo-600 { background:#e5faf1; color:#058766!important; padding:5px 8px; border-radius:5px; letter-spacing:.03em; }
#ssp-personal-rutero #ruteroMainPanel article .text-slate-900 { color:#24324c!important; }
#ssp-rutero-planner :is(button,input,select):focus-visible,
#ssp-personal-rutero button:focus-visible { outline:2px solid #7055ef; outline-offset:3px; }
@media(min-width:1050px) {
  #ssp-rutero-planner { grid-template-columns:minmax(0,1.35fr) minmax(360px,1fr); }
}
@media(max-width:640px) {
  #ssp-rutero-planner, #ssp-personal-rutero > section { gap:14px; }
  #ssp-rutero-planner .ssp-route-editor, #ssp-personal-rutero .glass-panel { padding:12px; }
  #ssp-rutero-planner #ruteroForm > .glass-panel { padding:10px; }
  #ssp-rutero-planner .ssp-route-calendar > div:nth-child(2) { max-height:none; }
  #ssp-rutero-planner .rutero-local-row { align-items:stretch; }
  #ssp-rutero-planner .rutero-local-row input[type=time] { min-width:0!important; width:100%; }
  #ssp-rutero-planner .ssp-route-calendar button { min-height:42px; }
  #ssp-personal-rutero #ruteroMainPanel article { padding:12px; }
  #ssp-personal-rutero #ruteroMainPanel h2 { font-size:18px; }
}
