/*
Theme Name: Relatos Parapol
Theme URI: https://relatosparapol.com/
Description: Tema hijo editorial y oscuro para Relatos Parapol, basado en Twenty Twenty-Five.
Author: Parapol
Template: twentytwentyfive
Version: 1.2.0
Text Domain: relatos-parapol
*/

:root {
  --rp-bg: #120d0d;
  --rp-surface: #ffffff;
  --rp-text: #30343a;
  --rp-text-light: #f5f3ef;
  --rp-muted: #6b6b6b;
  --rp-soft: #ececec;
  --rp-link: #1687f8;
  --rp-accent: #c58a4a;
}

html { scroll-behavior: smooth; }
body {
  background: var(--rp-bg);
  color: var(--rp-text-light);
  font-family: Manrope, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

/* Cabecera */
.parapol-site-header {
  background: var(--rp-bg);
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.parapol-topbar {
  max-width: 1200px;
  margin: 0 auto;
  padding: 14px 24px;
}
.parapol-topbar .wp-block-site-title,
.parapol-topbar .wp-block-site-title a,
.parapol-topbar .wp-block-navigation a {
  color: var(--rp-text-light) !important;
  text-decoration: none;
}
.parapol-topbar .wp-block-site-title {
  font-size: 1.05rem;
  font-weight: 700;
  letter-spacing: .01em;
}
.parapol-topbar .wp-block-navigation a:hover,
.parapol-topbar .wp-block-navigation a:focus {
  color: #fff !important;
  text-decoration: underline;
  text-underline-offset: .25em;
}
.parapol-hero {
  min-height: clamp(260px, 23vw, 340px);
  display: flex;
  align-items: end;
  background-image:
    linear-gradient(90deg, rgba(18,13,13,.92) 0%, rgba(18,13,13,.58) 48%, rgba(18,13,13,.26) 100%),
    url('assets/images/hero.jpg');
  background-size: cover;
  background-position: center;
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.parapol-hero-inner {
  width: min(1200px, calc(100% - 48px));
  margin: 0 auto;
  padding: 46px 0 40px;
}
.parapol-hero .wp-block-heading {
  margin: 0;
  color: #fff;
  font-size: clamp(3.25rem, 7vw, 6.25rem);
  line-height: .9;
  letter-spacing: -.055em;
  font-weight: 700;
  text-shadow: 0 2px 18px rgba(0,0,0,.32);
}
.parapol-hero p {
  max-width: 620px;
  margin: 20px 0 0;
  color: rgba(255,255,255,.88);
  font-size: clamp(1rem, 2vw, 1.2rem);
}

/* Inicio */
.parapol-home-shell,
.parapol-page-shell {
  width: min(1200px, calc(100% - 48px));
  margin: 0 auto;
  padding: 52px 0 72px;
}
.parapol-section-title {
  margin-top: 0;
  color: var(--rp-text-light);
  font-size: clamp(1.8rem, 3vw, 2.5rem);
}
.parapol-post-grid .wp-block-post {
  background: var(--rp-surface);
  color: var(--rp-text);
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 12px 32px rgba(0,0,0,.18);
  padding: 24px;
}
.parapol-post-grid .wp-block-post-title,
.parapol-post-grid .wp-block-post-title a {
  color: var(--rp-text) !important;
}
.parapol-post-grid .wp-block-post-title a:hover { color: var(--rp-link) !important; }
.parapol-post-grid .wp-block-post-excerpt,
.parapol-post-grid .wp-block-post-date { color: #555; }
.parapol-feature-panel {
  background: rgba(255,255,255,.055);
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 14px;
  padding: 28px;
}
.parapol-feature-panel h2,
.parapol-feature-panel h3,
.parapol-feature-panel p { color: var(--rp-text-light); }

/* Entradas y páginas */
.parapol-content-columns { align-items: flex-start; }
.parapol-reading-card {
  background: var(--rp-surface);
  color: var(--rp-text);
  border-radius: 12px;
  box-shadow: 0 14px 36px rgba(0,0,0,.22);
  padding: clamp(28px, 5vw, 58px);
}
.parapol-reading-card h1,
.parapol-reading-card h2,
.parapol-reading-card h3,
.parapol-reading-card h4,
.parapol-reading-card h5,
.parapol-reading-card h6,
.parapol-reading-card .wp-block-post-title,
.parapol-reading-card .wp-block-post-title a {
  color: var(--rp-text) !important;
}
.parapol-reading-card .wp-block-post-title {
  font-size: clamp(2rem, 5vw, 3.4rem);
  line-height: 1.08;
  letter-spacing: -.035em;
  margin-bottom: 12px;
}
.parapol-reading-card .wp-block-post-date,
.parapol-reading-card .wp-block-post-terms { color: var(--rp-muted); }
.parapol-reading-card .wp-block-post-content {
  font-size: 18px;
  line-height: 1.75;
}
.parapol-reading-card .wp-block-post-content p { margin-block: 0 1.35em; }
.parapol-reading-card a { color: var(--rp-link); }
.parapol-reading-card blockquote {
  border-left: 4px solid var(--rp-accent);
  margin-left: 0;
  padding-left: 1.25rem;
  color: #4a4a4a;
}
.parapol-post-nav {
  margin-top: 38px;
  padding-top: 24px;
  border-top: 1px solid #ddd;
}
.parapol-post-nav a { font-weight: 600; }

/* Barra lateral */
.parapol-sidebar {
  position: sticky;
  top: 24px;
  background: var(--rp-soft);
  color: var(--rp-text);
  border-radius: 12px;
  padding: 24px;
  box-shadow: 0 12px 30px rgba(0,0,0,.16);
}
.parapol-sidebar h2,
.parapol-sidebar h3,
.parapol-sidebar p,
.parapol-sidebar li { color: var(--rp-text); }
.parapol-sidebar a { color: #126fca; }
.parapol-sidebar .wp-block-site-logo img {
  border-radius: 999px;
  width: 112px;
  height: 112px;
  object-fit: cover;
}
.parapol-sidebar .wp-block-button__link,
.wp-block-button__link {
  background: var(--rp-accent);
  color: #fff !important;
  border-radius: 999px;
  padding: .72em 1.2em;
  font-weight: 700;
  text-decoration: none;
  box-shadow: none;
}
.wp-block-button__link:hover { filter: brightness(1.06); }

/* Pie */
.parapol-footer {
  border-top: 1px solid rgba(255,255,255,.08);
  padding: 34px 24px;
  color: rgba(255,255,255,.7);
  text-align: center;
}
.parapol-footer a { color: var(--rp-text-light); }

/* Archivo */
.parapol-archive-card {
  background: #fff;
  color: var(--rp-text);
  border-radius: 12px;
  padding: 22px;
}
.parapol-archive-card .wp-block-post-title,
.parapol-archive-card .wp-block-post-title a { color: var(--rp-text) !important; }

@media (max-width: 900px) {
  .parapol-content-columns { display: block !important; }
  .parapol-sidebar { position: static; margin-top: 28px; }
  .parapol-topbar { padding-inline: 18px; }
  .parapol-home-shell,
  .parapol-page-shell,
  .parapol-hero-inner { width: min(100% - 32px, 1200px); }
  .parapol-hero { min-height: 270px; background-position: 62% center; }
}

@media (max-width: 600px) {
  .parapol-home-shell,
  .parapol-page-shell { padding-top: 32px; padding-bottom: 48px; }
  .parapol-reading-card { border-radius: 8px; padding: 24px 20px; }
  .parapol-reading-card .wp-block-post-content { font-size: 17px; line-height: 1.72; }
}


/* v1.2: sidebar de exploración y navegación entre capítulos */
.parapol-sidebar .wp-block-search {
  margin: 0;
}
.parapol-sidebar .wp-block-search__inside-wrapper {
  border: 1px solid #cfcfcf;
  border-radius: 10px;
  overflow: hidden;
  background: #fff;
}
.parapol-sidebar .wp-block-search__input {
  min-width: 0;
  border: 0;
  padding: .72rem .8rem;
  font: inherit;
  color: var(--rp-text);
  background: #fff;
}
.parapol-sidebar .wp-block-search__button {
  margin: 0;
  border: 0;
  border-radius: 0;
  padding: .68rem .8rem;
  background: var(--rp-accent);
  color: #fff;
}
.parapol-sidebar-links {
  margin: .2rem 0 0;
  padding-left: 1.15rem;
}
.parapol-sidebar-links li {
  margin: .5rem 0;
}
.parapol-chapter-nav {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 18px;
  margin-top: 40px;
  padding-top: 26px;
  border-top: 1px solid #ddd;
}
.parapol-chapter-nav a {
  display: block;
  height: 100%;
  padding: 15px 16px;
  border: 1px solid #e1e1e1;
  border-radius: 9px;
  color: var(--rp-text) !important;
  text-decoration: none;
  background: #fafafa;
}
.parapol-chapter-nav a:hover,
.parapol-chapter-nav a:focus {
  border-color: #c7c7c7;
  background: #f3f3f3;
}
.parapol-chapter-nav__next {
  text-align: right;
}
.parapol-chapter-nav__label,
.parapol-chapter-nav__title {
  display: block;
}
.parapol-chapter-nav__label {
  margin-bottom: 4px;
  color: var(--rp-link);
  font-weight: 700;
  font-size: .93rem;
}
.parapol-chapter-nav__title {
  color: var(--rp-text);
  font-size: .9rem;
  line-height: 1.35;
}

@media (max-width: 600px) {
  .parapol-chapter-nav {
    grid-template-columns: 1fr;
  }
  .parapol-chapter-nav__next {
    text-align: left;
  }
}
