/* ============================================================
   KAIZEN LEVANTE — Estilos de Blog
   Adaptado del sistema visual de referencia (elite-reputacion)
   a la identidad de marca de Kaizen Levante (#F89801)
   ============================================================ */

:root{
  --kz-primary:#282828;
  --kz-primary-dark:#111111;
  --kz-accent:#F89801;
  --kz-accent-hover:#B26D00;
  --kz-accent-light:rgba(248,152,1,0.10);
  --kz-success:#22C55E;
  --kz-blue:#3B82F6;
  --kz-purple:#8B5CF6;
  --kz-warning:#EAB308;
  --kz-warning-dark:#A16207;
  --kz-danger:#EF4444;
  --kz-danger-dark:#DC2626;
  --kz-bg:#FFFFFF;
  --kz-bg-alt:#F8FAFC;
  --kz-text:#1E293B;
  --kz-text-secondary:#64748B;
  --kz-text-muted:#94A3B8;
  --kz-border:#E2E8F0;
  --kz-radius-sm:8px;
  --kz-radius-md:16px;
  --kz-radius-lg:24px;
  --kz-radius-full:9999px;
}

/* Contenedor general del post (tema Hello Elementor no aporta layout propio) */
body.single-post .site-main{
  max-width:860px;
  margin:0 auto;
  padding:48px 24px 80px;
}
body.single-post .page-header .entry-title{
  font-size:clamp(28px,4vw,44px);
  font-weight:800;
  line-height:1.2;
  color:var(--kz-text);
  margin-bottom:16px;
}

/* Meta bar: categoría, fecha, tiempo de lectura */
.blog-meta-bar{
  display:flex;flex-wrap:wrap;gap:18px;align-items:center;
  color:var(--kz-text-secondary);font-size:14px;margin-bottom:28px;
}
.blog-meta-bar .blog-category-badge{
  background:var(--kz-accent-light);color:var(--kz-accent-hover);
  padding:6px 14px;border-radius:var(--kz-radius-full);
  font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.3px;
}

/* Author box (E-E-A-T) */
.blog-author-box{
  display:flex;align-items:center;gap:20px;
  background:var(--kz-bg-alt);border-left:4px solid var(--kz-accent);
  border-radius:var(--kz-radius-lg);padding:20px 24px;margin-bottom:36px;
}
.blog-author-box__icon{
  width:56px;height:56px;border-radius:50%;flex-shrink:0;
  background:var(--kz-accent);color:#fff;display:flex;align-items:center;justify-content:center;
  font-weight:800;font-size:20px;
}
.blog-author-box h4{font-size:16px;font-weight:700;margin:0 0 4px;color:var(--kz-text);}
.blog-author-box p{font-size:14px;color:var(--kz-text-secondary);margin:0;}

/* TOC */
.blog-toc{background:var(--kz-bg-alt);border-radius:var(--kz-radius-lg);padding:26px 28px;margin-bottom:36px;}
.blog-toc h4{font-size:15px;font-weight:700;margin:0 0 14px;color:var(--kz-text);}
.blog-toc ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:6px 24px;}
.blog-toc li{margin:0;}
.blog-toc a{display:flex;gap:8px;align-items:flex-start;color:var(--kz-text-secondary);text-decoration:none;font-size:14px;padding:4px 0;transition:color .2s,padding-left .2s;}
.blog-toc a:hover{color:var(--kz-accent);padding-left:4px;}
.blog-toc .toc-num{color:var(--kz-accent);font-weight:700;font-size:13px;flex-shrink:0;}

/* Stats bar */
.blog-stats-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;padding:24px 0;margin:0 0 36px;border-top:1px solid var(--kz-border);border-bottom:1px solid var(--kz-border);}
.blog-stats-bar .stat-item{text-align:center;padding:14px 8px;background:var(--kz-bg-alt);border-radius:var(--kz-radius-lg);}
.blog-stats-bar .stat-item .stat-number{font-size:28px;font-weight:800;color:var(--kz-accent);}
.blog-stats-bar .stat-item .stat-label{font-size:11.5px;color:var(--kz-text-secondary);margin-top:4px;line-height:1.3;}
@media(max-width:640px){.blog-stats-bar{grid-template-columns:repeat(2,1fr);}}

/* Cuerpo del artículo */
.blog-post__content{font-size:17px;line-height:1.85;color:var(--kz-text);}
.blog-post__content h2{font-size:26px;font-weight:800;margin:44px 0 18px;color:var(--kz-text);}
.blog-post__content h2 .section-num{color:var(--kz-accent);font-weight:800;margin-right:6px;}
.blog-post__content h3{font-size:20px;font-weight:700;margin:32px 0 14px;color:var(--kz-text);}
.blog-post__content p{margin-bottom:18px;}
.blog-post__content ul,.blog-post__content ol{margin:18px 0 18px 24px;}
.blog-post__content li{margin-bottom:8px;}
.blog-post__content a{color:var(--kz-accent);text-decoration:underline;}
.blog-post__content a:hover{text-decoration:none;}
.blog-post__content strong{color:var(--kz-text);}

/* Cajas informativas */
.blog-post__content .highlight-box,
.blog-post__content .info-box,
.blog-post__content .warning-box,
.blog-post__content .success-box,
.blog-post__content .danger-box,
.blog-post__content .purple-box,
.blog-post__content .summary-box{
  border-radius:var(--kz-radius-lg);padding:22px 26px;margin:30px 0;border-left:4px solid;
}
.blog-post__content .highlight-box{background:linear-gradient(135deg,var(--kz-accent-light) 0%,rgba(248,152,1,.04) 100%);border-color:var(--kz-accent);}
.blog-post__content .highlight-box h4{color:var(--kz-accent-hover);margin-top:0;}
.blog-post__content .info-box{background:linear-gradient(135deg,rgba(59,130,246,.10) 0%,rgba(59,130,246,.04) 100%);border-color:var(--kz-blue);}
.blog-post__content .info-box h4{color:var(--kz-blue);margin-top:0;}
.blog-post__content .warning-box{background:linear-gradient(135deg,rgba(234,179,8,.12) 0%,rgba(234,179,8,.04) 100%);border-color:var(--kz-warning);}
.blog-post__content .warning-box h4{color:var(--kz-warning-dark);margin-top:0;}
.blog-post__content .success-box{background:linear-gradient(135deg,rgba(34,197,94,.10) 0%,rgba(34,197,94,.04) 100%);border-color:var(--kz-success);}
.blog-post__content .success-box h4{color:#16A34A;margin-top:0;}
.blog-post__content .danger-box{background:linear-gradient(135deg,rgba(239,68,68,.10) 0%,rgba(239,68,68,.04) 100%);border-color:var(--kz-danger);}
.blog-post__content .danger-box h4{color:var(--kz-danger-dark);margin-top:0;}
.blog-post__content .purple-box{background:linear-gradient(135deg,rgba(139,92,246,.10) 0%,rgba(139,92,246,.04) 100%);border-color:var(--kz-purple);}
.blog-post__content .purple-box h4{color:var(--kz-purple);margin-top:0;}
.blog-post__content .summary-box{background:var(--kz-bg-alt);border-color:var(--kz-text-secondary);}
.blog-post__content .summary-box h4{color:var(--kz-text);margin-top:0;}
.blog-post__content .highlight-box h4,.blog-post__content .info-box h4,.blog-post__content .warning-box h4,
.blog-post__content .success-box h4,.blog-post__content .danger-box h4,.blog-post__content .purple-box h4,
.blog-post__content .summary-box h4{display:flex;align-items:center;gap:8px;font-size:16px;}

/* Stat grid (dentro del cuerpo) */
.blog-post__content .stat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin:30px 0;}
.blog-post__content .stat-grid--4{grid-template-columns:repeat(4,1fr);}
.blog-post__content .stat-card{text-align:center;padding:20px 14px;border-radius:var(--kz-radius-lg);background:var(--kz-bg-alt);border:1px solid var(--kz-border);}
.blog-post__content .stat-card .stat-number{font-size:32px;font-weight:800;color:var(--kz-accent);line-height:1.1;margin-bottom:6px;}
.blog-post__content .stat-card .stat-label{font-size:12.5px;color:var(--kz-text-secondary);line-height:1.4;}
@media(max-width:640px){.blog-post__content .stat-grid,.blog-post__content .stat-grid--4{grid-template-columns:repeat(2,1fr);}}

/* Content cards */
.blog-post__content .content-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin:30px 0;}
.blog-post__content .content-card{background:var(--kz-bg-alt);border:1px solid var(--kz-border);border-radius:var(--kz-radius-lg);padding:22px;}
.blog-post__content .content-card .card-icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:22px;margin-bottom:14px;}
.blog-post__content .content-card .card-icon--accent{background:var(--kz-accent-light);}
.blog-post__content .content-card .card-icon--blue{background:rgba(59,130,246,.12);}
.blog-post__content .content-card .card-icon--green{background:rgba(34,197,94,.12);}
.blog-post__content .content-card .card-icon--purple{background:rgba(139,92,246,.12);}
.blog-post__content .content-card .card-icon--amber{background:rgba(234,179,8,.14);}
.blog-post__content .content-card h4{font-size:16.5px;font-weight:700;margin:0 0 6px;color:var(--kz-text);}
.blog-post__content .content-card p{font-size:14px;color:var(--kz-text-secondary);margin:0;line-height:1.6;}
@media(max-width:640px){.blog-post__content .content-grid{grid-template-columns:1fr;}}

/* Tablas */
.blog-post__content .styled-table{width:100%;border-collapse:collapse;margin:30px 0;font-size:14px;border-radius:var(--kz-radius-lg);overflow:hidden;box-shadow:0 2px 12px rgba(0,0,0,.06);}
.blog-post__content .styled-table thead tr{background:var(--kz-primary);color:#fff;}
.blog-post__content .styled-table th{padding:13px 16px;text-align:left;font-weight:600;font-size:12.5px;text-transform:uppercase;letter-spacing:.4px;}
.blog-post__content .styled-table td{padding:13px 16px;border-bottom:1px solid var(--kz-border);}
.blog-post__content .styled-table tbody tr:nth-child(even){background:var(--kz-bg-alt);}
.blog-post__content .styled-table tbody tr:hover{background:var(--kz-accent-light);}
.blog-post__content .styled-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;}

/* Pasos numerados */
.blog-post__content .step-list{list-style:none;padding:0;margin:30px 0;counter-reset:step-counter;}
.blog-post__content .step-list li{counter-increment:step-counter;display:flex;gap:18px;align-items:flex-start;padding:18px;margin-bottom:14px;background:var(--kz-bg-alt);border-radius:var(--kz-radius-lg);border:1px solid var(--kz-border);}
.blog-post__content .step-list li::before{content:counter(step-counter);display:flex;align-items:center;justify-content:center;min-width:38px;height:38px;border-radius:50%;background:var(--kz-accent);color:#fff;font-weight:800;font-size:15px;flex-shrink:0;}

/* Checklist */
.blog-post__content .checklist{list-style:none;margin:24px 0;padding:0;}
.blog-post__content .checklist li{position:relative;padding-left:32px;margin-bottom:12px;}
.blog-post__content .checklist li::before{content:"\2713";position:absolute;left:0;top:0;width:22px;height:22px;border-radius:6px;background:var(--kz-success);color:#fff;font-size:13px;font-weight:800;display:flex;align-items:center;justify-content:center;}

/* Quote card */
.blog-post__content .quote-card{background:var(--kz-bg-alt);border-left:4px solid var(--kz-accent);border-radius:0 var(--kz-radius-lg) var(--kz-radius-lg) 0;padding:26px 30px;margin:30px 0;position:relative;}
.blog-post__content .quote-card p{font-style:italic;font-size:17px;line-height:1.7;margin-bottom:8px;}
.blog-post__content .quote-card .quote-author{font-style:normal;font-size:13.5px;font-weight:600;color:var(--kz-text-secondary);}

/* FAQ acordeón */
.blog-post__content .faq-list{margin:30px 0;}
.blog-post__content .faq-item{border-bottom:1px solid var(--kz-border);}
.blog-post__content .faq-item:last-child{border-bottom:none;}
.blog-post__content .faq-question{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:18px 0;cursor:pointer;font-weight:700;font-size:16.5px;color:var(--kz-text);}
.blog-post__content .faq-question:hover{color:var(--kz-accent);}
.blog-post__content .faq-icon{transition:transform .3s;flex-shrink:0;color:var(--kz-accent);}
.blog-post__content .faq-item.active .faq-icon{transform:rotate(180deg);}
.blog-post__content .faq-answer{max-height:0;overflow:hidden;transition:max-height .3s ease;}
.blog-post__content .faq-item.active .faq-answer{max-height:600px;}
.blog-post__content .faq-answer p{padding-bottom:18px;color:var(--kz-text-secondary);margin:0;}

/* CTA */
.blog-cta{background:linear-gradient(135deg,var(--kz-primary) 0%,var(--kz-primary-dark) 100%);border-radius:var(--kz-radius-lg);padding:36px;text-align:center;margin:44px 0;}
.blog-cta h3{color:#fff;font-size:22px;margin:0 0 10px;font-weight:800;}
.blog-cta p{color:#CBD5E1;margin:0 0 20px;}
.blog-cta .btn-cta{display:inline-block;background:var(--kz-accent);color:#fff !important;font-size:15.5px;font-weight:700;padding:14px 32px;border-radius:var(--kz-radius-full);text-decoration:none !important;transition:background .2s;}
.blog-cta .btn-cta:hover{background:var(--kz-accent-hover);}

/* Related posts (Rank Math block) ajustado a la paleta */
.wp-block-rank-math-related-posts{--rm-related-accent:var(--kz-accent) !important;margin-top:20px;}
