/* ══════════════════════════════════════════
   Focus Painel — CSS v1.0
══════════════════════════════════════════ */

/* ── LISTA DE PEDIDOS ─────────────────── */
.fp-lista-wrap { font-family: inherit; }

.fp-filtros { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:20px; }
.fp-filtro {
    background:#f0f0f0; border:1.5px solid #ddd; border-radius:20px;
    padding:7px 18px; font-size:13px; cursor:pointer; color:#555;
    transition:all .2s; font-family:inherit;
}
.fp-filtro.ativo, .fp-filtro:hover { background:#1a5fa8; color:#fff; border-color:#1a5fa8; }

.fp-lista { display:flex; flex-direction:column; gap:12px; }

.fp-card {
    display:flex; align-items:center; gap:16px;
    background:#fff; border:1px solid #e8e8e8; border-radius:12px;
    padding:14px 16px; transition:box-shadow .2s;
}
.fp-card:hover { box-shadow:0 4px 16px rgba(0,0,0,.08); }
.fp-card.fp-oculto { display:none; }

.fp-card-thumb { width:68px; height:68px; border-radius:8px; overflow:hidden; flex-shrink:0; background:#f5f5f5; display:flex; align-items:center; justify-content:center; }
.fp-card-thumb img { width:100%; height:100%; object-fit:cover; }
.fp-card-thumb-placeholder { font-size:2rem; }

.fp-card-info { flex:1; min-width:0; }
.fp-card-topo { display:flex; justify-content:space-between; align-items:center; margin-bottom:3px; }
.fp-card-num  { font-size:14px; font-weight:600; color:#222; }
.fp-card-data { font-size:12px; color:#999; }
.fp-card-produto { font-size:13px; color:#666; margin-bottom:8px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.fp-card-rodape { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.fp-card-valor { font-size:14px; font-weight:700; color:#1a5fa8; }

.fp-badge-etapa { font-size:12px; background:#eaf3ff; color:#0c447c; border:1px solid #b5d4f4; border-radius:20px; padding:3px 12px; }
.fp-badge       { font-size:12px; border-radius:20px; padding:3px 12px; border:1px solid transparent; }
.fp-badge-processing { background:#eaf3ff; color:#0c447c; border-color:#b5d4f4; }
.fp-badge-completed  { background:#f0fff4; color:#085041; border-color:#9fe1cb; }
.fp-badge-pending    { background:#fff8e6; color:#854f0b; border-color:#fac775; }
.fp-badge-cancelled  { background:#fff0f0; color:#8b1a1a; border-color:#f4a0a0; }

.fp-btn-ver {
    margin-left:auto; font-size:13px; color:#1a5fa8; text-decoration:none;
    font-weight:500; border:1px solid #1a5fa8; border-radius:6px; padding:5px 14px; transition:all .2s; white-space:nowrap;
}
.fp-btn-ver:hover { background:#1a5fa8; color:#fff; }

.fp-vazio { text-align:center; padding:48px 20px; color:#999; }
.fp-btn-primary { display:inline-block; margin-top:12px; background:#1a5fa8; color:#fff; text-decoration:none; padding:10px 24px; border-radius:8px; font-size:14px; }

/* ── DETALHE DO PEDIDO ────────────────── */
.fp-detalhe { max-width:800px; }

/* Cabeçalho */
.fp-dh { display:flex; justify-content:space-between; align-items:flex-start; flex-wrap:wrap; gap:12px; margin-bottom:20px; }
.fp-dh-titulo { font-size:1.4rem !important; font-weight:700 !important; margin:0 0 4px !important; color:#222; }
.fp-dh-data { font-size:13px; color:#888; display:flex; align-items:center; gap:4px; }
.fp-status { font-size:13px; font-weight:500; border-radius:20px; padding:5px 14px; }
.fp-status-processing,.fp-status-completed { background:#e8f5e9; color:#2e7d32; }
.fp-status-pending    { background:#fff8e6; color:#e65100; }
.fp-status-cancelled  { background:#ffebee; color:#c62828; }

/* Produtos */
.fp-produtos-box { border:1px solid #e8e8e8; border-radius:10px; overflow:hidden; margin-bottom:20px; }
.fp-produtos-head { display:grid; grid-template-columns:1fr 140px 100px; background:#f7f7f7; padding:10px 16px; font-size:12px; font-weight:600; color:#777; text-transform:uppercase; letter-spacing:.4px; }
.fp-produto-row  { display:grid; grid-template-columns:1fr 140px 100px; padding:16px; border-top:1px solid #f0f0f0; align-items:start; gap:8px; }
.fp-produto-info { display:flex; gap:12px; align-items:flex-start; }
.fp-produto-thumb { width:64px; height:64px; object-fit:cover; border-radius:8px; border:1px solid #eee; flex-shrink:0; }
.fp-produto-texto strong { display:block; font-size:14px; color:#222; margin-bottom:4px; }
.fp-meta { display:block; font-size:12px; color:#777; line-height:1.7; }
.fp-produto-qtd   { font-size:13px; color:#555; padding-top:4px; }
.fp-produto-total { font-size:14px; font-weight:700; color:#1a5fa8; padding-top:4px; }

/* Arquivo inline no produto (miniatura) */
.fp-arquivo-inline {
    display:inline-flex; align-items:center; gap:6px;
    margin-top:6px; font-size:12px; color:#1a5fa8; text-decoration:none;
    background:#f0f6ff; border:1px solid #b5d4f4; border-radius:6px; padding:4px 10px 4px 6px;
}
.fp-arquivo-inline:hover { background:#daeaff; }
.fp-arquivo-thumb { width:32px; height:32px; object-fit:cover; border-radius:4px; }
.fp-arquivo-icone { font-size:18px; }
.fp-arquivo-nome  { max-width:200px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }

/* Timeline */
.fp-timeline { margin-bottom:16px; padding:20px; background:#fff; border:1px solid #e8e8e8; border-radius:10px; }

.fp-tl-row   { display:flex; gap:14px; }
.fp-tl-esq   { display:flex; flex-direction:column; align-items:center; width:32px; flex-shrink:0; }
.fp-tl-bolinha {
    width:32px; height:32px; border-radius:50%; border:2px solid #ddd;
    display:flex; align-items:center; justify-content:center;
    background:#fff; flex-shrink:0; z-index:1;
}
.fp-tl-feita  .fp-tl-bolinha { background:#f5f5f5; border-color:#bbb; color:#888; }
.fp-tl-atual  .fp-tl-bolinha { background:#e87722; border-color:#e87722; box-shadow:0 0 0 4px rgba(232,119,34,.15); }
.fp-tl-futura .fp-tl-bolinha { background:#fff; border-color:#e0e0e0; }
.fp-tl-dot-inner { width:10px; height:10px; border-radius:50%; background:#fff; }

.fp-tl-linha     { width:2px; flex:1; min-height:16px; margin:3px 0; }
.fp-tl-linha-on  { background:#bbb; }
.fp-tl-linha-off { background:#e8e8e8; }

.fp-tl-corpo { flex:1; padding:5px 0 20px; }
.fp-tl-row:last-child .fp-tl-corpo { padding-bottom:0; }

.fp-tl-label { font-size:14px; font-weight:500; color:#555; }
.fp-tl-atual  .fp-tl-label { color:#e87722; font-weight:700; font-size:15px; }
.fp-tl-feita  .fp-tl-label { color:#999; }
.fp-tl-futura .fp-tl-label { color:#bbb; font-weight:400; }

.fp-tl-desc   { font-size:13px; color:#555; margin:4px 0 0; }
.fp-tl-prazo  { font-size:12px; color:#888; margin:4px 0 0; }
.fp-tl-rastreio { font-size:13px; color:#555; margin:6px 0 0; }
.fp-tl-rastreio a { color:#1a5fa8; }

/* Previsão */
.fp-previsao {
    display:flex; align-items:center; gap:8px; font-size:13px; color:#444;
    padding:10px 16px; background:#f5f5f5; border-left:3px solid #1a5fa8;
    border-radius:6px; margin-bottom:16px;
}

/* Arquivo disponível */
.fp-arquivo-box { background:#fafafa; border:1px solid #e8e8e8; border-radius:10px; padding:16px; margin-bottom:16px; }
.fp-arquivo-titulo { font-size:13px; font-weight:600; color:#333; margin-bottom:10px; }
.fp-arquivo-row {
    display:flex; align-items:center; gap:10px; padding:10px 12px;
    background:#fff; border:1px solid #e0e0e0; border-radius:8px;
    text-decoration:none; color:#333; margin-bottom:6px; font-size:13px; transition:all .2s;
}
.fp-arquivo-row:hover { border-color:#1a5fa8; background:#eaf3ff; color:#1a5fa8; }
.fp-arquivo-row:last-of-type { margin-bottom:0; }
.fp-arquivo-row-ico  { font-size:20px; flex-shrink:0; }
.fp-arquivo-row-nome { flex:1; word-break:break-all; font-weight:500; }
.fp-arquivo-row-dl   { font-size:12px; color:#1a5fa8; font-weight:600; background:#eaf3ff; border:1px solid #b5d4f4; border-radius:4px; padding:3px 8px; flex-shrink:0; }
.fp-arquivo-lock { margin-top:10px; font-size:12px; background:#fff8e6; border:1px solid #fac775; border-radius:6px; padding:8px 12px; color:#854f0b; }
.fp-arquivo-lock a { color:#1a5fa8; }

/* Upload */
.fp-upload-box { margin-bottom:16px; }

/* Retirada */
.fp-retirada-box { background:#f0fff4; border:1px solid #9fe1cb; border-radius:10px; padding:16px; margin-bottom:16px; font-size:13px; color:#085041; line-height:1.7; }
.fp-retirada-titulo { font-weight:600; font-size:14px; margin-bottom:8px; }
.fp-retirada-box p { margin:0 0 4px; }

/* Comprar novamente */
.fp-reorder-wrap { display:flex; align-items:center; gap:12px; flex-wrap:wrap; margin-bottom:16px; }
.fp-btn-reorder {
    background:#111; color:#fff; border:none; border-radius:8px;
    padding:11px 24px; font-size:14px; font-weight:600; cursor:pointer; font-family:inherit; transition:background .2s;
}
.fp-btn-reorder:hover   { background:#333; }
.fp-btn-reorder.loading { background:#888; cursor:wait; }
.fp-btn-reorder.ok      { background:#27ae60; }
.fp-btn-reorder:disabled{ opacity:.7; cursor:default; }
.fp-reorder-msg { font-size:13px; padding:8px 12px; border-radius:6px; display:none; }
.fp-reorder-msg.ok  { background:#f0fff4; border:1px solid #9fe1cb; color:#085041; display:block; }
.fp-reorder-msg.ok a { color:#1a5fa8; font-weight:600; }
.fp-reorder-msg.err { background:#fff0f0; border:1px solid #f4a0a0; color:#8b1a1a; display:block; }

/* Totais */
.fp-totais { border:1px solid #e8e8e8; border-radius:10px; overflow:hidden; margin-bottom:16px; }
.fp-total-row { display:flex; justify-content:space-between; padding:10px 16px; font-size:13px; color:#555; border-bottom:1px solid #f0f0f0; }
.fp-total-row:last-child { border-bottom:none; }
.fp-total-desc  { color:#27ae60; }
.fp-total-final { font-size:15px !important; font-weight:700 !important; color:#222 !important; background:#f9f9f9; }

/* Voltar */
.fp-voltar { display:inline-block; font-size:13px; color:#1a5fa8; text-decoration:none; border:1px solid #b5d4f4; border-radius:6px; padding:7px 16px; transition:all .2s; }
.fp-voltar:hover { background:#1a5fa8; color:#fff; }

/* Responsivo */
@media(max-width:600px){
    .fp-card          { flex-direction:column; align-items:flex-start; }
    .fp-card-thumb    { width:100%; height:120px; }
    .fp-card-thumb img{ width:100%; height:100%; }
    .fp-btn-ver       { margin-left:0; }
    .fp-produtos-head { display:none; }
    .fp-produto-row   { grid-template-columns:1fr; }
}
