/* ---------- Página de rastreio ---------- */
.rastreio-wrap{ max-width:620px; padding-bottom:60px; }

.rastreio-hero{ text-align:center; padding:18px 0 20px; }
.rastreio-icon{ font-size:38px; line-height:1; margin-bottom:6px; }
.rastreio-hero h1{
  font-family:var(--font-display); font-size:24px; font-weight:700;
  color:var(--pine-800); margin:0 0 6px;
}
.rastreio-hero p{ font-size:13.5px; color:var(--ink-600); max-width:440px; margin:0 auto; line-height:1.5; }

/* Pedido recente detectado no navegador */
.rastreio-recent{
  display:flex; align-items:center; justify-content:space-between; gap:12px;
  background:var(--pine-100); border:1.5px solid var(--pine-700); border-radius:12px;
  padding:12px 14px; margin-bottom:16px;
}
.rastreio-recent-txt{ display:flex; flex-direction:column; gap:2px; }
.rastreio-recent-txt strong{ font-size:13px; color:var(--pine-800); }
.rastreio-recent-txt span{ font-size:12px; color:var(--ink-600); }
.rastreio-recent button{
  flex:0 0 auto; padding:8px 14px; border-radius:9px; border:none; cursor:pointer;
  background:var(--pine-800); color:#fff; font-size:12.5px; font-weight:700;
}

/* Formulário de busca */
.rastreio-form{
  display:flex; flex-direction:column; gap:12px;
  background:var(--white); border:1px solid var(--linen-200); border-radius:14px;
  padding:18px; box-shadow:var(--shadow-card); margin-bottom:16px;
}
.rastreio-form .field{ display:flex; flex-direction:column; gap:5px; }
.rastreio-form label{ font-size:12.5px; font-weight:600; color:var(--ink-900); }
.rastreio-form input{
  padding:11px 12px; border-radius:9px; border:1.5px solid var(--linen-200);
  font-size:14px; font-family:var(--font-body); color:var(--ink-900); background:var(--linen-50);
}
.rastreio-form input:focus{ outline:none; border-color:var(--pine-700); }
.rastreio-btn{
  margin-top:4px; padding:13px; border-radius:10px; border:none; cursor:pointer;
  background:var(--cranberry-600); color:#fff; font-size:14.5px; font-weight:700;
}
.rastreio-btn:hover{ background:var(--cranberry-700); }

.rastreio-erro{
  background:#FBEAEA; border:1.5px solid var(--cranberry-500); color:var(--cranberry-700);
  border-radius:12px; padding:13px 14px; font-size:13px; line-height:1.5; margin-bottom:16px;
}
.rastreio-erro a{ color:var(--cranberry-700); font-weight:700; }

/* Resultado */
.rastreio-resultado{
  background:var(--white); border:1px solid var(--linen-200); border-radius:14px;
  padding:18px; box-shadow:var(--shadow-card);
}
.rastreio-resumo{
  display:flex; justify-content:space-between; gap:10px; flex-wrap:wrap;
  padding-bottom:14px; border-bottom:1px dashed var(--linen-200); margin-bottom:16px;
}
.rr-label{ font-size:10.5px; font-weight:700; text-transform:uppercase; letter-spacing:.04em; color:var(--ink-400); margin-bottom:2px; }
.rr-valor{ font-size:14px; font-weight:700; color:var(--ink-900); }

/* Linha do tempo */
.rastreio-timeline{ display:flex; flex-direction:column; margin-bottom:18px; }
.tl-step{ display:flex; gap:12px; padding-bottom:18px; position:relative; }
.tl-step:not(:last-child)::before{
  content:''; position:absolute; left:11px; top:24px; bottom:0; width:2px; background:var(--linen-200);
}
.tl-step.feita:not(:last-child)::before{ background:var(--pine-700); }
.tl-dot{
  flex:0 0 auto; width:24px; height:24px; border-radius:50%;
  border:2px solid var(--linen-200); background:var(--white);
  display:flex; align-items:center; justify-content:center;
  font-size:12px; font-weight:800; color:#fff; z-index:1;
}
.tl-step.feita .tl-dot{ background:var(--pine-700); border-color:var(--pine-700); }
.tl-step.atual .tl-dot{ border-color:var(--cranberry-600); background:var(--cranberry-600); box-shadow:0 0 0 4px rgba(193,51,71,.15); }
.tl-body{ padding-top:1px; }
.tl-label{ font-size:13.5px; font-weight:700; color:var(--ink-400); }
.tl-step.feita .tl-label{ color:var(--pine-800); }
.tl-step.atual .tl-label{ color:var(--cranberry-600); }
.tl-desc{ font-size:12px; color:var(--ink-400); margin-top:2px; line-height:1.4; }
.tl-step.feita .tl-desc, .tl-step.atual .tl-desc{ color:var(--ink-600); }

.rastreio-endereco, .rastreio-itens{
  padding:12px 0; border-top:1px dashed var(--linen-200);
}
.rr-endereco-txt{ font-size:13px; color:var(--ink-900); line-height:1.5; }
.rr-item-line{
  display:flex; justify-content:space-between; font-size:12.5px; color:var(--ink-900);
  padding:4px 0;
}

.rastreio-ajuda{
  margin-top:14px; padding-top:14px; border-top:1px dashed var(--linen-200);
  font-size:12.5px; color:var(--ink-600); text-align:center;
}
.rastreio-ajuda a{ color:var(--pine-800); font-weight:700; }

/* Confirmação de pedido dentro do checkout (pós-pagamento) */
.pedido-confirmado{
  margin-top:14px; padding:14px; border-radius:12px;
  background:var(--pine-100); border:1.5px solid var(--pine-700); text-align:center;
}
.pedido-confirmado-numero{ font-size:15px; font-weight:800; color:var(--pine-800); margin-bottom:4px; }
.pedido-confirmado p{ font-size:12.5px; color:var(--ink-600); margin:0 0 10px; }
.pedido-confirmado-btn{
  display:inline-block; padding:10px 18px; border-radius:9px;
  background:var(--pine-800); color:#fff; font-size:13px; font-weight:700; text-decoration:none;
}
