.dm-intro{ margin:-2px 0 16px; max-width:640px; line-height:1.55; color:var(--muted); font-size:.88rem }
.dm-tabs{ display:inline-flex; gap:2px; background:#eceef2; padding:3px; border-radius:10px; margin-bottom:16px }
.dm-tabs button{ border:0; background:none; padding:7px 16px; border-radius:8px; font:600 .84rem Inter,sans-serif; color:var(--muted); cursor:pointer; display:inline-flex; gap:7px; align-items:center }
.dm-tabs button.on{ background:#fff; color:var(--text); box-shadow:0 1px 3px rgba(20,20,25,.12) }
.dm-tabs i{ font-style:normal; font-size:.7rem; border-radius:10px; padding:0 6px; background:#e3e5ea }
.dm-tabs i.red{ background:#fbe6e3; color:var(--danger) }
.dm-hoje{ display:grid; grid-template-columns:minmax(0,1.9fr) minmax(280px,1fr); gap:16px; align-items:start }
.dm-col{ display:flex; flex-direction:column; gap:16px; min-width:0 }
.dm-card{ background:var(--panel); border:1px solid var(--border); border-radius:14px; padding:6px 0 8px; margin-bottom:0 }
.dm-col .dm-card + .dm-card{ margin-top:0 }
.dm-card-h{ display:flex; align-items:center; justify-content:space-between; gap:16px; padding:14px 20px 10px }
.dm-card-h h3{ margin:0; font:600 .95rem "Poppins","Inter",sans-serif }
.dm-card-h small{ color:var(--muted); font-size:.78rem }
.dm-card > .dm-card-h + .dm-rot-cab, .dm-card .dm-card-h{ }
.dm-prog{ height:6px; background:#eceef2; border-radius:4px; overflow:hidden; width:140px; flex:none }
.dm-prog i{ display:block; height:100%; background:var(--primary); border-radius:4px }
.dm-link{ border:0; background:none; color:var(--primary); font:600 .8rem Inter,sans-serif; cursor:pointer }
.dm-grupo{ padding:12px 20px 6px; font-size:.74rem; font-weight:600; color:var(--muted) }
.dm-grupo.atraso{ color:var(--danger) }
.dm-item{ display:grid; grid-template-columns:24px 46px minmax(0,1fr) auto 92px 34px 26px; gap:12px; align-items:center; padding:11px 20px; border-top:1px solid #f0f1f4 }
.dm-item:first-of-type{ border-top:0 }
.dm-check{ width:22px; height:22px; border-radius:7px; border:2px solid #cfd3da; background:#fff; cursor:pointer; padding:0; display:flex; align-items:center; justify-content:center }
.dm-check:hover{ border-color:var(--primary) }
.dm-check svg{ width:14px; height:14px; stroke:#fff; stroke-width:3; fill:none; stroke-linecap:round; stroke-linejoin:round }
.dm-item.ok .dm-check{ background:var(--ok); border-color:var(--ok) }
.dm-item.ok .dm-tit b{ text-decoration:line-through; color:var(--muted); font-weight:500 }
.dm-hora{ font-size:.8rem; color:var(--muted); font-variant-numeric:tabular-nums }
.dm-tit{ min-width:0 } .dm-tit b{ font-weight:600; font-size:.9rem; display:block }
.dm-atraso{ color:var(--danger); font-size:.74rem } .dm-lk{ color:var(--primary); font-size:.76rem; cursor:pointer }
.dm-canal{ font-size:.72rem; font-weight:600; color:#555b66; background:#f1f2f5; border-radius:20px; padding:3px 10px; white-space:nowrap; display:inline-flex; align-items:center; gap:6px }
.dm-canal::before{ content:""; width:7px; height:7px; border-radius:50%; background:var(--dc,#9aa0ab) }
.dm-c-instagram{ --dc:#d6457a } .dm-c-linkedin{ --dc:#3b82c4 } .dm-c-google{ --dc:#e3b341 } .dm-c-clientes{ --dc:#1e8e5a } .dm-c-sistema{ --dc:#e8830f } .dm-c-geral{ --dc:#9aa0ab }
.dm-tipo{ font-size:.74rem; color:var(--muted); display:inline-flex; gap:5px; align-items:center }
.dm-tipo svg{ width:13px; height:13px; stroke:currentColor; fill:none; stroke-width:2; stroke-linecap:round; stroke-linejoin:round }
.dm-clip{ font-size:.74rem; color:var(--muted); display:inline-flex; gap:3px; align-items:center }
.dm-clip svg{ width:13px; height:13px; stroke:currentColor; fill:none; stroke-width:2; stroke-linecap:round; stroke-linejoin:round }
.dm-resp{ width:24px; height:24px; border-radius:50%; background:#fdeedd; color:var(--primary); font-size:.72rem; font-weight:700; display:flex; align-items:center; justify-content:center }
.dm-meta{ padding:10px 20px 6px }
.dm-meta-top{ display:flex; justify-content:space-between; align-items:baseline; font-size:.86rem; margin-bottom:7px }
.dm-meta-top small{ color:var(--muted); font-size:.74rem; margin-left:4px }
.dm-meta-top b{ font:700 1rem "Poppins","Inter",sans-serif } .dm-meta-top em{ font-style:normal; color:var(--muted); font-weight:500; font-size:.84rem }
.dm-meta .dm-prog{ width:100% }
.dm-meta-bt{ display:flex; gap:6px; margin-top:8px }
.dm-meta-bt button{ border:1px solid var(--border); background:#fff; border-radius:8px; font:600 .78rem Inter,sans-serif; padding:3px 11px; cursor:pointer }
.dm-meta-bt button:hover{ border-color:var(--primary); color:var(--primary) }
.dm-const{ display:flex; justify-content:space-between; align-items:center; padding:7px 20px; font-size:.84rem }
.dm-const div{ display:flex; gap:5px } .dm-const i{ width:18px; height:18px; border-radius:6px; background:#eceef2 }
.dm-const i.f{ background:var(--ok) } .dm-const i.fut{ background:#f6f7f9; border:1px dashed #dfe2e7 }
.dm-leg{ display:block; padding:2px 20px 8px; color:var(--muted); font-size:.74rem }
.dm-semana{ display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:10px }
.dm-dia{ background:var(--panel); border:1px solid var(--border); border-radius:14px; padding:12px 10px; min-height:300px }
.dm-dia.hoje{ border-color:var(--primary); box-shadow:0 0 0 3px #fdeedd }
.dm-dia-h{ display:flex; justify-content:space-between; align-items:baseline; padding:0 4px 10px; font-size:.78rem; color:var(--muted) }
.dm-dia-h b{ font:700 1.2rem "Poppins","Inter",sans-serif; color:var(--text) } .dm-dia.hoje .dm-dia-h b{ color:var(--primary) }
.dm-mini{ display:flex; gap:7px; padding:8px 6px; border-radius:9px; background:#f7f8fa; margin-bottom:6px }
.dm-mini b{ font-size:.78rem; font-weight:600; display:block; line-height:1.3 } .dm-mini small{ color:var(--muted); font-size:.7rem }
.dm-mini-d{ width:7px; height:7px; border-radius:50%; background:var(--dc); margin-top:5px; flex:none }
.dm-mini.ok b{ text-decoration:line-through; color:var(--muted); font-weight:500 } .dm-mini.ok{ opacity:.7 }
.dm-vazio-d{ color:#b5bac4; font-size:.76rem; text-align:center; padding:20px 0 }
.dm-rot-cab,.dm-rot{ display:grid; grid-template-columns:minmax(0,1.6fr) 110px minmax(200px,1fr) 60px 100px; gap:16px; align-items:center; padding:11px 20px }
.dm-rot-cab{ font-size:.74rem; color:var(--muted); font-weight:600; border-bottom:1px solid var(--border); border-top:1px solid var(--border); background:#fafbfc }
.dm-rot{ border-bottom:1px solid #f0f1f4; font-size:.86rem } .dm-rot b{ font-weight:600 } .dm-rot:last-child{ border-bottom:0 }
.dm-rot-m{ grid-template-columns:minmax(0,1.6fr) 110px 1fr }
.dm-dias{ display:flex; gap:4px } .dm-dias i{ font-style:normal; width:24px; height:24px; border-radius:7px; background:#f1f2f5; color:#9aa0ab; font-size:.7rem; font-weight:600; display:flex; align-items:center; justify-content:center }
.dm-dias i.f{ background:var(--primary); color:#fff } .dm-dias.grande i{ width:auto; padding:0 12px; height:32px; font-size:.8rem }
.dm-fundo{ position:fixed; inset:0; background:rgba(20,20,25,.35); display:flex; justify-content:flex-end; z-index:50 }
.dm-painel{ width:min(440px,100%); background:var(--panel); height:100%; padding:10px 24px 24px; overflow:auto; box-shadow:-8px 0 30px rgba(0,0,0,.15) }
.dm-painel .dm-card-h{ padding:14px 0 10px }
.dm-painel label{ display:block; margin:14px 0 5px; font-size:.78rem; color:var(--muted) } .dm-painel input,.dm-painel select,.dm-painel textarea{ margin:0 }
.dm-2{ display:grid; grid-template-columns:1fr 1fr; gap:12px }
.dm-seg{ display:flex; gap:2px; background:#eceef2; padding:3px; border-radius:10px; margin:4px 0 6px }
.dm-seg button{ flex:1; border:0; background:none; padding:8px; border-radius:8px; font:600 .82rem Inter,sans-serif; color:var(--muted); cursor:pointer } .dm-seg button.on{ background:#fff; color:var(--text); box-shadow:0 1px 3px rgba(20,20,25,.12) }
.dm-anexo{ border:2px dashed var(--border); border-radius:12px; padding:18px; display:flex; gap:10px; align-items:center; color:var(--muted); font-size:.8rem }
.dm-anexo svg{ width:20px; height:20px; stroke:var(--primary); fill:none; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; flex:none }
.dm-acoes{ display:flex; gap:10px; margin-top:20px }
@media (max-width:1100px){ .dm-hoje{ grid-template-columns:1fr } .dm-semana{ grid-template-columns:repeat(2,1fr) } .dm-rot-cab{ display:none } .dm-rot{ grid-template-columns:1fr auto; row-gap:6px } }
@media (max-width:640px){ .dm-item{ grid-template-columns:24px minmax(0,1fr) auto; row-gap:4px } .dm-hora,.dm-tipo,.dm-clip,.dm-resp{ display:none } .dm-semana{ grid-template-columns:1fr } .dm-card-h{ flex-wrap:wrap } }

/* ---- v2: visual mais limpo ---- */
.dm-resumo{ display:grid; grid-template-columns:auto 1fr auto; gap:26px; align-items:center; background:var(--panel); border:1px solid var(--border); border-radius:14px; padding:18px 26px; margin-bottom:16px }
.dm-resumo-anel{ position:relative; width:92px; height:92px }
.dm-resumo-anel > div{ position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; line-height:1 }
.dm-resumo-anel b{ font:700 1.7rem "Poppins","Inter",sans-serif } .dm-resumo-anel small{ color:var(--muted); font-size:.72rem; margin-top:3px }
.dm-resumo-txt h2{ margin:0 0 4px; font:600 1.15rem "Poppins","Inter",sans-serif } .dm-resumo-txt p{ margin:0; color:var(--muted); font-size:.86rem; line-height:1.5 } .dm-resumo-txt p b{ color:var(--text); font-weight:600 }
.dm-resumo-n{ display:flex; gap:28px } .dm-resumo-n div{ text-align:center } .dm-resumo-n b{ display:block; font:700 1.5rem "Poppins","Inter",sans-serif } .dm-resumo-n b.r{ color:var(--danger) } .dm-resumo-n small{ color:var(--muted); font-size:.74rem }
.dm-hoje{ grid-template-columns:minmax(0,1.8fr) minmax(300px,1fr) }
.dm-item{ grid-template-columns:24px minmax(0,1fr) auto auto auto 26px; padding:12px 20px }
.dm-tit b{ white-space:nowrap; overflow:hidden; text-overflow:ellipsis }
.dm-tit small{ display:block; color:var(--muted); font-size:.74rem; margin-top:1px }
.dm-grupo.atraso ~ .dm-item .dm-tit small{ color:var(--danger) }
.dm-hora{ font-size:.8rem; color:var(--muted); font-variant-numeric:tabular-nums }
.dm-meta-i{ display:inline-flex; gap:10px; align-items:center; min-width:20px; justify-content:flex-end; color:var(--muted) }
.dm-ico{ width:14px; height:14px; stroke:currentColor; fill:none; stroke-width:2; stroke-linecap:round; stroke-linejoin:round }
.dm-metas-g{ display:grid; grid-template-columns:1fr 1fr; gap:18px 10px; padding:4px 16px 14px }
.dm-m{ display:flex; flex-direction:column; align-items:center; text-align:center }
.dm-m-anel{ position:relative; width:84px; height:84px } .dm-m-anel b{ position:absolute; inset:0; display:flex; align-items:center; justify-content:center; font:700 1.05rem "Poppins","Inter",sans-serif } .dm-m-anel em{ font-style:normal; color:var(--muted); font-weight:500; font-size:.78rem }
.dm-m-t{ font-size:.82rem; font-weight:600; margin-top:8px; line-height:1.25 } .dm-m small{ color:var(--muted); font-size:.72rem }
.dm-m-bt{ display:flex; gap:5px; margin-top:7px } .dm-m-bt button{ border:1px solid var(--border); background:#fff; border-radius:8px; font:600 .74rem Inter,sans-serif; padding:2px 9px; cursor:pointer } .dm-m-bt button:hover{ border-color:var(--primary); color:var(--primary) }
.dm-const-dias{ display:flex; justify-content:space-between; align-items:center; padding:0 20px 10px } .dm-const-dias div{ display:flex; gap:5px } .dm-const-dias i{ width:18px; text-align:center; font-style:normal; font-size:.66rem; color:var(--muted); background:none !important; height:auto }
.dm-const i{ width:18px; height:18px }
.dm-dia{ min-height:320px; padding:12px 8px }
.dm-dia-h{ align-items:center; padding:0 6px 12px } .dm-dia-h > div{ display:flex; gap:8px; align-items:baseline } .dm-dia-h em{ font-style:normal; font-size:.7rem; color:var(--muted); background:#f1f2f5; padding:1px 7px; border-radius:10px }
.dm-mini{ gap:8px; padding:9px 8px; background:#f7f8fa; border-left:3px solid var(--dc,#ccc); border-radius:8px }
.dm-mini > i{ display:none }
.dm-mini small{ display:block; font-size:.68rem; margin-bottom:1px }
.dm-mini b{ font-size:.78rem; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden }
.dm-mini.dm-c-x{}
.dm-dias i{ width:34px; font-size:.66rem }
.dm-dias.grande i{ width:auto; padding:0 12px }
@media (max-width:1100px){ .dm-resumo{ grid-template-columns:auto 1fr } .dm-resumo-n{ grid-column:1 / -1; justify-content:space-around } .dm-hoje{ grid-template-columns:1fr } }
@media (max-width:640px){ .dm-item{ grid-template-columns:24px minmax(0,1fr) auto } .dm-meta-i,.dm-resp,.dm-hora{ display:none } .dm-tit b{ white-space:normal } .dm-resumo{ padding:16px } .dm-resumo-n{ gap:14px } }

/* ---- v3 ---- */
.dm-item{ grid-template-columns:24px minmax(0,1fr) 52px 112px 44px 26px; gap:14px }
.dm-hora{ text-align:right; font-variant-numeric:tabular-nums }
.dm-cn{ display:flex } .dm-meta-i{ justify-content:flex-end; gap:8px }
.dm-arco.anima{ animation:dmArco 1.3s cubic-bezier(.22,.8,.3,1) both }
@keyframes dmArco{ from{ stroke-dashoffset:var(--c) } to{ stroke-dashoffset:var(--f) } }
.dm-const i.f{ animation:dmPop .5s cubic-bezier(.3,1.6,.5,1) both; animation-delay:calc(var(--i) * 90ms + 250ms) }
@keyframes dmPop{ from{ transform:scale(0); opacity:0 } to{ transform:scale(1); opacity:1 } }
@media (prefers-reduced-motion:reduce){ .dm-arco.anima,.dm-const i.f{ animation:none } }
/* semana */
.dm-dia{ background:transparent; border:0; padding:0; min-height:0; box-shadow:none }
.dm-dia.hoje{ box-shadow:none }
.dm-dia-h{ background:var(--panel); border:1px solid var(--border); border-radius:12px; padding:10px 12px; margin-bottom:8px }
.dm-dia.hoje .dm-dia-h{ background:#fdeedd; border-color:#f3cfa3 }
.dm-dia-l{ display:flex; flex-direction:column; gap:8px }
.dm-mini{ background:var(--panel); border:1px solid var(--border); border-left:1px solid var(--border); border-radius:10px; padding:9px 11px; display:block }
.dm-mini-t{ display:flex; justify-content:space-between; align-items:center; margin-bottom:3px }
.dm-mini-h{ font-size:.7rem; color:var(--muted); font-variant-numeric:tabular-nums }
.dm-mini-t i{ width:8px; height:8px; border-radius:50%; background:var(--dc,#9aa0ab); display:block }
.dm-mini b{ font-size:.8rem; line-height:1.3 }
.dm-mini.ok{ background:#f6f7f9; opacity:1 } .dm-mini.ok b{ color:#9aa0ab }
.dm-vazio-d{ border:1px dashed var(--border); border-radius:10px; padding:16px 0 }
.dm-legenda{ display:flex; gap:8px; flex-wrap:wrap; margin-top:14px }
/* fixas e metas */
.dm-fx{ display:grid; grid-template-columns:minmax(0,1.7fr) minmax(300px,1fr); gap:16px; align-items:start }
.dm-rx{ display:grid; grid-template-columns:minmax(0,1fr) auto 44px 32px; gap:16px; align-items:center; padding:13px 20px; border-top:1px solid #f0f1f4 }
.dm-rx-t b{ display:block; font-weight:600; font-size:.9rem; margin-bottom:5px } .dm-rx-t div{ display:flex; align-items:center; gap:10px } .dm-rx-t small{ color:var(--muted); font-size:.76rem }
.dm-dias i{ width:38px; height:26px; font-size:.68rem }
.dm-sw{ position:relative; display:inline-block; width:38px; height:22px; margin:0 } .dm-sw input{ opacity:0; width:0; height:0; position:absolute }
.dm-sw span{ position:absolute; inset:0; background:#d5d8de; border-radius:20px; transition:.2s; cursor:pointer } .dm-sw span::before{ content:""; position:absolute; width:16px; height:16px; left:3px; top:3px; background:#fff; border-radius:50%; transition:.2s; box-shadow:0 1px 3px rgba(0,0,0,.25) }
.dm-sw input:checked + span{ background:var(--ok) } .dm-sw input:checked + span::before{ transform:translateX(16px) }
.dm-edit{ border:0; background:none; cursor:pointer; padding:6px; border-radius:8px; color:var(--muted) } .dm-edit:hover{ background:#f1f2f5; color:var(--primary) } .dm-edit svg{ width:16px; height:16px; stroke:currentColor; fill:none; stroke-width:2; stroke-linecap:round; stroke-linejoin:round }
.dm-mx{ display:grid; gap:12px; padding:4px 16px 16px }
.dm-mc{ border:1px solid var(--border); border-radius:12px; padding:14px 16px; background:#fcfcfd }
.dm-mc-t{ display:flex; justify-content:space-between; align-items:center; gap:10px } .dm-mc-t b{ font-size:.88rem; font-weight:600 }
.dm-per{ font-size:.68rem; font-weight:600; background:#fdeedd; color:var(--primary); padding:2px 9px; border-radius:20px }
.dm-mc-n{ display:flex; align-items:center; justify-content:center; gap:18px; margin:12px 0 8px } .dm-mc-n div{ text-align:center; min-width:70px } .dm-mc-n b{ display:block; font:700 1.8rem/1 "Poppins","Inter",sans-serif } .dm-mc-n small{ color:var(--muted); font-size:.72rem }
.dm-mc-n button{ width:32px; height:32px; border-radius:50%; border:1px solid var(--border); background:#fff; font:600 1.05rem Inter,sans-serif; cursor:pointer; color:var(--muted) } .dm-mc-n button:hover{ border-color:var(--primary); color:var(--primary) }
.dm-mc-r{ display:block; text-align:center; color:var(--muted); font-size:.72rem }
@media (max-width:1100px){ .dm-fx{ grid-template-columns:1fr } .dm-rx{ grid-template-columns:minmax(0,1fr) 44px 32px } .dm-rx .dm-dias{ grid-column:1 / -1; grid-row:2 } }
@media (max-width:640px){ .dm-item{ grid-template-columns:24px minmax(0,1fr) auto } .dm-cn{ grid-column:2 / -1 } }

/* ---- versão real ---- */
.dm-vazio-hoje{ display:flex; flex-direction:column; gap:6px; align-items:center; text-align:center; padding:34px 20px; color:var(--muted); font-size:.86rem } .dm-vazio-hoje b{ color:var(--text); font-size:.95rem }
.dm-erro{ margin-top:12px; color:var(--danger); font-size:.82rem; background:#fbe6e3; border-radius:8px; padding:8px 12px }
.dm-excluir{ margin-left:auto; border:0; background:none; color:var(--danger); font:600 .82rem Inter,sans-serif; cursor:pointer; padding:8px }
.dm-linkrow{ display:flex; gap:8px } .dm-linkrow input{ flex:1 }
.dm-links{ display:flex; flex-wrap:wrap; gap:6px; margin-top:8px }
.dm-lnk{ display:inline-flex; align-items:center; gap:6px; background:#f1f2f5; border-radius:20px; padding:3px 4px 3px 11px; font-size:.76rem } .dm-lnk a{ color:var(--text); text-decoration:none } .dm-lnk a:hover{ color:var(--primary) }
.dm-lnk button{ border:0; background:#e3e5ea; width:18px; height:18px; border-radius:50%; cursor:pointer; line-height:1; color:var(--muted) }
.dm-dbtn{ border:0; font:600 .8rem Inter,sans-serif; background:#f1f2f5; color:#9aa0ab; border-radius:8px; padding:0 12px; height:32px; cursor:pointer } .dm-dbtn.f{ background:var(--primary); color:#fff }
.dm-const i.pend{ background:#eceef2 } .dm-const i.perd{ background:#e3e5ea }
.dm-rx.off .dm-rx-t, .dm-rx.off .dm-dias{ opacity:.45 }
.dm-item[data-abrir-form], .dm-mini[data-abrir-form]{ cursor:pointer }
.dm-lk{ cursor:pointer }
.dm-check:focus-visible,.dm-dbtn:focus-visible,.dm-tabs button:focus-visible,.dm-link:focus-visible,.dm-edit:focus-visible{ outline:2px solid var(--primary); outline-offset:2px }
