/* ===== Aprova - estilos exclusivos do painel ===== */

.hero{padding:34px 0 8px}
.hero h1{font-size:clamp(26px,4.6vw,36px);margin-bottom:8px}
.hero p{color:var(--ink-soft);font-size:16px;max-width:60ch}

.steps{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}
.step{
  display:flex;align-items:center;gap:8px;
  background:var(--surface);border:1px solid var(--line);
  border-radius:var(--r-pill);padding:7px 15px 7px 7px;
  font-size:13.5px;font-weight:700;color:var(--ink-soft);
}
.step b{
  width:24px;height:24px;border-radius:var(--r-pill);flex:none;
  display:grid;place-items:center;font-size:12px;
  background:var(--brand-soft);color:var(--brand-dark);
}

.section-head{display:flex;align-items:baseline;gap:12px;margin:6px 2px 0}
.section-head h2{font-size:20px}
.section-head span{font-size:14px;color:var(--ink-faint);font-weight:700}

/* ---------- editor de publicacao ---------- */
.post-card{position:relative}
.post-head{display:flex;align-items:center;gap:10px;margin-bottom:18px;flex-wrap:wrap}
.post-num{
  width:32px;height:32px;border-radius:11px;flex:none;
  display:grid;place-items:center;font-weight:900;font-size:14px;
  background:var(--brand-soft);color:var(--brand-dark);
}
.post-head h3{font-size:16.5px}
.type-tabs{display:flex;gap:4px;background:var(--bg-soft);border-radius:var(--r-pill);padding:4px}
.type-tab{
  border:none;background:transparent;border-radius:var(--r-pill);
  padding:7px 15px;font-size:13.5px;font-weight:800;color:var(--ink-soft);
  transition:background .15s,color .15s;
}
.type-tab:hover{color:var(--ink)}
.type-tab.on{background:var(--surface);color:var(--brand-dark);box-shadow:0 2px 6px rgba(70,55,40,.1)}

.editor-grid{display:grid;grid-template-columns:300px 1fr;gap:22px;align-items:start}
@media(max-width:760px){.editor-grid{grid-template-columns:1fr}}

.drop{
  border:2px dashed var(--line-strong);border-radius:var(--r);
  background:var(--bg-soft);
  padding:26px 16px;text-align:center;
  transition:border-color .15s,background .15s;
  cursor:pointer;
}
.drop:hover,.drop.over{border-color:var(--brand);background:var(--brand-soft)}
.drop .big{font-size:32px;line-height:1}
.drop b{display:block;font-size:14.5px;margin-top:8px}
.drop span{font-size:12.5px;color:var(--ink-faint)}

.thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:9px;margin-top:12px}
.thumb{
  position:relative;aspect-ratio:1;border-radius:var(--r-sm);overflow:hidden;
  background:#EFE7DC;border:1px solid var(--line);
}
.thumb img,.thumb video{width:100%;height:100%;object-fit:cover}
.thumb .badge{
  position:absolute;left:5px;bottom:5px;
  background:rgba(46,42,38,.75);color:#fff;border-radius:var(--r-pill);
  font-size:10.5px;font-weight:800;padding:2px 7px;
}
.thumb .kill{
  position:absolute;top:4px;right:4px;
  width:22px;height:22px;border-radius:var(--r-pill);border:none;
  background:rgba(46,42,38,.72);color:#fff;font-size:13px;line-height:1;
  display:grid;place-items:center;
}
.thumb .kill:hover{background:var(--warn-dark)}
.thumb .order{
  position:absolute;top:4px;left:4px;
  background:rgba(255,255,255,.9);border-radius:var(--r-pill);
  font-size:10.5px;font-weight:900;padding:1px 6px;color:var(--ink);
}

.count-chars{font-size:12px;color:var(--ink-faint);font-weight:700;text-align:right}

/* ---------- barra final ---------- */
.actionbar{
  position:sticky;bottom:0;z-index:40;
  background:rgba(251,247,242,.9);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  border-top:1px solid var(--line);
  margin-top:26px;
}
.actionbar-in{display:flex;align-items:center;gap:14px;padding:16px 0;flex-wrap:wrap}
.actionbar .sum{font-size:14px;color:var(--ink-soft);font-weight:700}
.actionbar .sum b{color:var(--ink)}

.filesize{font-size:12.5px;font-weight:800}
.filesize.ok{color:var(--ok-dark)}
.filesize.warn{color:#A87400}
.filesize.bad{color:var(--warn-dark)}

.mode-box{
  background:var(--bg-soft);border-radius:var(--r);padding:14px 16px;
  display:grid;gap:6px;
}
.mode-box label{display:flex;gap:10px;align-items:flex-start;cursor:pointer;font-size:14px}
.mode-box input{margin-top:4px;accent-color:var(--brand);width:16px;height:16px;flex:none}
.mode-box b{display:block;font-weight:800}
.mode-box small{color:var(--ink-soft);font-size:12.5px;line-height:1.45}

.foot{padding:34px 0 46px;text-align:center;color:var(--ink-faint);font-size:13px}
