﻿/* Estilos específicos do gerador v2 */
.gt-card {
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 14px;
  background: rgba(255,255,255,0.02);
  box-shadow: 0 14px 40px rgba(0,0,0,0.35);
}
.result-card.generated { animation: resultReveal 260ms ease-out, pulseGlow 900ms ease-out; }
@keyframes resultReveal { from { transform: translateY(10px); opacity: 0.2; filter: blur(2px);} to { transform: translateY(0); opacity:1; filter: blur(0);} }
@keyframes pulseGlow { 0% { box-shadow:0 0 0 rgba(255,255,255,0);} 40% { box-shadow:0 0 18px rgba(255,255,255,0.10);} 100%{ box-shadow:0 0 0 rgba(255,255,255,0);} }

/* Skeleton loader */
.skeleton { position: relative; overflow: hidden; background: rgba(255,255,255,0.06); border-radius: 10px; }
.skeleton::after { content:""; position:absolute; inset:0; transform: translateX(-100%); background: linear-gradient(90deg, transparent, rgba(255,255,255,0.10), transparent); animation: shimmer 1.1s infinite; }
@keyframes shimmer { 100% { transform: translateX(100%);} }
.skeleton-line { height: 14px; margin: 10px 0; }
.skeleton-line.w-40 { width:40%; }
.skeleton-line.w-60 { width:60%; }
.skeleton-line.w-70 { width:70%; }
.skeleton-line.w-90 { width:90%; }

.gt-desc-box { border: 1px solid rgba(255,255,255,0.06); border-radius: 10px; padding: 14px; background: rgba(255,255,255,0.03); min-height: 120px; }
.gt-chip { display:inline-block; padding:6px 12px; margin:4px; border-radius:999px; background: rgba(255,255,255,0.1); color:#fff; font-size:12px; }
.gt-btn-copy { font-size:12px; }
.gt-badge-status { font-size:11px; padding:4px 8px; border-radius:999px; }
.gt-title-row { display:flex; align-items:center; gap:10px; }
.gt-title-text { flex:1; }
.gt-table td, .gt-table th { padding:8px 10px; border:1px solid rgba(255,255,255,0.08); }
.gt-table { font-size:13px; }
#results-header .progress { background: rgba(255,255,255,0.08); }
.gt-stepper { display:flex; gap:6px; flex-wrap:wrap; }
.gt-stepper .step { padding:6px 10px; border-radius:10px; background:rgba(255,255,255,0.05); color:#bbb; font-size:12px; }
.gt-stepper .step.active { background:rgba(0,123,255,0.15); color:#fff; }
#results-skeleton .gt-card { min-height:120px; }

@media (max-width: 768px) {
  .gt-title-row { flex-direction: column; align-items: flex-start; }
  .nav-tabs .nav-link { font-size: 14px; }
}
