/* =========================================================
   Social Media (usa só as variáveis de tokens.css)
   ========================================================= */
.status--black{background:var(--duze-black);color:var(--duze-white)}
:root[data-theme="escuro"] .status--black{background:var(--duze-white);color:var(--duze-black)}
[data-drop].over{box-shadow:inset 0 0 0 3px var(--duze-orange)!important}

/* barra de cliente e mês */
.sm-bar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:4px}
.sm-clientes{flex-direction:row;overflow-x:auto;flex:1;min-width:0;background:var(--surface);border-radius:var(--radius-pill);padding:4px}
.sm-clientes a{white-space:nowrap;flex:none}
.sm-mes{display:flex;align-items:center;gap:8px;background:var(--surface);border-radius:var(--radius-pill);padding:4px;font-family:var(--font-ui)}
.sm-mes b{min-width:120px;text-align:center}

/* marcador quando o post ainda não tem imagem */
.ph{width:100%;height:100%;display:flex;align-items:flex-end;padding:8px;font-family:var(--font-num);font-weight:600;text-transform:uppercase;line-height:1.05;font-size:11px;overflow:hidden}
.ph span{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.ph--arte{background:var(--duze-orange);color:var(--duze-black)}
.ph--carrossel{background:var(--duze-black);color:var(--duze-white)}
.ph--reel{background:var(--duze-gray-dark);color:var(--duze-white)}

/* biblioteca */
.dropzone{border-radius:20px;background:var(--surface-soft);padding:12px;min-height:110px;transition:box-shadow .15s}
.dropzone.over{box-shadow:inset 0 0 0 3px var(--duze-orange)}
.mlib{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:10px}
.mtile{position:relative;border:0;padding:0;border-radius:14px;overflow:hidden;background:var(--surface);cursor:grab;display:flex;flex-direction:column;text-align:left;font:inherit;color:inherit}
.mtile img,.mtile .ph{width:100%;aspect-ratio:4/5;object-fit:cover;display:block}
.mt-info{padding:6px 8px;font-family:var(--font-ui);font-size:11px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mt-ico{position:absolute;top:6px;left:6px;color:var(--duze-white);filter:drop-shadow(0 1px 2px rgba(0,0,0,.6))}
.mt-x{position:absolute;top:4px;right:4px;width:28px;height:28px;border:0;border-radius:50%;background:var(--duze-black);color:var(--duze-white);display:grid;place-items:center;cursor:pointer;opacity:.85}

/* cronograma por formato */
.fmt-cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:start}
.fmt-col h3.ct{display:flex;align-items:center;gap:8px}
.prow{display:flex;gap:12px;align-items:center;padding:8px;border-radius:16px;background:var(--surface-soft);cursor:pointer;transition:box-shadow .15s}
.prow:hover{box-shadow:var(--shadow-soft)}
.prow .grow{flex:1;min-width:0}
.prow .title{font-weight:600;line-height:1.25}
.pthumb{width:52px;height:65px;border-radius:10px;overflow:hidden;flex:none;background:var(--surface-strong)}
.pthumb img{width:100%;height:100%;object-fit:cover}
.pthumb .ph{font-size:8px;padding:5px}
@media (max-width:1180px){ .fmt-cols{grid-template-columns:minmax(0,1fr)} }

/* prévia do perfil: celular */
.perfil-wrap{display:grid;grid-template-columns:auto minmax(0,1fr);gap:24px;align-items:start}
.phone{width:min(380px,100%);background:var(--duze-black);border-radius:46px;padding:12px;box-shadow:var(--shadow-soft)}
.phone-screen{--ig-line:#dbdbdb;--ig-muted:#6b6663;--ig-soft:#efefef;background:var(--duze-white);color:var(--duze-black);border-radius:36px;height:740px;overflow-y:auto;scrollbar-width:none;font-family:-apple-system,"Segoe UI",Roboto,var(--font-body);font-weight:400}
.phone-screen::-webkit-scrollbar{display:none}
.ig-status{display:flex;justify-content:space-between;align-items:center;padding:12px 24px 6px;font-size:13px}
.ig-status span{display:flex;gap:4px}
.ig-notch{width:96px;height:24px;border-radius:999px;background:var(--duze-black)}
.ig-top{display:flex;justify-content:space-between;align-items:center;padding:8px 16px;font-size:18px}
.ig-head{display:flex;align-items:center;gap:20px;padding:8px 16px}
.ig-avatar{width:78px;height:78px;border-radius:50%;flex:none;display:grid;place-items:center;background:var(--duze-orange);color:var(--duze-black);font-family:var(--font-num);font-weight:600;font-size:26px;box-shadow:0 0 0 3px var(--duze-white),0 0 0 5px var(--ig-line)}
.ig-stats{flex:1;display:flex;justify-content:space-around;text-align:center}
.ig-stats b{display:block;font-size:16px}
.ig-stats span{font-size:12px}
.ig-bio{display:flex;flex-direction:column;padding:4px 16px 10px;font-size:13px;line-height:1.35}
.ig-bio span{color:var(--ig-muted)}
.ig-btns{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:0 16px 12px}
.ig-btns span{background:var(--ig-soft);border-radius:8px;text-align:center;font-size:13px;font-weight:600;padding:7px 0}
.ig-tabs{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ig-line)}
.ig-tabs span{display:grid;place-items:center;padding:10px 0;color:var(--ig-muted)}
.ig-tabs span.on{color:var(--duze-black);box-shadow:inset 0 -1px 0 var(--duze-black)}
.ig-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px}
.ig-tile{position:relative;aspect-ratio:3/4;overflow:hidden;background:var(--ig-soft);cursor:pointer}
.ig-tile img{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}
.ig-tile .ph{font-size:10px}
.ig-tile.fora{opacity:.5}
.ig-tile.dragging{opacity:.3}
.ig-ico{position:absolute;top:6px;right:6px;color:var(--duze-white);filter:drop-shadow(0 1px 2px rgba(0,0,0,.6))}
.ig-badge{position:absolute;left:5px;bottom:5px;border-radius:999px;padding:2px 7px;font-family:var(--font-ui);font-size:10px;font-weight:700;background:var(--duze-black);color:var(--duze-white)}
.ig-badge--atrasado{background:var(--state-late)}
.ig-badge--em_producao,.ig-badge--aprovacao{background:var(--duze-orange);color:var(--duze-black)}
.ig-vazio{grid-column:1/-1;padding:30px;text-align:center;color:var(--ig-muted);font-size:13px}
@media (max-width:1100px){ .perfil-wrap{grid-template-columns:minmax(0,1fr);justify-items:center} .perfil-wrap>.stack{width:100%} }

/* calendário do mês */
.cm{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}
.cm-dow{font-family:var(--font-ui);font-size:11px;font-weight:700;color:var(--text-muted);text-align:center;text-transform:uppercase;letter-spacing:.06em;padding:2px 0}
.cm-day{min-height:112px;background:var(--surface-soft);border-radius:16px;padding:8px;display:flex;flex-direction:column;gap:4px;min-width:0}
.cm-day.out{opacity:.45}
.cm-day.today{box-shadow:inset 0 0 0 2px var(--duze-orange)}
.cm-n{font-family:var(--font-ui);font-size:12px;font-weight:700}
.cm-post{border:0;border-radius:10px;padding:5px 7px;font-family:var(--font-ui);font-size:11px;font-weight:700;display:flex;gap:4px;align-items:center;text-align:left;cursor:pointer;width:100%;min-width:0}
.cm-post span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cm--publicado{background:var(--state-ok);color:var(--duze-white)}
.cm--programado,.cm--aprovado{background:var(--duze-black);color:var(--duze-white)}
.cm--atrasado{background:var(--state-late);color:var(--duze-white)}
.cm--em_producao,.cm--aprovacao{background:var(--duze-orange);color:var(--duze-black)}
.cm-legs{display:flex;gap:12px;flex-wrap:wrap}
.cm-leg{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-ui);font-size:12px;font-weight:700}
.cm-leg i{width:12px;height:12px;border-radius:4px;display:inline-block}
.cal-card{display:flex;gap:12px;align-items:center;padding:10px;border-radius:16px;background:var(--surface-soft);cursor:pointer}
.cal-card .grow{flex:1;min-width:0}
.cal-card .title{font-weight:600}
.cal-date{display:flex;flex-direction:column;align-items:center;justify-content:center;width:54px;height:54px;border-radius:14px;background:var(--duze-orange);color:var(--duze-black);font-family:var(--font-ui);line-height:1.05;flex:none}
.cal-date b{font-family:var(--font-num);font-size:22px;font-weight:900}
.cal-date small{font-size:11px;font-weight:700;text-transform:uppercase}

/* ficha do post */
.post-grid{display:grid;grid-template-columns:300px minmax(0,1fr);gap:22px;align-items:start}
.pm-frame{position:relative;aspect-ratio:4/5;border-radius:20px;overflow:hidden;background:var(--surface-soft)}
.pm-frame img,.pm-frame video{width:100%;height:100%;object-fit:cover;display:block;background:var(--duze-black)}
.pm-frame .ph{font-size:24px;padding:18px}
.pm-nav{position:absolute;top:50%;transform:translateY(-50%);width:36px;height:36px;border:0;border-radius:50%;background:var(--duze-white);color:var(--duze-black);display:grid;place-items:center;cursor:pointer;box-shadow:var(--shadow-soft)}
.pm-nav[disabled]{opacity:.35;cursor:default}
.pm-nav.l{left:8px}
.pm-nav.r{right:8px}
.pm-count{position:absolute;top:10px;right:10px;background:var(--duze-black);color:var(--duze-white);border-radius:999px;padding:2px 9px;font-family:var(--font-ui);font-size:12px;font-weight:700}
.pm-aviso{position:absolute;left:10px;right:10px;bottom:10px;background:var(--duze-black);color:var(--duze-white);border-radius:12px;padding:6px 10px;font-family:var(--font-ui);font-size:11px}
.pm-strip{display:flex;gap:8px;overflow-x:auto;margin-top:10px;padding-bottom:4px}
.pm-thumb{width:66px;flex:none;display:flex;flex-direction:column;gap:4px}
.pm-sel{border:0;padding:0;border-radius:10px;overflow:hidden;aspect-ratio:4/5;background:var(--surface-soft);cursor:pointer;display:grid;place-items:center}
.pm-sel img{width:100%;height:100%;object-fit:cover}
.pm-thumb.on .pm-sel{box-shadow:0 0 0 3px var(--duze-orange)}
.pm-ctrl{display:flex;justify-content:space-between}
.pm-ctrl button{border:0;background:var(--surface-soft);color:var(--text);width:20px;height:20px;border-radius:50%;display:grid;place-items:center;cursor:pointer;padding:0}
.pm-ctrl button[disabled]{opacity:.3}

@media (max-width:860px){
  .post-grid{grid-template-columns:minmax(0,1fr)}
  .post-media{max-width:340px;width:100%;margin:0 auto}
  .sm-mes b{min-width:0}
  .phone{border-radius:40px;padding:10px}
  .phone-screen{height:640px;border-radius:32px}
}
