/* Tourevo Admin · CSS custom (Tailwind via CDN hace el resto). */

/* ─── Globales ───────────────────────────────────────────── */
html { scroll-behavior: smooth; }
body { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

/* Focus rings refinados (accesibilidad sin perder estética) */
*:focus-visible {
  outline: 2px solid rgb(52 211 153 / 0.55);
  outline-offset: 2px;
  border-radius: 6px;
}
input:focus-visible, textarea:focus-visible, select:focus-visible, button:focus-visible {
  outline: none;
}

/* Scrollbars discretas */
::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: rgba(255,255,255,.06); border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: rgba(255,255,255,.12); }
.scrollbar-hide::-webkit-scrollbar { display: none; }
.scrollbar-hide { scrollbar-width: none; }

/* ─── Dropdown via <details> nativo, sin JS ──────────────── */
.dropdown { position: relative; }
.dropdown > summary { list-style: none; }
.dropdown > summary::-webkit-details-marker { display: none; }
.dropdown[open] > summary .dropdown-chevron { transform: rotate(180deg); }
.dropdown-chevron { transition: transform .15s; }

/* Language switcher (mismo patrón <details>) */
.lang-switch > summary { list-style: none; }
.lang-switch > summary::-webkit-details-marker { display: none; }
.lang-switch[open] > summary .lang-switch-chev { transform: rotate(180deg); }
.lang-switch-chev { transition: transform .15s; }
/* Cerrar dropdown al click fuera no es trivial sin JS; en su lugar,
   cualquier click en los <a> del dropdown navega (recarga) y vuelve
   al estado cerrado naturalmente. */

/* ─── Markdown de los tour bodies ────────────────────────── */
.markdown { line-height: 1.7; color: #cbd5e1; }
.markdown p { margin: .75em 0; }
.markdown h1, .markdown h2, .markdown h3, .markdown h4 {
  color: #f1f5f9;
  font-family: 'Fraunces', Georgia, serif;
  margin: 1.5em 0 .5em;
  font-weight: 500;
  letter-spacing: -0.01em;
}
.markdown h1 { font-size: 1.5rem; }
.markdown h2 {
  font-size: 1.25rem;
  padding-top: .5em;
  border-top: 1px solid rgba(255,255,255,.05);
}
.markdown h2:first-child { border-top: none; padding-top: 0; }
.markdown h3 { font-size: 1.1rem; }
.markdown h4 { font-size: 1rem; }
.markdown strong { color: #f1f5f9; font-weight: 600; }
.markdown em { color: #e2e8f0; font-style: italic; }
.markdown ul, .markdown ol { padding-left: 1.5em; margin: .75em 0; }
.markdown ul { list-style: disc; }
.markdown ol { list-style: decimal; }
.markdown li { margin: .25em 0; }
.markdown li::marker { color: #34d399; }
.markdown hr {
  border: 0;
  border-top: 1px dashed rgba(255,255,255,.1);
  margin: 1.5em 0;
}
.markdown code {
  background: rgba(255,255,255,.05);
  padding: .1em .3em;
  border-radius: 3px;
  font-size: .9em;
}
.markdown blockquote {
  border-left: 3px solid #10b981;
  padding-left: 1em;
  margin: 1em 0;
  color: #94a3b8;
  font-style: italic;
}

/* ─── Print: limpio sin sidebar/controls ─────────────────── */
@media print {
  aside, .subnav, button, form, .no-print, details { display: none !important; }
  body { background: white !important; color: #0f172a !important; }
  main { overflow: visible !important; }
  .markdown { color: #1e293b !important; }
  .markdown h1, .markdown h2, .markdown h3 { color: #0f172a !important; }
  section, header, article {
    background: white !important;
    border: 1px solid #e2e8f0 !important;
    color: #1e293b !important;
    page-break-inside: avoid;
  }
  a { color: #047857 !important; text-decoration: none !important; }
}
