/* SOIA Centro de Comando — reconstrução (estado combinado) */
#view-tour, #view-loja{
  --fg:#3D4450; --ink:#3D4450; --ink-2:#5B6370; --muted-2:#8A909C;
  --ok:#0B7A4B; --bad:#C0182A; --warn:#B45309; --soia:#31E8A8;
  background:#F7F8FB; color:var(--fg);
}
#view-tour.is-on, #view-loja.is-on{ display:block; }
body:has(#view-tour.is-on) .nav,
body:has(#view-loja.is-on) .nav{ display:none; }
#view-tour.board .app, #view-loja.board .app{ max-width:1180px; margin:0 auto; padding:.7rem 1.1rem 2.4rem; }
.wl__title{
  font-family:var(--sans); font-size:.82rem; font-weight:700; letter-spacing:0;
  text-transform:none; color:#5B6370; margin:.12rem 0 0; line-height:1.2;
}
#view-tour .app h1.wl__title, #view-loja .app h1.wl__title,
#view-tour.board .app h1, #view-loja.board .app h1{
  font-family:var(--sans); font-size:.82rem; font-weight:700; letter-spacing:0;
  text-transform:none; color:#5B6370; margin:.12rem 0 0; line-height:1.2;
}
.hd-back{ margin-top:0; }
#view-tour .eyebrow, #view-loja .eyebrow{ color:#0B7A4B; letter-spacing:.14em; font-size:.68rem; font-weight:700; margin:.1rem 0 0; }

.wl{ display:flex; align-items:flex-start; justify-content:space-between; gap:.65rem; flex-wrap:wrap; margin-bottom:.45rem; }
.wl__brand{ display:flex; align-items:flex-start; gap:1.05rem; min-width:0; }
.wl__mark{ display:flex; flex-direction:column; align-items:center; gap:.04rem; flex-shrink:0; }
.wl__logo{ width:88px; height:88px; object-fit:contain; border-radius:0; background:transparent; box-shadow:none; display:block; }
.wl__id{
  min-width:0;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  gap:.28rem;
  height:auto;
  box-sizing:border-box;
  padding:22px 0 0;
}
.wl__eyebrow{
  margin:0; font-family:var(--sans); font-size:.82rem; font-weight:700;
  letter-spacing:.06em; text-transform:uppercase; color:#5B6370; line-height:1.05;
}
.wl__meta{
  margin:0; font-family:var(--sans); font-size:.72rem; font-weight:700;
  color:#3D4450; letter-spacing:.05em; line-height:1; text-align:center;
}
.wl__name{ display:none; }
.wl__soia{
  margin:0; font-family:var(--sans); font-size:.86rem; font-weight:650;
  color:#0B7A4B; letter-spacing:0; line-height:1.2;
}
.wl__scope{
  font-family:var(--sans); font-size:.68rem; font-weight:650; color:#5B6370;
  background:#fff; border:1px solid #E6E8EE; border-radius:8px;
  padding:.22rem .5rem; line-height:1.2;
}
#view-loja .wl__scope{ display:inline-block; }
.hd-tools{ display:flex; align-items:center; gap:.4rem; flex-wrap:wrap; }
.mode-btn, .back{
  font-family:var(--sans); font-size:.72rem; font-weight:650; color:#5B6370;
  background:#fff; border:1px solid #E6E8EE; border-radius:8px; padding:.26rem .58rem; cursor:pointer;
}
.hd-tools .back{ margin-top:0; }

.prio{ position:relative; }
.prio__btn{
  font-family:var(--sans); font-size:.72rem; font-weight:700; color:#3D4450;
  background:#fff; border:1px solid #E6E8EE; border-radius:8px; padding:.26rem .58rem .26rem .65rem; cursor:pointer;
  display:inline-flex; align-items:center; gap:.35rem;
  box-shadow:0 1px 2px rgba(16,24,40,.04);
}
.prio__btn:hover{ border-color:#CDEFE0; }
.prio__btn.is-on{
  border-color:#31E8A8; color:#0B7A4B;
  box-shadow:0 0 0 3px rgba(49,232,168,.22), 0 0 18px rgba(49,232,168,.18);
}
.prio__btn b{
  background:#C0182A; color:#fff; min-width:1.15rem; height:1.15rem; padding:0 .22rem;
  border-radius:99px; display:grid; place-items:center; font-size:.65rem; font-weight:800;
}
.prio__pop{
  position:absolute; right:0; top:calc(100% + .5rem); width:min(400px, calc(100vw - 2rem));
  background:#fff; border-radius:16px; box-shadow:0 18px 50px rgba(16,24,40,.18); padding:0; z-index:40; overflow:hidden;
}
.prio__pop-hd{
  display:flex; align-items:center; gap:.5rem; margin:0; padding:.7rem .85rem;
  font-size:.82rem; font-weight:700; color:#3D4450; letter-spacing:0; text-transform:none;
  border-bottom:1px solid #EEF0F4;
}
.prio__pop-hd .chat__avatar{ width:22px; height:22px; color:#0B7A4B; }
.prio__list{ list-style:none; margin:0; padding:.75rem .85rem .9rem; display:grid; gap:.75rem; max-height:min(62vh,420px); overflow:auto; }
.prio__item-hd{ display:flex; align-items:center; gap:.45rem; margin-bottom:.3rem; }
.prio__idx{ width:1.2rem; height:1.2rem; border-radius:99px; background:#F3FBF7; color:#0B7A4B; display:grid; place-items:center; font-size:.68rem; font-weight:800; flex-shrink:0; }
.prio__list b{ font-size:.86rem; color:#3D4450; }
.prio__list .ope-who{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); }
.prio__list li{ padding-bottom:.65rem; border-bottom:1px solid #F0F1F4; }
.prio__list li:last-child{ padding-bottom:0; border-bottom:0; }
.exec{
  font-family:var(--sans); font-size:.75rem; font-weight:700; color:#10231C;
  background:var(--soia); border:0; border-radius:8px; padding:.4rem .7rem; cursor:pointer;
}
.prio__list li.is-done{ opacity:.72; }
.prio__list .exec:disabled{ background:#D8E8E0; color:#3D4450; }
.dlg{ display:grid; gap:.32rem; margin:.12rem 0 .15rem; }
.dlg__b{
  margin:0; max-width:100%;
  background:#F4F6F8; color:#3D4450;
  border-radius:12px 12px 12px 4px;
  padding:.42rem .62rem; font-size:.8rem; line-height:1.4; font-weight:500;
}
.dlg__b--ask{
  background:#E8F8F0; color:#0B7A4B; font-weight:700;
}
.exec:disabled{ opacity:.7; cursor:default; }

.fin-loja-lab{
  display:inline-flex; align-items:center; gap:.4rem;
  font-size:.78rem; font-weight:700; color:#5B6370; margin-right:auto;
}
.trend.is-up{ color:#0B7A4B; font-weight:700; margin-right:.28rem; }
.trend.is-dn{ color:#C0182A; font-weight:700; margin-right:.28rem; }
.subrow{ display:flex; flex-wrap:wrap; justify-content:space-between; gap:.4rem; align-items:center; margin:.12rem 0 .04rem; }
.subtabs{ display:inline-flex; flex-wrap:wrap; flex:0 1 auto; min-width:0; background:#ECEEF3; padding:.12rem; border-radius:8px; gap:.1rem; }
.stab{
  border:0; background:transparent; color:#5B6370; font-family:var(--sans); font-weight:650; font-size:.72rem;
  padding:.22rem .55rem; border-radius:6px; cursor:pointer; white-space:nowrap;
}
.stab.is-on{ background:#fff; color:var(--ink); box-shadow:0 1px 2px rgba(16,24,40,.08); }
.period-cluster{ display:flex; align-items:center; gap:.3rem; flex-wrap:wrap; }
.period{ display:inline-flex; background:#ECEEF3; padding:.12rem; border-radius:8px; }
.period button{
  border:0; background:transparent; color:#5B6370; font-family:var(--sans); font-weight:650; font-size:.72rem;
  padding:.22rem .48rem; border-radius:6px; cursor:pointer;
}
.period button.is-on{ background:#fff; color:var(--ink); }
.period-note{ margin:.06rem 0 .4rem; font-size:.68rem; color:var(--muted-2); }
.cal{ position:relative; }
.cal__btn{
  display:inline-flex; align-items:center; gap:.35rem; background:#fff; border:1px solid #E6E8EE;
  border-radius:8px; padding:.22rem .5rem; font-family:var(--sans); font-size:.7rem; font-weight:650; color:var(--ink-2); cursor:pointer;
  min-width:8.8rem; justify-content:flex-start;
}
.cal__btn svg{ width:14px; height:14px; }
.cal__pop{ position:fixed; right:auto; top:auto; background:#fff; border-radius:12px; box-shadow:0 12px 32px rgba(16,24,40,.18); padding:.7rem; z-index:80; width:228px; }
.cal__nav{ display:flex; justify-content:space-between; align-items:center; font-size:.8rem; font-weight:700; margin-bottom:.4rem; }
.cal__nav button{ border:0; background:#F4F5F8; border-radius:6px; width:1.5rem; height:1.5rem; cursor:pointer; }
.cal__grid{ display:grid; grid-template-columns:repeat(7,1fr); gap:.15rem; font-size:.68rem; text-align:center; }
.cal__grid b{ color:var(--muted-2); font-weight:600; padding:.2rem 0; }
.cal__day, .cal__empty{
  border:0; background:transparent; padding:.32rem 0; border-radius:6px; cursor:pointer;
  font:inherit; font-size:.68rem; color:var(--ink);
}
.cal__empty{ pointer-events:none; visibility:hidden; }
.cal__day:hover{ background:#F3FBF7; }
.cal__day.is-in{ background:#E4F7EE; color:#0B7A4B; border-radius:2px; }
.cal__day.is-on, .cal__grid span.is-on{ background:#0B7A4B; color:#fff; }
.cal__btn.is-range{ border-color:#0B7A4B; color:#0B7A4B; }
.cal__hint{ margin:.45rem 0 0; font-size:.65rem; color:#8A909C; text-align:center; }

.spane{ display:none; }
.spane.is-on{ display:block; }
.pane{ display:none; }
.pane.is-on{ display:block; }

.kpis{ display:grid; grid-template-columns:repeat(2,1fr); gap:.75rem; }
.kpis > *{ min-width:0; }
.chmix__row b{ white-space:normal; line-height:1.25; min-width:0; overflow:visible; }
.chmix__hd{ color:var(--muted-2); font-size:.68rem; font-weight:700; text-transform:uppercase; letter-spacing:.03em; }
.chmix__hd b, .chmix__hd span{ font-size:.68rem; color:var(--muted-2); }
.chmix__hd [data-k]{ cursor:pointer; user-select:none; }
.prow--hd{ color:#5B6370; font-size:.7rem; font-weight:700; text-transform:uppercase; padding-bottom:.35rem; }
.prow--mean{ color:var(--muted-2); font-style:italic; }
.iss--3, .iss-hd.iss--3{ grid-template-columns:7.2rem minmax(0,1fr) 1rem; }
.iss__tipo.is-pesq{ color:#B45309; }
#mkt-temp .temp-tbl,
#lmkt-temp-tbl .temp-tbl{
  table-layout:fixed;
  width:100%;
}
#mkt-temp .temp-tbl th, #mkt-temp .temp-tbl td,
#lmkt-temp-tbl .temp-tbl th, #lmkt-temp-tbl .temp-tbl td{
  text-align:center;
  width:auto;
  min-width:0;
  padding:.45rem .5rem;
}
#mkt-temp .temp-tbl th:nth-child(1),
#mkt-temp .temp-tbl td:nth-child(1),
#lmkt-temp-tbl .temp-tbl th:nth-child(1),
#lmkt-temp-tbl .temp-tbl td:nth-child(1){
  text-align:left;
  width:34%;
}
#mkt-temp .temp-tbl th:nth-child(n+2),
#mkt-temp .temp-tbl td:nth-child(n+2),
#lmkt-temp-tbl .temp-tbl th:nth-child(n+2),
#lmkt-temp-tbl .temp-tbl td:nth-child(n+2){
  text-align:center;
  width:22%;
  min-width:0;
}
.temp-tbl td.is-ok{ color:#0B7A4B; font-weight:700; }
.temp-tbl td.is-bad{ color:#C0182A; font-weight:700; }
.gridtbl td:nth-child(1), .gridtbl th:nth-child(1){ text-align:center; }
#ope-rede .rank-card{ margin-top:.55rem; }
#lest-mix{ padding:1rem; }
#lest-mix .est-mix__row:first-child{ margin-top:0; }
.kpis--four{ grid-template-columns:repeat(2,1fr); }
.kpis--six{ grid-template-columns:repeat(2,1fr); }
@media(min-width:800px){
  .kpis--four{ grid-template-columns:repeat(4,1fr); }
  .kpis--six{ grid-template-columns:repeat(4,1fr); }
}
.kpi{
  background:#fff; border-radius:14px; padding:.9rem 1rem .85rem; cursor:pointer;
  box-shadow:0 1px 1px rgba(16,24,40,.03);
  border:1px solid #E8EAEE; text-align:left; font:inherit; color:inherit;
}
.kpi:hover{ border-color:#D9DDE6; box-shadow:0 8px 20px rgba(16,24,40,.06); }
.kpi.is-on{ border-color:#B7E8D3; background:#F7FFFB; box-shadow:0 0 0 3px rgba(49,232,168,.16); }
.kpi__l{ display:flex; align-items:center; gap:.35rem; font-size:.72rem; font-weight:650; color:#5B6370; letter-spacing:.01em; text-transform:none; }
.kpi__dot{
  width:.48rem; height:.48rem; border-radius:99px; background:#D4D7DE; flex-shrink:0;
}
.kpi--ok .kpi__dot{ background:#12B76A; box-shadow:0 0 0 3px rgba(18,183,106,.16); }
.kpi--bad .kpi__dot{ background:#F04438; box-shadow:0 0 0 3px rgba(240,68,56,.16); }
.kpi__v{ font-size:1.7rem; font-weight:800; letter-spacing:-.04em; margin:.28rem 0 .15rem; color:var(--ink); }
.kpi--bad .kpi__v, .kpi--ok .kpi__v{ color:var(--ink); }
.kpi--bad, .kpi--ok{ box-shadow:0 1px 1px rgba(16,24,40,.03); }
.kpi__h, .kpi__y{ margin:0; font-size:.72rem; color:var(--ink-2); line-height:1.35; }
.kpi__h--bad, .var.is-bad{ color:var(--bad); }
.kpi__h--ok, .var.is-ok{ color:var(--ok); }
.kpi__v.is-flash, .rate__n.is-flash, .hero__v.is-flash, .prow__pct.is-flash, .kpi__n.is-flash{ animation:numflash .7s ease; }
.rank-card.is-flash, .cmv-box.is-flash{ animation:paneflash .55s ease; }
@keyframes paneflash{
  0%{ box-shadow:0 0 0 0 rgba(11,122,75,0); }
  40%{ box-shadow:0 0 0 3px rgba(11,122,75,.22); }
  100%{ box-shadow:0 0 0 0 rgba(11,122,75,0); }
}
@keyframes numflash{
  0%{ opacity:.2; transform:translateY(3px); }
  100%{ opacity:1; transform:none; }
}
.tip{ display:inline-grid; place-items:center; width:14px; height:14px; border-radius:99px; background:#ECEEF3; color:var(--ink-2); font-size:.62rem; font-weight:800; border:0; cursor:help; position:relative; }
.tip:hover::after, .tip:focus::after, .tip.is-on::after{
  content:attr(data-tip); position:absolute; left:0; top:1.3rem; z-index:20; width:min(220px,70vw);
  background:#fff; color:var(--ink); font-size:.72rem; font-weight:500; line-height:1.4;
  padding:.45rem .55rem; border-radius:8px; box-shadow:0 8px 20px rgba(16,24,40,.12); text-transform:none; letter-spacing:0;
  white-space:normal;
}
.card__hd .tip::after, .iss-wrap .tip::after{ left:auto; right:0; }

.pulse{ display:grid; gap:.5rem; margin-bottom:.5rem; align-items:stretch; }
@media(min-width:900px){ .pulse{ grid-template-columns:1fr 1fr; } }
.hero-rec .kpi__v{ font-size:1.7rem; }
.hero__l{
  margin:0; font-size:.72rem; font-weight:650; color:#5B6370; letter-spacing:.01em;
}
.hero__v{
  margin:.08rem 0 .28rem; font-size:1.85rem; font-weight:800; letter-spacing:-.045em; line-height:1; color:var(--ink);
}
.chmix{ display:grid; gap:.55rem; }
.chmix__row{ display:grid; grid-template-columns:minmax(12rem,1.5fr) 1.2fr 5.8rem 4rem; gap:.5rem; align-items:center; font-size:.78rem; }
.chmix__row > span:nth-child(3),
.chmix__row > span:nth-child(4){ text-align:center; }
.chmix__bar{ height:8px; background:#EEF0F4; border-radius:99px; overflow:hidden; }
.chmix__bar i{ display:block; height:100%; border-radius:99px; }
.chmix__bar i.up{ background:#0B7A4B; }
.chmix__bar i.dn{ background:#C0182A; }
.board__grp{ font-size:.78rem; font-weight:700; color:var(--ink); margin:.55rem 0 .35rem; }

.rank-card{ background:#fff; border-radius:14px; box-shadow:0 1px 2px rgba(16,24,40,.04), 0 8px 22px rgba(16,24,40,.04); padding:1rem 1rem 1.1rem; margin-top:.9rem; }
.rank-hd{ display:flex; flex-wrap:wrap; align-items:center; gap:.55rem; margin-bottom:.7rem; }
.rank-hd .card__t,
#view-tour .card__t,
#view-loja .card__t{
  margin-right:auto; font-family:var(--sans); font-weight:700; font-size:.95rem;
  letter-spacing:0; text-transform:none; color:var(--ink);
}
#view-tour .card__hd,
#view-loja .card__hd{
  display:flex; align-items:center; justify-content:space-between; gap:.7rem;
  margin-bottom:.85rem; padding:0; border:0;
}
#view-tour .board__grp,
#view-loja .board__grp{
  font-size:.86rem; font-weight:700; color:var(--ink); margin:.55rem 0 .35rem;
}
.rank-q{ border:1px solid #E6E8EE; border-radius:8px; padding:.32rem .55rem; font:inherit; font-size:.78rem; min-width:9rem; }
.gridtbl{ width:100%; border-collapse:collapse; font-size:.8rem; table-layout:auto; }
.gridtbl th, .gridtbl td{ padding:.5rem .6rem; text-align:center; border-bottom:1px solid #F0F1F4; color:var(--ink); vertical-align:middle; }
.gridtbl th{ font-size:.7rem; font-weight:700; color:#5B6370; letter-spacing:.02em; text-transform:uppercase; cursor:pointer; white-space:nowrap; }
.gridtbl td:nth-child(2), .gridtbl th:nth-child(2){ text-align:left; min-width:8.2rem; }
.gridtbl th:nth-child(1), .gridtbl td:nth-child(1){ width:3.2rem; }
#fin-grid, #fin-loja-grid, #lfin-grid, #ope-grid{
  table-layout:fixed;
  width:100%;
  margin:0;
}
#fin-grid th, #fin-grid td,
#fin-loja-grid th, #fin-loja-grid td{
  padding:.42rem .45rem;
  text-align:center;
  white-space:normal;
  line-height:1.2;
}
#fin-grid th, #fin-loja-grid th{
  font-size:.64rem;
  letter-spacing:.01em;
  color:#8A909C;
  font-weight:650;
}
#fin-grid th.is-sort, #fin-loja-grid th.is-sort{
  color:#1A1D24;
  font-weight:800;
}
#fin-grid td.is-sort, #fin-loja-grid td.is-sort{
  color:#1A1D24;
  font-weight:800;
  background:#F4F6F8;
}
#fin-grid td.is-sort .gpill, #fin-loja-grid td.is-sort .gpill{
  font-weight:800;
}
#fin-grid th:nth-child(1), #fin-grid td:nth-child(1),
#fin-loja-grid th:nth-child(1), #fin-loja-grid td:nth-child(1){
  width:2.2rem; padding-left:.2rem; padding-right:.2rem;
}
#fin-grid th:nth-child(2), #fin-grid td:nth-child(2),
#fin-loja-grid th:nth-child(2), #fin-loja-grid td:nth-child(2){
  width:7.4rem; text-align:left; padding-left:.25rem; padding-right:.7rem; min-width:0;
}
#fin-grid th:nth-child(n+3), #fin-grid td:nth-child(n+3),
#fin-loja-grid th:nth-child(n+3), #fin-loja-grid td:nth-child(n+3){
  width:auto;
}
#fin-grid th:last-child, #fin-grid td:last-child,
#fin-loja-grid th:last-child, #fin-loja-grid td:last-child{
  padding-right:1.15rem;
}
.gridtbl tr.is-mean td{ color:var(--muted-2); font-style:italic; background:#FAFBFC; }
.gridtbl tr.is-pick td{ background:#F3FBF7; }
.gridtbl tr.ope-row{ cursor:pointer; }
.gridtbl .ope-loja{ font-weight:700; color:var(--ink); }
.gpill{ display:inline-block; min-width:3.4rem; padding:.12rem .4rem; border-radius:99px; font-weight:700; font-size:.75rem; }
.gpill.ok{ background:#D3F4E4; color:#0B7A4B; }
.gpill.warn{ background:#FFF0D0; color:#9A6700; }
.gpill.bad{ background:#FFD6D9; color:#C0182A; }
.sort{ display:inline-flex; flex-direction:column; margin-left:.15rem; vertical-align:middle; }
.sort i{ width:0; height:0; border-left:3px solid transparent; border-right:3px solid transparent; opacity:.35; }
.sort .up{ border-bottom:4px solid currentColor; margin-bottom:1px; }
.sort .dn{ border-top:4px solid currentColor; }
.sort .is-on{ opacity:1; }
.ope-detail{ display:none; }
.ope-detail.is-open{ display:table-row; }
.ope-analise, .dir-box{
  background:#F3FBF7; border-radius:10px; padding:.7rem .8rem; text-align:left;
}
.dir-box{ margin:.75rem 0 1rem; display:none; }
.dir-box.is-on{ display:block; }
.ope-who{ margin:0 0 .35rem; font-size:.72rem; font-weight:800; color:#0B7A4B; letter-spacing:.04em; text-transform:uppercase; }
.ope-analise p, .dir-box p{ margin:0 0 .4rem; font-size:.8rem; line-height:1.5; color:var(--ink); }
.dir-box__go{ border:0; background:transparent; color:#0B7A4B; font-weight:700; font-size:.78rem; cursor:pointer; padding:0; }
.soia-caret::after{ content:"▍"; animation:blink 1s step-end infinite; color:#0B7A4B; }
@keyframes blink{ 50%{ opacity:0; } }

.rate{ display:grid; grid-template-columns:repeat(3,1fr); gap:.65rem; }
@media(max-width:700px){ .rate{ grid-template-columns:1fr; } }
.rate__card{
  position:relative; overflow:hidden;
  display:flex; flex-direction:column; align-items:center; text-align:center;
  min-height:12.4rem; padding:1.15rem .9rem 1rem;
  background:#fff; border:1px solid #EEEFF3; border-radius:14px; cursor:pointer;
  box-shadow:0 1px 2px rgba(16,24,40,.04), 0 8px 22px rgba(16,24,40,.04);
}
.rate__card::before{
  content:""; position:absolute; left:0; right:0; top:0; height:4px;
}
.rate--google::before{ background:#4285F4; }
.rate--ifood::before{ background:#EA1D2C; }
.rate--n99::before{ background:#FFC800; }
.rate--google, .rate--ifood, .rate--n99{ background:#fff; }
.rate__card.is-on{ border-color:#CDEFE0; box-shadow:0 0 0 2px rgba(11,122,75,.16); }
.rate__n{ font-size:2.15rem; font-weight:800; letter-spacing:-.05em; margin:.15rem 0 .45rem; color:#3D4450; }
.rate__stars{ color:#0B7A4B; letter-spacing:.05em; margin-top:.25rem; font-size:.9rem; }
.rate__meta{ font-size:.72rem; color:var(--muted-2); margin-top:.2rem; }
.rate__card .kpi__ds{ justify-content:center; margin:.1rem 0 .35rem; }
.rate__card .kpi__sub{ margin:.15rem 0 .45rem; }
.rate__card .stars{ margin-top:auto; font-size:1.05rem; }

.prow{ display:grid; grid-template-columns:2.1rem 7.2rem 1fr 3.4rem; gap:.45rem; align-items:center; padding:.28rem 0; font-size:.8rem; cursor:pointer; }
.prow__bar{ height:8px; background:#EEF0F4; border-radius:99px; overflow:hidden; }
.prow__bar i{ display:block; height:100%; background:#0B7A4B; }
.prow__bar i.is-warn{ background:#D97706; }
.prow__bar i.is-bad{ background:#C0182A; }
.prow__n{ font-weight:700; }
.prow__pct.ok{ color:#0B7A4B; font-weight:700; }
.prow__pct.warn{ color:#B45309; font-weight:700; }
.prow__pct.bad{ color:#C0182A; font-weight:700; }

.fin-loja-lab[hidden]{ display:none !important; }
#ope-hoje .hoje-item{ margin-bottom:0; padding:.4rem .15rem; border-radius:0; box-shadow:none; border-bottom:1px solid #EEF0F4; background:transparent; }
#ope-hoje .hoje-item.is-open{ background:#F3FBF7; border-radius:10px; padding:.5rem .55rem; }
#ope-hoje .prow, #ope-grid tbody tr.ope-row td, #ope-grid tbody tr.is-mean td{ min-height:40px; }
.conf-iss{ background:#fff; border-radius:14px; padding:.15rem .1rem .45rem; box-shadow:0 1px 2px rgba(16,24,40,.05); }
.conf-iss .iss__loja{ font-weight:800; color:#3D4450; }
.conf-iss .iss__row:hover{ background:#F7F8FA; }
.hoje-item.is-open{ background:#F3FBF7; }
.hoje-chev{ width:8px; height:8px; border-right:1.6px solid #8A909C; border-bottom:1.6px solid #8A909C; transform:rotate(-45deg); display:inline-block; }
.iss-wrap{ background:#fff; border-radius:14px; padding:1rem; margin-top:.85rem; box-shadow:0 1px 2px rgba(16,24,40,.04); }
.iss-hd, .iss__row{ display:grid; grid-template-columns:minmax(5.5rem,7.2rem) minmax(5rem,6.2rem) minmax(0,1fr) 4.4rem 1rem; gap:.4rem; align-items:center; font-size:.78rem; }
.iss-hd{ color:var(--muted-2); font-size:.68rem; font-weight:700; text-transform:uppercase; padding-bottom:.4rem; }
.iss__row{ width:100%; border:0; background:transparent; text-align:left; padding:.45rem 0; border-top:1px solid #F0F1F4; cursor:pointer; color:inherit; font:inherit; }
.iss__loja{ font-weight:700; }
.iss__tipo{ font-weight:700; font-size:.72rem; }
.iss__tipo.is-check, .iss__tipo.is-crit{ color:#B45309; }
.iss__tipo.is-audit, .iss__tipo.is-rupt, .iss__tipo.is-bad{ color:#C0182A; }
.iss__tipo.is-min{ color:#5B6370; }
.iss__open{ display:none; grid-column:1/-1; background:#F3FBF7; border-radius:8px; padding:.6rem .7rem; margin-top:.3rem; }
.iss__row.is-on .iss__open{ display:block; }
.iss__prazo.is-bad{ color:#C0182A; font-weight:700; }
.iss__pt b{ font-weight:700; }
#ope-est .kpis--four .kpi{ min-width:0; }
#ope-est .gridtbl th{ white-space:normal; line-height:1.25; }
#ope-est .est-mix{ padding:.15rem .2rem .35rem; }
#ope-est .est-mix__row{ grid-template-columns:minmax(6.5rem,8rem) minmax(0,1fr) 2.6rem 4.2rem; }

.est-mix{ display:grid; gap:.35rem; }
.est-mix__row{ display:grid; grid-template-columns:7rem 1fr 2.4rem 3.6rem; gap:.4rem; align-items:center; font-size:.78rem; }
.est-mix__row b{ font-weight:700; }
.est-mix__bar{ height:7px; background:#EEF0F4; border-radius:99px; overflow:hidden; }
.est-mix__bar i{ display:block; height:100%; background:#3D4450; }
.cmv-box{ background:#fff; border-radius:14px; padding:1rem; margin-bottom:.85rem; box-shadow:0 1px 2px rgba(16,24,40,.04); }
.tape{
  overflow:hidden; font-size:.78rem; font-weight:650; padding:.5rem 0;
  background:#F4F6F8; border:1px solid #EEF0F4; border-radius:10px;
  color:#3D4450; font-variant-numeric:tabular-nums;
}
.tape__run{ display:inline-flex; gap:0; white-space:nowrap; animation:taperun 32s linear infinite; }
.tape__run span{ padding:0 1.15rem; border-right:1px solid #E6E8EE; }
.tape__run span.is-tick{ animation:cotflash .85s ease; }
.qrow.is-tick{ animation:cotflashrow .85s ease; }
@keyframes cotflash{
  0%{ background:rgba(11,122,75,.22); }
  100%{ background:transparent; }
}
@keyframes cotflashrow{
  0%{ background:#E8F8F0; }
  100%{ background:transparent; }
}
.tape em{ font-style:normal; font-weight:800; margin-left:.35rem; }
.tape em.up{ color:#0B7A4B; }
.tape em.dn{ color:#C0182A; }
@keyframes taperun{ from{ transform:translateX(0);} to{ transform:translateX(-50%);} }

.cot-live{ margin-bottom:.85rem; }
.cot-split{ display:grid; gap:.85rem; }
@media(min-width:960px){ .cot-split{ grid-template-columns:1.12fr .88fr; align-items:stretch; } }
.qbook{ display:grid; }
.qrow{
  display:grid; grid-template-columns:minmax(7.2rem,1.15fr) 5.8rem minmax(3.5rem,.9fr) 4.8rem;
  gap:.5rem; align-items:center; padding:.58rem .2rem; border-bottom:1px solid #EEF0F4;
}
.qrow:last-child{ border-bottom:0; }
.qrow__id{ display:flex; flex-direction:column; gap:.08rem; min-width:0; }
.qrow__id b{ font-size:.86rem; color:#3D4450; font-weight:800; }
.qrow__id small{ color:#8A909C; font-size:.7rem; }
.qrow__px{ font-variant-numeric:tabular-nums; font-weight:800; font-size:.95rem; text-align:right; color:#3D4450; }
.qrow__bar{ height:7px; background:#EEF0F4; border-radius:99px; overflow:hidden; }
.qrow__bar i{ display:block; height:100%; border-radius:99px; }
.qrow__bar i.is-dn{ background:#C0182A; }
.qrow__bar i.is-up{ background:#0B7A4B; }
.qrow__ch{ text-align:right; font-weight:800; font-variant-numeric:tabular-nums; font-size:.8rem; }
.qrow__ch.dn{ color:#C0182A; }
.qrow__ch.up{ color:#0B7A4B; }
.news-pause{
  margin-left:auto; border:1px solid #E6E8EE; background:#fff; border-radius:99px;
  padding:.22rem .7rem; font-size:.72rem; font-weight:700; cursor:pointer; color:#5B6370;
}
.news-pause[aria-pressed="true"]{ background:#3D4450; color:#fff; border-color:#3D4450; }
.news{
  list-style:none; padding:0; margin:0; max-height:340px; overflow:auto;
  display:grid; gap:.4rem;
}
.news li, .news__item{
  display:grid; grid-template-columns:3.5rem 1fr; gap:.55rem;
  padding:.6rem .55rem; border-radius:10px; background:#F7F8FA;
}
.news__item.is-fresh{ background:#F3FBF7; animation:newsin .5s ease; }
@keyframes newsin{ from{ opacity:0; transform:translateY(-10px);} to{ opacity:1; transform:none;} }
.news__item time{ font-variant-numeric:tabular-nums; font-size:.72rem; font-weight:700; color:#8A909C; padding-top:.15rem; }
.news__item small{ display:block; font-size:.66rem; font-weight:800; letter-spacing:.04em; text-transform:uppercase; color:#5B6370; margin-bottom:.18rem; }
.news__item p{ margin:0; font-size:.84rem; line-height:1.4; color:#3D4450; }

.fab{
  position:fixed; right:1.2rem; bottom:1.2rem; width:78px; height:78px; z-index:50;
  border:none; background:none; cursor:pointer; padding:0;
}
@media(min-width:900px){ .fab{ width:88px; height:88px; right:1.6rem; bottom:1.6rem; } }
.fab__float{ display:block; width:100%; height:100%; animation:fabbob 5s ease-in-out infinite; }
.fab__ico{
  width:100%; height:100%; display:block;
  background-image:url("consultor-digital.webp");
  background-size:contain; background-repeat:no-repeat; background-position:center bottom;
  filter:drop-shadow(0 0 5px rgba(49,232,168,.55)) drop-shadow(0 0 16px rgba(49,232,168,.32));
  animation:fabturn 9s ease-in-out infinite;
}
.fab.is-listen .fab__ico{ animation: fabturn 9s ease-in-out infinite, soiaGlowIco 1.15s ease-in-out infinite; }
.fab.is-think .fab__ico{ animation: fabturn 9s ease-in-out infinite, soiaGlowIco 2.8s ease-in-out 1; }
.fab.is-listen::after, .fab.is-think::after{
  content:""; position:absolute; inset:-10px; border-radius:50%; pointer-events:none;
}
.fab.is-listen::after{ animation:soiaRing 1.15s ease-in-out infinite; }
.fab.is-think::after{ animation:soiaRingThink 2.8s ease-in-out 1; }
@keyframes soiaGlowIco{
  0%,100%{ filter:drop-shadow(0 0 5px rgba(49,232,168,.55)) drop-shadow(0 0 16px rgba(49,232,168,.32)); }
  40%{ filter:drop-shadow(0 0 14px rgba(49,232,168,1)) drop-shadow(0 0 32px rgba(49,232,168,.7)); }
}
@keyframes soiaRing{
  0%{ box-shadow:0 0 0 0 rgba(49,232,168,0); }
  35%{ box-shadow:0 0 22px 10px rgba(49,232,168,.4); }
  100%{ box-shadow:0 0 0 0 rgba(49,232,168,0); }
}
@keyframes soiaRingThink{
  0%,100%{ box-shadow:0 0 0 0 rgba(49,232,168,0); }
  18%,55%{ box-shadow:0 0 28px 12px rgba(49,232,168,.5); }
}
@keyframes fabbob{ 0%,100%{ transform:translateY(0);} 50%{ transform:translateY(-6px);} }
@keyframes fabturn{
  0%,100%{ transform:perspective(320px) rotateY(-7deg) rotateX(2deg); }
  50%{ transform:perspective(320px) rotateY(7deg) rotateX(-1deg); }
}
.act-toast{
  display:none; background:#F3FBF7; border:1px solid #B7E4CE; color:#0B7A4B;
  border-radius:10px; padding:.55rem .85rem; font-size:.82rem; font-weight:650;
  margin:0 0 .65rem; line-height:1.4;
}
.act-toast.is-on{ display:block; }
  position:absolute; top:.15rem; right:.15rem; min-width:1.2rem; height:1.2rem; padding:0 .25rem;
  background:#C0182A; color:#fff; border-radius:99px; font-size:.65rem; font-weight:800; display:grid; place-items:center; z-index:2;
}
.fab__badge.is-hot, .prio__btn b.is-hot{
  animation:badgehot .9s ease;
}
@keyframes badgehot{
  0%{ transform:scale(1); }
  35%{ transform:scale(1.45); box-shadow:0 0 0 6px rgba(192,24,42,.28); }
  100%{ transform:scale(1); }
}
.fab__tip{ position:absolute; right:110%; top:50%; transform:translateY(-50%); background:#3D4450; color:#fff; font-size:.72rem; padding:.3rem .5rem; border-radius:8px; white-space:nowrap; opacity:0; pointer-events:none; }
.fab:hover .fab__tip{ opacity:1; }
.dock{
  position:fixed; right:1.1rem; bottom:6.2rem; width:min(380px, calc(100vw - 1.6rem)); z-index:60;
  background:#fff; border-radius:16px; box-shadow:0 18px 50px rgba(16,24,40,.2); display:none; overflow:hidden;
}
.dock.is-open, .dock.is-on{ display:block; }
.livechat__hd{ display:flex; align-items:center; gap:.5rem; padding:.7rem .8rem; border-bottom:1px solid #EEF0F4; font-weight:700; font-size:.85rem; }
.chat__avatar{ width:28px; height:28px; color:#0B7A4B; }
.livechat__log{ max-height:280px; overflow:auto; padding:.75rem .85rem; display:grid; gap:.55rem; font-size:.82rem; line-height:1.45; }
.msg-ia{ background:#F3FBF7; border-radius:10px; padding:.55rem .65rem; }
.msg-me{ background:#F4F5F8; border-radius:10px; padding:.55rem .65rem; justify-self:end; }
.livechat__chips{ display:flex; flex-wrap:wrap; gap:.35rem; padding:0 .75rem .5rem; }
.livechat__chips button{ border:1px solid #E6E8EE; background:#fff; border-radius:99px; padding:.25rem .6rem; font-size:.72rem; cursor:pointer; }
.livechat__form{ display:flex; gap:.35rem; padding:.55rem .7rem .7rem; }
.livechat__form input{ flex:1; border:1px solid #E6E8EE; border-radius:10px; padding:.45rem .6rem; font:inherit; }
.livechat__form button{ background:#3D4450; color:#fff; border:0; border-radius:10px; padding:.45rem .7rem; font-weight:700; cursor:pointer; }
.dock__close{ margin-left:auto; border:0; background:transparent; font-size:1.2rem; cursor:pointer; color:var(--ink-2); }

select.cc-sel{ border:1px solid #E6E8EE; border-radius:8px; padding:.32rem .5rem; font:inherit; font-size:.78rem; background:#fff; color:var(--ink); }

body.mural #view-tour .app{
  max-width:none; display:grid; grid-template-columns:1fr 1fr; gap:.75rem; align-items:stretch;
}
body.mural #view-tour .cc-head,
body.mural #view-tour .back{ grid-column:1 / -1; }
body.mural #view-tour #tour-tabs,
body.mural #view-tour .cc-subhost,
body.mural #view-tour .period-note{ display:none; }
body.mural #view-tour .pane{
  display:block !important;
  background:#fff; border-radius:14px; padding:.7rem .8rem 1rem;
  box-shadow:0 1px 2px rgba(16,24,40,.05);
  min-height:42vh; overflow:auto;
}
body.mural #view-tour .pane .subrow .period-cluster{ display:none; }
body.mural #view-tour #pane-fin::before{ content:"TV 1 · Financeiro"; }
body.mural #view-tour #pane-mkt::before{ content:"TV 2 · Marketing"; }
body.mural #view-tour #pane-ope::before{ content:"TV 3 · Operação"; }
body.mural #view-tour #pane-cot::before{ content:"TV 4 · Cotações"; }
body.mural #view-tour .pane::before{
  display:block; font-size:.68rem; font-weight:800; letter-spacing:.08em;
  text-transform:uppercase; color:#8A909C; margin-bottom:.4rem;
}
#cmv-item{ display:flex; flex-wrap:wrap; gap:.35rem; }
#cmv-item button{
  border:1px solid #E6E8EE; background:#fff; border-radius:99px; padding:.28rem .7rem;
  font-family:var(--sans); font-size:.72rem; font-weight:650; color:#5B6370; cursor:pointer;
}
#cmv-item button.is-on{ background:#E4F7EE; border-color:#B7E4CC; color:#0B7A4B; }
#cmv-lines{ width:100%; min-height:180px; }
#ope-game{ display:flex; flex-wrap:wrap; gap:.4rem; margin:.4rem 0 .8rem; }
.game-chip{ background:#F3FBF7; border-radius:99px; padding:.28rem .7rem; font-size:.72rem; font-weight:650; color:#0B7A4B; }
.game-chip.is-win{ background:#0B7A4B; color:#fff; }

/* ---- campos ricos (Monday) ---- */
#view-tour .kpi, #view-loja .kpi{
  cursor:default; min-height:8.2rem;
}
#view-tour .kpi.is-ask, #view-loja .kpi.is-ask{ cursor:pointer; }
#view-tour .kpi__l, #view-loja .kpi__l{
  text-transform:none; letter-spacing:.01em; font-size:.72rem; font-weight:650; color:#5B6370;
}
#view-tour .kpi__v, #view-loja .kpi__v{
  font-size:1.78rem; letter-spacing:-.04em; margin:.2rem 0 .5rem; color:var(--ink);
}
#fin-hero, #lfin-hero{
  display:flex;
  flex-direction:column;
  justify-content:center;
}
#fin-hero .hero__v, #lfin-hero .hero__v{
  margin:.28rem 0 .4rem;
}
.pp-n{ font-weight:800; font-size:1.05em; letter-spacing:-.02em; }
.pp-u{
  font-size:.92em; font-weight:650; opacity:.78;
  margin-left:.14em; letter-spacing:0;
}
.chrow{ padding:.22rem 0; }
.chrow__bar{ height:6px; }
.kpi__ds{
  display:flex; gap:1.1rem; flex-wrap:wrap; margin-top:.15rem;
}
.kpi__pair{ display:flex; flex-direction:column; gap:.08rem; min-width:5.5rem; }
.kpi__n{ font-size:.9rem; font-weight:700; color:#0B7A4B; line-height:1.2; }
.kpi__n.is-bad{ color:#C0182A; }
.kpi__pair small{ font-size:.66rem; color:#5B6370; font-weight:500; line-height:1.2; }
.kpi__sub{ margin:0 0 .35rem; font-size:.72rem; color:#8A909C; }

.chrow, .chrow--hd{
  display:grid; grid-template-columns:minmax(6.2rem,7.6rem) minmax(0,1fr) 4.2rem 6.4rem 6.4rem;
  gap:.35rem; align-items:center; font-size:.8rem;
}
.chrow--hd{ color:#5B6370; font-size:.64rem; font-weight:700; letter-spacing:.01em; padding:.15rem 0 .4rem; text-transform:none; }
.chrow--hd span{ white-space:nowrap; text-align:right; }
.chrow--hd > span:nth-child(3),
.chrow--hd > span:nth-child(4),
.chrow--hd > span:nth-child(5),
.chrow > .tnum,
.chrow > .up,
.chrow > .dn{ text-align:center; }
.chrow{ padding:.2rem 0; border-top:1px solid #F0F1F4; }
.chrow b{ font-weight:700; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.chrow__bar{ height:6px; background:#EEF0F4; border-radius:99px; overflow:hidden; }
.chrow__bar i{ display:block; height:100%; background:#0B7A4B; border-radius:99px; }
.chrow__bar i.is-dn{ background:#C0182A; }
.chrow .up{ color:#0B7A4B; font-weight:700; text-align:center; }
.chrow .dn{ color:#C0182A; font-weight:700; text-align:center; }
.chrow .tnum, .chrow span.tnum{ text-align:center; font-weight:650; }

.stars{
  position:relative; display:inline-block; color:#E6E8EE; letter-spacing:.08em; font-size:.95rem; line-height:1;
}
.stars__fill{ position:absolute; left:0; top:0; overflow:hidden; color:#0B7A4B; white-space:nowrap; }
.rate__card{
  text-align:center; padding:1.05rem .9rem 1.1rem;
}
.rate__card .kpi__ds{ justify-content:center; }
.rate__card .stars{ margin:.25rem 0 .4rem; }

.mkt-eq{
  display:grid; gap:.85rem; margin-top:.85rem;
}
@media(min-width:1080px){
  .mkt-eq{
    grid-template-columns:1fr 1fr;
    grid-template-rows:auto auto 1fr;
    align-items:stretch;
  }
  .mkt-eq > .card{
    display:grid;
    grid-template-rows:subgrid;
    grid-row:span 3;
    align-items:stretch;
  }
}
.mkt-eq .card__hd{
  min-height:2.4rem;
  display:flex;
  align-items:center;
  gap:.4rem;
  flex-wrap:wrap;
}
.mkt-eq .mkt-rank{ margin-top:0; align-self:start; }
.mkt-eq .kpis--four,
#lmkt-pesq.kpis--four,
#lmkt-temp.kpis--four{
  grid-template-columns:repeat(2,1fr);
}
.mkt-eq .kpis--four .kpi:nth-child(2n),
#lmkt-pesq.kpis--four .kpi:nth-child(2n),
#lmkt-temp.kpis--four .kpi:nth-child(2n){ border-right:0; }
.mkt-eq .kpis--four .kpi:nth-last-child(-n+2),
#lmkt-pesq.kpis--four .kpi:nth-last-child(-n+2),
#lmkt-temp.kpis--four .kpi:nth-last-child(-n+2){ border-bottom:0; }
#view-tour .mkt-eq .kpis,
#view-loja #lmkt-pesq,
#view-loja #lmkt-temp{
  background:transparent;
  border:0;
  box-shadow:none;
  border-radius:10px;
  overflow:hidden;
  border:1px solid #E8EAEE;
}
#view-tour .mkt-eq .kpi,
#view-loja #lmkt-pesq .kpi,
#view-loja #lmkt-temp .kpi{
  min-height:7.4rem;
}
.mkt-rank{ margin-top:.75rem; }

.gpill.is-ok, .gpill.ok{ background:#D3F4E4; color:#0B7A4B; }
.gpill.is-warn, .gpill.warn{ background:#FFF0D0; color:#9A6700; }
.gpill.is-bad, .gpill.bad{ background:#FFD6D9; color:#C0182A; }

/* cinza no lugar do preto — campos sem degradê */
#view-tour, #view-loja,
#view-tour h1, #view-loja h1,
#view-tour .card__t, #view-loja .card__t,
#view-tour .board__grp, #view-loja .board__grp,
#view-tour .kpi__v, #view-loja .kpi__v,
#view-tour .hero__v, #view-loja .hero__v,
#view-tour .rate__n, #view-loja .rate__n,
#view-tour .ope-loja, #view-loja .ope-loja,
#view-tour .prow__n, #view-loja .prow__n,
#view-tour .pesq-stats b, #view-loja .pesq-stats b,
#view-tour .gridtbl td, #view-loja .gridtbl td{
  color:#3D4450;
}
#view-tour .chrow > b, #view-loja .chrow > b{ color:#3D4450; }
#view-tour .chrow .up, #view-loja .chrow .up,
#view-tour .chrow .up .pp-n, #view-loja .chrow .up .pp-n,
#view-tour .chrow .up .pp-u, #view-loja .chrow .up .pp-u{ color:#0B7A4B; }
#view-tour .chrow .dn, #view-loja .chrow .dn,
#view-tour .chrow .dn .pp-n, #view-loja .chrow .dn .pp-n,
#view-tour .chrow .dn .pp-u, #view-loja .chrow .dn .pp-u{ color:#C0182A; }
#view-tour .gridtbl th, #view-loja .gridtbl th,
#view-tour .prow--hd, #view-loja .prow--hd,
#view-tour .chrow--hd, #view-loja .chrow--hd,
#view-tour .card__note, #view-loja .card__note,
#view-tour .kpi__l, #view-loja .kpi__l,
#view-tour .hero__l, #view-loja .hero__l{
  color:#5B6370;
}
#view-tour #fin-grid th, #view-tour #fin-loja-grid th,
#view-loja #fin-grid th, #view-loja #fin-loja-grid th{
  color:#8A909C;
}
#view-tour #fin-grid th.is-sort, #view-tour #fin-loja-grid th.is-sort,
#view-loja #fin-grid th.is-sort, #view-loja #fin-loja-grid th.is-sort,
#view-tour #fin-grid td.is-sort, #view-tour #fin-loja-grid td.is-sort,
#view-loja #fin-grid td.is-sort, #view-loja #fin-loja-grid td.is-sort{
  color:#1A1D24;
}
#view-tour .kpis, #view-loja .kpis{
  background:#fff;
  border:1px solid #E8EAEE;
  border-radius:16px;
  box-shadow:0 1px 1px rgba(16,24,40,.03);
  gap:0;
  overflow:hidden;
  padding:0;
}
#view-tour .kpi, #view-loja .kpi{
  background:transparent;
  border:0;
  border-radius:0;
  box-shadow:none;
  min-height:7.4rem;
  padding:.85rem 1rem .8rem;
  border-right:1px solid #F0F1F4;
  border-bottom:1px solid #F0F1F4;
}
#view-tour .kpis--six .kpi:nth-child(4n),
#view-loja .kpis--six .kpi:nth-child(4n),
#view-tour .kpis--four .kpi:nth-child(4n),
#view-loja .kpis--four .kpi:nth-child(4n){ border-right:0; }
#view-tour .kpis--six .kpi:nth-last-child(-n+4),
#view-loja .kpis--six .kpi:nth-last-child(-n+4){ border-bottom:0; }
#view-tour .kpi:hover, #view-loja .kpi:hover{
  background:#FAFBFC;
  box-shadow:none;
  border-color:#F0F1F4;
}
#view-tour .kpi.is-on, #view-loja .kpi.is-on{
  background:#F7FFFB;
  box-shadow:none;
  border-color:#F0F1F4;
}
#view-tour .kpi--ok, #view-loja .kpi--ok,
#view-tour .kpi--bad, #view-loja .kpi--bad{
  box-shadow:none;
}
#view-tour .kpi--ok .kpi__v, #view-loja .kpi--ok .kpi__v,
#view-tour .kpi--bad .kpi__v, #view-loja .kpi--bad .kpi__v{ color:#3D4450; }
#view-tour .pulse, #view-loja .pulse{
  background:#fff;
  border:1px solid #E8EAEE;
  border-radius:16px;
  box-shadow:0 1px 1px rgba(16,24,40,.03);
  gap:0;
  overflow:hidden;
  margin-bottom:.7rem;
}
#view-tour .pulse .hero-rec, #view-loja .pulse .hero-rec{
  background:transparent;
  border:0;
  border-radius:0;
  box-shadow:none;
  height:100%;
  display:flex;
  flex-direction:column;
}
@media(min-width:900px){
  #view-tour .pulse .hero-rec:first-child,
  #view-loja .pulse .hero-rec:first-child{ border-right:1px solid #F0F1F4; }
}
#view-tour .pulse .hero-rec:hover,
#view-loja .pulse .hero-rec:hover{ box-shadow:none; }
#view-tour .rate__card, #view-loja .rate__card,
#view-tour .rank-card, #view-loja .rank-card,
#view-tour .card, #view-loja .card{
  background:#fff;
  border:1px solid #E8EAEE;
  box-shadow:0 1px 1px rgba(16,24,40,.03);
  border-radius:14px;
}
#view-tour .rate--google, #view-loja .rate--google,
#view-tour .rate--ifood, #view-loja .rate--ifood,
#view-tour .rate--n99, #view-loja .rate--n99{
  background:#fff;
}

.curso{ margin: .15rem 0 .85rem; }
.curso > .card{ padding:.85rem 1rem 1rem; }
.curso-sum{
  display:flex; flex-wrap:wrap; gap:.35rem .9rem; margin:0 0 .7rem;
  font-size:.78rem; color:#5B6370;
}
.curso-sum b{ color:#3D4450; font-size:.95rem; font-weight:800; margin-right:.22rem; }
.curso-grid{
  display:grid; gap:.55rem;
  grid-template-columns:1fr;
}
@media(min-width:860px){
  .curso-grid{ grid-template-columns:1fr 1fr; }
}
.curso-row{
  display:flex; flex-direction:column; align-items:stretch; gap:.28rem;
  width:100%; margin:0; padding:.72rem .8rem .7rem;
  border:1px solid #E8EAEE; border-radius:12px; background:#fff;
  cursor:pointer; text-align:left; font:inherit; color:inherit;
  box-shadow:0 1px 1px rgba(16,24,40,.03);
}
.curso-row:hover{ border-color:#D9DDE6; box-shadow:0 8px 20px rgba(16,24,40,.06); }
.curso-row.is-on{
  border-color:#B7E8D3; background:#F7FFFB;
  box-shadow:0 0 0 3px rgba(49,232,168,.16);
}
.curso-row__kicker{ display:flex; justify-content:space-between; align-items:center; gap:.5rem; }
.curso-loja{ font-weight:800; color:#3D4450; font-size:.78rem; }
.curso-row__tit{ font-weight:800; color:#3D4450; font-size:.95rem; letter-spacing:-.02em; line-height:1.25; }
.curso-row__meta{
  display:flex; justify-content:space-between; align-items:baseline; gap:.6rem;
  font-size:.75rem; color:#5B6370; line-height:1.3;
}
.curso-prazo{ font-weight:700; color:#3D4450; white-space:nowrap; }
.curso-st{
  font-size:.65rem; font-weight:800; letter-spacing:.04em; text-transform:uppercase;
  border-radius:999px; padding:.2rem .55rem; background:#F2F3F6; color:#5B6370; flex-shrink:0;
}
.curso-st.is-prop{ background:#FDECEC; color:#C0182A; }
.curso-st.is-wait{ background:#FFF6E8; color:#B45309; }
.curso-st.is-run{ background:#EAF7F1; color:#0B7A4B; }
.curso-st.is-ok{ background:#EAF7F1; color:#0B7A4B; }
.curso .dir-box{ margin-top:.7rem; }
.curso-acoes{ display:flex; flex-wrap:wrap; gap:.4rem; margin-top:.65rem; }
.curso-acoes .exec, .curso-acoes .ghost{
  font-family:var(--sans); font-size:.78rem; font-weight:650; border-radius:10px;
  padding:.4rem .75rem; cursor:pointer; border:1px solid #E6E8EE; background:#fff; color:#3D4450;
}
.curso-acoes .exec{ background:#0B7A4B; color:#fff; border-color:#0B7A4B; }
.curso-acoes .exec:disabled{ opacity:.55; cursor:default; }
.curso-grupo{
  margin-top:.55rem; background:#F7F8FB; border-radius:10px; padding:.65rem .75rem; font-size:.8rem; color:#3D4450;
  white-space:pre-wrap; line-height:1.45;
}
div:has(> #fin-grid),
div:has(> #fin-loja-grid),
div:has(> #lfin-grid),
div:has(> #ope-grid),
div:has(> #lope-grid),
div:has(> #cmv-rank),
div:has(> #est-rank),
#ope-hoje, #lope-hoje,
#mkt-pesq-rank,
#rede-uni-rank, #rede-com-rank{
  max-height:22rem;
  overflow:auto;
  overscroll-behavior:contain;
}
div:has(> #fin-grid) thead th,
div:has(> #fin-loja-grid) thead th,
div:has(> #lfin-grid) thead th,
div:has(> #ope-grid) thead th,
div:has(> #lope-grid) thead th,
div:has(> #cmv-rank) thead th,
div:has(> #est-rank) thead th,
#ope-hoje .prow--hd,
#lope-hoje .prow--hd,
#mkt-pesq-rank .prow--hd,
#rede-uni-rank .prow--hd,
#rede-com-rank .prow--hd{
  position:sticky;
  top:0;
  background:#fff;
  z-index:2;
  box-shadow:0 1px 0 #EEF0F4;
}

/* chrome compacto — o dashboard ganha a tela */
#view-tour.board .app,
#view-loja.board .app{ padding-top:.7rem; }
#view-tour .app__tabs,
#view-loja .app__tabs{ margin-top:.28rem; }
#view-tour.board .tabs,
#view-loja.board .tabs{
  padding:.12rem; border-radius:8px; gap:.1rem;
}
#view-tour.board .tab,
#view-loja.board .tab{
  font-size:.75rem; font-weight:650; padding:.26rem .7rem; border-radius:7px;
}
#view-tour .pane.is-on,
#view-loja .pane.is-on{ gap:.45rem; display:block; }
#view-tour .board__grp,
#view-loja .board__grp{ margin:.5rem 0 .32rem; font-size:.78rem; }
#view-tour .rank-card,
#view-loja .rank-card{ margin-top:.45rem; padding:.75rem .85rem .85rem; }
#view-tour .rank-hd,
#view-loja .rank-hd{ margin-bottom:.45rem; }
#view-tour .card__hd,
#view-loja .card__hd{ margin-bottom:.5rem; }
#view-tour .kpis,
#view-loja .kpis{ gap:.5rem; }
#view-tour .curso,
#view-loja .curso{ margin:0 0 .4rem; }
#view-tour .board__live,
#view-loja .board__live{ font-size:.68rem; padding:.2rem .5rem; }
#view-tour .fin-loja-lab,
#view-loja .fin-loja-lab{ font-size:.72rem; }

.cc-head{
  margin:0 0 .55rem;
  padding:0 0 .45rem;
  border-bottom:1px solid #EEF0F4;
  position:relative;
  z-index:20;
  overflow:visible;
}
.cc-head__top{
  display:flex; align-items:center; justify-content:space-between;
  gap:.6rem; flex-wrap:nowrap;
}
.cc-head__top .wl__brand{
  text-decoration:none; color:inherit; cursor:pointer; min-width:0; flex:0 1 auto;
}
.cc-head__top .hd-tools{
  flex:0 0 auto; flex-wrap:nowrap; gap:.3rem; margin-left:auto;
}
.cc-head__nav{
  display:flex; align-items:center; justify-content:space-between;
  gap:.6rem; margin-top:.4rem; flex-wrap:nowrap;
}
.cc-head__nav .app__tabs{ margin:0; flex:0 0 auto; }
.cc-head__nav .period-cluster{
  flex:0 0 auto; flex-wrap:nowrap; margin-left:auto;
}
.cc-head__bar{
  display:flex; align-items:center; margin-top:.32rem; min-height:1.9rem;
}
.cc-subhost .subtabs[hidden]{ display:none !important; }
.cc-subhost{
  display:flex; align-items:center; gap:.35rem; min-width:0; margin:0;
}
#view-tour.board .tabs,
#view-loja.board .tabs{
  padding:.1rem; border-radius:8px; gap:.08rem; flex-wrap:nowrap;
}
#view-tour.board .tab,
#view-loja.board .tab{
  font-size:.74rem; font-weight:650; padding:.24rem .62rem; border-radius:6px;
  white-space:nowrap;
}
.period{ flex-wrap:nowrap; }
.cal__btn{
  display:inline-flex; align-items:center; gap:.28rem; background:#fff; border:1px solid #E6E8EE;
  border-radius:8px; padding:.2rem .55rem; font-family:var(--sans); font-size:.68rem; font-weight:650; color:var(--ink-2); cursor:pointer;
  min-width:9.2rem; max-width:14rem; justify-content:flex-start;
}
.cal__btn .cal__label{
  overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
}
#view-tour .pane > .subrow,
#view-loja .pane > .subrow{ display:none; }
#view-tour .period-note,
#view-loja .period-note{ display:none; }
#view-tour.board .app,
#view-loja.board .app{ padding-top:.55rem; padding-bottom:2rem; }

/* navegação responsiva e acessível */
.view:focus{ outline:none; }
.nav__toggle{
  display:none; width:2.45rem; height:2.45rem; padding:.55rem;
  border:1px solid var(--border); border-radius:8px; background:#fff;
  align-items:center; justify-content:center; flex-direction:column; gap:4px;
}
.nav__toggle span{ width:100%; height:2px; background:var(--fg); transition:transform .2s,opacity .2s; }
.nav__toggle.is-open span:nth-child(1){ transform:translateY(6px) rotate(45deg); }
.nav__toggle.is-open span:nth-child(2){ opacity:0; }
.nav__toggle.is-open span:nth-child(3){ transform:translateY(-6px) rotate(-45deg); }

@media(max-width:1023px){
  body.nav-open{ overflow:hidden; }
  .nav__toggle{ display:flex; margin-left:auto; }
  .nav__links{
    display:none; position:absolute; top:calc(100% + 1px); left:0; right:0;
    padding:.8rem max(1.5rem,var(--pad)) 1rem; background:rgba(255,255,255,.98);
    border-bottom:1px solid var(--border); box-shadow:0 12px 28px rgba(18,23,26,.12);
    flex-direction:column; gap:0;
  }
  .nav__links.is-open{ display:flex; }
  .nav__links a{ display:block; padding:.72rem 0; border-bottom:1px solid var(--border); }
  .nav__links a:last-child{ border-bottom:0; }
}

@media(max-width:820px){
  #view-tour.board .app,#view-loja.board .app{ padding:.45rem .75rem 5.5rem; }
  .cc-head__top{ align-items:flex-start; flex-wrap:wrap; }
  .cc-head__top .wl__brand{ flex:1 1 13rem; }
  .cc-head__top .hd-tools{
    width:100%; order:2; margin-left:0; overflow-x:auto; padding:.15rem 0 .25rem;
    scrollbar-width:thin; overscroll-behavior-x:contain;
  }
  .hd-tools > *{ flex:0 0 auto; }
  .wl__logo{ width:58px; height:58px; }
  .wl__id{ padding-top:10px; }
  .wl__eyebrow{ font-size:.7rem; }
  .wl__soia{ font-size:.78rem; }
  .cc-head__nav{ flex-wrap:wrap; gap:.35rem; }
  .cc-head__nav .app__tabs{ width:100%; overflow-x:auto; scrollbar-width:thin; }
  .cc-head__nav .period-cluster{ width:100%; margin-left:0; overflow-x:auto; padding-bottom:.2rem; }
  .cc-head__bar{ overflow-x:auto; }
  .cc-subhost{ flex-wrap:nowrap; }
  .cc-subhost .subtabs{ flex-wrap:nowrap; overflow-x:auto; }
}

@media(max-width:520px){
  .view-switch{ display:none; }
  .board__live{ margin-left:auto; }
  .prio__pop{ position:fixed; top:4.25rem; left:.65rem; right:.65rem; width:auto; max-height:calc(100dvh - 5rem); }
  .prio__list{ max-height:calc(100dvh - 9rem); }
}

@media(prefers-reduced-motion:reduce){
  .fab__float,.fab__ico,.tape__run{ animation:none!important; }
}



