/* Operacional Trafega · layout com navegação lateral e componentes das novas telas (complementa app.css) */
body.sem-rolagem{overflow:hidden}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.txt-ruim{color:var(--bad)}
.txt-alerta{color:var(--warn)}
.pre{white-space:pre-wrap}
a.kpi{text-decoration:none;color:inherit}

/* ---------- casca: navegação lateral ---------- */
.casca{display:grid;grid-template-columns:208px minmax(0,1fr);min-height:calc(100vh - 55px)}
.casca{background:linear-gradient(to right,var(--panel-2) 207px,var(--line) 207px 208px,transparent 208px)}
.nav{position:sticky;top:55px;align-self:start;height:calc(100vh - 55px);display:flex;flex-direction:column;gap:2px;padding:16px 10px;overflow:auto}
.nav-item{position:relative;display:flex;align-items:center;gap:10px;height:38px;padding:0 12px;border-radius:9px;color:var(--muted);text-decoration:none;font-weight:500}
.nav-item svg{width:19px;height:19px;flex:none}
.nav-item:hover{background:var(--panel);color:var(--ink)}
.nav-item[aria-current="true"]{background:var(--accent-soft);color:var(--ink)}
.nav-item[aria-current="true"] svg{color:var(--accent)}
.badge{margin-left:auto;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--bad);color:#fff;font-size:11.5px;font-weight:700;display:inline-grid;place-items:center;font-variant-numeric:tabular-nums}
.conteudo{max-width:1240px;width:100%;padding-top:20px}

.filtros{margin-bottom:20px}
.filtro-pessoa{display:block}
.filtro-pessoa select{min-width:190px}
.filtros input[type=search]{width:280px}

/* ---------- cabeçalho das páginas ---------- */
.pagina-cab{display:flex;align-items:flex-end;justify-content:space-between;gap:12px 16px;flex-wrap:wrap;margin-bottom:18px}
.pagina-cab p{margin:4px 0 0}
.cab-acoes{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.chips{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin:-4px 0 20px}
.chip-f{height:30px;padding:0 12px;border-radius:999px;border:1px solid var(--line);background:var(--panel);font-size:13px;font-weight:500;color:var(--muted);cursor:pointer}
.chip-f[aria-pressed="true"]{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.chip-sel{width:auto;height:30px;border-radius:999px;font-size:13px;padding:0 10px}
.seg-largo{width:100%}
.seg-largo button{flex:1;height:32px}

/* seções */
.secao.recolhida .secao-corpo{display:none}
.secao-topo .qtd.ruim{color:var(--bad);font-weight:700}
.secao-topo .qtd.alerta{color:var(--warn);font-weight:700}
.sub-titulo{font-size:12.5px;font-weight:600;color:var(--muted);margin:4px 0 8px;text-transform:uppercase;letter-spacing:.03em}
.sub-titulo:not(:first-child){margin-top:16px}

/* ---------- linhas de itens ---------- */
.lista{display:grid;background:var(--panel);border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:var(--sombra)}
.item-linha{position:relative;display:flex;align-items:center;gap:12px;padding:10px 14px 10px 16px;border-bottom:1px solid var(--line-2);min-height:56px}
.item-linha:last-child{border-bottom:0}
.item-linha::before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:3px;border-radius:0 3px 3px 0;background:transparent}
.item-linha.t-ruim::before{background:var(--bad)}
.item-linha.t-hoje::before{background:var(--brand)}
.item-linha.t-alerta::before{background:var(--warn)}
.item-linha.t-roxo::before{background:var(--roxo)}
.item-linha.feito .item-titulo{color:var(--muted);text-decoration:line-through;text-decoration-color:var(--line)}
.item-main{flex:1;min-width:0;display:grid;gap:4px}
.item-titulo{all:unset;cursor:pointer;font-weight:600;font-size:14px;line-height:1.3;display:flex;align-items:center;gap:6px;flex-wrap:wrap;overflow-wrap:anywhere}
.item-titulo:hover{text-decoration:underline;text-underline-offset:3px}
.item-titulo:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:4px}
.item-sub{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12.5px;color:var(--muted)}
.mini{font-size:12px;color:var(--muted);display:inline-flex;align-items:center;gap:4px}
.item-lado{display:flex;align-items:center;gap:8px;flex:none}
.check-btn{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;border:1.6px solid var(--line);background:var(--panel);color:transparent;cursor:pointer;flex:none;padding:0;transition:all .12s}
button.check-btn:hover{border-color:var(--ok);color:var(--ok)}
.check-btn.on{background:var(--ok);border-color:var(--ok);color:#fff}
.tipo-ico{display:grid;place-items:center;width:22px;height:22px;border-radius:6px;font-size:11px;flex:none;background:var(--panel-2);color:var(--muted);border:1px solid var(--line)}
.tipo-ico.design{background:var(--roxo-soft);color:var(--roxo);border-color:transparent}
.tipo-ico.video{background:var(--info-soft);color:var(--info);border-color:transparent}
.tipo-ico.ck{background:var(--accent-soft);color:var(--accent);border-color:transparent;font-weight:700}
.tipo-ico.onb{background:var(--warn-soft);color:var(--warn);border-color:transparent;font-weight:700}

.pill{display:inline-flex;align-items:center;height:26px;padding:0 10px;border-radius:7px;font-size:12.5px;font-weight:600;white-space:nowrap;border:0;cursor:pointer}
.pill.estatico{cursor:default;height:22px;font-size:12px}
.pill.neutro{background:var(--panel-2);color:var(--muted);box-shadow:inset 0 0 0 1px var(--line)}
.pill.info{background:var(--info-soft);color:var(--info)}
.pill.roxo{background:var(--roxo-soft);color:var(--roxo)}
.pill.ruim{background:var(--bad-soft);color:var(--bad)}
.pill.alerta{background:var(--warn-soft);color:var(--warn)}
.pill.ok{background:var(--ok-soft);color:var(--ok)}
button.pill:hover{filter:brightness(.96)}
.pill-txt{all:unset;cursor:pointer;font-size:12.5px;min-width:92px;text-align:right;white-space:nowrap}
span.pill-txt{cursor:default}
.prazo{font-weight:500;color:var(--muted);font-variant-numeric:tabular-nums}
.prazo.ruim{color:var(--bad);font-weight:600}
.prazo.hoje{color:var(--accent);font-weight:600}
.prazo.alerta{color:var(--warn);font-weight:600}
.prazo.semprazo{color:var(--warn);font-style:italic}
.prio{display:inline-flex;align-items:center;height:18px;padding:0 6px;border-radius:4px;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.03em}
.prio.urgente{background:var(--bad);color:#fff}
.prio.alta{background:var(--warn-soft);color:var(--warn)}
.pessoas-btn{all:unset;display:inline-flex;align-items:center;cursor:pointer;padding:2px;border-radius:999px}
span.pessoas-btn{cursor:default}
.pessoas-btn .avatar+.avatar{margin-left:-6px;box-shadow:0 0 0 2px var(--panel)}
.avatar.peq{width:22px;height:22px;font-size:9.5px}
.pessoa{display:inline-flex;align-items:center;gap:5px}
.pessoa.vazio{color:var(--bad)}
.cli-chip{all:unset;cursor:pointer;font-size:12.5px;font-weight:500;color:var(--ink);max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
button.cli-chip:hover{color:var(--accent);text-decoration:underline;text-underline-offset:2px}
.cli-chip.apagado{color:var(--warn);cursor:default;font-style:italic}
.tags{display:inline-flex;gap:4px;flex:none}

/* ---------- kanban de criativos ---------- */
.kanban{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(212px,1fr);gap:12px;overflow-x:auto;padding-bottom:12px;scroll-snap-type:x proximity;align-items:start}
.kcol{background:var(--panel-2);border:1px solid var(--line);border-radius:12px;padding:10px;display:grid;grid-template-columns:minmax(0,1fr);gap:8px;scroll-snap-align:start;min-width:0}
.kcol-cab{display:flex;align-items:center;gap:8px;padding:2px 4px}
.kcol-cab .qtd{margin-left:auto;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}
.kcol-dica{font-size:11.5px;color:var(--muted);padding:0 4px;margin-top:-4px}
.kcol-corpo{display:grid;gap:8px}
.kcard{position:relative;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:11px 12px;display:grid;gap:7px;box-shadow:var(--sombra)}
.kcard.t-ruim{box-shadow:inset 3px 0 0 var(--bad),var(--sombra)}
.kcard .item-titulo{font-size:13.5px}
.kcard-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px}
.kcard-acoes{display:flex;flex-wrap:wrap;gap:6px;padding-top:8px;border-top:1px solid var(--line-2)}
.kcard-acoes .btn{padding:0 9px}
.kcol-corpo{grid-template-columns:minmax(0,1fr)}
.kcard{min-width:0}
.largo-flex{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}
.icone-btn.peq{width:30px;height:30px;flex:none}
.kvazio{font-size:12px;color:var(--muted);text-align:center;padding:10px;border:1px dashed var(--line);border-radius:9px}

/* ---------- gaveta ---------- */
.gaveta-painel{width:min(560px,100vw)}
.dlg-cab .sub{margin-top:6px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.form-gaveta{display:grid;gap:12px;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--panel-2)}
.botoes{display:flex;gap:8px;flex-wrap:wrap}
.h-ficha{margin-bottom:10px;display:flex;align-items:center;gap:8px}
.h-ficha .qtd{font-size:12.5px;color:var(--muted);font-weight:500}
details.contexto summary,details.mais-det summary{cursor:pointer;font-size:13px}
details.mais-det{margin-top:10px}
details.mais-det summary{color:var(--muted);margin-bottom:8px}
.links{display:flex;gap:6px;flex-wrap:wrap}
.trilha{display:flex;flex-wrap:wrap;gap:4px}
.trilha span{font-size:11.5px;padding:3px 8px;border-radius:999px;background:var(--panel-2);color:var(--muted);border:1px solid var(--line)}
.trilha span.feita{color:var(--ok);border-color:transparent;background:var(--ok-soft)}
.trilha span.atual{background:var(--ink);color:var(--bg);border-color:var(--ink);font-weight:600}
.comentarios{display:grid;gap:10px}
.novo-comentario{display:grid;gap:8px;justify-items:end}
.novo-comentario textarea{min-height:64px}
.lista-coment{display:grid;gap:8px}
.coment{border:1px solid var(--line);border-radius:10px;padding:10px 12px;display:grid;gap:4px;background:var(--panel)}
.coment.resposta{margin-left:14px;background:var(--panel-2)}
.coment-cab{display:flex;justify-content:space-between;gap:8px;font-size:12.5px}
.coment-txt{white-space:pre-wrap;font-size:13px;overflow-wrap:anywhere}
.motivo textarea{min-height:60px}

/* ---------- onboarding ---------- */
.grade-larga{grid-template-columns:repeat(auto-fill,minmax(340px,1fr))}
.onb-card .card-topo{align-items:center}
.checklist{display:grid;gap:2px}
.check-item{all:unset;display:flex;align-items:center;gap:9px;padding:6px 8px;border-radius:8px;cursor:pointer;font-size:13px}
.check-item:hover{background:var(--panel-2)}
.check-item:focus-visible{outline:2px solid var(--brand)}
.check-item .check-btn{width:18px;height:18px}
.check-item.on .check-txt{color:var(--muted);text-decoration:line-through}
.check-item.proximo{background:var(--accent-soft)}
.check-item .mini{margin-left:auto}
.mini-barra{display:inline-block;width:70px;margin:0;height:5px}
.pessoa-btn{padding:0;color:inherit;font-size:12.5px}
.card.destaque{outline:2px solid var(--brand);outline-offset:2px;transition:outline .3s}

/* ---------- time ---------- */
.gestor-card.sem-dono{margin-bottom:12px;border-color:var(--warn)}
.gestor-card.sem-dono .mini-kpis{grid-template-columns:repeat(4,1fr)}
tr.inativo td{opacity:.6}
.so-mobile{display:none}

/* toast com ação */
.toast{display:flex;align-items:center;gap:14px}
.toast.on{pointer-events:auto}
.toast-acao{background:none;border:0;color:var(--brand);font-weight:700;cursor:pointer;padding:0;white-space:nowrap}

/* ---------- celular ---------- */
@media (max-width:900px){
  .casca{grid-template-columns:1fr;background:none}
  .nav{position:fixed;top:auto;bottom:0;left:0;right:0;height:auto;z-index:30;flex-direction:row;justify-content:space-around;gap:0;padding:4px 2px calc(4px + env(safe-area-inset-bottom));border-right:0;border-top:1px solid var(--line);background:color-mix(in srgb,var(--panel) 94%,transparent);backdrop-filter:blur(10px)}
  .nav-item{flex:1;flex-direction:column;justify-content:center;gap:2px;height:52px;padding:0 2px;font-size:10px;min-width:0}
  .nav-item .rot{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .nav-item svg{width:21px;height:21px}
  .badge{position:absolute;top:2px;left:calc(50% + 4px);margin:0;min-width:17px;height:17px;font-size:10px;padding:0 4px}
  .conteudo{padding-bottom:96px}
  .toast{bottom:84px}
}
@media (max-width:640px){
  .conteudo{padding-top:14px}
  .filtros{gap:6px}
  .filtro-pessoa{flex:1;min-width:0}
  .filtro-pessoa select{width:100%;min-width:0}
  .filtros input[type=search]{width:100%}
  .pagina-cab h1{font-size:20px}
  .cab-acoes{width:100%}
  .cab-acoes .btn{flex:1}
  .item-linha{flex-wrap:wrap;align-items:flex-start;gap:8px 10px;padding:10px 12px 10px 14px}
  .item-linha>.check-btn,.item-linha>.tipo-ico{margin-top:1px}
  .item-main{flex:1 1 calc(100% - 40px)}
  .item-lado{flex:1 1 100%;padding-left:32px;flex-wrap:wrap}
  .pill-txt{min-width:0;text-align:left}
  .item-lado .pessoas-btn{margin-left:auto}
  .kanban{grid-auto-columns:82%;margin:0 -16px;padding:0 16px 12px;scroll-padding:16px}
  .so-desktop{display:none}
  .so-mobile{display:grid}
  .grade-larga{grid-template-columns:1fr}
  .gestor-card.sem-dono .mini-kpis{grid-template-columns:repeat(2,1fr)}
  .gaveta-painel{padding:16px}
  .info-grid{grid-template-columns:1fr 1fr}
}
.menu button[aria-current="true"]{font-weight:600;background:var(--accent-soft)}
.menu{max-height:min(70vh,420px);overflow:auto}
a.btn{color:var(--ink)}
a.btn.primario{color:var(--accent-ink)}
.meta .avatar,.pessoa .avatar{display:inline-grid;place-items:center}
/* na gaveta as linhas são estreitas: lado vai para baixo */
.gaveta-painel .item-linha{flex-wrap:wrap;align-items:flex-start;gap:6px 10px}
.gaveta-painel .item-main{flex:1 1 calc(100% - 40px)}
.gaveta-painel .item-lado{flex:1 1 100%;padding-left:32px;flex-wrap:wrap}
.gaveta-painel .pill-txt{min-width:0;text-align:left}
.gaveta-painel .item-lado .pessoas-btn{margin-left:auto}
@media (max-width:640px){.kcol.vazia{display:none}}
.eu-btn{display:flex;align-items:center;gap:8px;background:none;border:0;padding:2px 4px;border-radius:8px;cursor:pointer;color:inherit}
.eu-btn:hover{background:var(--panel)}
.dica-login{font-size:12.5px;margin:-6px 0 0}
.senha-estado{display:block;font-size:12px}
.senha-estado.ok{color:var(--ok)}
.senha-estado.alerta{color:var(--warn)}
.senha-gerada{font-family:ui-monospace,Menlo,monospace;font-size:18px;font-weight:600;letter-spacing:.04em;padding:12px;border:1px dashed var(--accent);border-radius:10px;text-align:center;background:var(--accent-soft)}
.acesso-linha .acoes-linha{margin-left:auto;display:flex;gap:6px}
.acesso-linha .acoes-linha .btn{margin-left:0}

/* ---------- calendário de check-ins ---------- */
.cal{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:14px;box-shadow:var(--sombra)}
.cal-topo{display:flex;align-items:center;gap:12px 16px;flex-wrap:wrap;margin-bottom:12px}
.cal-topo h2{font-size:17px;min-width:150px}
.cal-topo .legenda{margin-left:auto}
.cal-nav{display:flex;gap:6px;align-items:center}
.cal-nav .icone-btn{width:32px;height:32px;font-size:18px}
.cal-grade{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}
.cal-cab{font-size:12px;font-weight:600;color:var(--muted);padding:6px 8px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--panel-2)}
.cal-cel{min-height:112px;padding:6px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:4px;min-width:0}
.cal-cel.vazia{background:var(--panel-2)}
.cal-cel.fds{background:color-mix(in srgb,var(--panel-2) 60%,var(--panel))}
.cal-cel.passado .cal-dia{color:var(--muted)}
.cal-cel.hoje{box-shadow:inset 0 0 0 2px var(--brand)}
.cal-dia{font-size:12.5px;font-weight:600;font-variant-numeric:tabular-nums}
.cal-cel.hoje .cal-dia{color:var(--accent)}
.cal-evs{display:grid;gap:3px;min-width:0}
.cal-ev{all:unset;display:block;cursor:pointer;font-size:11.5px;line-height:1.3;padding:3px 6px;border-radius:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-left:3px solid transparent}
.cal-ev i{font-style:normal;opacity:.8}
.cal-ev.ok{background:var(--ok-soft);color:var(--ok);border-left-color:var(--ok)}
.cal-ev.alerta{background:var(--warn-soft);color:var(--warn);border-left-color:var(--warn)}
.cal-ev.ruim{background:var(--bad-soft);color:var(--bad);border-left-color:var(--bad)}
.cal-ev.feito{background:var(--panel-2);color:var(--muted);border-left-color:var(--line)}
.cal-ev.feito .ponto{width:6px;height:6px;margin-right:4px;vertical-align:middle}
.cal-ev:hover{filter:brightness(.95)}
.cal-ev:focus-visible{outline:2px solid var(--brand)}
.cal-mais{font-size:11px;color:var(--muted);padding-left:6px}
.cal-lista{display:grid;gap:10px}
.cal-l-dia{border:1px solid var(--line);border-radius:10px;padding:10px}
.cal-l-dia.hoje{border-color:var(--brand)}
.cal-l-data{font-size:12.5px;font-weight:600;margin-bottom:6px;text-transform:capitalize}
.cal-l-evs{display:grid;gap:4px}
.cal-l-evs .cal-ev{font-size:13px;padding:6px 8px;white-space:normal}

/* ---------- saúde da carteira ---------- */
.saude-painel{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:12px;margin-bottom:18px}
.saude-bloco{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:16px;display:grid;gap:12px;align-content:start;box-shadow:var(--sombra)}
.saude-bloco h2{font-size:14px}
.saude-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.saude-card{all:unset;cursor:pointer;border-radius:10px;padding:10px 12px;display:grid;gap:2px;border:1px solid var(--line);background:var(--panel-2)}
.saude-card b{font-size:26px;font-weight:600;font-variant-numeric:tabular-nums;line-height:1.1}
.saude-card span{font-size:12px;color:var(--muted)}
.saude-card small{font-size:11.5px;color:var(--muted)}
.saude-card.Safe b{color:var(--ok)}
.saude-card.Em b{color:var(--warn)}
.saude-card.Risco b{color:var(--bad)}
.saude-card[aria-pressed="true"]{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
.saude-card:focus-visible{outline:2px solid var(--brand)}
.barra-grossa{display:flex;height:14px;border-radius:999px;overflow:hidden;background:var(--line-2)}
.barra-grossa i{display:block;height:100%}
.barra-grossa i+i{box-shadow:-2px 0 0 var(--panel)}
.gestor-saude{display:grid;grid-template-columns:110px minmax(0,1fr) 34px;gap:8px;align-items:center;font-size:12.5px}
.gestor-saude .barra-grossa{height:10px}
.gestor-saude .n{color:var(--muted);text-align:right;font-variant-numeric:tabular-nums}
.atencao-lista{display:grid;gap:4px;max-height:268px;overflow:auto}
.atencao-item{all:unset;cursor:pointer;display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:8px;align-items:center;padding:7px 8px;border-radius:8px;font-size:13px}
.atencao-item:hover{background:var(--panel-2)}
.atencao-item .nome{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.atencao-item .det{font-size:12px;color:var(--muted);white-space:nowrap}
.ritmo-faixas{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;font-size:12px}
.ritmo-faixas div{background:var(--panel-2);border-radius:8px;padding:7px 8px}
.ritmo-faixas b{display:block;font-size:16px;font-variant-numeric:tabular-nums}
@media (max-width:980px){.saude-painel{grid-template-columns:1fr}}
@media (max-width:640px){
  .saude-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ritmo-faixas{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gestor-saude{grid-template-columns:84px minmax(0,1fr) 28px}
  .cal-topo .legenda{margin-left:0}
}
.cal-lista.so-mobile{display:none}
@media (max-width:640px){.cal-lista.so-mobile{display:grid}.cal-grade.so-desktop{display:none}}

/* ===== Check-ins: lista fixa por cliente ===== */
.kpis-filtro .kpi[aria-pressed="true"]{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
.ckl-barra{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:4px 0 10px;font-size:13px}
.ckl{background:var(--panel);border:1px solid var(--line);border-radius:12px;overflow:hidden}
.ckl-cab,.ckl-linha{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1.25fr) minmax(0,1.35fr) auto;gap:14px;align-items:center;padding:10px 14px}
.ckl-cab{font-size:12px;font-weight:600;color:var(--muted);background:var(--panel-2);border-bottom:1px solid var(--line)}
.ckl-linha{position:relative;border-bottom:1px solid var(--line-2);font-size:13.5px}
.ckl-linha:last-child{border-bottom:0}
.ckl-linha::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:transparent}
.ckl-linha.t-ruim::before{background:var(--bad)}
.ckl-linha.t-hoje::before{background:var(--brand)}
.ckl-linha.t-alerta::before{background:var(--warn)}
.ckl-linha:hover{background:var(--panel-2)}
.ckl-cli{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}
.ckl-nome{all:unset;cursor:pointer;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}
.ckl-nome:hover{text-decoration:underline}
.ckl-nome:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:3px}
.ckl-ult,.ckl-prox{display:flex;align-items:center;gap:6px;flex-wrap:wrap;min-width:0}
.ckl-hist{display:flex;align-items:center;gap:8px;cursor:pointer;min-width:0;flex-wrap:wrap}
.ckl-acoes{display:flex;gap:6px;align-items:center;justify-content:flex-end}
.ckl-rot{display:none}
.dias{font-size:12.5px;color:var(--muted)}
.dias.ok{color:var(--ok)}.dias.alerta{color:var(--warn)}.dias.ruim{color:var(--bad);font-weight:600}
.ckt{display:inline-flex;align-items:center;gap:4px}
.ckt-pt{width:11px;height:11px;border-radius:50%;flex:none;display:inline-grid;place-items:center}
.ckt-pt.noshow{background:transparent;border:1.5px solid var(--bad);color:var(--bad);font-size:9px;font-weight:700;line-height:1}
.ckt-n{font-size:12px;color:var(--muted);white-space:nowrap}
.ckt-vazia{font-size:12.5px}
.so-mobile-inline{display:none}
.evento .gap{font-size:12px;font-weight:400}
@media (max-width:1100px){
  .ckl-cab{display:none}
  .ckl-linha{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px 14px;padding:12px 14px 12px 16px}
  .ckl-cli{grid-column:1 / -1}
  .so-desktop-bloco{display:none}
  .so-mobile-inline{display:inline-flex}
  .ckl-rot{display:block;width:100%;font-size:11.5px;color:var(--muted);font-weight:500}
  .ckl-acoes{grid-column:1 / -1;justify-content:flex-start;flex-wrap:wrap}
}
@media (max-width:520px){
  .ckl-linha{grid-template-columns:minmax(0,1fr)}
  .ckl-acoes .btn{flex:1}
}
