.col-tela { min-width:0; color:#263039; }
.col-acoes { display:flex; gap:8px; flex-wrap:wrap; align-items:center; }
.col-resumo { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); margin:22px 0; border:1px solid #e2e5e8; background:white; border-radius:10px; overflow:hidden; }
.col-resumo button { background:transparent; border:0; border-right:1px solid #e2e5e8; padding:18px 22px; text-align:left; display:flex; flex-direction:column; gap:3px; }
.col-resumo button:last-child { border-right:0; }
.col-resumo button[aria-pressed=true] { background:#f8eeee; box-shadow:inset 0 -3px #a72b35; }
.col-resumo strong { font-size:26px; line-height:1.2; }
.col-resumo span { font-size:13px; color:#53606b; }
.col-filtros { display:grid; grid-template-columns:1.5fr 1fr 1fr 1fr; gap:12px; }
.col-campo { display:flex; flex-direction:column; gap:5px; min-width:0; font-size:12px; font-weight:600; }
.col-campo input,.col-campo select,.col-campo textarea { font-weight:400; min-height:35px; }
.col-barra { display:flex; align-items:center; justify-content:space-between; gap:12px; margin:18px 0; flex-wrap:wrap; font-size:13px; }
.col-scroll { max-width:100%; overflow-x:auto; border:1px solid #e2e5e8; border-radius:10px; background:white; }
.col-tabela { width:100%; min-width:820px; border-collapse:collapse; font-size:13px; }
.col-tabela th { background:#f6f7f8; color:#53606b; font-weight:600; font-size:12px; text-align:left; padding:12px 16px; }
.col-tabela td { padding:16px; border-top:1px solid #edf0f2; vertical-align:top; max-width:320px; overflow-wrap:anywhere; }
.col-tabela tr:hover td { background:#fcfaf9; }
.col-tabela small,.col-time-nome small,.col-historico small,.col-reagenda small { display:block; color:#63717c; font-size:12px; margin-top:5px; }
.col-link { border:0; background:none; color:#932530; padding:0; text-align:left; text-decoration:underline; text-underline-offset:3px; }
.col-link:hover { color:#621923; }
.col-badge { display:inline-flex; background:#edf0f2; color:#4c5660; font-size:11px; line-height:1.5; padding:3px 8px; border-radius:5px; margin:0 4px 3px 0; font-weight:600; }
.col-badge.good { background:#e4f2e9; color:#236341; }
.col-badge.danger { background:#fbe6e8; color:#a12431; }
.col-badge.warn { background:#fff1d9; color:#845415; }
.col-badge.info { background:#e6eef7; color:#305c83; }
.col-vazio { background:white; padding:42px 24px; border:1px dashed #ccd2d7; border-radius:10px; text-align:center; color:#586774; }
.col-vazio h2 { font-size:19px; color:#303c46; }
.col-colecoes { padding:20px 0; display:grid; gap:12px; }
.col-atualizado { font-size:11px; color:#6a7680; margin-top:14px; }
.col-timeline { width:max(100%,calc(230px + var(--col-width))); font-size:12px; }
.col-time-row { display:grid; grid-template-columns:230px 1fr; min-height:74px; border-bottom:1px solid #e5e9ec; }
.col-time-head { min-height:40px; background:#f6f7f8; font-weight:600; color:#4c5b65; }
.col-time-row>div:first-child { position:sticky; left:0; z-index:2; background:white; border-right:1px solid #dde3e7; padding:12px 16px; }
.col-time-head>div:first-child { background:#f6f7f8; }
.col-months { display:grid; grid-template-columns:repeat(var(--col-meses),1fr); }
.col-months span { padding:12px; border-right:1px solid #e5e9ec; }
.col-track { position:relative; background:repeating-linear-gradient(to right,transparent 0,transparent calc(100% / var(--col-meses) - 1px),#e9edef calc(100% / var(--col-meses) - 1px),#e9edef calc(100% / var(--col-meses))); }
.col-ponto { position:absolute; top:12px; width:26px; height:28px; transform:translateX(-50%); border:0; background:#fff; color:#a32936; font-size:22px; line-height:1; padding:0; border-radius:5px; }
.col-marco { top:42px; color:#3a647b; font-size:17px; height:24px; }
.col-base { top:12px; color:#667680; }
.col-fora { position:absolute; left:16px; top:16px; color:#687782; font-size:11px; }
.col-eyebrow { color:#67737e; font-size:12px; margin:0 0 6px; }
.col-decisao { margin:20px 0; padding:22px; background:white; border:1px solid #e0e5e8; border-left:4px solid #a62a35; border-radius:9px; }
.col-decisao h2 { font-size:18px; margin:8px 0; }
.col-decisao p { font-size:13px; color:#52606b; }
.col-decisao small { font-size:12px; color:#53636d; }
.col-progress { height:5px; border-radius:4px; background:#e8edf0; margin:16px 0 8px; overflow:hidden; }
.col-progress span { display:block; height:100%; background:#446c60; }
.col-datas { display:flex; gap:32px; flex-wrap:wrap; margin:18px 0 26px; font-size:12px; color:#67737d; }
.col-datas strong { display:block; color:#344450; font-size:15px; margin-top:3px; }
.col-h { font-size:16px; margin:24px 0 12px; }
.col-nota { white-space:pre-wrap; overflow-wrap:anywhere; font-size:13px; }
.col-historico { margin:25px 0; padding:16px; border:1px solid #e1e6e9; border-radius:8px; font-size:13px; }
.col-historico summary { cursor:pointer; font-weight:600; }
.col-historico ol { padding-left:20px; margin:18px 0 0; }
.col-historico li { padding:8px 0; }
.col-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.col-form textarea { min-height:80px; }
.col-span { grid-column:1/-1; }
.col-ajuda { font-size:12px; color:#63727c; font-weight:400; margin-bottom:0; }
.col-alerta { color:#a02c35!important; font-size:12px; margin-top:10px; }
.col-reagenda { display:grid; gap:10px; max-height:300px; overflow-y:auto; margin:18px 0; }
.col-reagenda label { display:flex; gap:10px; align-items:flex-start; padding:8px; border-bottom:1px solid #e6ebee; }
.col-tela button:focus-visible,.col-tela a:focus-visible { outline:3px solid #4d779e; outline-offset:3px; }
@media(max-width:900px) { .col-filtros { grid-template-columns:repeat(2,minmax(0,1fr)); } .col-resumo button { padding:14px; } }
@media(max-width:600px) { .col-resumo { grid-template-columns:repeat(2,minmax(0,1fr)); } .col-resumo button { border-bottom:1px solid #e2e5e8; } .col-filtros,.col-form { grid-template-columns:1fr; } .col-datas { gap:20px; } .col-decisao { padding:16px; } .col-timeline { width:calc(170px + var(--col-width)); } .col-time-row { grid-template-columns:170px 1fr; } .col-time-row>div:first-child { padding:12px; } }
