/* /consultivo-bpo — estilos próprios (o padrão visual está em src/styles/brand.css).
   Hero com motion do mês do cliente; seções no padrão r2 (texto | motion mv), motions em page.js
   (AGGU.sx.register "cb-*"), classes .cbx-. Critérios: docs/motion/CRITERIOS_MOTION.md */

.cbx-hero-vis{min-width:0}
.sx .cbx-ms .mv-tt b,.sx .cbx-ms .mv-tt span,.sx .cbx-pr .mv-tt b,.sx .cbx-drop .mv-tt span,.sx .cbx-alert .mv-tt span,.sx .cbx-alert .mv-tt b,.sx .cbx-log .mv-tt span{white-space:normal}

/* Hero · o mês do cliente no calendário */
.cbx-cal{display:grid;grid-template-columns:260px minmax(0,1fr);gap:20px;align-items:center}
.cbx-cal-c{background:#fff;border:1px solid var(--sx-line);border-radius:18px;padding:18px;box-shadow:0 30px 60px -44px rgba(10,20,60,.45)}
.cbx-cal-h{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:12px}
.cbx-cal-h b{font-family:var(--f-brand);font-weight:500;font-size:16px}
.cbx-cal-h span{font-size:12px;color:var(--sx-ink3)}
.cbx-wd,.cbx-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;text-align:center}
.cbx-wd span{font-size:12px;color:var(--sx-ink3);padding-bottom:4px}
.cbx-days li{height:30px;display:grid;place-items:center;border-radius:9px;font-size:13px;font-variant-numeric:tabular-nums;color:var(--sx-ink2);transition:background .3s,color .3s,box-shadow .3s}
.cbx-days li.m{box-shadow:inset 0 0 0 1.5px var(--sx-line2);color:var(--ink);font-weight:500}
.cbx-days li.on{background:var(--sx-blue);color:#fff;box-shadow:none}
.cbx-days li.ok,.sx:not(.is-armed) .cbx-days li.m{background:var(--sx-blue-b);color:var(--sx-blue-t);box-shadow:none}
.cbx-ms{display:flex;flex-direction:column;gap:6px}
.cbx-ms li{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;padding:9px 12px;border-radius:14px;background:#fff;border:1px solid var(--sx-line);transition:opacity .35s var(--sx-ease),transform .35s var(--sx-ease),border-color .25s,box-shadow .25s}
.cbx-ms .sx-ic{width:28px;height:28px}
.cbx-ms .mv-tt small{font-weight:500;color:var(--sx-blue-t)}
.cbx-ms .mv-tt b{font-size:13.5px}
.sx.is-armed .cbx-ms li:not(.in){opacity:.35}
.cbx-ms li.on{border-color:rgba(0,122,255,.45);box-shadow:0 0 0 3px rgba(0,122,255,.12)}
.cbx-ms li.in .sx-ic,.sx:not(.is-armed) .cbx-ms .sx-ic{background:var(--sx-blue-b);color:var(--sx-blue-t)}

/* Open Finance · contas → AGGU */
.cbx-of{background:#fff;border:1px solid var(--sx-line);border-radius:18px;padding:18px 20px}
.cbx-of-h{display:grid;grid-template-columns:minmax(0,1fr) 72px minmax(0,1fr);font-size:12px;color:var(--sx-ink3);margin-bottom:6px}
.cbx-of-h span:last-child{grid-column:3}
.cbx-ofr{display:grid;grid-template-columns:minmax(0,1fr) 72px minmax(0,1fr);align-items:center;padding:12px 0;border-top:1px solid var(--sx-line)}
.cbx-bk{display:flex;align-items:center;gap:10px;min-width:0}
.cbx-bk b{font-weight:500;font-size:13.5px}
.cbx-wire{position:relative;height:2px;margin:0 8px;background:var(--sx-line2);border-radius:1px}
.cbx-ofr[data-k="cx"] .cbx-wire{background:none;border-top:2px dashed var(--sx-line2);height:0}
.cbx-wire b{position:absolute;left:0;top:-3px;width:8px;height:8px;border-radius:50%;background:var(--sx-blue);opacity:0}
.cbx-wire.go b{animation:cbxRun .7s var(--sx-ease) forwards}
@keyframes cbxRun{0%{opacity:1;transform:translateX(0)}90%{opacity:1}100%{opacity:0;transform:translateX(48px)}}
.cbx-res{display:flex;flex-direction:column;min-width:0;padding:8px 12px;border-radius:12px;background:var(--paper);transition:background .3s}
.cbx-res b{font-size:13.5px;font-weight:500}
.cbx-res small{font-size:12px;color:var(--sx-ink3);transition:color .3s}
.cbx-ofr.ok .cbx-res{background:var(--sx-ok-b)}
.cbx-ofr.ok .cbx-res small{color:var(--sx-ok-t)}
.cbx-ofr.wa .cbx-res{background:var(--sx-warn-b)}
.cbx-ofr.wa .cbx-res small{color:var(--sx-warn-t)}
.cbx-alert{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;margin-top:10px;padding:12px 14px;border-radius:14px;border:1px solid rgba(255,159,10,.35);background:#fff}

/* Conciliação · peças que se encaixam */
.cbx-cc{display:flex;flex-direction:column;gap:12px}
.cbx-cc-h{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}
.cbx-cc-h p{font-size:14px;color:var(--sx-ink2)}
.cbx-cc-h p b{font-family:var(--f-brand);font-weight:400;font-size:34px;letter-spacing:-.03em;color:var(--ink);margin-right:4px;font-variant-numeric:tabular-nums}
.cbx-cn{font-size:12.5px;color:var(--sx-ink3)}
.cbx-prs{display:flex;flex-direction:column;gap:10px}
.cbx-pr{--sx-gap:28px;position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--sx-gap)}
.cbx-pr::before{content:"";position:absolute;left:50%;top:50%;width:var(--sx-gap);margin-left:calc(var(--sx-gap) / -2);border-top:2px dashed var(--sx-line2);transition:opacity .3s}
.cbx-l,.cbx-r{display:flex;align-items:center;gap:12px;padding:12px 14px;background:#fff;border:1px solid var(--sx-line);border-radius:14px;min-width:0;transition:transform .45s var(--sx-ease),border-color .3s,background .3s}
.cbx-l time{font-size:12px;color:var(--sx-ink3);font-variant-numeric:tabular-nums;flex:none}
.cbx-l .mv-tt b{font-size:13px;letter-spacing:.01em}
.cbx-l .pos{color:var(--sx-ok-t);font-weight:500}.cbx-l .neg{font-weight:500;color:var(--ink)}
.cbx-r{justify-content:space-between;background:var(--sx-blue-b);border-color:rgba(0,122,255,.2)}
.cbx-r .mv-tt{flex:1}
.cbx-r .mv-tt b{font-size:13px}
.cbx-r .mv-tt span{display:flex;align-items:center;gap:5px}
.cbx-r .mv-tt span svg{width:12px;height:12px;fill:none;stroke:var(--sx-blue);stroke-width:1.8;flex:none}
.cbx-pr.no .cbx-r{background:#fff;border-color:rgba(255,59,48,.3)}
.cbx-pr.ok::before{opacity:0}
.cbx-pr.ok .cbx-l{transform:translateX(15px);border-color:rgba(52,199,89,.5)}
.cbx-pr.ok .cbx-r{transform:translateX(-15px);background:var(--sx-ok-b);border-color:rgba(52,199,89,.5)}

/* BPO (escuro) · delegação → registro */
.cbx-bpo{background:#fff;color:var(--ink);border-radius:18px;padding:20px;display:flex;flex-direction:column;gap:14px}
.cbx-dl-h{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px}
.cbx-dl-h .mv-tt b{font-size:15px}
.cbx-dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0}
.cbx-dl > div{padding:10px 12px;border-radius:12px;background:var(--paper);min-width:0}
.cbx-dl dt{font-size:12px;color:var(--sx-ink3)}
.cbx-dl dd{margin:2px 0 0;font-size:13px;font-weight:500}
.cbx-auth{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px;color:var(--sx-ink2)}
.cbx-log-k{font-size:12px;color:var(--sx-ink3);padding-top:12px;border-top:1px solid var(--sx-line)}
.cbx-log{display:flex;flex-direction:column;gap:6px;margin-top:-6px}
.cbx-log li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:8px 0}
.cbx-log .sx-ic{width:28px;height:28px}
.cbx-log small{font-size:12px;color:var(--sx-ink3);white-space:nowrap}

/* Score Fiscal · anel da carteira */
.cbx-sc{background:#fff;border:1px solid var(--sx-line);border-radius:18px;padding:20px}
.cbx-sc-top{display:flex;align-items:center;gap:28px}
.cbx-ring{position:relative;width:136px;height:136px;flex:none}
.cbx-ring svg{width:100%;height:100%;transform:rotate(-90deg)}
.cbx-ring circle{fill:none;stroke-width:14}
.cbx-ring .tr{stroke:var(--sx-wash)}
.cbx-ring .sg{transition:opacity .35s var(--sx-ease)}
.sx.is-armed .cbx-ring .sg:not(.in){opacity:0}
.cbx-ring .ok,.cbx-dist i.ok{stroke:var(--sx-ok);background:var(--sx-ok)}
.cbx-ring .bl,.cbx-dist i.bl{stroke:#8EC1FF;background:#8EC1FF}
.cbx-ring .wa,.cbx-dist i.wa{stroke:var(--sx-warn);background:var(--sx-warn)}
.cbx-ring .al,.cbx-dist i.al{stroke:var(--sx-al);background:var(--sx-al)}
.cbx-dist i.nn{background:#D2D2D7}
.cbx-ring > span{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.05}
.cbx-ring b{font-family:var(--f-brand);font-weight:400;font-size:32px;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.cbx-ring small{font-size:12px;color:var(--sx-ink3)}
.cbx-dist{flex:1;display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--sx-ink2);min-width:0}
.cbx-dist li{display:flex;align-items:center;gap:8px}
.cbx-dist i{width:10px;height:10px;border-radius:3px;flex:none}
.cbx-dist b{margin-left:auto;color:var(--ink);font-weight:500}
.cbx-sc-k{font-size:12px;color:var(--sx-ink3);margin:16px 0 4px;padding-top:14px;border-top:1px solid var(--sx-line)}
.cbx-drop li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:9px 0}
.cbx-sv{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;font-family:var(--f-brand);font-weight:500;font-size:13px;box-shadow:inset 0 0 0 3px currentColor}
.cbx-sv.al{color:var(--sx-al-t)}.cbx-sv.warn{color:var(--sx-warn-t)}
.cbx-drop .mv-tt b{font-size:13.5px}

/* Entrega · número grande + publicações + leitura */
.cbx-ent{background:#fff;border:1px solid var(--sx-line);border-radius:18px;padding:22px}
.cbx-lbl{font-size:13px;color:var(--sx-ink2)}
.cbx-big b{font-family:var(--f-brand);font-weight:400;font-size:44px;line-height:1.1;letter-spacing:-.035em;font-variant-numeric:tabular-nums}
.cbx-sub{font-size:13px;color:var(--sx-ink3);margin-bottom:16px}
.cbx-docs{display:flex;flex-direction:column}
.cbx-docs li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 0;border-top:1px solid var(--sx-line)}
.cbx-docs b{font-weight:500;font-size:13.5px}
.cbx-rd{margin-top:14px}

@media (max-width:1099px){.cbx-hero-vis{width:100%}}
@media (max-width:720px){
  .cbx-cal{grid-template-columns:minmax(0,1fr)}
  .cbx-cal-c{max-width:none;width:100%}
  .cbx-of{padding:14px 16px}
  .cbx-of-h{display:none}
  .cbx-ofr{grid-template-columns:minmax(0,1fr) 36px minmax(0,1fr)}
  .cbx-bk .sx-ic{display:none}
  .cbx-wire b{display:none}
  .cbx-pr{--sx-gap:14px;grid-template-columns:minmax(0,1fr)}
  .cbx-pr::before{left:28px;top:auto;bottom:-1px;width:0;height:var(--sx-gap);margin:0;border-top:0;border-left:2px dashed var(--sx-line2);transform:translateY(-100%);display:none}
  .cbx-pr.ok .cbx-l{transform:translateY(7px)}
  .cbx-pr.ok .cbx-r{transform:translateY(-7px)}
  .cbx-r{flex-wrap:wrap}
  .cbx-bpo{padding:16px}
  .cbx-dl-h{grid-template-columns:auto minmax(0,1fr)}
  .cbx-dl-h .sx-badge{grid-column:2;justify-self:start}
  .cbx-dl{grid-template-columns:minmax(0,1fr)}
  .cbx-log li{grid-template-columns:auto minmax(0,1fr)}
  .cbx-log small{grid-column:2}
  .cbx-sc{padding:16px}
  .cbx-sc-top{gap:18px}
  .cbx-ring{width:112px;height:112px}
  .cbx-drop li{grid-template-columns:auto minmax(0,1fr)}
  .cbx-drop .sx-badge{grid-column:2;justify-self:start}
  .cbx-ent{padding:18px}
  .cbx-big b{font-size:38px}
}
.cbx-days li.e0{visibility:hidden}
