/* ---------- Tela de Projetos ---------- */
.ov{position:fixed;inset:0;z-index:30;background:rgba(40,38,34,.25);backdrop-filter:blur(3px);padding:12px;display:flex}
.ov-card{flex:1;background:#f4f3f0;border-radius:24px;box-shadow:0 20px 60px rgba(0,0,0,.25);display:flex;flex-direction:column;overflow:hidden;min-width:0}
.ov-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;background:#fff;border-bottom:1px solid #ece8e1;flex-wrap:wrap}
.ov-head .kicker{font-size:10px;letter-spacing:.16em;font-weight:800;color:var(--ink-3)}
.ov-head h2{margin:2px 0 0;font-size:26px;font-weight:900}
.ov-head h2 small{font-size:12px;font-weight:400;color:var(--ink-3);margin-left:6px}
.ov-acts{display:flex;gap:8px;flex-wrap:wrap}
.btn-ghost{background:#f1ede7;color:var(--ink)}
.btn-ghost:hover{background:#e8e2d9}
.btn-sm{padding:7px 12px;font-size:12px}
.btn-danger{background:#fdecea;color:#b0281c}
.btn-danger:hover{background:#f9d6d1}
.ov-tabs{display:flex;gap:6px;padding:12px 20px 0}
.ov-tabs button{border:1px solid #e3ddd4;background:#fff;border-radius:999px;padding:8px 18px;font-weight:800;color:var(--ink-2)}
.ov-tabs button.on{background:var(--brand);border-color:var(--brand);color:#0b0b0b;box-shadow:0 6px 14px rgba(255,143,16,.3)}
.filtros{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px;padding:12px 20px;margin:10px 20px 0;background:#fff;border-radius:18px;border:1px solid #ece8e1}
.fl{display:flex;flex-direction:column;gap:4px;font-size:11px;font-weight:800;color:var(--ink-3);min-width:0}
.fl select,.fl input{border:1px solid #e3ddd4;border-radius:12px;padding:8px 10px;background:#fbfaf8;font-size:13px;color:var(--ink);min-width:0}
.fl select:focus,.fl input:focus{outline:2px solid rgba(255,143,16,.35);border-color:var(--brand)}
.fl-busca{grid-column:span 2}
.fl-fim{flex-direction:row;align-items:flex-end;justify-content:space-between;gap:8px}
.chk{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--ink);font-weight:700;padding-bottom:8px}
.lnk{border:0;background:none;color:var(--brand);font-weight:800;padding:0;font-size:13px;cursor:pointer;text-align:left}
.lnk:hover{text-decoration:underline}
.ov-body{flex:1;overflow:auto;padding:12px 20px 24px}
.vazio{text-align:center;color:var(--ink-3);padding:40px}
.contagem{font-size:12px;color:var(--ink-3);margin:2px 2px 10px}

.proj{background:#fff;border:1px solid #ece8e1;border-radius:18px;margin-bottom:12px;overflow:hidden}
.proj-head{display:flex;align-items:center;gap:10px;padding:12px 14px;background:#fff8f2;border-bottom:1px solid #f3e7da}
.proj.fechado .proj-head{border-bottom:0}
.proj.fechado .proj-tab{display:none}
.chev{border:1px solid #eadfd2;background:#fff;border-radius:50%;width:30px;height:30px;font-size:14px;transition:transform .15s;flex:none}
.proj.fechado .chev{transform:rotate(-90deg)}
.tipo{font-size:11px;font-weight:800;border-radius:999px;padding:3px 9px;background:#efe7dc;color:#7a5b3a;flex:none}
.t-portfolio-type-public{background:#ffe9d6;color:#b4520f}
.t-portfolio-type-private{background:#e4ecfb;color:#2f56a8}
.proj-nome{display:flex;flex-direction:column;min-width:0;flex:1}
.proj-nome b{font-size:15px}
.prog{width:110px;height:8px;background:#eee8df;border-radius:8px;overflow:hidden;flex:none}
.prog i{display:block;height:100%;background:#1f9d5a;border-radius:8px}
.proj-tab{overflow-x:auto;padding:0 6px 8px}
.proj table{width:100%;border-collapse:collapse;font-size:13px;min-width:820px}
.proj th{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);text-align:left;padding:10px 8px;font-weight:800}
.proj td{padding:7px 8px;border-top:1px solid #f2eee8;vertical-align:middle}
.proj tr:hover td{background:#fcfaf7}
.disc{color:var(--ink);font-weight:700}
.desc{max-width:280px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pri{display:inline-grid;place-items:center;min-width:18px;height:18px;border-radius:5px;font-size:10px;font-weight:900;color:#fff;margin-right:6px;padding:0 3px}
.pri.u{background:#d9483b}.pri.h{background:#e39a2d}
.inl{border:1px solid transparent;background:transparent;border-radius:10px;padding:5px 6px;font-size:13px;max-width:190px;cursor:pointer}
.inl:hover,.inl:focus{border-color:#e3ddd4;background:#fff}
select.inl[data-inline="delivery_status"]{border-left:4px solid var(--c);background:color-mix(in srgb,var(--c) 8%,transparent)}
.badge{display:inline-block;white-space:nowrap;font-size:11px;font-weight:800;border-radius:999px;padding:4px 10px;color:var(--c);background:color-mix(in srgb,var(--c) 12%,#fff);border:1px solid color-mix(in srgb,var(--c) 35%,#fff)}
.add{margin:8px 8px 4px}

/* desempenho */
.kpis{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px;margin-bottom:12px}
.kpi{position:relative;text-align:left;border:1px solid color-mix(in srgb,var(--c) 25%,#fff);background:color-mix(in srgb,var(--c) 7%,#fff);border-radius:16px;padding:12px 14px;overflow:hidden;display:flex;flex-direction:column;gap:2px}
.kpi:not(:disabled):hover{box-shadow:0 6px 16px rgba(0,0,0,.08)}
.kpi:disabled{cursor:default;color:inherit}
.kpi span{font-size:12px;font-weight:800;color:var(--ink-2)}
.kpi b{font-size:28px;color:var(--c);line-height:1.1}
.kpi i{position:absolute;left:0;bottom:0;height:4px;background:var(--c)}
.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:12px;margin-bottom:12px}
.pcard{background:#fff;border:1px solid #ece8e1;border-radius:18px;padding:14px 16px;min-width:0}
.pcard h4{margin:0 0 10px;font-size:14px;display:flex;justify-content:space-between;align-items:baseline}
.rosca{display:flex;align-items:center;gap:16px}
.rosca svg{width:140px;height:140px;flex:none}
.rosca .rt{font:900 22px "IBM Plex Sans",sans-serif;fill:#1f1d1b}
.rosca .rs{font:600 10px "IBM Plex Sans",sans-serif;fill:#8f8981}
.rosca ul{list-style:none;margin:0;padding:0;flex:1;display:flex;flex-direction:column;gap:6px;font-size:13px}
.rosca li{display:grid;grid-template-columns:12px 1fr auto 38px;align-items:center;gap:8px}
.rosca li i{width:10px;height:10px;border-radius:3px}
.rosca li .small{text-align:right}
.venc{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.venc li{display:grid;grid-template-columns:auto 1fr;gap:2px 10px;align-items:center;font-size:13px}
.venc li .small{grid-column:2}
.venc li .badge{grid-row:span 2}
.barras{display:flex;flex-direction:column;gap:6px;max-height:340px;overflow:auto}
.br{display:grid;grid-template-columns:minmax(90px,38%) 1fr 30px;gap:8px;align-items:center;font-size:12px}
.bn{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bt{display:flex;height:12px;background:#f4f1ec;border-radius:6px;overflow:hidden}
.bt i{display:block;height:100%}
.bt .c{background:#1f9d5a}.bt .a{background:#d9483b}.bt .r{background:#d8d2c8}
.br b{text-align:right}
.legenda{display:flex;gap:16px;font-size:12px;color:var(--ink-3);justify-content:center}
.legenda span::before{content:"";display:inline-block;width:10px;height:10px;border-radius:3px;background:var(--c);margin-right:6px;vertical-align:-1px}

/* janelas */
.modal-bg{position:fixed;inset:0;z-index:60;background:rgba(30,28,25,.45);display:grid;place-items:center;padding:16px}
.modal{background:#fff;border-radius:22px;padding:20px;width:min(560px,100%);max-height:calc(100vh - 32px);overflow:auto;box-shadow:0 20px 60px rgba(0,0,0,.3);display:flex;flex-direction:column;gap:14px}
.modal h3{margin:0;font-size:20px;font-weight:900}
.mcorpo{display:flex;flex-direction:column;gap:12px}
.m2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.mf{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:800;color:var(--ink-2)}
.mf input,.mf select,.mf textarea{border:1px solid #e3ddd4;border-radius:12px;padding:10px 12px;background:#fbfaf8;font-size:14px;color:var(--ink);font-family:inherit}
.mf input:focus,.mf select:focus,.mf textarea:focus{outline:2px solid rgba(255,143,16,.35);border-color:var(--brand)}
.macts{display:flex;gap:8px;align-items:center}

.pal{display:flex;gap:8px;flex-wrap:wrap}
.pal button{width:30px;height:30px;border-radius:50%;border:3px solid #fff;box-shadow:0 0 0 1px #e3ddd4;cursor:pointer}
.pal button.on{box-shadow:0 0 0 2px #1f1d1b}
.lnk-perfil{border:0;background:none;color:var(--brand);font-weight:800;font-size:12px;cursor:pointer;padding:0}
.lnk-perfil:hover{text-decoration:underline}
.nitem{display:flex;gap:10px;width:100%;text-align:left;border:1px solid #efebe4;background:#fff;border-radius:14px;padding:10px 12px;margin-bottom:8px;cursor:pointer}
.nitem:hover{background:#fbf8f4}
.nitem.nova{border-color:#ffd2b3;background:#fff8f2}
.nitem .ni{font-size:18px}
.nitem>span:last-child{display:flex;flex-direction:column;gap:2px;font-size:13px;min-width:0}
#ntoasts{position:fixed;right:16px;top:64px;z-index:70;display:flex;flex-direction:column;gap:8px;width:min(340px,calc(100% - 32px))}
.ntoast{display:flex;flex-direction:column;gap:2px;text-align:left;border:0;border-left:4px solid var(--brand);background:#fff;border-radius:14px;padding:12px 14px;box-shadow:0 10px 30px rgba(0,0,0,.18);cursor:pointer;animation:entra .25s ease-out;font-size:13px}
.ntoast span{color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@keyframes entra{from{opacity:0;transform:translateX(30px)}to{opacity:1;transform:none}}
#toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);opacity:0;background:#1f1d1b;color:#fff;font-weight:700;font-size:13px;border-radius:12px;padding:10px 16px;z-index:80;transition:.2s;pointer-events:none}
#toast.show{opacity:1;transform:translate(-50%,0)}
#toast.err{background:#b0281c}

@media (max-width:860px){
  .ov{padding:0}
  .ov-card{border-radius:0}
  .fl-busca{grid-column:1/-1}
  .filtros{grid-template-columns:1fr 1fr;margin:10px 12px 0;padding:10px}
  .ov-body{padding:10px 12px 20px}
  .m2{grid-template-columns:1fr}
  .prog{display:none}
  .rosca{flex-direction:column}
}

/* ---------- Cultura MEO ---------- */
.cult-hero{background:linear-gradient(135deg,#fff7f0,#fff)}
.cult-hero h2 span{color:var(--brand)}
.cult-hero .small{max-width:62ch;margin-top:4px}
.cult-wrap{flex:1;display:flex;min-height:0}
.cult-nav{width:220px;flex:none;padding:14px 10px 14px 20px;display:flex;flex-direction:column;gap:6px;overflow:auto}
.cult-nav button{display:flex;gap:10px;align-items:center;text-align:left;border:1px solid #ece8e1;background:#fff;border-radius:999px;padding:9px 14px;font-weight:800;font-size:13px;color:var(--ink-2)}
.cult-nav button:hover{border-color:#f3c7a6}
.cult-nav button.on{background:var(--brand);border-color:var(--brand);color:#0b0b0b;box-shadow:0 6px 14px rgba(255,143,16,.3)}
.cult-body{padding-top:14px}
.cult-body .pcard{margin-bottom:12px}
.cult-body .kicker{font-size:11px;letter-spacing:.16em;font-weight:800;color:var(--brand)}
.cult-body h3{margin:6px 0 8px;font-size:22px;font-weight:900;line-height:1.2}
.cult-body p{color:var(--ink-2);line-height:1.55;margin:6px 0 10px}
.sec-h{font-size:26px!important}
.cgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px}
.destaque{background:linear-gradient(150deg,#FFA640,#FF8F10 60%,#d9540c)!important;border:0!important;color:#fff}
.destaque .kicker,.destaque p{color:#fff!important;opacity:.95}
.mantras{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.mantras span{background:var(--brand-soft,#FFF4E6);color:#0b0b0b;border:1px solid rgba(255,143,16,.35);font-weight:600;font-size:13px;border-radius:999px;padding:7px 14px}
.doc{display:flex;align-items:center;gap:12px;padding:10px 12px;border:1px solid #efebe4;border-radius:14px;margin-bottom:8px;background:#fff}
.doc>div{flex:1;min-width:0}
.doc-ic{font-size:22px}
.valores{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;margin-top:10px}
.valor{position:relative}
.valor .num{font-size:30px;font-weight:900;color:#f6c7a5;position:absolute;right:16px;top:8px}
.valor h4{margin:0 0 4px;font-size:16px}
.valor ul{margin:6px 0 0;padding-left:18px;color:var(--ink-2);font-size:13px;line-height:1.7}
.eventos{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;margin:10px 0 12px}
.evento{display:flex;flex-direction:column;gap:4px}
.evento.on{border-color:#f6b98c!important;background:#fff8f2!important}
.evento h4{margin:6px 0 0}
.evento p{flex:1;font-size:13px}
.ev-ic{font-size:26px}
.passos{counter-reset:p;list-style:none;padding:0;margin:10px 0;display:flex;flex-wrap:wrap;gap:8px}
.passos li{counter-increment:p;display:flex;align-items:center;gap:8px;background:#faf7f3;border:1px solid #efe7dc;border-radius:999px;padding:6px 12px 6px 6px;font-size:13px;font-weight:700}
.passos li::before{content:counter(p);display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--brand);color:#0b0b0b;font-size:11px;font-weight:900}
.passos.etapas li{border-radius:14px;flex-direction:row;align-items:flex-start}
.passos.etapas li b{display:block}
.passos.etapas li .small{display:block;font-weight:400}
.meozito{display:flex;gap:18px;align-items:center}
.mz-face{width:90px;height:90px;flex:none;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ffb27a,#FF8F10);border:5px solid #fff;box-shadow:0 8px 24px rgba(255,143,16,.4);display:grid;place-items:center;font-size:44px}
.atalhos{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}
.atalho{display:flex;flex-direction:column;gap:4px;text-align:left;background:#fff;border:1px solid #ece8e1;border-radius:16px;padding:14px;font-size:14px}
button.atalho:hover{border-color:#f3c7a6;box-shadow:0 6px 16px rgba(0,0,0,.06)}
.atalho>span:first-child{font-size:24px}
.equipe{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;margin:12px 0}
.membro{display:flex;gap:10px;align-items:center;font-size:13px}
.membro .av{width:34px;height:34px;font-size:12px}
@media (max-width:860px){
  .cult-wrap{flex-direction:column}
  .cult-nav{width:auto;flex-direction:row;overflow-x:auto;padding:10px 12px}
  .cult-nav button{flex:none}
}

/* ---------- Agenda ---------- */
.cal{background:#faf8f5;border:1px solid #efebe4;border-radius:16px;padding:10px}
.cal-h{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;text-transform:capitalize}
.cal-h button{border:0;background:#fff;border-radius:10px;width:30px;height:30px;font-size:18px;font-weight:800;color:var(--ink-2)}
.cal-g{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;text-align:center}
.cal-sem span{font-size:10px;font-weight:800;color:var(--ink-3);padding:4px 0}
.cal-g button{position:relative;border:0;background:transparent;border-radius:10px;height:32px;font-size:13px;font-weight:700;color:var(--ink)}
.cal-g button:hover{background:#fff}
.cal-g button.hoje{color:var(--brand)}
.cal-g button.on{background:var(--brand);color:#0b0b0b}
.cal-g button i{position:absolute;left:50%;bottom:3px;width:4px;height:4px;margin-left:-2px;border-radius:50%;background:var(--brand)}
.cal-g button.on i{background:#fff}
.evt{border:1px solid #efebe4;border-left:4px solid var(--c);border-radius:14px;padding:10px 12px;margin-bottom:8px;background:#fff}
.evt-h{display:flex;justify-content:space-between;align-items:center;font-size:13px}
.evt-t{font-weight:800;margin:2px 0}
.evt-d{margin-top:4px;white-space:pre-wrap}
.evt-a{display:flex;gap:14px;margin-top:6px}
.convid{display:flex;flex-direction:column;gap:2px;max-height:150px;overflow:auto;border:1px solid #efebe4;border-radius:12px;padding:6px 10px;font-weight:600}
.convid .chk{padding:3px 0}

/* ---------- Insights ---------- */
.ov-acts select{border:1px solid #e3ddd4;border-radius:999px;padding:9px 12px;background:#fff;font-weight:700}
.tab-scroll{overflow-x:auto}
table.ins{width:100%;border-collapse:collapse;font-size:13px;min-width:640px}
table.ins th{text-align:left;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);padding:8px}
table.ins th .lnk{font-size:10px;color:var(--ink-3)}
table.ins th .lnk.on{color:var(--brand)}
table.ins td{padding:8px;border-top:1px solid #f2eee8}
table.ins td:first-child{display:flex;align-items:center;gap:8px;font-weight:700}
.mini-av{width:26px;height:26px;font-size:10px}
.bar-in{height:6px;background:#f2ede6;border-radius:6px;overflow:hidden;margin-bottom:3px;max-width:160px}
.bar-in i{display:block;height:100%;background:var(--brand)}

/* ---------- Conquistas ---------- */
.pontos{display:flex;gap:12px;align-items:center;background:linear-gradient(135deg,#fff3e8,#fff)!important}
.pontos>span{font-size:30px}
.pontos b{font-size:22px;color:var(--brand)}
.medalha{display:flex;gap:12px;padding:12px;border:1px solid #efebe4;border-radius:16px;margin-bottom:8px;background:#fff}
.medalha.bloq{opacity:.75}
.medalha>div{flex:1;min-width:0}
.med-ic{width:46px;height:46px;flex:none;border-radius:50%;display:grid;place-items:center;font-size:22px;background:color-mix(in srgb,var(--c) 18%,#fff);border:3px solid var(--c)}
.medalha.bloq .med-ic{filter:grayscale(1)}
.medalha .bar{margin:6px 0 0}

/* ---------- Administração ---------- */
.disc-lista{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:6px;margin:12px 0}
.disc-item{display:flex;gap:12px;align-items:center;border:1px solid #efebe4;border-radius:12px;padding:8px 12px;font-size:13px;font-weight:700}
.disc-item span{flex:1}
.disc-item.inativa{opacity:.55}
.disc-item.inativa span{text-decoration:line-through}

/* ---------- Cultura 2026 (identidade visual oficial) ---------- */
.pcard.capa{display:flex;gap:20px;align-items:center;background:#050505;color:#fff;border:0}
.pcard.capa img{width:96px;flex:none}
.pcard.capa .kicker{color:var(--brand)}
.pcard.capa h3{color:#fff;margin:6px 0}
.pcard.capa p{color:#d9d9d9;margin:0;font-size:14px}
.mini-lista{margin:10px 0 0;padding-left:18px;font-size:14px;line-height:1.55}
.metas{display:flex;gap:10px;margin:12px 0}
.metas div{flex:1;border:1px solid var(--silver,#CACBCC);border-radius:10px;padding:10px 12px}
.metas b{display:block;font-size:20px;color:var(--brand-ink,#B85C00)}
.metas span{font-size:12px;color:var(--ink-3)}
.pcard.sangue{border-left:4px solid var(--brand)}
.valor .frase{font-weight:700;color:var(--brand-ink,#B85C00)}
.valor .vv{margin-top:8px}
.valor .vv b{font-size:12px;letter-spacing:.06em;text-transform:uppercase}
.valor .vv.nao b{color:#9a3b2f}
.valor .vv.nao li{color:var(--ink-3)}
.mantras.nao span{background:#f4f4f5;color:#3f3f46}
.mz-img{width:120px;flex:none;filter:drop-shadow(0 8px 16px rgba(0,0,0,.18))}
/* editor de avatar */
.modal.modal-avatar{width:min(780px,100%)}
.av-ed{display:grid;grid-template-columns:230px 1fr;gap:18px;align-items:start}
.av-prev{display:flex;flex-direction:column;align-items:center;gap:8px;background:linear-gradient(180deg,#fff3e2,#f1ede6);border-radius:18px;padding:10px 10px 12px;position:sticky;top:0}
.av-prev canvas{width:210px;height:300px;cursor:grab;touch-action:none}
.av-prev canvas:active{cursor:grabbing}
.av-abas{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}
.av-abas button{border:1px solid #e3ded6;background:#fff;border-radius:12px;padding:8px 12px;font:700 13px "IBM Plex Sans",sans-serif;cursor:pointer}
.av-abas button.on{background:#0b0b0b;border-color:#0b0b0b;color:#fff}
#avCampos{display:flex;flex-direction:column;gap:14px}
@media (max-width:640px){.av-ed{grid-template-columns:1fr}.av-prev{position:static}.av-prev canvas{width:170px;height:220px}}
