/*
 * GESHotels PDF Tools Suite — UI común V10-3
 * Objetivo: unificar progresivamente aspecto de formularios, inputs, botones,
 * listas ordenables, progreso y tarjetas de resultado sin cambiar lógica de backend.
 */
:root {
  --pdfsuite-bg: #f4f6f9;
  --pdfsuite-card-bg: #ffffff;
  --pdfsuite-border: #e5e7eb;
  --pdfsuite-border-strong: #d7dde8;
  --pdfsuite-muted: #666666;
  --pdfsuite-text: #111827;
  --pdfsuite-primary: #2563eb;
  --pdfsuite-primary-hover: #1d4ed8;
  --pdfsuite-success: #16a34a;
  --pdfsuite-secondary: #6b7280;
  --pdfsuite-secondary-hover: #4b5563;
  --pdfsuite-radius: 14px;
  --pdfsuite-radius-sm: 10px;
  --pdfsuite-shadow: 0 0 20px rgba(0,0,0,0.05);
}

body.pdfsuite-page {
  font-family: Arial, sans-serif;
  background: var(--pdfsuite-bg);
  color: var(--pdfsuite-text);
}

body.pdfsuite-page .wrap,
body.pdfsuite-page .container {
  margin-left: auto;
  margin-right: auto;
}

body.pdfsuite-page .card,
body.pdfsuite-page .container,
body.pdfsuite-page .pdfsuite-card {
  background: var(--pdfsuite-card-bg);
  border-radius: var(--pdfsuite-radius);
  box-shadow: var(--pdfsuite-shadow);
}

body.pdfsuite-page .box,
body.pdfsuite-page .pdfsuite-panel {
  border: 1px solid var(--pdfsuite-border);
  border-radius: 12px;
  background: #fff;
}

body.pdfsuite-page h1,
body.pdfsuite-page h2 {
  color: var(--pdfsuite-text);
}

body.pdfsuite-page .muted,
body.pdfsuite-page .small,
body.pdfsuite-page .pdfsuite-help {
  color: var(--pdfsuite-muted);
}

body.pdfsuite-page input[type="file"].pdfsuite-file-input {
  display: block;
  width: 100%;
  box-sizing: border-box;
  padding: 13px;
  margin-top: 8px;
  border: 2px dashed var(--pdfsuite-border-strong);
  border-radius: 12px;
  background: #f9fafb;
  cursor: pointer;
}

body.pdfsuite-page input[type="file"].pdfsuite-file-input:hover,
body.pdfsuite-page input[type="file"].pdfsuite-file-input:focus {
  background: #f3f6fb;
  border-color: #93c5fd;
}

.pdfsuite-file-summary {
  margin-top: 6px;
  color: var(--pdfsuite-muted);
  font-size: 13px;
  line-height: 1.35;
}

body.pdfsuite-page input[type="text"],
body.pdfsuite-page select {
  border: 1px solid var(--pdfsuite-border-strong);
  border-radius: var(--pdfsuite-radius-sm);
}

body.pdfsuite-page .btn,
body.pdfsuite-page .boton-volver,
body.pdfsuite-page .pdfsuite-btn,
body.pdfsuite-page button[type="submit"].pdfsuite-btn {
  display: inline-block;
  border: 0;
  border-radius: var(--pdfsuite-radius-sm);
  cursor: pointer;
  text-decoration: none;
  text-align: center;
  font-weight: 700;
  transition: background-color .2s ease, transform .05s ease, box-shadow .2s ease;
}

body.pdfsuite-page .btn:active,
body.pdfsuite-page .boton-volver:active,
body.pdfsuite-page .pdfsuite-btn:active {
  transform: translateY(1px);
}

body.pdfsuite-page .btn-primary,
body.pdfsuite-page .btn-blue,
body.pdfsuite-page .pdfsuite-btn-primary,
body.pdfsuite-page button[type="submit"].pdfsuite-btn-primary {
  background: var(--pdfsuite-primary) !important;
  color: #fff !important;
}

body.pdfsuite-page .btn-primary:hover,
body.pdfsuite-page .btn-blue:hover,
body.pdfsuite-page .pdfsuite-btn-primary:hover,
body.pdfsuite-page button[type="submit"].pdfsuite-btn-primary:hover {
  background: var(--pdfsuite-primary-hover) !important;
}

body.pdfsuite-page .btn-secondary,
body.pdfsuite-page .boton-volver,
body.pdfsuite-page .pdfsuite-btn-secondary {
  background: var(--pdfsuite-secondary) !important;
  color: #fff !important;
}

body.pdfsuite-page .btn-secondary:hover,
body.pdfsuite-page .boton-volver:hover,
body.pdfsuite-page .pdfsuite-btn-secondary:hover {
  background: var(--pdfsuite-secondary-hover) !important;
}

body.pdfsuite-page .status,
body.pdfsuite-page #progreso,
body.pdfsuite-page .pdfsuite-progress {
  border: 1px solid #bfdbfe;
  background: #eff6ff;
  border-radius: 12px;
  padding: 10px;
}

body.pdfsuite-page #barra,
body.pdfsuite-page .pdfsuite-progress-bar {
  background: var(--pdfsuite-primary) !important;
}

body.pdfsuite-page .item,
body.pdfsuite-page .img-row,
body.pdfsuite-page .pdfsuite-sortable-item {
  border: 1px solid var(--pdfsuite-border);
  border-radius: 12px;
  background: #fafafa;
}

body.pdfsuite-page .grab,
body.pdfsuite-page .drag,
body.pdfsuite-page .pdfsuite-sort-handle {
  cursor: grab;
}

body.pdfsuite-page .grab:active,
body.pdfsuite-page .drag:active,
body.pdfsuite-page .pdfsuite-sort-handle:active {
  cursor: grabbing;
}

body.pdfsuite-page .resultCard,
body.pdfsuite-page .pdfsuite-result-card {
  border: 1px solid var(--pdfsuite-border);
  border-radius: var(--pdfsuite-radius);
  background: #fff;
  box-shadow: var(--pdfsuite-shadow);
}

body.pdfsuite-tool-unir-pdf .wrap { max-width: 1200px; }
body.pdfsuite-tool-imagenes-a-pdf .container { max-width: 680px; }

@media (max-width: 700px) {
  body.pdfsuite-page { padding: 14px !important; }
  body.pdfsuite-page .grid { grid-template-columns: 1fr !important; }
  body.pdfsuite-page .btn,
  body.pdfsuite-page .boton-volver,
  body.pdfsuite-page .pdfsuite-btn {
    width: 100%;
    box-sizing: border-box;
  }
  body.pdfsuite-page .item,
  body.pdfsuite-page .img-row {
    align-items: flex-start;
  }
}

/* ===== V10-4: flujo común de resultados y acciones encadenadas ===== */
body.pdfsuite-result-page {
  font-family: Arial, sans-serif;
  background: #f4f6f9;
  margin: 0;
  padding: 30px 20px;
}

.pdfsuite-result-view {
  width: 100%;
}

.pdfsuite-flow-card,
.pdfsuite-inline-result .pdfsuite-result-card {
  max-width: 760px;
  margin: 0 auto;
  padding: 24px;
  text-align: center;
}

.pdfsuite-result-status {
  color: #475569;
  margin: 8px 0 14px;
}

.pdfsuite-result-file {
  color: #334155;
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  padding: 10px 12px;
  margin: 12px 0;
  word-break: break-word;
}

.pdfsuite-result-file span {
  color: #64748b;
}

.pdfsuite-result-actions,
.pdfsuite-next-actions {
  margin-top: 14px;
}

.pdfsuite-next-actions {
  border: 1px solid #e2e8f0;
  background: #fbfdff;
  border-radius: 12px;
  padding: 14px;
}

.pdfsuite-next-title {
  font-weight: 700;
  margin-bottom: 10px;
  color: #1f2937;
}

.pdfsuite-keep-row {
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  margin-bottom: 10px;
  color: #475569;
}

.pdfsuite-keep-row select {
  padding: 10px;
  border-radius: 10px;
  border: 1px solid #cbd5e1;
}

.pdfsuite-inline-result {
  margin-top: 18px;
}

.pdfsuite-inline-result .pdfsuite-flow-card {
  box-shadow: none;
}

@media (max-width: 700px) {
  .pdfsuite-flow-card,
  .pdfsuite-inline-result .pdfsuite-result-card {
    padding: 16px;
  }

  .pdfsuite-keep-row {
    align-items: stretch;
  }

  .pdfsuite-keep-row select {
    width: 100%;
  }
}
