/* ==========================================================================
   Painel do Dia — "Nova tela inicial (TESTE)" (ts/modules/painel-dia/painel-dia.ts). Tudo com prefixo pd-.
   Claro por padrão; tema escuro do sistema pelas variáveis em html[data-tema-app="escuro"].
   ========================================================================== */
.pd-raiz, .pd-gaveta {
    --pd-fundo: #f4f2ec; --pd-card: #fff; --pd-borda: #e4ded2; --pd-txt: #334155; --pd-suave: #64748b; --pd-azul: #152e50; --pd-ouro: #fac043;
    --pd-linha: #f0ece3; --pd-grade: #f1ede4; --pd-chip: #fff; --pd-sombra: rgba(21,46,80,.08);
    color: var(--pd-txt); border-radius: 20px;
    font-family: Inter, system-ui, "Segoe UI", Roboto, sans-serif; font-size: 14px;
}
html[data-tema-app="escuro"] .pd-raiz, html[data-tema-app="escuro"] .pd-gaveta {
    --pd-fundo: #0b1626; --pd-card: #10233d; --pd-borda: #1e3556; --pd-txt: #cbd5e1; --pd-suave: #8fa6c8; --pd-azul: #e6eefb; --pd-linha: #1b3052; --pd-grade: #17294a; --pd-chip: #14294a; --pd-sombra: rgba(0,0,0,.3);
}
.pd-pagina { max-width: 1500px; margin: 0 auto; padding: 4px 0 24px; display: flex; flex-direction: column; gap: 14px; min-height: 100%; }
.pd-topo { display: flex; align-items: center; gap: 14px 18px; flex-wrap: wrap; position: relative; }
.pd-topo h2 { margin: 0; font-size: 22px; letter-spacing: -.02em; color: var(--pd-azul); display: flex; align-items: center; gap: 10px; }
.pd-topo p { margin: 2px 0 0; color: var(--pd-suave); font-size: 13px; }
.pd-chips { display: flex; gap: 8px; flex-wrap: wrap; }
.pd-chip { display: inline-flex; align-items: center; gap: 6px; height: 32px; padding: 0 12px; border-radius: 999px; background: var(--pd-chip); border: 1px solid var(--pd-borda); font-weight: 700; font-size: 12.5px; color: var(--pd-azul); white-space: nowrap; }
.pd-chip b { font-size: 15px; }
.pd-chip i { color: var(--pd-suave); font-size: 12px; }
.pd-chip.pd-erro { background: #fef2f2; border-color: #fecaca; color: #b91c1c; } .pd-chip.pd-erro i { color: #dc2626; }
html[data-tema-app="escuro"] .pd-chip.pd-erro { background: #3a1a1f; border-color: #7f1d1d; color: #fca5a5; }
.pd-chip.pd-vivo { color: #047857; background: #ecfdf5; border-color: #a7f3d0; }
html[data-tema-app="escuro"] .pd-chip.pd-vivo { background: #0f2a22; border-color: #14532d; color: #6ee7b7; }
.pd-ponto { width: 8px; height: 8px; border-radius: 50%; background: #10b981; animation: pd-p 1.8s infinite; }
@keyframes pd-p { 0% { box-shadow: 0 0 0 0 rgba(16,185,129,.6); } 70% { box-shadow: 0 0 0 8px rgba(16,185,129,0); } 100% { box-shadow: 0 0 0 0 rgba(16,185,129,0); } }
.pd-x { position: absolute; right: 0; top: 0; width: 40px; height: 40px; border-radius: 12px; border: 1px solid var(--pd-borda); background: var(--pd-card); color: var(--pd-azul); cursor: pointer; font-size: 16px; }
.pd-x:hover { background: var(--pd-ouro); border-color: var(--pd-ouro); color: #152e50; }
.pd-card { background: var(--pd-card); border: 1px solid var(--pd-borda); border-radius: 20px; box-shadow: 0 1px 2px var(--pd-sombra); }
.pd-gantt { display: flex; flex-direction: column; overflow: hidden; }
.pd-cab { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; padding: 14px 18px 10px; }
.pd-t { font-weight: 900; text-transform: uppercase; letter-spacing: .05em; font-size: 12.5px; color: var(--pd-azul); }
.pd-seg-ctl { display: inline-flex; background: var(--pd-grade); border-radius: 11px; padding: 3px; }
.pd-seg-ctl button { border: 0; background: transparent; font: inherit; font-weight: 800; font-size: 12px; color: var(--pd-suave); padding: 5px 12px; border-radius: 8px; cursor: pointer; }
.pd-seg-ctl button.on { background: var(--pd-card); color: var(--pd-azul); box-shadow: 0 1px 2px var(--pd-sombra); }
.pd-leg { display: flex; gap: 12px; margin-left: auto; font-size: 12px; color: var(--pd-suave); font-weight: 700; flex-wrap: wrap; }
.pd-leg i { display: inline-block; width: 10px; height: 10px; border-radius: 3px; margin-right: 5px; vertical-align: -1px; }
.pd-b-agu { border: 2px dashed #0d9488; background: rgba(13,148,136,.18); } .pd-b-car { background: #f97316; } .pd-b-carr { background: #eab308; } .pd-b-rota { background: #2563eb; } .pd-b-ent { background: #10b981; } .pd-b-ter { background: #a855f7; } .pd-b-prg { border: 2px dashed #94a3b8; background: transparent; }
.pd-corpo { overflow: auto; position: relative; padding: 0 18px 14px; max-height: 520px; min-height: 160px; }
.pd-largura { min-width: 0; position: relative; }   /* no computador o dia inteiro cabe na largura (sem rolar para o lado) */
.pd-eixo, .pd-lane { display: grid; grid-template-columns: 190px 1fr; }
.pd-eixo { position: sticky; top: 0; background: var(--pd-card); z-index: 3; border-bottom: 1px solid var(--pd-borda); }
.pd-horas { position: relative; height: 30px; }
.pd-horas span { position: absolute; top: 6px; transform: translateX(-50%); font-size: 11.5px; font-weight: 800; color: var(--pd-suave); }
.pd-lane { align-items: center; border-bottom: 1px solid var(--pd-linha); height: 78px; }
.pd-quem { display: flex; gap: 10px; align-items: center; min-width: 0; padding-right: 10px; }
.pd-quem b { display: block; font-size: 13.5px; color: var(--pd-azul); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.pd-quem small { display: block; color: var(--pd-suave); font-size: 11.5px; font-weight: 700; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.pd-quem > div { min-width: 0; }
.pd-av { width: 34px; height: 34px; border-radius: 50%; background: #152e50; color: var(--pd-ouro); display: flex; align-items: center; justify-content: center; font-weight: 900; font-size: 12px; flex: none; }
.pd-pista { position: relative; height: 100%; background-image: linear-gradient(90deg, var(--pd-grade) 1px, transparent 1px); background-size: calc(100% / 14) 100%; }
.pd-seg { position: absolute; top: 22px; height: 34px; border-radius: 11px; border: 0; display: flex; align-items: center; gap: 6px; padding: 0 10px; font: inherit; font-size: 12px; font-weight: 800; color: #fff; cursor: pointer; white-space: nowrap; overflow: hidden; transition: transform .15s, box-shadow .15s; }
.pd-seg { min-width: 40px; }
.pd-seg.pd-icone { padding: 0; justify-content: center; } .pd-seg.pd-icone span { display: none; }
.pd-fora { display: none; position: absolute; top: 4px; z-index: 3; max-width: 260px; pointer-events: none; line-height: 1.15; white-space: nowrap; }
.pd-fora.on { display: block; } .pd-fora.baixo { top: 59px; }
.pd-fora b { display: block; font-size: 11.5px; font-weight: 900; color: var(--pd-azul); overflow: hidden; text-overflow: ellipsis; }
.pd-fora small { display: block; font-size: 10.5px; font-weight: 700; color: var(--pd-suave); overflow: hidden; text-overflow: ellipsis; }
.pd-fora[data-tipo="carregando"] b { color: #c2410c; } .pd-fora[data-tipo="carregou"] b { color: #a16207; } .pd-fora[data-tipo="rota"] b { color: #1d4ed8; } .pd-fora[data-tipo="entregando"] b { color: #047857; }
html[data-tema-app="escuro"] .pd-fora[data-tipo="carregando"] b { color: #fdba74; } html[data-tema-app="escuro"] .pd-fora[data-tipo="carregou"] b { color: #fde047; } html[data-tema-app="escuro"] .pd-fora[data-tipo="rota"] b { color: #93c5fd; } html[data-tema-app="escuro"] .pd-fora[data-tipo="entregando"] b { color: #6ee7b7; }
.pd-seg span { overflow: hidden; text-overflow: ellipsis; }
.pd-seg:hover, .pd-seg:focus-visible { transform: translateY(-2px); box-shadow: 0 8px 18px -8px rgba(21,46,80,.55); z-index: 2; outline: 2px solid var(--pd-ouro); outline-offset: 1px; }
.pd-agu { background: color-mix(in srgb, var(--pd-cor, #64748b) 14%, var(--pd-card)); border: 2px dashed var(--pd-cor, #64748b); border-left: 6px solid var(--pd-cor, #64748b); color: var(--pd-azul); }
.pd-car { background: linear-gradient(135deg, #ea580c, #fb923c); color: #fff; }
.pd-car i, .pd-carrinho { animation: pd-p2 1.6s ease-in-out infinite; }
.pd-carrinho { display: inline-block; }   /* Programação Semanal: selo "Carregando" com o carrinho pulsando */
.pd-carr { background: linear-gradient(135deg, #ca8a04, #facc15); color: #422006; }
@keyframes pd-p2 { 50% { transform: scale(1.25); } }
.pd-rota { background: linear-gradient(90deg, #1d4ed8, #3b82f6); }
.pd-ent { background: linear-gradient(90deg, #059669, #34d399); }
.pd-conc { background: repeating-linear-gradient(135deg, #94a3b8 0 6px, #a7b4c6 6px 12px); color: #1e293b; }
.pd-prev { background: transparent; border: 2px dashed #60a5fa; color: #2563eb; }
.pd-prg { background: color-mix(in srgb, var(--pd-cor, #94a3b8) 14%, var(--pd-card)); border: 2px dashed var(--pd-cor, #94a3b8); color: var(--pd-azul); border-left-width: 6px; border-left-style: solid; }
.pd-ter.pd-rota { background: linear-gradient(90deg, #7c3aed, #a855f7); } .pd-ter.pd-ent { background: linear-gradient(90deg, #9333ea, #c084fc); }
.pd-occ { position: absolute; top: 16px; width: 22px; height: 22px; margin-left: -16px; border-radius: 50%; background: #dc2626; color: #fff; font-size: 12px; font-weight: 900; display: flex; align-items: center; justify-content: center; border: 2px solid #fff; z-index: 4; box-shadow: 0 2px 6px rgba(220,38,38,.5); pointer-events: none; }
.pd-agora { position: absolute; top: 0; bottom: 0; width: 2px; background: #ef4444; z-index: 5; pointer-events: none; }
.pd-agora span { position: absolute; top: 2px; left: 50%; transform: translateX(-50%); background: #ef4444; color: #fff; font-size: 10.5px; font-weight: 900; padding: 2px 7px; border-radius: 6px; white-space: nowrap; }
.pd-baixo { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; align-items: stretch; }
@media (max-width: 1500px) { .pd-baixo { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.pd-baixo .pd-card { padding: 14px 16px; }
.pd-baixo h3 { margin: 0 0 8px; font-size: 12px; text-transform: uppercase; letter-spacing: .05em; color: var(--pd-azul); }
.pd-lin { display: flex; gap: 10px; align-items: center; padding: 7px 0; border-bottom: 1px solid var(--pd-linha); }
.pd-lin:last-child { border: 0; } .pd-lin time { font-weight: 900; color: var(--pd-azul); width: 48px; flex: none; } .pd-lin span { flex: 1; font-weight: 700; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pd-lin em { font-style: normal; font-size: 11px; font-weight: 900; text-transform: uppercase; border-radius: 6px; padding: 2px 7px; color: #fff; background: #10b981; } .pd-lin em.coleta { background: #f59e0b; }
.pd-al { display: flex; gap: 10px; align-items: flex-start; padding: 8px 10px; border-radius: 12px; margin-bottom: 6px; font-size: 13px; background: #eff6ff; }
.pd-al[onclick] { cursor: pointer; } .pd-al[onclick]:hover { filter: brightness(.97); }
.pd-al b { display: block; color: #0f172a; } .pd-al small { color: #475569; }
.pd-al.n0 { background: #fef2f2; } .pd-al.n0 i { color: #dc2626; } .pd-al.n1 { background: #fffbeb; } .pd-al.n1 i { color: #d97706; } .pd-al.n2 i { color: #2563eb; }
.pd-al i { margin-top: 3px; }
.pd-vazio { color: var(--pd-suave); font-size: 13px; margin: 6px 0; } .pd-ok { color: #047857; font-weight: 700; }
.pd-vazio.pd-grande { display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 40px 20px; text-align: center; } .pd-vazio.pd-grande i { font-size: 30px; opacity: .6; } .pd-vazio.pd-grande b { color: var(--pd-azul); font-size: 15px; }
.pd-kp { display: flex; gap: 10px; } .pd-kp div { flex: 1; text-align: center; padding: 8px 6px; border-radius: 12px; background: var(--pd-grade); }
.pd-kp b { display: block; font-size: 26px; color: var(--pd-azul); letter-spacing: -.02em; } .pd-kp small { font-size: 10px; font-weight: 800; text-transform: uppercase; color: var(--pd-suave); white-space: nowrap; }
.pd-funil { display: flex; gap: 6px; margin-top: 10px; flex-wrap: wrap; }
.pd-fun { display: inline-flex; align-items: center; gap: 6px; font-size: 11.5px; font-weight: 800; color: #fff; background: var(--pd-cor); border-radius: 8px; padding: 4px 9px; } .pd-fun b { font-size: 14px; }
/* gaveta de detalhes */
.pd-gaveta { position: fixed; right: 0; top: 0; bottom: 0; width: min(400px, 100%); background: var(--pd-card); border-left: 1px solid var(--pd-borda); box-shadow: -20px 0 50px -30px rgba(21,46,80,.5); transform: translateX(105%); transition: transform .3s cubic-bezier(.2,.8,.2,1); z-index: 70; display: flex; flex-direction: column; overflow: auto; font-family: Inter, system-ui, "Segoe UI", Roboto, sans-serif; font-size: 14px; color: var(--pd-txt); }
.pd-gaveta.on { transform: none; }
.pd-gaveta header { background: #152e50; color: #fff; padding: 18px 20px; border-bottom: 4px solid var(--pd-ouro); position: relative; }
.pd-gaveta header b { font-size: 18px; display: block; } .pd-gaveta header small { color: #b8c7de; }
.pd-gaveta .pd-x { right: 14px; top: 14px; width: 32px; height: 32px; border-radius: 10px; background: rgba(255,255,255,.12); border: 0; color: #fff; }
.pd-gc { padding: 18px 20px; display: flex; flex-direction: column; gap: 14px; }
.pd-gc .pd-chip { align-self: flex-start; }
.pd-car small { display: block; font-size: 11.5px; font-weight: 800; text-transform: uppercase; color: var(--pd-suave); } .pd-car b { color: var(--pd-azul); font-size: 15px; }
.pd-passos { position: relative; margin-left: 8px; }
.pd-passos > div { position: relative; padding: 0 0 14px 22px; border-left: 2px solid var(--pd-borda); font-size: 13px; }
.pd-passos > div:last-child { border-color: transparent; padding-bottom: 2px; }
.pd-passos > div::before { content: ""; position: absolute; left: -7px; top: 2px; width: 12px; height: 12px; border-radius: 50%; background: var(--pd-card); border: 3px solid #94a3b8; }
.pd-passos .ok::before { border-color: #10b981; background: #10b981; }
.pd-passos .at::before { border-color: #2563eb; background: #2563eb; box-shadow: 0 0 0 5px rgba(37,99,235,.18); }
.pd-passos b { color: var(--pd-azul); display: block; } .pd-passos small { color: var(--pd-suave); display: block; }
.pd-prog > div:first-child { display: flex; justify-content: space-between; font-size: 12px; font-weight: 800; color: var(--pd-suave); text-transform: uppercase; } .pd-prog b { color: var(--pd-azul); }
.pd-barra { height: 8px; border-radius: 5px; background: var(--pd-grade); overflow: hidden; margin-top: 6px; } .pd-barra i { display: block; height: 100%; background: linear-gradient(90deg, #2563eb, #60a5fa); }
.pd-paradas { display: flex; flex-direction: column; }
.pd-par { display: flex; gap: 10px; padding: 8px 0; border-bottom: 1px solid var(--pd-linha); } .pd-par:last-child { border: 0; }
.pd-par b { display: block; color: var(--pd-azul); font-size: 13.5px; } .pd-par small { color: var(--pd-suave); }
.pd-par i { margin-top: 3px; } .pd-par .ok { color: #10b981; } .pd-par .er { color: #dc2626; } .pd-par .pe { color: #94a3b8; }
.pd-bts { display: flex; gap: 8px; } .pd-bt { flex: 1; height: 40px; border-radius: 12px; border: 1px solid var(--pd-borda); background: var(--pd-card); font: inherit; font-weight: 800; color: var(--pd-azul); cursor: pointer; }
.pd-bt.p { background: #152e50; color: var(--pd-ouro); border-color: #152e50; }
html[data-tema-app="escuro"] .pd-bt.p { background: var(--pd-ouro); color: #152e50; border-color: var(--pd-ouro); }
/* ---- v3: cartões de número, meio em duas colunas, semana e funil ---- */
.pd-topo { justify-content: space-between; }
.pd-ola h2 { font-size: 26px; font-weight: 800; }
.pd-kpis { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 14px; }
.pd-kpi { background: var(--pd-card); border: 1px solid var(--pd-borda); border-radius: 18px; padding: 14px 16px; box-shadow: 0 1px 2px var(--pd-sombra); display: flex; flex-direction: column; gap: 4px; min-width: 0; transition: transform .15s, box-shadow .15s; }
.pd-kpi:hover { transform: translateY(-2px); box-shadow: 0 12px 24px -16px rgba(21,46,80,.45); }
.pd-kpi-top { display: flex; align-items: center; gap: 10px; }
.pd-kpi-r { font-size: 11.5px; font-weight: 800; text-transform: uppercase; letter-spacing: .04em; color: var(--pd-suave); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.pd-kpi > b { font-size: 32px; line-height: 1.1; color: var(--pd-azul); letter-spacing: -.03em; margin-top: 4px; }
.pd-kpi > b em { font-style: normal; font-size: 18px; color: var(--pd-suave); font-weight: 700; }
.pd-kpi > small { font-size: 12px; color: var(--pd-suave); font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.pd-ic { width: 34px; height: 34px; border-radius: 11px; display: flex; align-items: center; justify-content: center; font-size: 15px; flex: none; }
.pd-ic-azul { background: #e0e9fb; color: #1d4ed8; } .pd-ic-verde { background: #dcf5ec; color: #047857; } .pd-ic-ouro { background: #fdf0cf; color: #a16207; } .pd-ic-roxo { background: #efe4fd; color: #7c3aed; } .pd-ic-cinza { background: #e9edf3; color: #152e50; }
html[data-tema-app="escuro"] .pd-ic { background: rgba(255,255,255,.08); }
.pd-mbar { height: 6px; border-radius: 4px; background: var(--pd-grade); overflow: hidden; margin: 2px 0; } .pd-mbar i { display: block; height: 100%; background: linear-gradient(90deg, #059669, #34d399); border-radius: 4px; }
.pd-meio { display: grid; grid-template-columns: minmax(0, 1fr) 360px; gap: 14px; align-items: start; }
.pd-lado { display: flex; flex-direction: column; gap: 14px; }
.pd-bloco { padding: 16px 18px; }
.pd-bloco h3 { margin: 0 0 10px; font-size: 12px; text-transform: uppercase; letter-spacing: .05em; color: var(--pd-azul); display: flex; align-items: center; gap: 8px; }
.pd-bloco h3 small { text-transform: none; letter-spacing: 0; color: var(--pd-suave); font-weight: 600; font-size: 11.5px; }
.pd-badge { background: #dc2626; color: #fff; border-radius: 999px; padding: 1px 8px; font-size: 11px; }
.pd-sub { margin: 0 0 4px; font-size: 12px; color: var(--pd-suave); font-weight: 600; }
.pd-lin time.pd-data { display: flex; flex-direction: column; line-height: 1.15; font-size: 12px; width: 52px; } .pd-data b { text-transform: capitalize; color: var(--pd-suave); font-size: 11px; }
.pd-lin em { white-space: nowrap; }
.pd-al { align-items: center; } .pd-al-ic { width: 30px; height: 30px; border-radius: 10px; display: flex; align-items: center; justify-content: center; flex: none; background: rgba(255,255,255,.7); }
.pd-al i { margin-top: 0; }
.pd-tudo-ok { display: flex; gap: 12px; align-items: center; padding: 12px; border-radius: 14px; background: linear-gradient(135deg, #ecfdf5, #f0fdf9); border: 1px solid #bbf7d0; }
.pd-tudo-ok > span { width: 40px; height: 40px; border-radius: 12px; background: #10b981; color: #fff; display: flex; align-items: center; justify-content: center; font-size: 18px; flex: none; }
.pd-tudo-ok b { display: block; color: #065f46; } .pd-tudo-ok small { color: #047857; }
html[data-tema-app="escuro"] .pd-tudo-ok { background: #0f2a22; border-color: #14532d; } html[data-tema-app="escuro"] .pd-tudo-ok b, html[data-tema-app="escuro"] .pd-tudo-ok small { color: #6ee7b7; }
.pd-cab > div:first-child { display: flex; flex-direction: column; } .pd-cab-sub { color: var(--pd-suave); font-size: 12px; font-weight: 600; }
.pd-livre { position: absolute; left: 12px; top: 50%; transform: translateY(-50%); font-size: 12px; font-weight: 700; color: #047857; background: #ecfdf5; border: 1px dashed #a7f3d0; border-radius: 999px; padding: 4px 12px; }
html[data-tema-app="escuro"] .pd-livre { background: #0f2a22; border-color: #14532d; color: #6ee7b7; }
.pd-lane-livre { height: 50px; } .pd-lane-livre .pd-quem b { color: var(--pd-suave); }
.pd-av-ativo { box-shadow: 0 0 0 3px #10b981; } .pd-av-livre { background: var(--pd-grade); color: var(--pd-suave); }
.pd-barras { display: grid; grid-template-columns: repeat(6, 1fr); gap: 10px; align-items: end; height: 170px; }
.pd-col { display: flex; flex-direction: column; align-items: center; gap: 4px; height: 100%; }
.pd-col-n { font-weight: 900; color: var(--pd-azul); font-size: 15px; }
.pd-col-b { flex: 1; width: 100%; max-width: 46px; background: var(--pd-grade); border-radius: 10px; display: flex; align-items: flex-end; overflow: hidden; }
.pd-col-b i { display: block; width: 100%; background: linear-gradient(180deg, #3b82f6, #1d4ed8); border-radius: 10px; }
.pd-col.hoje .pd-col-b i { background: linear-gradient(180deg, #fcd34d, #f59e0b); } .pd-col.hoje small:first-of-type { color: #b45309; }
.pd-col small { font-size: 11.5px; font-weight: 800; color: var(--pd-suave); } .pd-col .pd-col-d { font-weight: 600; font-size: 10.5px; margin-top: -4px; }
.pd-pilha { display: flex; height: 14px; border-radius: 8px; overflow: hidden; background: var(--pd-grade); margin: 6px 0 14px; } .pd-pilha i { display: block; height: 100%; }
.pd-fls { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px 14px; }
.pd-fl { display: flex; align-items: center; gap: 8px; padding: 8px 10px; border-radius: 12px; background: var(--pd-grade); font-size: 12.5px; font-weight: 700; color: var(--pd-txt); }
.pd-fl i { width: 10px; height: 10px; border-radius: 3px; flex: none; } .pd-fl span { flex: 1; min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } .pd-fl b { font-size: 16px; color: var(--pd-azul); }
/* nomes fixos à esquerda quando a linha do tempo rola para o lado */
.pd-quem { position: sticky; left: 0; z-index: 6; background: var(--pd-card); height: 100%; box-shadow: 8px 0 10px -10px var(--pd-sombra); }
.pd-eixo > div:first-child { position: sticky; left: 0; z-index: 6; background: var(--pd-card); }
.pd-kpi > small { white-space: normal; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; line-height: 1.35; }
@media (max-width: 1100px) { .pd-largura { min-width: 820px; } }
@media (max-width: 1280px) { .pd-kpis { grid-template-columns: repeat(3, minmax(0, 1fr)); } .pd-meio { grid-template-columns: 1fr; } }
@media (max-width: 900px) {
    .pd-pagina { padding: 4px 0 20px; } .pd-baixo { grid-template-columns: 1fr; } .pd-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); } .pd-fls { grid-template-columns: repeat(2, minmax(0, 1fr)); } .pd-leg { margin-left: 0; } .pd-eixo, .pd-lane { grid-template-columns: 130px 1fr; }
    .pd-topo h2 { font-size: 18px; } .pd-corpo { max-height: none; }
}
/* botão no cabeçalho */
.pd-botao-teste { position: relative; }
#btnPainelDia[aria-pressed="true"] { background: #fac043; color: #152e50; }
@media (prefers-reduced-motion: reduce) { .pd-ponto, .pd-car i, .pd-carrinho { animation: none; } .pd-gaveta { transition: none; } }
/* Modo TV: o painel de teste não entra (a TV mostra só a Programação) */
html[data-modo-tv] #btnPainelDia { display: none !important; }
