/* ===== Atividades (quadro estilo Trello) ===== */
:root{--kb-list:#eef1f4;--kb-card:#fff;--kb-card-h:#f7f9fb;--kb-etq-tx:#172b4d}
@media (prefers-color-scheme:dark){:root:not(.light){--kb-list:#11171e;--kb-card:#1f2832;--kb-card-h:#26313d}}
:root.dark{--kb-list:#11171e;--kb-card:#1f2832;--kb-card-h:#26313d}

body.kb-on main.wrap{max-width:none}
#tab-kanban{padding-top:12px}
.kb-top{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;margin-bottom:12px}
.kb-sel,.kb-fil{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.kb-fil{margin-left:auto}
.kb-top select,.kb-top input:not([type=checkbox]){border:1px solid var(--border);background:var(--surface);border-radius:8px;padding:6px 10px;max-width:100%}
#kbBoard{font-weight:700;min-width:200px}
#kbQ{width:190px}
.kb-meus{display:flex;align-items:center;gap:5px;font-size:13px;color:var(--muted);cursor:pointer;white-space:nowrap}

/* quadro */
.kb-board{display:flex;gap:12px;align-items:flex-start;overflow-x:auto;padding:2px 2px 16px;min-height:calc(100vh - 190px);scrollbar-width:thin}
.kb-list{flex:0 0 272px;width:272px;background:var(--kb-list);border:1px solid var(--border);border-radius:12px;display:flex;flex-direction:column;max-height:calc(100vh - 180px)}
.kb-list-h{display:flex;align-items:center;gap:6px;padding:8px 8px 4px 12px;cursor:grab;position:static;background:none;border:0}
.kb-list-t{margin:0;font-size:14px;font-weight:700;flex:1;min-width:0;overflow-wrap:anywhere;cursor:text;padding:3px 0}
.kb-list-t-edit{flex:1;font-weight:700;border:2px solid var(--accent);border-radius:6px;padding:3px 6px;background:var(--surface)}
.kb-n{font-size:12px;color:var(--muted);background:var(--surface);border-radius:99px;padding:0 8px}
.kb-cards{display:flex;flex-direction:column;gap:8px;padding:4px 8px;overflow-y:auto;min-height:12px;flex:1}
.kb-card{background:var(--kb-card);border:1px solid var(--border);border-radius:9px;box-shadow:0 1px 1px rgba(9,30,66,.12);padding:8px 10px;cursor:pointer;position:relative;overflow:hidden;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}
.kb-card:hover{background:var(--kb-card-h);border-color:var(--accent)}
.kb-card:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
.kb-card.feito .kb-tit{color:var(--muted)}
.kb-capa{height:30px;margin:-8px -10px 8px}
.kb-etqs{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:5px}
.kb-etq{display:inline-block;min-width:40px;min-height:16px;padding:0 8px;border-radius:4px;font-size:11.5px;font-weight:600;line-height:18px;color:var(--kb-etq-tx);border:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.kb-tit{font-size:14px;overflow-wrap:anywhere;white-space:pre-wrap}
.kb-bdg{display:flex;flex-wrap:wrap;gap:4px 8px;align-items:center;margin-top:6px;font-size:12px;color:var(--muted)}
.kb-bdg:empty{display:none}
.kb-b{display:inline-flex;align-items:center;gap:3px;padding:1px 5px;border-radius:4px}
.kb-b.prazo.atr{background:#c9372c;color:#fff}
.kb-b.prazo.logo{background:#f5cd47;color:#172b4d}
.kb-b.prazo.ok,.kb-b.ok{background:#1f845a;color:#fff}
.kb-b.meta{background:var(--accent-soft);color:var(--accent)}
.kb-mbs{display:flex;margin-left:auto}
.kb-mbs i,.kbd-mb i,.kbd-cm>i{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;color:#fff;font-style:normal;font-size:10.5px;font-weight:700;flex:none}
.kb-mbs i+i{margin-left:-5px;box-shadow:0 0 0 2px var(--kb-card)}
.kb-add-card{margin:4px 8px 8px;border:0;background:none;color:var(--muted);text-align:left;padding:7px 8px;border-radius:8px;cursor:pointer;font-weight:600}
.kb-add-card:hover{background:var(--surface2);color:var(--text)}
.kb-add-form{padding:4px 8px 8px;display:flex;flex-direction:column;gap:6px}
.kb-add-form textarea,.kb-add-form input{width:100%;border:1px solid var(--border);border-radius:8px;padding:8px;background:var(--kb-card);resize:none;box-shadow:0 1px 1px rgba(9,30,66,.12)}
.kb-add-form div{display:flex;gap:6px;align-items:center}
.kb-add-list{background:var(--surface2);border-style:dashed}
.kb-add-list form{padding:8px}
.kb-add-list-btn{padding:12px;color:var(--muted);font-weight:600;cursor:pointer;text-align:left}
.kb-add-list-btn:hover{color:var(--text);border-color:var(--accent)}

/* arrastar */
.kb-ghost{opacity:.35;background:var(--accent-soft)!important;border:1px dashed var(--accent)!important}
.kb-ghost>*{visibility:hidden}
.kb-chosen{box-shadow:0 8px 20px rgba(9,30,66,.25)}
.kb-dragging{transform:rotate(3deg);opacity:.95!important}
body.kb-arrastando{cursor:grabbing}
body.kb-arrastando .kb-card:hover{border-color:var(--border)}

/* menu da lista */
.kb-menu{position:absolute;z-index:50;width:240px;background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 24px rgba(9,30,66,.25);padding:6px;display:flex;flex-direction:column}
.kb-menu b{font-size:12.5px;color:var(--muted);padding:6px 8px;text-align:center;border-bottom:1px solid var(--border);margin-bottom:4px}
.kb-menu button{border:0;background:none;text-align:left;padding:8px;border-radius:6px;cursor:pointer}
.kb-menu button:hover{background:var(--surface2)}
.kb-menu .perigo{color:var(--risk)}

/* cores (paleta do Trello) */
.kb-c-green{background:#4bce97}.kb-c-yellow{background:#f5cd47}.kb-c-orange{background:#fea362}.kb-c-red{background:#f87168}
.kb-c-purple{background:#9f8fef}.kb-c-blue{background:#579dff}.kb-c-sky{background:#6cc3e0}.kb-c-lime{background:#94c748}
.kb-c-pink{background:#e774bb}.kb-c-black{background:#8590a2}

/* janela do cartão */
dialog.kbd{width:min(780px,calc(100vw - 24px));max-height:calc(100vh - 40px);overflow:auto;padding:0}
.kbd-c{display:flex;flex-direction:column}
.kbd-capa{height:90px}
.kbd-h{display:flex;gap:10px;align-items:flex-start;padding:16px 18px 6px}
.kbd-h h2{margin:0;font-size:17px;flex:1}
.kbd-tit{width:100%;font-size:19px;font-weight:700;border:2px solid transparent;border-radius:6px;background:none;resize:none;padding:2px 6px;margin-left:-8px;overflow:hidden}
.kbd-tit:focus{border-color:var(--accent);background:var(--surface2);outline:none}
.kbd-tit:disabled{color:var(--text)}
.kbd-sub{font-size:12.5px;color:var(--muted)}
.kbd-b{display:grid;grid-template-columns:1fr 180px;gap:18px;padding:8px 18px 18px}
.kbd-main{display:flex;flex-direction:column;gap:16px;min-width:0}
.kbd-main h4,.kbd-side h4,.kbd-blk h4{margin:0 0 6px;font-size:12px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;display:flex;gap:8px;align-items:center}
.kbd-row{display:flex;flex-wrap:wrap;gap:16px 22px}
.kbd-row2{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.kbd-main textarea,.kbd-main input:not([type=checkbox]),.kbd-main select,.kbd-side select{border:1px solid var(--border);background:var(--surface2);border-radius:8px;padding:7px 9px;width:100%}
.kbd-main textarea{resize:vertical}
.kbd-mbs{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.kbd-mb{display:inline-flex;align-items:center;gap:6px;background:var(--surface2);border:1px solid var(--border);border-radius:99px;padding:2px 4px 2px 2px;font-size:13px}
.kbd-mb button{border:0;background:none;color:var(--muted);cursor:pointer;padding:0 4px}
.kbd-main input.kbd-mb-in{width:140px;padding:5px 9px;border-radius:99px}
.kbd-etqs{display:flex;flex-wrap:wrap;gap:5px}
.kbd-etqs .kb-etq{cursor:pointer;line-height:26px;min-width:52px;opacity:.45}
.kbd-etqs .kb-etq.on{opacity:1;box-shadow:inset 0 0 0 2px rgba(23,43,77,.55)}
.kbd-etqs .kb-etq.on::before{content:"✓ "}
.kbd-etqs .kb-etq:disabled{cursor:default}
.kbd-prazo{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.kbd-main .kbd-prazo input[type=date]{width:auto}
.kbd-prazo label{display:flex;gap:5px;align-items:center;font-size:13px}
.kbd-acts{margin-top:6px}
.kbd-prog{height:8px;background:var(--surface2);border-radius:99px;overflow:hidden;margin-bottom:6px;border:1px solid var(--border)}
.kbd-prog i{display:block;height:100%;background:var(--ok);transition:width .2s}
.kbd-cl{display:flex;flex-direction:column;gap:2px;margin-bottom:6px}
.kbd-cli{display:flex;align-items:center;gap:6px;padding:3px 4px;border-radius:6px}
.kbd-cli:hover{background:var(--surface2)}
.kbd-cli label{flex:1;display:flex;gap:8px;align-items:flex-start;cursor:pointer;font-size:14px}
.kbd-cli.ok span{text-decoration:line-through;color:var(--muted)}
.kbd-inl,.kbd-com{display:flex;gap:6px;align-items:flex-start}
.kbd-com{margin-bottom:10px}
.kbd-coms{display:flex;flex-direction:column;gap:10px}
.kbd-cm{display:flex;gap:8px}
.kbd-cm>i{width:28px;height:28px}
.kbd-cm>div{flex:1;min-width:0;font-size:13px}
.kbd-cm time{color:var(--muted);font-size:12px}
.kbd-cm p{margin:4px 0 0;background:var(--surface2);border:1px solid var(--border);border-radius:8px;padding:7px 10px;white-space:pre-wrap;overflow-wrap:anywhere}
.kbd-side{display:flex;flex-direction:column;gap:6px}
.kbd-side h4:not(:first-child){margin-top:10px}
.kbd-side .btn{text-align:left}
.kbd-side .btn.danger{color:var(--risk)}
.kbd-capas{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}
.kbd-cp{height:26px;border-radius:5px;border:1px solid var(--border);cursor:pointer;color:var(--muted)}
.kbd-cp[data-cover=""]{background:var(--surface2)}
.kbd-cp.on{outline:2px solid var(--accent);outline-offset:1px}
.kbd-meta{margin-top:12px;font-size:11.5px;color:var(--muted)}
.kbd-f{display:flex;gap:8px;padding:12px 18px;border-top:1px solid var(--border);flex-wrap:wrap}
.kbd .hint{font-size:12px;color:var(--muted)}
.kbd .f{margin-bottom:12px}
.kq-etqs{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}
.kq-etq{display:grid;grid-template-columns:92px 1fr 110px auto;gap:6px;align-items:center}
.kq-etq .kb-etq{line-height:26px;text-align:center}
.kq-arq{display:flex;gap:8px;align-items:center;padding:6px 0;border-bottom:1px solid var(--border)}
.kq-arq span{flex:1;min-width:0;overflow-wrap:anywhere}
.kbd h4{margin:14px 0 4px;font-size:13px}
.btn.danger{color:var(--risk)}

/* leitura apenas */
body.nv-ver .kb-list-h{cursor:default}
body.nv-ver .kb-list-t{cursor:default}

/* celular */
@media (max-width:700px){
  .kb-fil{margin-left:0;width:100%}
  .kb-fil>*{flex:1 1 140px}
  #kbQ{width:100%;flex-basis:100%}
  #kbBoard{flex:1;min-width:0}
  .kb-sel{width:100%}
  .kb-board{scroll-snap-type:x mandatory;gap:10px;min-height:calc(100vh - 260px)}
  .kb-list{flex-basis:85vw;width:85vw;scroll-snap-align:center;max-height:calc(100vh - 230px)}
  dialog.kbd{width:100vw;max-width:100vw;height:100%;max-height:100%;margin:0;border-radius:0;border:0}
  .kbd-b{grid-template-columns:1fr}
  .kbd-side{border-top:1px solid var(--border);padding-top:10px}
  .kbd-capas{grid-template-columns:repeat(6,1fr)}
  .kbd-row2{grid-template-columns:1fr}
  .kq-etq{grid-template-columns:70px 1fr 90px auto}
}
