/* Guará — Painel "Atividades Planejadas" — tema do portal /guara/ (areia/papel/pinho),
   atividades em linhas horizontais de largura cheia. */
.gp-root {
  --gp-bg:#f6f3ec; --gp-card:#fffdf8; --gp-card2:#f1ece1;
  --gp-fg:#1c211f; --gp-fg2:#414a46; --gp-mut:#6b746e;
  --gp-line:#e0d9cb; --gp-line2:#cfc7b6;
  --gp-brand:#1f5c4d; --gp-brand2:#2c7a66; --gp-brand-soft:#e4efe9;
  --gp-clay:#a8611f; --gp-clay-soft:#f4e7d8;
  --gp-crit:#b23b3b; --gp-alta:#c8801f; --gp-media:#b8a52a; --gp-baixa:#3f7d54; --gp-info:#2f6690;
  --gp-crit-bg:#f6e2e0; --gp-alta-bg:#f8ecd6; --gp-media-bg:#f3efd2; --gp-baixa-bg:#e2efe4; --gp-info-bg:#e0ebf2;
  --gp-header:#16201b; --gp-header-ink:#f3f1ea; --gp-acc:#5ec5a3;
  --gp-r:10px; --gp-r-sm:7px;
  --gp-shadow:0 1px 2px rgba(28,33,31,.05),0 3px 10px rgba(28,33,31,.05);
  --gp-shadow-lift:0 4px 20px rgba(28,33,31,.10);
  --gp-font:'Inter',-apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
  --gp-mono:'IBM Plex Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
  color:var(--gp-fg); background:var(--gp-bg); font-family:var(--gp-font); font-size:14px; line-height:1.45;
  padding:4px 2px;
}
/* Largura ampla como o portal /guara/ (vence o max-width do layout "constrained" do tema). */
#guara-painel.gp-root { max-width:1200px; width:100%; margin-left:auto; margin-right:auto; }
.gp-root.gp-dark {
  --gp-bg:#12140f; --gp-card:#191c17; --gp-card2:#20241d;
  --gp-fg:#ece7da; --gp-fg2:#b7b3a5; --gp-mut:#8a877b;
  --gp-line:#2c3128; --gp-line2:#3a4034;
  --gp-brand:#57b199; --gp-brand2:#6cc4ad; --gp-brand-soft:#17281f;
  --gp-clay:#d69553; --gp-clay-soft:#2b2013;
  --gp-crit:#e07a72; --gp-alta:#e0a24e; --gp-media:#cdb84a; --gp-baixa:#6cb682; --gp-info:#68a3c9;
  --gp-crit-bg:#2c1917; --gp-alta-bg:#2b2113; --gp-media-bg:#25230f; --gp-baixa-bg:#152318; --gp-info-bg:#14212b;
  --gp-header:#0e120f; --gp-shadow:0 1px 2px rgba(0,0,0,.3),0 3px 12px rgba(0,0,0,.35);
}
.gp-root * { box-sizing:border-box; }
.gp-loading, .gp-error { padding:24px; color:var(--gp-mut); }
.gp-error { color:var(--gp-crit); }

/* Cabeçalho */
.gp-head-top { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.gp-head h2 { margin:0; color:var(--gp-brand); font-size:23px; font-weight:700; letter-spacing:-.01em; }
.gp-desc { color:var(--gp-mut); margin:6px 0 16px; max-width:72ch; }
.gp-theme { background:none; border:1px solid var(--gp-line); border-radius:var(--gp-r-sm); padding:4px 10px; cursor:pointer; color:var(--gp-mut); font-family:inherit; }
.gp-theme:hover { border-color:var(--gp-brand); color:var(--gp-brand); }

/* KPIs */
.gp-kpis { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; margin-bottom:16px; }
.gp-kpi { background:var(--gp-card); border:1px solid var(--gp-line); border-radius:var(--gp-r); padding:12px 14px; border-top:3px solid var(--gp-brand); box-shadow:var(--gp-shadow); }
.gp-kpi.k-urg { border-top-color:var(--gp-crit); }
.gp-kpi.k-run { border-top-color:var(--gp-info); }
.gp-kpi.k-wait { border-top-color:var(--gp-clay); }
.gp-kpi-l { font-size:11px; letter-spacing:.04em; color:var(--gp-mut); text-transform:uppercase; }
.gp-kpi-v { font-size:30px; font-weight:700; line-height:1.1; }
.gp-kpi-s { font-size:12px; color:var(--gp-mut); }

/* Cortes */
.gp-cuts { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-bottom:18px; }
.gp-cut h3 { font-size:11px; letter-spacing:.04em; text-transform:uppercase; color:var(--gp-mut); margin:0 0 8px; }
.gp-bar { display:grid; grid-template-columns:1fr 90px 28px; align-items:center; gap:8px; width:100%;
  background:none; border:0; padding:3px 4px; cursor:pointer; border-radius:var(--gp-r-sm); text-align:left; color:inherit; font-family:inherit; }
.gp-bar:hover { background:var(--gp-card); }
.gp-bar.on { background:var(--gp-card); outline:1px solid var(--gp-brand); }
.gp-bar-l { font-size:13px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.gp-bar-t { height:8px; background:var(--gp-card2); border-radius:5px; overflow:hidden; }
.gp-bar-f { display:block; height:100%; background:var(--gp-brand); }
.gp-bar-v { text-align:right; font-variant-numeric:tabular-nums; color:var(--gp-mut); font-size:13px; }
.gp-bar-l.p0 { color:var(--gp-crit); font-weight:600; }
.gp-bar-l.p1 { color:var(--gp-alta); }

/* Controles */
.gp-controls { display:flex; flex-wrap:wrap; gap:12px; align-items:center; margin-bottom:12px; }
.gp-resp { font-size:12px; color:var(--gp-mut); display:flex; align-items:center; gap:6px; }
.gp-resp select, .gp-search { padding:6px 9px; border:1px solid var(--gp-line); border-radius:var(--gp-r-sm); background:var(--gp-card); color:var(--gp-fg); font-size:14px; font-family:inherit; }
.gp-search { flex:1 1 220px; min-width:160px; }
.gp-acts { display:flex; gap:8px; margin-left:auto; flex-wrap:wrap; }
.gp-btn { background:var(--gp-brand); color:#fff; border:0; border-radius:var(--gp-r-sm); padding:7px 12px; cursor:pointer; font-size:13px; text-decoration:none; display:inline-block; font-family:inherit; }
.gp-btn:hover { background:var(--gp-brand2); }
.gp-btn.gp-mine.on { background:var(--gp-clay); }
.gp-btn.gp-login { background:var(--gp-clay); }

/* Chips */
.gp-chips { display:flex; flex-direction:column; gap:6px; margin-bottom:12px; }
.gp-chipset { display:flex; flex-wrap:wrap; gap:6px; align-items:center; }
.gp-chip-label { font-size:10px; letter-spacing:.04em; text-transform:uppercase; color:var(--gp-mut); width:92px; flex:none; }
.gp-chip { background:var(--gp-card); border:1px solid var(--gp-line); border-radius:999px; padding:3px 11px; cursor:pointer; font-size:12px; color:var(--gp-fg); font-family:inherit; }
.gp-chip:hover { border-color:var(--gp-brand); }
.gp-chip.on { background:var(--gp-brand); color:#fff; border-color:var(--gp-brand); }
.gp-count { font-size:12px; color:var(--gp-mut); margin:4px 0 10px; }

/* Lista de atividades — UMA POR LINHA, largura cheia (horizontal) */
.gp-cards { display:flex; flex-direction:column; gap:8px; }
.gp-empty { color:var(--gp-mut); padding:24px; text-align:center; }
.gp-card { border:1px solid var(--gp-line); border-radius:var(--gp-r); background:var(--gp-card); box-shadow:var(--gp-shadow); overflow:hidden; }
.gp-card:hover { box-shadow:var(--gp-shadow-lift); }
.gp-row { display:flex; align-items:flex-start; gap:14px; padding:10px 14px; }
.gp-col-id { display:flex; align-items:center; gap:7px; flex:0 0 auto; padding-top:1px; }
.gp-col-main { flex:1 1 0; min-width:0; }
.gp-col-tags { flex:0 0 auto; display:flex; flex-direction:column; align-items:flex-end; gap:4px; }
.gp-col-btns { flex:0 0 auto; display:flex; gap:6px; align-items:center; }

.gp-id { font-weight:700; font-size:13px; background:var(--gp-card2); border:1px solid var(--gp-line); border-radius:var(--gp-r-sm); padding:2px 8px; white-space:nowrap; font-family:var(--gp-mono); }
.gp-pill { display:inline-block; min-width:24px; text-align:center; border-radius:5px; padding:2px 7px; font-weight:700; font-size:12px; color:#fff; background:var(--gp-mut); }
.gp-pill.p0 { background:var(--gp-crit); } .gp-pill.p1 { background:var(--gp-alta); }
.gp-pill.p2 { background:var(--gp-media); } .gp-pill.p3 { background:var(--gp-info); } .gp-pill.p4 { background:var(--gp-mut); }
.gp-dot { width:11px; height:11px; border-radius:50%; background:var(--gp-line2); display:inline-block; }
.gp-dot.crit { background:var(--gp-crit); } .gp-dot.alta { background:var(--gp-alta); }
.gp-dot.media { background:var(--gp-media); } .gp-dot.baixa { background:var(--gp-baixa); }

.gp-card-title { font-size:14.5px; font-weight:600; line-height:1.35; }
.gp-card-meta { display:flex; flex-wrap:wrap; gap:2px 14px; font-size:12px; color:var(--gp-mut); margin-top:2px; }
.gp-tag { font-size:11px; color:var(--gp-fg2); background:var(--gp-card2); border-radius:var(--gp-r-sm); padding:2px 8px; white-space:nowrap; }
.gp-badge { display:inline-block; border-radius:999px; padding:2px 10px; font-size:12px; border:1px solid transparent; white-space:nowrap; }
.gp-badge.st-travada { background:var(--gp-crit-bg); color:var(--gp-crit); }
.gp-badge.st-aguardando { background:var(--gp-card2); color:var(--gp-fg2); border-color:var(--gp-line); }
.gp-badge.st-em-andamento { background:var(--gp-info-bg); color:var(--gp-info); }
.gp-badge.st-finalizado { background:var(--gp-baixa-bg); color:var(--gp-baixa); }

.gp-b { background:var(--gp-card); border:1px solid var(--gp-line); border-radius:var(--gp-r-sm); padding:5px 10px; cursor:pointer; font-size:12.5px; color:var(--gp-fg); white-space:nowrap; font-family:inherit; }
.gp-b:hover { border-color:var(--gp-brand); color:var(--gp-brand); }

/* Painéis expansíveis (largura cheia) */
.gp-full-view, .gp-edit-view, .gp-com-view { border-top:1px dashed var(--gp-line); padding:10px 14px; background:var(--gp-card2); }
.gp-fv { display:grid; grid-template-columns:1fr 1fr; gap:4px 24px; }
.gp-fv-row { display:grid; grid-template-columns:130px 1fr; gap:8px; font-size:13px; }
.gp-fv-k { color:var(--gp-mut); }
.gp-fv-v { white-space:pre-wrap; }
.gp-fv-empty { color:var(--gp-mut); font-size:13px; }
.gp-det { margin-top:4px; font-size:12.5px; color:var(--gp-mut); }
.gp-det summary { cursor:pointer; color:var(--gp-brand); }

/* Form de edição */
.gp-form { display:flex; flex-wrap:wrap; gap:10px; align-items:flex-end; }
.gp-f { display:flex; flex-direction:column; gap:3px; font-size:12px; color:var(--gp-mut); flex:1 1 160px; }
.gp-f.gp-wide { flex:1 1 100%; }
.gp-f select, .gp-f input, .gp-f textarea { font-size:14px; padding:6px 8px; border:1px solid var(--gp-line); border-radius:var(--gp-r-sm); background:var(--gp-card); color:var(--gp-fg); width:100%; font-family:inherit; }
.gp-form-actions { display:flex; align-items:center; gap:10px; flex:1 1 100%; margin-top:2px; }
.gp-save { background:var(--gp-brand); color:#fff; border:0; border-radius:var(--gp-r-sm); padding:7px 16px; cursor:pointer; font-family:inherit; }
.gp-cancel { background:transparent; border:1px solid var(--gp-line); border-radius:var(--gp-r-sm); padding:7px 14px; cursor:pointer; color:var(--gp-fg); font-family:inherit; }
.gp-msg { font-size:12px; color:var(--gp-mut); }
.gp-msg.ok { color:var(--gp-baixa); } .gp-msg.err { color:var(--gp-crit); }

/* Comentários (estilo postagem) */
.gp-com-loading, .gp-com-empty { color:var(--gp-mut); font-size:13px; padding:4px 0; }
.gp-com-list { display:flex; flex-direction:column; gap:8px; margin-bottom:8px; }
.gp-com { background:var(--gp-card); border:1px solid var(--gp-line); border-radius:var(--gp-r); padding:8px 10px; }
.gp-com-h { display:flex; align-items:center; gap:8px; font-size:12px; color:var(--gp-mut); }
.gp-com-h b { color:var(--gp-fg); }
.gp-com-t { font-size:11px; }
.gp-com-del { margin-left:auto; background:none; border:0; color:var(--gp-mut); cursor:pointer; font-size:16px; line-height:1; }
.gp-com-del:hover { color:var(--gp-crit); }
.gp-com-b { font-size:13.5px; margin-top:2px; white-space:pre-wrap; }
.gp-com-add { display:flex; gap:8px; align-items:flex-start; }
.gp-com-input { flex:1; font-size:14px; padding:7px 9px; border:1px solid var(--gp-line); border-radius:var(--gp-r); background:var(--gp-card); color:var(--gp-fg); resize:vertical; font-family:inherit; }
.gp-com-send { white-space:nowrap; }
.gp-com-msg { font-size:12px; color:var(--gp-mut); align-self:center; }

/* Legenda / rodapé */
.gp-legend { margin:18px 0 6px; font-size:12px; color:var(--gp-mut); display:flex; flex-wrap:wrap; gap:10px 16px; align-items:center; }
.gp-leg { display:inline-flex; align-items:center; gap:5px; }
.gp-rodape { margin-top:12px; font-size:12px; color:var(--gp-mut); font-style:italic; }
.gp-fonte { font-size:11px; color:var(--gp-mut); }

/* Modal "gerar lista" */
.gp-modal { position:fixed; inset:0; background:rgba(22,32,27,.55); display:flex; align-items:center; justify-content:center; z-index:99999; padding:16px; }
.gp-modal-box { background:var(--gp-card); color:var(--gp-fg); border-radius:var(--gp-r); width:min(720px,100%); max-height:85vh; display:flex; flex-direction:column; overflow:hidden; box-shadow:var(--gp-shadow-lift); }
.gp-modal-head { display:flex; justify-content:space-between; align-items:center; padding:12px 14px; border-bottom:1px solid var(--gp-line); }
.gp-modal-x { background:none; border:0; font-size:22px; cursor:pointer; color:var(--gp-mut); line-height:1; }
.gp-modal-txt { flex:1; min-height:320px; margin:0; border:0; padding:12px 14px; font-family:var(--gp-mono); font-size:12.5px; resize:none; background:var(--gp-card); color:var(--gp-fg); }
.gp-modal-foot { padding:10px 14px; border-top:1px solid var(--gp-line); text-align:right; }

/* Cabeçalho de Milestone (grupo) */
.gp-mile-head { display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin:16px 0 6px; padding:8px 12px;
  background:var(--gp-brand-soft); border:1px solid var(--gp-line); border-left:4px solid var(--gp-brand); border-radius:var(--gp-r); }
.gp-mile-head.gp-mile-none { background:var(--gp-card2); border-left-color:var(--gp-mut); }
.gp-mile-code { font-family:var(--gp-mono); font-weight:700; font-size:12px; color:var(--gp-brand); background:var(--gp-card); border:1px solid var(--gp-line); border-radius:var(--gp-r-sm); padding:2px 8px; }
.gp-mile-nome { font-weight:700; font-size:14.5px; color:var(--gp-fg); }
.gp-mile-date { font-size:12px; color:var(--gp-mut); }
.gp-mile-prog { flex:1 1 120px; min-width:80px; height:8px; background:var(--gp-card); border:1px solid var(--gp-line); border-radius:5px; overflow:hidden; }
.gp-mile-bar { display:block; height:100%; background:var(--gp-brand); }
.gp-mile-pct { font-size:12px; color:var(--gp-mut); font-variant-numeric:tabular-nums; min-width:34px; text-align:right; }
.gp-mile-n { font-size:12px; color:var(--gp-mut); }
.gp-badge.gp-mst { font-weight:600; }
.gp-badge.st-pendente { background:var(--gp-card2); color:var(--gp-fg2); border-color:var(--gp-line); }
.gp-badge.st-atingido { background:var(--gp-baixa-bg); color:var(--gp-baixa); }
.gp-badge.st-atrasado { background:var(--gp-crit-bg); color:var(--gp-crit); }

/* Barra de % de conclusão no card */
.gp-pctwrap { display:flex; align-items:center; gap:8px; margin-top:5px; max-width:320px; }
.gp-pctbar { flex:1; height:6px; background:var(--gp-card2); border-radius:4px; overflow:hidden; }
.gp-pctbar > span { display:block; height:100%; background:var(--gp-brand2); }
.gp-pctnum { font-size:11px; color:var(--gp-mut); font-variant-numeric:tabular-nums; }

@media (max-width:900px) { .gp-kpis { grid-template-columns:repeat(2,1fr); } .gp-cuts { grid-template-columns:1fr; } .gp-fv { grid-template-columns:1fr; } }
@media (max-width:680px) {
  .gp-row { flex-wrap:wrap; align-items:flex-start; }
  .gp-col-main { flex:1 1 100%; order:2; }
  .gp-col-id { order:1; }
  .gp-col-tags { order:1; margin-left:auto; align-items:flex-end; }
  .gp-col-btns { order:3; flex:1 1 100%; }
  .gp-acts { margin-left:0; width:100%; }
  .gp-chip-label { width:100%; }
}


/* ===== TOPO COMPACTO + alinhado ao Plano de Ação (2026-09-20) ===== */
/* Oculta o título nativo do WordPress (duplicado); o painel já tem seu próprio título */
.wp-block-post-title.hostinger-ai-page-title { display:none !important; }
.gp-head { border-bottom:1px solid var(--gp-line2); padding-bottom:12px; margin-bottom:14px; }
.gp-head h2 { font-size:21px; }
.gp-desc { margin:5px 0 0; max-width:78ch; font-size:13.5px; }
.gp-kpis { gap:10px; margin-bottom:12px; }
.gp-kpi { padding:9px 13px; }
.gp-kpi-v { font-size:25px; }
/* Cortes em cartões (mesmo tratamento do Plano de Ação) */
.gp-cuts { gap:14px; margin-bottom:14px; }
.gp-cut { background:var(--gp-card); border:1px solid var(--gp-line); border-radius:var(--gp-r); padding:12px 14px; box-shadow:var(--gp-shadow); }
.gp-cut h3 { margin:0 0 6px; }
.gp-bar:hover { background:var(--gp-card2); }
.gp-bar.on { background:var(--gp-card2); outline:1px solid var(--gp-brand); }
.gp-controls { margin-bottom:8px; }
.gp-chips { gap:5px; margin-bottom:8px; }
.gp-count { margin:2px 0 8px; }

/* Tema duplicado: o header do site ja traz o botao Tema (painel tem seu proprio Tema no header) */
.gp-theme{display:none !important;}

/* ===== v3.0.4 - igualar ao Plano de Acao + milestone no card + esconder cabecalho de grupo (2026-09-20) ===== */
body{background:#f6f3ec !important;}
body:has(.gp-root.gp-dark){background:#12140f !important;}
.gp-head{border-bottom:none !important;padding-bottom:0 !important;margin-bottom:16px;}
.gp-head-top{border-bottom:2px solid #1c211f;padding-bottom:10px;margin-bottom:12px;}
.gp-head h2{font-size:38px !important;font-weight:700;color:#1f5c4d;letter-spacing:-.02em;line-height:1.1;}
.gp-desc{margin:0;}
.gp-mile-head-desativado{display:none !important;}
.gp-col-id{flex-direction:column;align-items:flex-start;gap:5px;}
.gp-idrow{display:flex;align-items:center;gap:7px;}
.gp-ms{font-family:var(--gp-mono);font-size:10.5px;line-height:1.25;color:var(--gp-mut);letter-spacing:.01em;max-width:210px;}
.gp-ms b{color:var(--gp-brand);font-weight:700;}

/* ===== v3.0.5 - milestone em 2 linhas + sincronizar cabecalho Atividades (2026-09-20) ===== */
.gp-ms{display:flex;flex-direction:column;gap:0;max-width:210px;}
.gp-ms-l{font-family:var(--gp-mono);font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--gp-mut);font-weight:700;line-height:1.3;}
.gp-ms-n{font-size:11px;color:var(--gp-fg2);font-weight:600;line-height:1.25;}
.pg-brand small:nth-of-type(1){font-size:12px !important;}
.pg-brand small:nth-of-type(2){font-size:10px !important;opacity:.9;}
.pg-wrap{justify-content:flex-start !important;}
.pg-brand{margin-right:auto !important;}
.pg-right{order:2 !important;}
.pg-verstamp{order:3 !important;font-size:9px !important;letter-spacing:.02em;padding:2px 8px !important;opacity:.75;margin-left:8px !important;}

/* ---- Filtros de escolha múltipla (21.09.2026) ---- */
.gp-root .gp-chip .gp-tick{display:inline-block;margin-right:5px;font-weight:700}
/* ---- Painel de milestones (21.09.2026) ---- */
.gp-root .gp-ms-panel{margin:18px 0;border:1px solid var(--gp-line);border-radius:var(--gp-r);background:var(--gp-card);box-shadow:var(--gp-shadow)}
.gp-root .gp-ms-panel>summary{cursor:pointer;list-style:none;padding:13px 16px;font-size:13px;color:var(--gp-mut)}
.gp-root .gp-ms-panel>summary::-webkit-details-marker{display:none}
.gp-root .gp-ms-panel>summary span{font-family:var(--gp-mono);font-size:11px;letter-spacing:.12em;color:var(--gp-brand);font-weight:700;margin-right:6px}
.gp-root .gp-ms-panel>summary::before{content:'▸';display:inline-block;margin-right:8px;color:var(--gp-brand);transition:transform .15s}
.gp-root .gp-ms-panel[open]>summary::before{transform:rotate(90deg)}
.gp-root .gp-ms-wrap{overflow-x:auto;border-top:1px solid var(--gp-line)}
.gp-root .gp-ms-tab{width:100%;border-collapse:collapse;font-size:13.5px}
.gp-root .gp-ms-tab th{text-align:left;font-family:var(--gp-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--gp-mut);font-weight:600;padding:9px 14px;background:var(--gp-card2);border-bottom:1px solid var(--gp-line);white-space:nowrap}
.gp-root .gp-ms-tab td{padding:10px 14px;border-bottom:1px solid var(--gp-line);vertical-align:top;color:var(--gp-fg)}
.gp-root .gp-ms-tab tr:last-child td{border-bottom:0}
.gp-root .gp-ms-c,.gp-root .gp-ms-d{font-family:var(--gp-mono);font-size:12px;white-space:nowrap}
.gp-root .gp-ms-n span{display:block;font-size:12px;color:var(--gp-mut);margin-top:2px;max-width:52ch}
.gp-root .gp-ms-st{display:inline-block;font-family:var(--gp-mono);font-size:10.5px;font-weight:700;padding:2px 8px;border-radius:4px;border:1px solid currentColor;white-space:nowrap}
.gp-root .gp-ms-st.st-pendente{color:var(--gp-mut)}
.gp-root .gp-ms-st.st-atingido{color:var(--gp-brand)}
.gp-root .gp-ms-st.st-atrasado{color:var(--gp-crit)}
.gp-root .gp-ms-p{white-space:nowrap;font-family:var(--gp-mono);font-size:12px}
.gp-root .gp-ms-bar{display:inline-block;width:54px;height:6px;border-radius:3px;background:var(--gp-line);margin-right:7px;vertical-align:middle;overflow:hidden}
.gp-root .gp-ms-bar i{display:block;height:100%;background:var(--gp-brand)}
.gp-root .gp-ms-a{text-align:right;white-space:nowrap}
.gp-root .gp-ms-form td{background:var(--gp-card2)}
.gp-root .gp-ms-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 14px}
.gp-root .gp-ms-grid label{display:flex;flex-direction:column;gap:5px;font-family:var(--gp-mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--gp-mut)}
.gp-root .gp-ms-grid label.w2{grid-column:span 2}
.gp-root .gp-ms-grid input,.gp-root .gp-ms-grid select,.gp-root .gp-ms-grid textarea{font:inherit;font-family:var(--gp-font);font-size:13.5px;text-transform:none;letter-spacing:0;color:var(--gp-fg);background:var(--gp-card);border:1px solid var(--gp-line2);border-radius:var(--gp-r-sm);padding:7px 9px}
.gp-root .gp-ms-foot{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin-top:12px}
.gp-root .gp-ms-msg{margin-right:auto;font-size:12.5px;color:var(--gp-mut)}
.gp-root .gp-btn-pri{background:var(--gp-brand);color:#fff;border-color:var(--gp-brand)}
@media(max-width:760px){.gp-root .gp-ms-grid{grid-template-columns:1fr 1fr}.gp-root .gp-ms-grid label.w2{grid-column:span 2}}

/* mobile 2026-09-21 (v3.2.0): cabecalho em 2 linhas, marcos em cartoes, controles em largura total */
@media(max-width:860px){
.pg-sitehd .pg-wrap{flex-wrap:wrap;gap:8px 10px;padding-top:10px;padding-bottom:10px}
.pg-sitehd .pg-brand{flex:1 1 0;min-width:0}
.pg-sitehd .pg-brand b{font-size:22px}
.pg-sitehd .pg-brand small{white-space:normal;letter-spacing:.06em;font-size:10px !important;line-height:1.25}
.pg-sitehd .pg-brand small+small{font-size:9px !important}
.pg-sitehd .pg-right,.pg-sitehd .pg-l1{display:contents}
.pg-sitehd .pg-tema{order:1;padding:9px 10px;min-height:42px}
.pg-sitehd .pg-burger{order:1}
.pg-sitehd .pg-l2{order:4;flex:1 1 100%;justify-content:flex-end;gap:8px}
.pg-sitehd .pg-user{white-space:normal;text-align:right;font-size:11px}
.pg-sitehd .pg-user a{display:inline-block;padding:4px 0}
.pg-sitehd .pg-verstamp{display:none !important}
.pg-sitehd .pg-nav{order:5;max-height:calc(100dvh - 120px);overflow:auto}
.pg-sitehd .pg-menu>li>button,.pg-sitehd .pg-menu>li>a.pg-top{padding:13px 8px;border-bottom:1px solid rgba(255,255,255,.1);width:100%}
.pg-sitehd .pg-drop a{padding:12px 12px 12px 24px;white-space:normal}
.gp-root{overflow-wrap:anywhere}
.gp-root .gp-ms-panel{min-width:0;max-width:100%}
.gp-root .gp-ms-tab,.gp-root .gp-ms-tab tbody,.gp-root .gp-ms-tab tr,.gp-root .gp-ms-tab td{display:block;width:100%}
.gp-root .gp-ms-tab thead{display:none}
.gp-root .gp-ms-tab tr{position:relative;padding:10px 14px;border-bottom:1px solid var(--gp-line)}
.gp-root .gp-ms-tab tr:last-child{border-bottom:0}
.gp-root .gp-ms-tab td{padding:2px 0;border-bottom:0}
.gp-root .gp-ms-tab td:first-child{font-family:var(--gp-mono);font-size:11px;color:var(--gp-brand);padding-right:90px}
.gp-root .gp-ms-tab .gp-ms-a{position:absolute;top:8px;right:12px;width:auto}
.gp-root .gp-ms-grid{grid-template-columns:1fr}
.gp-root .gp-ms-grid label.w2{grid-column:auto}
.gp-controls{gap:8px}
.gp-controls label,.gp-controls .gp-resp,.gp-controls select,.gp-controls .gp-search{width:100%;max-width:100%;min-width:0}
.gp-resp{flex-wrap:wrap}
.gp-resp select{flex:1 1 auto}
.gp-root input,.gp-root select,.gp-root textarea{font-size:16px}
}

/* Visao Milestones (21.09.2026) */
.gp-root .gp-views{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:6px 0 18px}
.gp-root .gp-view{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;padding:13px 16px;border:1.5px solid var(--gp-line);border-radius:var(--gp-r);background:var(--gp-card);color:var(--gp-fg);font:inherit;font-size:16px;font-weight:700;cursor:pointer;transition:border-color .15s,background .15s}
.gp-root .gp-view small{font-size:12px;font-weight:400;color:var(--gp-mut)}
.gp-root .gp-view:hover{border-color:var(--gp-brand)}
.gp-root .gp-view.on{background:var(--gp-brand);border-color:var(--gp-brand);color:#fff}
.gp-root .gp-view.on small{color:rgba(255,255,255,.82)}
.gp-root .gp-msbs{display:flex;flex-direction:column;gap:16px;margin-top:10px}
.gp-root .gp-msb{border:1px solid var(--gp-line);border-left:5px solid var(--gp-brand);border-radius:var(--gp-r);background:var(--gp-card);box-shadow:var(--gp-shadow);overflow:hidden}
.gp-root .gp-msb.st-atingido{border-left-color:#2f8f5b}
.gp-root .gp-msb.st-atrasado{border-left-color:#c0392b}
.gp-root .gp-msb-none{border-left-color:var(--gp-line2,#bbb)}
.gp-root .gp-msb-h{padding:16px 18px 14px}
.gp-root .gp-msb-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.gp-root .gp-msb-code{font-family:var(--gp-mono);font-size:12px;font-weight:700;letter-spacing:.08em;color:var(--gp-brand)}
.gp-root .gp-msb-nome{margin:6px 0 4px;font-size:clamp(18px,2.1vw,22px);line-height:1.25;color:var(--gp-fg)}
.gp-root .gp-msb-meta{display:flex;flex-wrap:wrap;gap:4px 16px;font-size:13px;color:var(--gp-mut)}
.gp-root .gp-msb-prog{display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px;margin:12px 0 4px}
.gp-root .gp-msb-bar{flex:1 1 220px;height:12px;border-radius:99px;background:var(--gp-card2);overflow:hidden;border:1px solid var(--gp-line)}
.gp-root .gp-msb-bar i{display:block;height:100%;background:var(--gp-brand);border-radius:99px}
.gp-root .gp-msb-pct{font-size:22px;font-variant-numeric:tabular-nums;color:var(--gp-fg);min-width:52px}
.gp-root .gp-delta{font-family:var(--gp-mono);font-size:12px;font-weight:700;padding:4px 9px;border-radius:99px;white-space:nowrap}
.gp-root .gp-delta.d-up{background:rgba(47,143,91,.14);color:#2f8f5b}
.gp-root .gp-delta.d-down{background:rgba(192,57,43,.12);color:#c0392b}
.gp-root .gp-delta.d-flat{background:var(--gp-card2);color:var(--gp-mut)}
.gp-root .gp-delta.d-new{background:var(--gp-card2);color:var(--gp-mut);font-weight:400}
.gp-root .gp-spark polyline{fill:none;stroke:var(--gp-brand);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}
.gp-root .gp-msb-crit{font-size:13px;color:var(--gp-mut);margin:8px 0 0;line-height:1.5}
.gp-root .gp-msb-crit b{color:var(--gp-fg);font-weight:600}
.gp-root .gp-msb-btns{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.gp-root .gp-msb-editbox,.gp-root .gp-msb-com{padding:0 18px 14px}
.gp-root .gp-msb-editbox .gp-ms-form{padding:14px;border:1px solid var(--gp-line);border-radius:var(--gp-r-sm);background:var(--gp-card2)}
.gp-root .gp-msb-com{border-top:1px dashed var(--gp-line);padding-top:12px}
.gp-root .gp-msb-list{border-top:1px solid var(--gp-line);background:var(--gp-card2);padding:10px 12px;display:flex;flex-direction:column;gap:8px}
.gp-root .gp-msb-list .gp-ms{display:none}
.gp-root .gp-ms-controls{margin-top:4px}
@media(max-width:760px){.gp-root .gp-views{grid-template-columns:1fr}.gp-root .gp-msb-h{padding:14px}.gp-root .gp-msb-list{padding:8px}.gp-root .gp-msb-pct{font-size:19px}}

/* separador por milestone na lista de atividades (21.09.2026) */
.gp-root .gp-cards .gp-mile-head{display:flex;align-items:center;gap:12px;margin:26px 0 10px;padding:14px 0 0;border:0;border-top:1px solid var(--gp-line);background:none;flex-wrap:nowrap}
.gp-root .gp-cards .gp-mile-head:first-child{margin-top:6px}
.gp-root .gp-mile-tag{display:inline-flex;align-items:baseline;gap:8px;flex:0 1 auto;min-width:0;padding:7px 14px;border-radius:8px;background:var(--gp-brand);color:#fff;box-shadow:var(--gp-shadow)}
.gp-root .gp-mile-tag .gp-mile-code{font-family:var(--gp-mono);font-size:11px;font-weight:700;letter-spacing:.08em;opacity:.85;color:#fff}
.gp-root .gp-mile-tag .gp-mile-nome{font-size:15px;font-weight:700;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gp-root .gp-mile-rule{flex:1 1 40px;height:4px;border-radius:4px;background:var(--gp-brand);opacity:.85;min-width:24px}
.gp-root .gp-mile-info{display:inline-flex;align-items:center;gap:10px;flex:0 0 auto;font-size:12px;color:var(--gp-mut)}
.gp-root .gp-mile-info .gp-mile-pct{font-weight:700;color:var(--gp-fg);font-size:13px}
.gp-root .gp-mile-head.gp-mile-none .gp-mile-nome{background:var(--gp-card2);color:var(--gp-fg);padding:7px 14px;border-radius:8px;font-weight:700}
.gp-root .gp-cards .gp-card .gp-ms{display:none}
@media(max-width:760px){.gp-root .gp-cards .gp-mile-head{flex-wrap:wrap}.gp-root .gp-mile-tag{flex:1 1 100%}.gp-root .gp-mile-tag .gp-mile-nome{white-space:normal}.gp-root .gp-mile-rule{display:none}}

.gp-root .gp-mile-tag .gp-mile-code{background:rgba(255,255,255,.16)!important;border:0!important;padding:2px 7px!important;border-radius:4px;color:#fff!important}
.gp-root .gp-mile-tag .gp-mile-nome{background:none!important;padding:0!important}

/* tons: milestone mais escuro que a area das atividades, ambos suaves (21.09.2026) */
.gp-root .gp-msb-h{background:color-mix(in srgb,var(--gp-brand) 11%,var(--gp-card))}
.gp-root .gp-msb-editbox,.gp-root .gp-msb-com{background:color-mix(in srgb,var(--gp-brand) 11%,var(--gp-card))}
.gp-root .gp-msb-list{background:color-mix(in srgb,var(--gp-brand) 4%,var(--gp-card));border-top:1px solid color-mix(in srgb,var(--gp-brand) 22%,transparent)}
.gp-root .gp-msb-h .gp-b{background:var(--gp-card)}

/* recolher/expandir cada milestone na lista (21.09.2026) */
.gp-root .gp-cards .gp-mile-head[data-mid]{cursor:pointer;user-select:none}
.gp-root .gp-mile-tog{flex:0 0 auto;width:30px;height:30px;border-radius:7px;border:1px solid var(--gp-line);background:var(--gp-card);color:var(--gp-brand);font-size:14px;line-height:1;cursor:pointer}
.gp-root .gp-mile-head.fechado .gp-mile-rule{opacity:.35}
.gp-root .gp-grp-all{margin-left:10px;font:inherit;font-size:12px;border:1px solid var(--gp-line);background:var(--gp-card);color:var(--gp-fg);border-radius:99px;padding:3px 10px;cursor:pointer}

/* [hidden] precisa vencer display:flex/block (21.09.2026) */
.gp-root [hidden]{display:none!important}
.gp-root .gp-msb-ico{width:32px;height:32px;border-radius:8px;border:1px solid color-mix(in srgb,var(--gp-brand) 35%,var(--gp-line));background:var(--gp-card);color:var(--gp-brand);font-size:15px;line-height:1;cursor:pointer;flex:0 0 auto}
.gp-root .gp-msb-ico:hover{background:var(--gp-brand);color:#fff}

.gp-root .gp-count{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.gp-root .gp-grp-btn{font:inherit;font-size:12px;border:1px solid var(--gp-line);background:var(--gp-card);color:var(--gp-fg);border-radius:99px;padding:4px 11px;cursor:pointer}
.gp-root .gp-grp-btn:hover{border-color:var(--gp-brand);color:var(--gp-brand)}

/* 3.4.4 — nome do milestone na linha do código, caixa alta */
.gp-root .gp-msb-top{flex-wrap:wrap;align-items:center;row-gap:4px}
.gp-root .gp-msb-nome.gp-msb-nome-in{margin:0 0 0 4px;font-size:20px;line-height:1.2;text-transform:uppercase;letter-spacing:.02em;flex:1 1 240px;min-width:0}
@media (max-width:640px){.gp-root .gp-msb-nome.gp-msb-nome-in{font-size:16px;flex-basis:100%;margin:2px 0 0}}

/* 3.5.0 — Cronograma (Fase 1 × etapas × meses) + etapas na visão Milestones */
.gp-root .gp-views{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:760px){.gp-root .gp-views{grid-template-columns:1fr}}
.gp-root .gp-cr-top{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;margin:4px 0 8px}
.gp-root .gp-cr-fase{display:flex;align-items:baseline;gap:10px}
.gp-root .gp-cr-fase b{font-family:var(--gp-mono);font-size:12px;letter-spacing:.12em;color:#fff;background:var(--gp-brand);padding:4px 10px;border-radius:6px}
.gp-root .gp-cr-fase span{font-size:13px;color:var(--gp-mut)}
.gp-root .gp-cr-chk{font-size:12.5px;color:var(--gp-fg2);display:flex;align-items:center;gap:6px;cursor:pointer}
.gp-root .gp-cr-leg{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:12px;color:var(--gp-mut);margin:0 0 10px}
.gp-root .gp-cr-leg span{display:inline-flex;align-items:center;gap:6px}
.gp-root .gp-cr-leg i{position:static;display:inline-block;transform:none;margin:0}
.gp-root .gp-cr-leg .gp-cr-dia{transform:rotate(45deg)}
.gp-root .gp-cr-leg .gp-cr-bar{width:22px;height:8px}
.gp-root .gp-cr-hoje-l{width:2px;height:12px;background:var(--gp-crit)}
.gp-root .gp-cr-scroll{overflow-x:auto;border:1px solid var(--gp-line);border-radius:var(--gp-r);background:var(--gp-card);box-shadow:var(--gp-shadow)}
.gp-root .gp-cr-grid{min-width:820px}
.gp-root .gp-cr-row{display:grid;grid-template-columns:250px minmax(0,1fr);border-bottom:1px solid var(--gp-line)}
.gp-root .gp-cr-row:last-child{border-bottom:0}
.gp-root .gp-cr-lab{position:sticky;left:0;z-index:2;background:var(--gp-card);padding:7px 12px;border-right:1px solid var(--gp-line);display:flex;align-items:center;gap:8px;min-width:0;font:inherit;text-align:left;color:var(--gp-fg);border-top:0;border-bottom:0;border-left:0}
.gp-root .gp-cr-track{position:relative;min-height:34px}
.gp-root .gp-cr-axis .gp-cr-lab{font-family:var(--gp-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--gp-mut);background:var(--gp-card2)}
.gp-root .gp-cr-axis .gp-cr-track{background:var(--gp-card2);min-height:30px}
.gp-root .gp-cr-mes{position:absolute;top:0;bottom:0;display:flex;align-items:center;justify-content:center;gap:2px;font-family:var(--gp-mono);font-size:11px;font-weight:700;color:var(--gp-fg2);border-left:1px solid var(--gp-line);text-transform:uppercase}
.gp-root .gp-cr-mes small{font-weight:400;color:var(--gp-mut);font-size:10px}
.gp-root .gp-cr-mes.ano{border-left:2px solid var(--gp-brand)}
.gp-root .gp-cr-mline{position:absolute;top:0;bottom:0;border-left:1px solid var(--gp-line);opacity:.7}
.gp-root .gp-cr-mline.ano{border-left:2px solid color-mix(in srgb,var(--gp-brand) 45%,transparent);opacity:1}
.gp-root .gp-cr-hoje{position:absolute;top:0;bottom:0;border-left:2px solid var(--gp-crit);z-index:1;opacity:.75}
.gp-root .gp-cr-etapa .gp-cr-lab,.gp-root .gp-cr-etapa .gp-cr-track{background:color-mix(in srgb,var(--gp-brand) 13%,var(--gp-card))}
.gp-root .gp-cr-etapa .gp-cr-lab b{font-size:13px;text-transform:uppercase;letter-spacing:.03em;color:var(--gp-brand)}
.gp-root .gp-cr-etapa .gp-cr-lab small{margin-left:auto;font-size:11px;color:var(--gp-mut);white-space:nowrap}
.gp-root .gp-cr-etapa.vazia .gp-cr-lab,.gp-root .gp-cr-etapa.vazia .gp-cr-track{background:color-mix(in srgb,var(--gp-brand) 5%,var(--gp-card))}
.gp-root .gp-cr-etapa.vazia .gp-cr-lab b{color:var(--gp-fg2)}
.gp-root .gp-cr-n{flex:0 0 auto;width:22px;height:22px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--gp-brand);color:#fff;font-family:var(--gp-mono);font-size:11px;font-weight:700}
.gp-root .gp-cr-etapa.vazia .gp-cr-n{background:var(--gp-line2)}
.gp-root .gp-cr-band{position:absolute;top:10px;height:14px;border-radius:7px;background:color-mix(in srgb,var(--gp-brand) 40%,transparent);border:1px solid var(--gp-brand)}
.gp-root .gp-cr-go{cursor:pointer;padding-left:42px}
.gp-root .gp-cr-go:hover .gp-cr-nome{color:var(--gp-brand);text-decoration:underline}
.gp-root .gp-cr-code{font-family:var(--gp-mono);font-size:11px;font-weight:700;color:var(--gp-brand);flex:0 0 auto}
.gp-root .gp-cr-nome{font-size:12.5px;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.gp-root .gp-cr-bar{position:absolute;top:12px;height:10px;border-radius:5px;background:color-mix(in srgb,var(--gp-info) 55%,transparent);border:1px solid var(--gp-info);display:inline-block}
.gp-root .gp-cr-bar.st-atingido{background:color-mix(in srgb,var(--gp-baixa) 55%,transparent);border-color:var(--gp-baixa)}
.gp-root .gp-cr-bar.st-atrasado{background:color-mix(in srgb,var(--gp-crit) 45%,transparent);border-color:var(--gp-crit)}
.gp-root .gp-cr-dia{position:absolute;top:10px;width:13px;height:13px;margin-left:-7px;transform:rotate(45deg);background:var(--gp-brand);border:2px solid var(--gp-card);box-shadow:0 0 0 1px var(--gp-brand);z-index:3;display:inline-block}
.gp-root .gp-cr-dia.st-atingido{background:var(--gp-baixa)}
.gp-root .gp-cr-dia.st-atrasado{background:var(--gp-crit);box-shadow:0 0 0 1px var(--gp-crit)}
.gp-root .gp-cr-dlab{position:absolute;top:9px;margin-left:11px;font-family:var(--gp-mono);font-size:10.5px;color:var(--gp-fg2);white-space:nowrap;z-index:3}
.gp-root .gp-cr-ok{position:absolute;top:8px;margin-left:-6px;font-size:13px;color:var(--gp-baixa);font-weight:700;z-index:3}
.gp-root .gp-cr-pc{position:absolute;top:13px;width:9px;height:9px;margin-left:-4px;border-radius:50%;border:1.5px solid var(--gp-card);z-index:2;display:inline-block}
.gp-root .gp-cr-pc.crit{background:var(--gp-crit)}
.gp-root .gp-cr-pc.alta{background:var(--gp-alta)}
.gp-root .gp-cr-sem{position:absolute;left:8px;top:9px;font-size:11px;color:var(--gp-mut);font-style:italic}
.gp-root .gp-cr-h3{margin:22px 0 8px;font-size:15px;color:var(--gp-brand)}
.gp-root .gp-cr-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px}
.gp-root .gp-cr-mesbloco{border:1px solid var(--gp-line);border-radius:var(--gp-r);background:var(--gp-card);overflow:hidden}
.gp-root .gp-cr-mesh{font-family:var(--gp-mono);font-size:11px;font-weight:700;letter-spacing:.1em;color:#fff;background:var(--gp-brand);padding:6px 12px}
.gp-root .gp-cr-ev{display:grid;grid-template-columns:44px 64px minmax(0,1fr);gap:8px;padding:7px 12px;border-top:1px solid var(--gp-line);font-size:12.5px;align-items:baseline}
.gp-root .gp-cr-ev.ms{background:color-mix(in srgb,var(--gp-brand) 9%,var(--gp-card))}
.gp-root .gp-cr-evd{font-family:var(--gp-mono);font-size:11px;color:var(--gp-mut)}
.gp-root .gp-cr-evc{font-family:var(--gp-mono);font-size:11px;font-weight:700;color:var(--gp-brand)}
.gp-root .gp-cr-evn{line-height:1.3}
.gp-root .gp-cr-evn small{display:block;font-size:11px;color:var(--gp-mut);margin-top:2px}
@media(max-width:640px){.gp-root .gp-cr-row{grid-template-columns:150px minmax(0,1fr)}.gp-root .gp-cr-go{padding-left:12px}.gp-root .gp-cr-nome{display:none}.gp-root .gp-cr-etapa .gp-cr-lab small{display:none}.gp-root .gp-cr-list{grid-template-columns:1fr}}
/* Etapa na visão Milestones */
.gp-root .gp-etapa-h{display:flex;align-items:center;gap:10px;margin:22px 0 10px;padding:0 0 6px;border-bottom:3px solid var(--gp-brand)}
.gp-root .gp-etapa-h:first-child{margin-top:4px}
.gp-root .gp-etapa-h b{font-size:15px;letter-spacing:.04em;text-transform:uppercase;color:var(--gp-brand)}
.gp-root .gp-etapa-h small{margin-left:auto;font-size:12px;color:var(--gp-mut)}
.gp-root .gp-msb-etapa{color:var(--gp-brand);font-weight:600}

/* 3.5.1–3.5.2 — cabeçalho de etapa com mais destaque, verde mais claro */
.gp-root .gp-etapa-h{margin:30px 0 12px;padding:12px 18px;border:0;border-radius:10px;background:var(--gp-brand2);box-shadow:var(--gp-shadow)}
.gp-root .gp-etapa-h:first-child{margin-top:6px}
.gp-root .gp-etapa-h b{font-size:clamp(18px,2.2vw,24px);font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#fff;line-height:1.2}
.gp-root .gp-etapa-h small{color:rgba(255,255,255,.85);font-size:13px;white-space:nowrap}
@media(max-width:640px){.gp-root .gp-etapa-h{flex-wrap:wrap;padding:10px 14px}.gp-root .gp-etapa-h small{margin-left:0}}

/* 3.5.3 — % da etapa no cabeçalho */
.gp-root .gp-etapa-bar{flex:1 1 120px;max-width:260px;height:10px;margin-left:auto;border-radius:99px;background:rgba(255,255,255,.28);overflow:hidden}
.gp-root .gp-etapa-bar i{display:block;height:100%;background:#fff;border-radius:99px}
.gp-root .gp-etapa-pct{font-size:20px;font-weight:800;color:#fff;font-variant-numeric:tabular-nums;min-width:52px;text-align:right}
.gp-root .gp-etapa-h small{margin-left:8px}
@media(max-width:640px){.gp-root .gp-etapa-bar{margin-left:0;max-width:none}}

/* 3.5.4 — selo de 100% */
.gp-root .gp-msb-done{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:99px;background:var(--gp-baixa-bg);color:var(--gp-baixa);border:1px solid var(--gp-baixa);font-weight:700;font-size:13px;white-space:nowrap;animation:gpPop .5s ease-out}
@keyframes gpPop{0%{transform:scale(.6);opacity:0}70%{transform:scale(1.12)}100%{transform:scale(1);opacity:1}}
.gp-root .gp-msb.st-atingido .gp-msb-bar i{background:var(--gp-baixa)}
@media (prefers-reduced-motion:reduce){.gp-root .gp-msb-done{animation:none}}

/* 3.5.6 — recolher/expandir por etapa */
.gp-root .gp-etapa-h{cursor:pointer;user-select:none}
.gp-root .gp-etapa-h:focus-visible{outline:3px solid var(--gp-acc);outline-offset:2px}
.gp-root .gp-etapa-tog{flex:0 0 auto;width:30px;height:30px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;background:rgba(255,255,255,.18);color:#fff;font-size:15px}
.gp-root .gp-etapa-h:hover .gp-etapa-tog{background:rgba(255,255,255,.32)}
.gp-root .gp-etapa-h.fech{opacity:.92}
.gp-root .gp-etapa-g{display:flex;flex-direction:column;gap:inherit}
.gp-root .gp-et-sep{margin-left:14px;font-size:12px;color:var(--gp-mut)}

/* 3.5.8 — responsável na faixa do milestone (lista de atividades) */
.gp-root .gp-mile-resp{font-size:12.5px;font-weight:600;color:var(--gp-fg2);white-space:nowrap}

/* 3.5.9 — cronograma: 1ª coluna mais larga + colunas Responsável e Status */
.gp-root .gp-cr-row{grid-template-columns:340px 130px 104px minmax(560px,1fr)}
.gp-root .gp-cr-etapa .gp-cr-lab{grid-column:1 / 4}
.gp-root .gp-cr-resp,.gp-root .gp-cr-stc{position:sticky;z-index:2;background:var(--gp-card);border-right:1px solid var(--gp-line);display:flex;align-items:center;min-width:0;padding:6px 10px;font-size:12px;color:var(--gp-fg2)}
.gp-root .gp-cr-resp{left:340px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;display:block;line-height:22px}
.gp-root .gp-cr-stc{left:470px;justify-content:center}
.gp-root .gp-cr-stc .gp-badge{font-size:10.5px;white-space:nowrap}
.gp-root .gp-cr-axis .gp-cr-resp,.gp-root .gp-cr-axis .gp-cr-stc{font-family:var(--gp-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--gp-mut);background:var(--gp-card2)}
.gp-root .gp-cr-axis .gp-cr-stc{justify-content:flex-start}
@media(max-width:640px){.gp-root .gp-cr-row{grid-template-columns:150px minmax(0,1fr)}.gp-root .gp-cr-resp,.gp-root .gp-cr-stc{display:none}.gp-root .gp-cr-etapa .gp-cr-lab{grid-column:auto}}

/* 3.5.10 — botão Salvar do milestone à esquerda, igual ao da atividade */
.gp-root .gp-ms-foot{justify-content:flex-start}
.gp-root .gp-ms-msg{margin-right:0}

/* 3.5.11 — botões do milestone sobem para a linha da Descrição */
.gp-root .gp-ms-grid .gp-ms-foot{grid-column:3 / 5;align-self:end;margin-top:0;justify-content:flex-start}
@media(max-width:760px){.gp-root .gp-ms-grid .gp-ms-foot{grid-column:1 / -1}}
