/* Estilos compartilhados para os cards públicos */
.card { background:var(--panel); border:1px solid var(--line); border-radius:12px; overflow:hidden; }
.thumb { display:block; width:100%; aspect-ratio:16/9; object-fit:cover; background:#111827; }
.card-body { padding:14px; display:grid; gap:10px; }
.card-link { color:var(--text); font-weight:700; text-decoration:none; }
.video-meta { display:flex; gap:8px; flex-wrap:wrap; align-items:center; font-size:13px; color:var(--muted); }
.tag-meta { display:flex; flex-wrap:wrap; gap:8px; margin-top:10px; }
.card-actions { display:flex; gap:8px; margin-top:8px; }
.action { padding:8px 10px; border-radius:8px; font-size:13px; text-decoration:none; border:1px solid var(--line); color:var(--muted); background:transparent; }
.action:hover { color:var(--text); border-color:var(--accent); }
.cards-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }

@media (max-width: 980px) {
  .cards-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width: 680px) {
  .cards-grid { grid-template-columns:1fr; }
}

/* Toast feedback for public card actions */
.public-card-toast { position:fixed; bottom:20px; right:20px; background:rgba(20,184,166,.95); color:#ffffff; padding:16px 20px; border-radius:10px; font-size:14px; box-shadow:0 8px 24px rgba(0,0,0,.35); max-width:320px; z-index:9999; animation:toastSlideIn 0.3s ease-out, toastSlideOut 0.3s ease-out 2.7s forwards; }
@keyframes toastSlideIn { from { transform:translateX(400px); opacity:0; } to { transform:translateX(0); opacity:1; } }
@keyframes toastSlideOut { from { transform:translateX(0); opacity:1; } to { transform:translateX(400px); opacity:0; } }

@media (max-width: 680px) {
  .public-card-toast { bottom:16px; right:16px; left:16px; max-width:none; }
}
