/*
Theme Name: Joule Child
Theme URI: https://joule.keydesign.xyz/
Description: AI Startup Software Elementor WordPress Theme
Author: Key-Design
Author URI: http://themeforest.net/user/Key-Design
Template: joule
Version: 1.0
License: Envato Standard License
License URI: https://themeforest.net/licenses/standard
Tags: one-column, two-columns, three-columns, four-columns, left-sidebar, right-sidebar, custom-menu, featured-images, flexible-header, post-formats, sticky-post, translation-ready
Text Domain: joule-child
*/

/* ===== SINGLE (светлый вид под архив) ===== */
.lp-single { --bg:#eef2f7; --card:#ffffff; --text:#0d1b2a; --muted:#5f6b7a; --accent:#2f73ff; --line:#e7edf6; --radius:20px; --shadow:0 10px 30px rgba(13,27,42,.09); }
.lp-single { background: var(--bg); }
.lp-single .lp-single__article { max-width: 860px; margin: 0 auto; padding: 56px 20px 80px; color: var(--text); }

/* Hero */
.lp-single__title { font-size: 44px; line-height: 1.15; font-weight: 800; margin: 0 0 18px; }
@media (max-width:640px){ .lp-single__title{ font-size:34px; } }

.lp-single__thumb { margin: 0 0 28px; overflow: hidden; border-radius: var(--radius); box-shadow: var(--shadow); }
.lp-single__thumb img { display:block; width:100%; height:auto; object-fit:cover; }

/* Content */
.lp-single__content { font-size: 18px; line-height: 1.85; }
.lp-single__content p { margin: 0 0 1.1em; }
.lp-single__content h2 { font-size: 32px; margin: 1.4em 0 .5em; }
.lp-single__content h3 { font-size: 26px; margin: 1.2em 0 .5em; }
.lp-single__content a { color: var(--accent); text-decoration: none; }
.lp-single__content a:hover { text-decoration: underline; }
.lp-single__content ul, .lp-single__content ol { margin: 0 0 1.2em 1.4em; }
.lp-single__content blockquote {
  margin: 1.6em 0; padding: 16px 20px; border-left: 3px solid var(--accent);
  background: #f6f9ff; border-radius: 12px;
}
.lp-single__content img, .lp-single__content figure { max-width:100%; height:auto; }
.lp-single__content table { width:100%; border-collapse: collapse; margin: 1.2em 0; }
.lp-single__content table td, .lp-single__content table th { border:1px solid var(--line); padding:10px 12px; }

/* Tags */
.lp-single__tags { margin-top: 26px; }
.lp-single__tags a { display:inline-block; margin:0 8px 8px 0; padding:8px 12px; background:#fff; border:1px solid var(--line); border-radius:999px; font-size:13px; color:var(--text); text-decoration:none; }
.lp-single__tags a:hover { box-shadow: 0 6px 14px rgba(0,0,0,.06); }

/* Prev/Next */
.lp-single__nav { margin-top: 40px; padding-top: 22px; border-top: 1px solid var(--line); display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap; }
.lp-single__nav a { background:#fff; border:1px solid var(--line); border-radius: 12px; padding:10px 14px; color:var(--text); text-decoration:none; }
.lp-single__nav a:hover { box-shadow: 0 8px 18px rgba(0,0,0,.07); transform: translateY(-1px); }

/* Related */
.lp-related { margin-top: 48px; }
.lp-related__title { font-size:24px; margin:0 0 16px; }
.lp-related__grid { display:grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 18px; }
@media (max-width:640px){ .lp-related__grid{ grid-template-columns:1fr; } }

.lp-related__card { display:block; background:#fff; border:1px solid var(--line); border-radius:14px; overflow:hidden; text-decoration:none; color:var(--text); transition: transform .2s ease, box-shadow .2s ease; }
.lp-related__card:hover { transform: translateY(-2px); box-shadow: 0 12px 24px rgba(0,0,0,.08); }
.lp-related__media img { display:block; width:100%; height:160px; object-fit:cover; }
.lp-related__ph { display:flex; align-items:center; justify-content:center; height:160px; background:#f3f6fb; color:#9aa6b2; }
.lp-related__info { padding:12px 14px; }
.lp-related__heading { font-size:18px; margin:0; }

/* Снимаем агрессивные наборы Elementor только на single */
body.single-post .elementor * { font-family: inherit; }
