/* Base de afiliadas (afiliadas-base.js) */
.bf-abas { margin: 4px 0 16px; flex-wrap: wrap; }
.bf-abas .bf-breve { opacity: .45; cursor: not-allowed; position: relative; }
.bf-abas .bf-breve small { display: block; font-size: 10px; color: var(--cinza); }
.bf-kps { display: grid; grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); gap: 12px; margin-bottom: 16px; }
.bf-kp { all: unset; box-sizing: border-box; cursor: pointer; background: #fff; border-radius: 16px; padding: 14px 16px; box-shadow: var(--sombra); display: flex; flex-direction: column; gap: 2px; }
.bf-kp b { font-size: 28px; line-height: 1.1; font-variant-numeric: tabular-nums; }
.bf-kp span { font-size: 13px; color: var(--cinza); }
.bf-kp.r b { color: #D92D20; } .bf-kp.v b { color: var(--verde); }
.bf-kp:hover, .bf-kp:focus-visible { box-shadow: 0 0 0 2px var(--vz-rosa) inset; }
.bf-duas { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.bf-duas h3 { font-size: 16px; margin: 0 0 8px; }
@media (max-width: 900px) { .bf-duas { grid-template-columns: minmax(0, 1fr); } }
.bf-tags { display: flex; flex-wrap: wrap; gap: 6px; } .bf-tags span { background: var(--fundo); border-radius: 99px; padding: 4px 10px; font-size: 13px; }
.bf-seg { margin-bottom: 12px; flex-wrap: wrap; }
.bf-av { border-radius: 50%; object-fit: cover; flex-shrink: 0; }
.bf-ficha { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: 14px; }
@media (max-width: 860px) { .bf-ficha { grid-template-columns: minmax(0, 1fr); } }
.bf-dados { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.bf-dados > div { display: flex; flex-direction: column; gap: 2px; } .bf-dados small { color: var(--cinza); font-size: 12px; }
.bf-li { padding: 6px 0; border-top: 1px solid var(--linha); font-size: 13.5px; }
.bf-camps { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 14px; }
.bf-camp { all: unset; box-sizing: border-box; cursor: pointer; background: #fff; border-radius: 18px; overflow: hidden; box-shadow: var(--sombra); display: flex; flex-direction: column; }
.bf-camp:hover, .bf-camp:focus-visible { box-shadow: 0 0 0 2px var(--vz-rosa) inset; }
.bf-camp-f { position: relative; aspect-ratio: 4/3; background: var(--fundo); display: grid; place-items: center; }
.bf-camp-f img:not(.vz-3d) { width: 100%; height: 100%; object-fit: cover; }
.bf-camp-f i { position: absolute; left: 8px; top: 8px; font-style: normal; font-size: 11px; font-weight: 700; background: var(--vz-rosa); color: #fff; border-radius: 99px; padding: 2px 8px; }
.bf-camp-t { padding: 12px 14px 14px; display: flex; flex-direction: column; gap: 4px; }
.bf-camp-t small { color: var(--cinza); font-size: 12px; } .bf-camp-t b { font-size: 15px; } .bf-camp-t span { font-size: 12.5px; color: var(--tinta-2); }
.bf-camp-t .chip { align-self: flex-start; margin-top: 4px; }
.bf-kanban { display: grid; grid-template-columns: repeat(5, minmax(220px, 1fr)); gap: 12px; overflow-x: auto; padding-bottom: 6px; }
.bf-col { background: #E9EBEF; border-radius: 16px; padding: 10px; display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.bf-col h4 { margin: 2px 4px 4px; font-size: 13.5px; display: flex; justify-content: space-between; }
.bf-col h4 i { font-style: normal; background: #fff; border-radius: 99px; padding: 0 8px; font-size: 12px; }
.bf-am { padding: 10px 12px; display: flex; flex-direction: column; gap: 6px; }
.bf-am-f { width: 40px; height: 40px; border-radius: 10px; object-fit: cover; }
.bf-am-bts { display: flex; gap: 6px; flex-wrap: wrap; }
.bf-am-x { display: flex; flex-direction: column; gap: 6px; border-top: 1px solid var(--linha); padding-top: 8px; }
.btn.mini { padding: 5px 10px; min-height: 0; font-size: 12.5px; }
.bf-premios { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.bf-premios h3 { margin: 0; font-size: 18px; }
@media (max-width: 860px) { .bf-premios { grid-template-columns: minmax(0, 1fr); } }
/* Calendário de postagens (jeito A: mês inteiro) */
.bc-topo { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; margin-bottom: 10px; }
.bc-mes { margin: 0 6px; font-size: 20px; min-width: 170px; text-align: center; }
.bc-res { display: flex; gap: 16px; align-items: center; flex-wrap: wrap; font-size: 13px; color: var(--tinta-2); margin-bottom: 10px; }
.bc-res b { font-size: 16px; color: var(--tinta); } .bc-res .r b { color: #D92D20; } .bc-res .l b { color: #B54708; }
.bc-leg { margin-left: auto; color: var(--cinza); font-size: 12px; display: flex; align-items: center; gap: 4px; flex-wrap: wrap; }
.bc-leg i { display: inline-block; width: 10px; height: 10px; border-radius: 3px; background: #EEF0F3; margin-left: 6px; }
.bc-leg i.ok { background: #DCFCE7; } .bc-leg i.conf { background: #FEF0C7; } .bc-leg i.atr { background: #FEE4E2; }
.bc-grade { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 6px; }
.bc-sem { font-size: 11px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--cinza); padding: 0 6px 2px; }
.bc-dia { background: #fff; border-radius: 12px; box-shadow: var(--sombra); min-height: 118px; padding: 6px; display: flex; flex-direction: column; gap: 4px; cursor: pointer; min-width: 0; }
.bc-dia:hover { box-shadow: 0 0 0 2px #FFB3C6 inset; }
.bc-dia.fora { opacity: .45; } .bc-dia.hoje { box-shadow: 0 0 0 2px var(--vz-rosa) inset; }
.bc-n { font-size: 12px; font-weight: 700; color: var(--tinta-2); padding: 0 2px; }
.bc-dia.hoje .bc-n { color: var(--vz-rosa); }
.bc-ch { all: unset; box-sizing: border-box; cursor: pointer; display: flex; flex-direction: column; border-radius: 7px; padding: 3px 6px 3px 8px; background: #EEF0F3; border-left: 3px solid var(--loja); min-width: 0; }
.bc-ch span { font-size: 11.5px; font-weight: 700; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.bc-ch small { font-size: 10.5px; color: var(--tinta-2); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.bc-ch.ok { background: #DCFCE7; } .bc-ch.conf { background: #FEF0C7; } .bc-ch.atr { background: #FEE4E2; }
.bc-ch:hover, .bc-ch:focus-visible { box-shadow: 0 0 0 2px var(--loja) inset; }
.bc-mais { all: unset; cursor: pointer; font-size: 11px; font-weight: 700; color: var(--vz-rosa); padding: 0 4px; }
@media (max-width: 900px) { .bc-grade { grid-template-columns: repeat(7, minmax(90px, 1fr)); overflow-x: auto; } }
/* Visão geral · tabela loja × semana */
.bf-tab h3 { margin: 0; font-size: 16px; }
.bf-tab td { vertical-align: middle; }
.bf-tab .bf-n { font-variant-numeric: tabular-nums; font-weight: 600; }
.bf-ok { color: var(--verde); font-weight: 700; } .bf-no { color: #D92D20; font-weight: 700; } .bf-al { color: #B54708; font-weight: 700; }
.bf-criar { all: unset; cursor: pointer; margin-left: 8px; font-size: 12px; font-weight: 700; color: var(--vz-rosa); }
.bf-criar:hover { text-decoration: underline; }
