/* Tela Rota do dia — layout moderno com etapas conectadas, cards arredondados e cores semânticas */
.rt{min-width:0;display:flex;flex-direction:column;min-height:0}
.rt .sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.rt .cab{align-items:center;justify-content:space-between;margin-bottom:14px}
.rt .cab>div:first-child{flex:1 1 240px;min-width:0}
.rt .cab p{margin:4px 0 0;color:var(--suave);font-size:13.5px;font-weight:500}
.rt-cab-dir{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.rt-amb{border-radius:999px;padding:7px 14px;font-size:12px;font-weight:700;letter-spacing:.01em}
.rt-amb.teste{background:var(--ambar2);color:#92400e;border:1px solid #fde68a}
.rt-amb.prod{background:var(--verde2);color:var(--verde);border:1px solid #bbf7d0}
.rt-status{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--linha);background:#fff;border-radius:999px;padding:7px 14px;min-height:36px;font:600 12.5px var(--fonte);color:var(--tinta2);cursor:pointer;transition:border-color .15s,background .15s}
.rt-status:hover{background:#f8fafc;border-color:#cbd5e1}
.rt-status i{width:8px;height:8px;border-radius:50%;background:var(--suave)}
.rt-status.ok{border-color:#bbf7d0;background:#f0fdf4;color:#15803d}
.rt-status.ok i{background:var(--verde);box-shadow:0 0 0 3px rgba(20,128,74,.18)}
.rt-status.bad{background:var(--verm2);color:var(--verm);border-color:#fecaca}.rt-status.bad i{background:var(--verm)}

/* Stepper / Etapas */
.rt-etapas{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 14px;padding:0}
.rt-etapas li{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--linha);border-radius:16px;padding:10px 14px;font-size:13px;font-weight:600;color:var(--suave);cursor:pointer;transition:border-color .15s,box-shadow .15s,background .15s}
.rt-etapas li:hover{border-color:#cbd5e1;background:#fcfdff}
.rt-etapas li b{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--app);color:var(--tinta2);font-size:12.5px;font-weight:700;flex-shrink:0;transition:background .15s,color .15s}
.rt-etapas li div{display:grid;gap:1px;min-width:0}
.rt-etapas li span{font-size:13.5px;font-weight:700;color:var(--tinta2);line-height:1.2}
.rt-etapas li small{font-size:11.5px;font-weight:500;color:var(--suave);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rt-etapas li.on{border-color:var(--azul);background:#f5f8ff;box-shadow:0 2px 10px rgba(26,92,255,.08)}
.rt-etapas li.on b{background:var(--azul);color:#fff}
.rt-etapas li.on span{color:var(--azul)}
.rt-etapas li.feito{border-color:#bbf7d0;background:#f7fef9}
.rt-etapas li.feito b{background:var(--verde);color:#fff}
.rt-etapas li.feito span{color:#15803d}

.rt-painel{display:flex;flex-direction:column;gap:12px;min-height:0}
/* altura útil: a tela menos topo, título e etapas */
.rt-duas,.rt-mestre{display:grid;gap:14px;height:clamp(280px,calc(100dvh / var(--z, 1) - 360px - var(--rt-extra, 0px)),2000px);min-height:0}
.rt-duas{grid-template-columns:minmax(260px,0.95fr) minmax(0,1.45fr)}
.rt-mestre{grid-template-columns:minmax(250px,0.9fr) minmax(0,2.1fr)}

.rt-col{background:var(--card);border:1px solid var(--linha);border-radius:20px;padding:16px;display:flex;flex-direction:column;min-height:0;min-width:0;box-shadow:0 1px 3px rgba(15,23,42,.02)}
.rt-col h3{margin:0 0 12px;font-size:15px;font-weight:700;color:var(--tinta);display:flex;justify-content:space-between;align-items:center;gap:8px}
.rt-col h3 small{color:var(--suave);font-size:12px;font-weight:600;background:var(--app);padding:3px 10px;border-radius:999px}
.rt-col-topo{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;flex-wrap:wrap}
.rt-col-topo h3{margin:0}
.rt-col-acoes{display:flex;gap:6px;align-items:center}
.rt-rolar{flex:1;min-height:0;overflow:auto;display:grid;align-content:start;gap:8px;padding-right:2px}
.rt-vazio{color:var(--suave);font-size:13px;padding:24px 16px;text-align:center}

/* Cards de Rota (Etapa 1) */
.rt-rota{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;text-align:left;border:1px solid var(--linha);background:#fff;border-radius:16px;padding:12px 14px;cursor:pointer;font:inherit;transition:border-color .15s,background .15s,box-shadow .15s}
.rt-rota:hover{border-color:#cbd5e1;background:#fcfdff}
.rt-rota-ic{width:36px;height:36px;border-radius:12px;background:var(--app);color:var(--tinta2);display:grid;place-items:center;flex-shrink:0;transition:background .15s,color .15s}
.rt-rota-ic svg{width:18px;height:18px}
.rt-rota-txt{min-width:0;display:grid;gap:2px}
.rt-rota-txt b{font-size:13.5px;font-weight:700;color:var(--tinta);overflow-wrap:anywhere}
.rt-rota-txt small{display:block;color:var(--suave);font-size:12px;font-weight:500;overflow-wrap:anywhere;line-height:1.35}
.rt-rota-cnt{font-size:11.5px;font-weight:700;color:var(--tinta2);background:var(--app);padding:4px 10px;border-radius:999px;white-space:nowrap}
.rt-rota.on{border-color:var(--azul);background:#f5f8ff;box-shadow:0 2px 8px rgba(26,92,255,.08)}
.rt-rota.on .rt-rota-ic{background:var(--azul);color:#fff}
.rt-rota.on .rt-rota-txt b{color:var(--azul)}
.rt-rota.on .rt-rota-cnt{background:var(--azul3);color:var(--azul)}

/* Cards de Clientes da Rota (Etapa 1) */
.rt-cli{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid var(--linha);background:#fff;border-radius:16px;padding:11px 14px;cursor:pointer;transition:border-color .15s,background .15s}
.rt-cli:hover{border-color:#cbd5e1;background:#fcfdff}
.rt-cli input{width:18px;height:18px;accent-color:var(--azul);cursor:pointer;margin:0}
.rt-cli-info{min-width:0;display:grid;gap:3px}
.rt-cli b{display:block;font-size:13.5px;font-weight:700;color:var(--tinta);overflow-wrap:anywhere}
.rt-cli small{display:inline-flex;align-items:center;gap:4px;color:var(--suave);font-size:12px;font-weight:500;overflow-wrap:anywhere}
.rt-cli small svg{width:13px;height:13px;flex-shrink:0;color:#94a3b8}
.rt-cli em{font-style:normal;font-size:11.5px;font-weight:600;color:var(--suave);background:var(--app);padding:4px 10px;border-radius:999px;white-space:nowrap}
.rt-cli em.com-nota{background:#eff4ff;color:#1d4ed8}
.rt-cli:has(input:checked){border-color:var(--azul);background:#f5f8ff}

/* Barra inferior de ações da Rota */
.rt-barra{display:flex;gap:10px;align-items:center;justify-content:flex-end;flex-wrap:wrap;background:var(--card);border:1px solid var(--linha);border-radius:18px;padding:12px 16px;box-shadow:0 1px 3px rgba(15,23,42,.03)}
.rt-barra-resumo{margin-right:auto;font-size:13.5px;font-weight:600;color:var(--tinta2)}
.rt-nat{display:flex;align-items:center;gap:10px;margin-right:auto;min-width:0;flex:0 1 480px}
.rt-nat span{font-size:12.5px;font-weight:600;color:var(--tinta2);white-space:nowrap}
.rt-nat select{flex:1;min-width:0;min-height:38px;border:1px solid #cfd6e3;border-radius:999px;background:#fff;padding:0 14px;font:600 13px var(--fonte);color:var(--tinta)}

/* Notas da leva (Etapa 2 - Coluna esquerda) */
.rt-nota{display:grid;gap:6px;text-align:left;border:1px solid var(--linha);background:#fff;border-radius:16px;padding:12px 14px;cursor:pointer;font:inherit;transition:border-color .15s,background .15s,box-shadow .15s}
.rt-nota:hover{border-color:#cbd5e1;background:#fcfdff}
.rt-nota.on{border-color:var(--azul);background:#f5f8ff;box-shadow:0 2px 8px rgba(26,92,255,.08)}
.rt-n-nome{display:flex;justify-content:space-between;gap:8px;align-items:center}
.rt-n-nome b{font-size:13px;font-weight:700;color:var(--tinta);overflow-wrap:anywhere}
.rt-nota.on .rt-n-nome b{color:var(--azul)}
.rt-n-sub{display:flex;justify-content:space-between;align-items:center;gap:8px;color:var(--suave);font-size:12px;font-weight:500}
.rt-n-sub strong{color:var(--tinta);font-weight:700;font-variant-numeric:tabular-nums}
.rt-alvo{height:6px;border-radius:999px;background:#e2e8f0;overflow:hidden}
.rt-alvo i{display:block;height:100%;background:var(--azul);border-radius:999px;transition:width .2s ease}
.rt-alvo.ok i{background:var(--verde)}
.rt-st{display:inline-flex;align-items:center;gap:4px;border-radius:999px;padding:3px 9px;font-size:11px;font-weight:700;white-space:nowrap}
.rt-st svg{width:13px;height:13px}
.rt-st.ok{background:var(--verde2);color:var(--verde)}
.rt-st.bad{background:var(--verm2);color:var(--verm)}
.rt-st.info{background:var(--azul4);color:var(--azul)}
.rt-st.vazio{background:var(--app);color:var(--suave)}

/* Editor de nota (Etapa 2 - Coluna direita) */
.rt-ed-topo{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px;flex-wrap:wrap;padding-bottom:10px;border-bottom:1px solid var(--linha)}
.rt-ed-topo h3{margin:0;font-size:16px}
.rt-ed-topo small{display:block;color:var(--suave);font-size:12px;font-weight:500;margin-top:2px}
.rt-ed-acoes{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.rt-erro{display:flex;gap:8px;align-items:center;background:var(--verm2);color:var(--verm);border:1px solid #fecaca;border-radius:12px;padding:9px 12px;font-size:12.5px;font-weight:600;margin-bottom:10px}
.rt-erro svg{width:16px;height:16px;flex-shrink:0}
.rt-add{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #cfd6e3;border-radius:999px;padding:0 16px;min-height:42px;transition:border-color .15s,box-shadow .15s}
.rt-add:focus-within{border-color:var(--azul);box-shadow:0 0 0 3px rgba(26,92,255,.12)}
.rt-add svg{width:17px;height:17px;color:var(--suave);flex-shrink:0}
.rt-add input{flex:1;width:100%;min-height:40px;border:0!important;background:transparent!important;padding:0!important;font:500 13.5px var(--fonte);color:var(--tinta);outline:0!important;box-shadow:none!important}
.rt-lista-prod{list-style:none;margin:8px 0 0;padding:6px;border:1px solid var(--linha);border-radius:16px;background:#fff;flex:1;min-height:0;overflow:auto;box-shadow:0 8px 24px rgba(15,23,42,.08)}
.rt-lista-prod li{display:grid;gap:2px;padding:9px 12px;border-radius:10px;cursor:pointer;font-size:13px}
.rt-lista-prod li small{color:var(--suave);font-size:11.5px}
.rt-lista-prod li:hover,.rt-lista-prod li.on{background:var(--azul4)}
.rt-itens{flex:1;min-height:0;overflow:auto;margin-top:8px}
.rt-linha{display:grid;grid-template-columns:minmax(0,1fr) 84px 114px 104px 104px 36px;gap:8px;align-items:center;padding:8px 4px;border-bottom:1px solid var(--linha)}
.rt-lcab{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--suave);position:sticky;top:0;background:var(--card);z-index:1;padding-bottom:6px}
.rt-linha input{min-height:36px;border:1px solid #cfd6e3;border-radius:10px;background:#fff;padding:6px 10px;text-align:right;font:600 13px var(--fonte);min-width:0}
.rt-pnome{min-width:0}.rt-pnome b{display:block;font-size:13px;font-weight:600;color:var(--tinta);overflow-wrap:anywhere}.rt-pnome small{color:var(--suave);font-size:11.5px}
.rt-ltot{text-align:right;font-weight:700;color:var(--tinta);font-variant-numeric:tabular-nums}
.rt-ed-tot{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 16px;align-items:center;margin-top:8px;background:#f8fafc;border:1px solid var(--linha);border-radius:16px;padding:12px 16px}
.rt-ed-tot .rt-alvo{grid-column:1}
.rt-ed-tot small{grid-column:1;color:var(--suave);font-size:12px;font-weight:500}
.rt-ed-tot b{grid-column:2;grid-row:1/3;font-size:22px;font-weight:800;color:var(--tinta);font-variant-numeric:tabular-nums}
.rt-transp-nota{display:grid;grid-template-columns:auto 76px minmax(95px,1fr) minmax(95px,1fr) minmax(85px,1fr) 104px 104px;gap:8px;align-items:end;margin-top:8px;background:#f8fafc;border:1px solid var(--linha);border-radius:14px;padding:8px 12px}
.rt-tn-rot{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:var(--tinta2);padding-bottom:8px;white-space:nowrap}
.rt-tn-rot svg{width:15px;height:15px;color:var(--azul)}
.rt-transp-nota label{display:grid;gap:3px;min-width:0}
.rt-transp-nota label span{font-size:11px;font-weight:600;color:var(--suave);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rt-transp-nota input{min-height:34px;border:1px solid #cfd6e3;border-radius:10px;background:#fff;padding:4px 8px;font:600 12.5px var(--fonte);color:var(--tinta);min-width:0;width:100%}
.rt-vol-inline{display:flex;gap:6px;align-items:center}
.rt-vol-inline input{min-height:32px;border:1px solid #cfd6e3;border-radius:8px;background:#fff;padding:4px 8px;font:600 12px var(--fonte);color:var(--tinta);width:78px;min-width:0}
.rt-vol-inline input[data-tk3="q_vol"]{width:58px;text-align:right}
.rt-vol-inline input[data-tk3="esp"]{width:96px}
.rt-vol-inline input[data-tk3="peso_b"],.rt-vol-inline input[data-tk3="peso_l"]{width:80px;text-align:right}

/* Etapa 3: Conferir e emitir */
.rt-resumo-leva{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}
.rt-resumo-leva>div{background:var(--card);border:1px solid var(--linha);border-radius:16px;padding:12px 16px;min-width:0}
.rt-resumo-leva small{display:block;color:var(--suave);font-size:11.5px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;margin-bottom:3px}
.rt-resumo-leva b{font-size:15px;font-weight:700;color:var(--tinta);overflow-wrap:anywhere}
.rt-tab{height:clamp(220px,calc(100dvh / var(--z, 1) - 440px - var(--rt-extra, 0px)),2000px)}
.rt-tab table{width:100%;border-collapse:collapse;font-size:13px}
.rt-tab th{text-align:left;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--suave);padding:10px 12px;position:sticky;top:0;background:var(--card);border-bottom:1px solid var(--linha)}
.rt-tab td{padding:11px 12px;border-bottom:1px solid var(--linha);vertical-align:middle}
.rt-tab td small{display:block;color:var(--suave);font-size:11.5px;overflow-wrap:anywhere;margin-top:2px}
.rt-tab .dir{text-align:right;font-variant-numeric:tabular-nums}
.rt-sit .badge{white-space:nowrap}
.rt [hidden]{display:none!important}

@media (max-width:900px){
  /* uma coluna: a lista (rotas / notas) vira uma faixa horizontal e o resto ocupa a altura */
  .rt-etapas{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
  .rt-etapas li{padding:8px 10px;gap:8px}
  .rt-etapas li small{display:none}
  .rt-duas,.rt-mestre{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);height:var(--rt-h,520px)}
  .rt-duas>.rt-col:first-child,.rt-mestre>.rt-lista{padding:12px}
  .rt-duas>.rt-col:first-child .rt-rolar,.rt-mestre>.rt-lista .rt-rolar{display:flex;gap:8px;overflow-x:auto;overflow-y:hidden;flex:none;padding-bottom:2px}
  .rt-duas>.rt-col:first-child .rt-rota,.rt-mestre>.rt-lista .rt-nota{flex:0 0 min(220px,68vw)}
  .rt-col h3{margin-bottom:8px}
  .rt-linha{grid-template-columns:repeat(3,minmax(0,1fr)) 36px}
  .rt-pnome{grid-column:1/-1}.rt-lcab{display:none}.rt-ltot{grid-column:1/4;text-align:left}
  .rt-tab{height:var(--rt-h3,420px)}
  .rt-nat{flex:1 1 100%;order:-1}
  .rt-resumo-leva{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:560px){
  .rt .cab{margin-bottom:6px}
  .rt-etapas{display:flex}
  .rt-etapas li div{display:none}.rt-etapas li.on div{display:grid}
  .rt-resumo-leva>div:nth-child(n+4){display:none}
  .rt-barra{padding:10px 12px;gap:8px}
}
