/* ═══════════════════════════════════════════════
   Tools — Page-specific styles
   ═══════════════════════════════════════════════ */

.tool-page {
  max-width: 720px;
  margin: 0 auto;
}
.tool-page h1 {
  margin-bottom: 4px;
}
.tool-page > .description {
  color: var(--color-text-tertiary);
  font-size: 0.9rem;
  margin-bottom: 28px;
}

/* ── Two-column textarea pair ─────────────────── */
.textarea-pair {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
@media (max-width: 600px) {
  .textarea-pair {
    grid-template-columns: 1fr;
  }
}

/* ── Spinner ───────────────────────────────────── */
.spinner {
  display: inline-block;
  width: 20px;
  height: 20px;
  border: 2px solid var(--color-border);
  border-top-color: var(--color-primary);
  border-radius: 50%;
  animation: spin 0.6s linear infinite;
}
@keyframes spin {
  to { transform: rotate(360deg); }
}

/* ── Device frames (Creative Preview) ──────────── */
.device-frame {
  background: var(--color-bg-alt);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  overflow: hidden;
  margin-top: 8px;
}
.device-mobile  { max-width: 375px; min-height: 567px; }
.device-tablet  { max-width: 768px; min-height: 924px; }
.device-desktop { max-width: 100%; min-height: 700px; }
.preview-iframe {
  width: 100%;
  height: 100%;
  border: none;
  min-height: inherit;
}

/* ── VAST output ───────────────────────────────── */
.vast-output {
  font-family: 'SF Mono', 'Fira Code', monospace;
  font-size: 0.8rem;
  line-height: 1.7;
}
