/* ── NEWS (tab Noticias) ───────────────────────────────────────────────────── */
.news-empty { color: var(--text-3); text-align: center; padding: 40px 16px; }

.news-list { display: flex; flex-direction: column; gap: 14px; }

.news-card {
  display: flex; overflow: hidden;
  background: var(--surface-1); border: 1px solid var(--border);
  border-left: 3px solid var(--border); border-radius: 14px; box-shadow: var(--shadow-card);
}
.news-card.is-teacher { border-left-color: var(--red); }
.news-card.is-system  { border-left-color: #4da3ff; }
.news-card-img { flex-shrink: 0; width: 132px; background: var(--surface-2); }
.news-card-img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.news-card-main { flex: 1; min-width: 0; padding: 14px 16px; }
.news-card-top { display: flex; align-items: center; gap: 10px; margin-bottom: 6px; }
.news-card-tag {
  font-size: .62rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: var(--text-3);
}
.news-card.is-teacher .news-card-tag { color: var(--red); }
.news-card.is-system  .news-card-tag { color: #4da3ff; }
.news-card-time  { font-size: .68rem; color: var(--text-3); margin-left: auto; }
.news-card-title { font-size: 1.04rem; color: var(--text-1); margin: 0 0 4px; line-height: 1.2; }
.news-card-body  { font-size: .9rem; color: var(--text-2); margin: 0; white-space: pre-wrap; word-break: break-word; }
.news-card-cta   { margin-top: 12px; }
.news-cta-ig {
  border: none; color: #fff;
  background: linear-gradient(45deg, #f09433, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888);
}
.news-cta-ig:hover { filter: brightness(1.08); }

@media (max-width: 560px) {
  .news-card { flex-direction: column; }
  .news-card-img { width: 100%; height: 140px; }
}

/* Teacher: composer + management */
.news-composer, .news-manage {
  background: var(--surface-1); border: 1px solid var(--border);
  border-radius: 14px; padding: 16px; margin-bottom: 18px; box-shadow: var(--shadow-card);
}
.news-sub {
  font-size: .66rem; font-weight: 800; letter-spacing: .16em; text-transform: uppercase;
  color: var(--text-3); margin: 0 0 12px;
}
.news-input {
  width: 100%; box-sizing: border-box; margin-bottom: 10px;
  background: var(--surface-2); border: 1px solid var(--border); border-radius: 9px;
  color: var(--text-1); font-size: .9rem; padding: 9px 12px; font-family: inherit;
}
.news-input:focus { outline: none; border-color: var(--red); }
.news-textarea { resize: vertical; min-height: 64px; }
.news-composer-row { display: flex; gap: 10px; align-items: center; margin-bottom: 4px; }
.news-select { flex: 1; margin-bottom: 0; }
.news-composer-row .shop-btn { flex-shrink: 0; }
.news-hint { font-size: .74rem; color: var(--text-3); margin: 6px 0 0; }

.news-manage-list { display: flex; flex-direction: column; gap: 8px; }
.news-manage-row {
  display: flex; align-items: center; gap: 12px; justify-content: space-between;
  padding: 8px 12px; background: var(--surface-2); border: 1px solid var(--border); border-radius: 9px;
}
.news-manage-row.is-reverted { opacity: .55; }
.news-manage-title  { font-size: .88rem; color: var(--text-1); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.news-manage-status { display: flex; align-items: center; gap: 8px; flex-shrink: 0; }
.news-status { font-size: .72rem; font-weight: 700; }
.news-status.pending  { color: #e0a32e; }
.news-status.live, .news-status.reverted { color: var(--text-3); }
.news-revert-btn {
  font-size: .72rem; font-weight: 700; color: var(--red); cursor: pointer;
  background: transparent; border: 1px solid var(--red); border-radius: 7px; padding: 3px 9px;
}
.news-revert-btn:hover { background: color-mix(in srgb, var(--red) 12%, transparent); }
