/*
Theme Name: Cronica Istorica Gamificata
Theme URI: https://example.com
Author: Just
Description: Temă WordPress modernă, responsive, pentru site de istorie și cultură generală. Include zonă de administrare completă prin Personalizare (culori, fonturi), coloană dreapta widgetizată, secțiuni de categorii pe pagina principală (articole recente sau aleatorii), zone dedicate de reclamă (widgetizate, poziționate de administrator) și funcții de gamificare pentru retenția cititorilor (sigilii, streak, quiz, ziua din istorie).
Version: 1.25.2
Requires at least: 6.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: cronica-istorica
*/

/* =========================================================
   0. RESET & BASE
   ========================================================= */
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: 0.001ms !important; animation-iteration-count: 1 !important; transition-duration: 0.001ms !important; }
}

:root{
  /* Culori implicite (pot fi suprascrise din Personalizare > Culori) */
  --bg: #F2ECDD;
  --bg-alt: #E9E1CC;
  --paper: #FBF8F0;
  --ink: #241F1A;
  --ink-soft: #4A423A;
  --accent: #7A2E2E;      /* roșu sigiliu de ceară */
  --accent-2: #A8842C;    /* auriu vechi */
  --header-bg: #1F2A3B;   /* cerneală albastru-închis */
  --header-ink: #F2ECDD;
  --line: rgba(36,31,26,0.14);

  --font-headings: 'Fraunces', Georgia, 'Times New Roman', serif;
  --font-body: 'Newsreader', Georgia, serif;
  --font-ui: 'IBM Plex Sans', -apple-system, Segoe UI, Arial, sans-serif;

  --radius: 6px;
  --shadow-card: 0 1px 2px rgba(36,31,26,0.06), 0 6px 18px rgba(36,31,26,0.08);
  --max-width: 1200px;
}

/* --- Mod întunecat --- */
html[data-tema="intunecat"]{
  --bg: #1a1712;
  --bg-alt: #221d17;
  --paper: #241f19;
  --ink: #ece4d6;
  --ink-soft: #b8ac97;
  --accent: #c2564f;
  --accent-2: #d1a94a;
  --header-bg: #100d0a;
  --header-ink: #ece4d6;
  --line: rgba(236,228,214,0.14);
  --shadow-card: 0 1px 2px rgba(0,0,0,0.3), 0 6px 18px rgba(0,0,0,0.35);
}
html[data-tema="intunecat"] img:not(.custom-logo){ filter: brightness(.88) contrast(1.02); }

html, body { margin:0; padding:0; }
body{
  background: var(--bg);
  color: var(--ink);
  font-family: var(--font-body);
  font-size: 18px;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
}
img{ max-width:100%; height:auto; display:block; }
a{ color: var(--accent); text-decoration: none; }
a:hover{ text-decoration: underline; }
:focus-visible{ outline: 3px solid var(--accent-2); outline-offset: 2px; }

h1,h2,h3,h4{
  font-family: var(--font-headings);
  color: var(--ink);
  line-height: 1.15;
  margin: 0 0 0.5em;
  font-weight: 600;
}
h1{ font-size: clamp(2rem, 4vw, 3rem); }
h2{ font-size: clamp(1.4rem, 2.6vw, 2rem); }
h3{ font-size: 1.25rem; }
p{ margin: 0 0 1.2em; }

.container{
  max-width: var(--max-width);
  margin: 0 auto;
  padding: 0 1.35rem;
}
.screen-reader-text{
  position:absolute !important; width:1px;height:1px;overflow:hidden;
  clip:rect(1px,1px,1px,1px); white-space:nowrap;
}
.skip-link{
  position:absolute; left:-999px; top:0; background:var(--header-bg); color:var(--header-ink);
  padding:10px 16px; z-index:10000; border-radius:0 0 var(--radius) 0;
}
.skip-link:focus{ left:0; }

/* =========================================================
   1. ANTET / HEADER
   ========================================================= */
.site-header{
  background: var(--header-bg);
  color: var(--header-ink);
  position: sticky;
  top: 0;
  z-index: 500;
  border-bottom: 3px double var(--accent-2);
}
.site-header .container{ padding-top: 14px; padding-bottom: 14px; }
.site-header-top{
  display:flex; align-items:center; justify-content:space-between; gap: 20px;
}
.site-branding{ display:flex; align-items:center; gap:12px; min-width:0; }
.site-branding img.custom-logo{ max-height:48px; width:auto; flex-shrink:0; }
.site-branding-text{ min-width:0; flex:1 1 auto; }
.site-title{
  font-family: var(--font-headings); font-size:1.5rem; margin:0; letter-spacing:0.3px;
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:100%;
}
.site-title a{ color: var(--header-ink); text-decoration:none; }
.site-description{
  font-family: var(--font-ui); font-size:0.75rem; color: rgba(242,236,221,0.65);
  margin:2px 0 0; text-transform:uppercase; letter-spacing:1.5px;
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:100%;
}
.site-link-extra{ margin:6px 0 0; line-height:1; }
.site-link-extra a{
  display:inline-block; font-family: var(--font-headings); font-style:italic; font-weight:600;
  font-size:0.78rem; color: var(--header-bg); background: var(--accent-2);
  padding:5px 14px; border-radius:999px; text-decoration:none; white-space:nowrap;
  letter-spacing:0.2px; border:none;
  transition: background .15s ease, color .15s ease, transform .15s ease, box-shadow .15s ease;
}
.site-link-extra a:hover{
  background: var(--accent); color:#fff; text-decoration:none;
  transform: translateY(-1px); box-shadow: 0 4px 10px rgba(0,0,0,0.25);
}

.menu-toggle{
  display:none; background:transparent; border:2px solid rgba(242,236,221,0.4); color:var(--header-ink);
  font-family: var(--font-ui); font-size:0.9rem; padding:8px 12px; border-radius: var(--radius); cursor:pointer;
  flex-shrink:0;
}

/* --- Rândul de utilitare: Jurnalul meu, streak, temă, meniu --- */
.site-header-utilitare{ display:flex; align-items:center; gap:10px; flex-shrink:0; }
.site-jurnal-link{
  font-family: var(--font-ui); font-size:0.85rem; font-weight:600; color: var(--header-ink);
  text-decoration:none; white-space:nowrap; padding:6px 10px; border-radius:999px;
  border:1px solid rgba(242,236,221,0.25); transition: background .15s ease;
}
.site-jurnal-link:hover{ background: rgba(242,236,221,0.12); text-decoration:none; }

/* --- Rândul de meniu, pe toată lățimea, robust la orice număr de categorii --- */
.site-header-nav-row{ border-top: 1px solid rgba(242,236,221,0.14); }
.primary-navigation ul{
  list-style:none; display:flex; gap: 4px; margin:0; padding:0;
  flex-wrap:nowrap; overflow-x:auto; scrollbar-width:thin;
}
.primary-navigation ul::-webkit-scrollbar{ height:4px; }
.primary-navigation ul::-webkit-scrollbar-thumb{ background: rgba(242,236,221,0.25); border-radius:4px; }
.primary-navigation li{ position:relative; flex-shrink:0; }
.primary-navigation a{
  font-family: var(--font-ui); color: var(--header-ink); text-decoration:none; font-size:0.9rem;
  padding: 10px 12px; border-radius: var(--radius); display:inline-block; transition: background .15s ease;
  white-space:nowrap;
}
.primary-navigation a:hover, .primary-navigation a:focus{ background: rgba(242,236,221,0.12); text-decoration:none; }
.primary-navigation .current-menu-item > a{ color: var(--accent-2); }

/* Săgeată pentru itemii care au submeniu */
.primary-navigation .menu-item-has-children > a::after{
  content: '▾'; font-size:0.7em; margin-left:6px; opacity:.7;
}

/* Submeniuri (dropdown) - ascunse implicit */
.primary-navigation .sub-menu{
  display:none;
  list-style:none;
  margin:0; padding:6px;
  flex-direction:column;
}

@media (min-width: 781px){
  /* Desktop: dropdown plutitor, apare la hover/focus */
  .primary-navigation .sub-menu{
    position:absolute; top:100%; left:0; min-width:230px; z-index:600;
    background: var(--header-bg); border:1px solid rgba(242,236,221,0.18);
    border-radius: var(--radius); box-shadow: 0 10px 26px rgba(0,0,0,0.28);
  }
  .primary-navigation .sub-menu .sub-menu{ top:0; left:100%; }
  .primary-navigation li:hover > .sub-menu,
  .primary-navigation li:focus-within > .sub-menu{ display:flex; }
  .primary-navigation .sub-menu a{ display:block; width:100%; border-radius:4px; white-space:nowrap; }
}

@media (max-width: 780px){
  .menu-toggle{ display:inline-block; font-size:0.78rem; padding:7px 10px; }

  .site-header-top{ flex-wrap:wrap; row-gap:8px; }
  .site-branding{ flex-basis:100%; width:100%; }
  .site-title{ font-size:1.25rem; }

  .site-header-utilitare{
    flex-basis:100%; width:100%; justify-content:space-between; gap:6px;
  }
  .site-jurnal-link{ font-size:0.76rem; padding:6px 8px; flex-shrink:1; overflow:hidden; text-overflow:ellipsis; }
  .cronica-streak-badge{ padding:6px 8px; font-size:0.78rem; }
  .buton-tema{ width:32px; height:32px; font-size:0.85rem; flex-shrink:0; }

  .primary-navigation{
    display:none; position:absolute; left:0; right:0; top:100%;
    background: var(--header-bg); border-bottom: 3px double var(--accent-2);
    max-height: 80vh; overflow-y:auto;
  }
  .primary-navigation.is-open{ display:block; }
  .primary-navigation ul{ flex-direction:column; padding: 10px 20px 16px; }

  /* Mobil: submeniu deschis/închis cu buton, indentat sub părinte */
  .primary-navigation .menu-item-has-children{ position:static; display:flex; flex-wrap:wrap; align-items:center; }
  .primary-navigation .menu-item-has-children > a{ flex:1; }
  .primary-navigation .sub-menu{
    flex-basis:100%; padding-left:16px; border-left:2px solid rgba(242,236,221,0.2); margin:4px 0 4px 10px;
  }
  .primary-navigation .sub-menu.is-open{ display:flex; }
  .primary-navigation .submenu-toggle{
    background:transparent; border:none; color:var(--header-ink); font-size:1rem; padding:6px 10px;
    cursor:pointer; line-height:1; flex:none;
  }
  .primary-navigation .submenu-toggle[aria-expanded="true"]{ transform:rotate(180deg); }
}

/* =========================================================
   2. HERO
   ========================================================= */
.hero{
  background: linear-gradient(180deg, var(--header-bg) 0%, var(--header-bg) 55%, var(--bg) 55%);
  color: var(--header-ink);
  padding: 48px 0 70px;
}
.hero-inner{ max-width: 760px; }
.hero-eyebrow{
  font-family: var(--font-ui); text-transform: uppercase; letter-spacing: 2px; font-size:0.75rem;
  color: var(--accent-2); display:block; margin-bottom: 10px;
}
.hero h1{ color: var(--header-ink); margin-bottom:14px; }
.hero p{ color: rgba(242,236,221,0.78); font-size:1.1rem; max-width:56ch; }
.hero-search{ margin-top:22px; display:flex; max-width:420px; }
.hero-search input[type="search"]{
  flex:1; border:none; padding:12px 14px; font-family:var(--font-ui); border-radius: var(--radius) 0 0 var(--radius);
}
.hero-search button{
  background: var(--accent); color:#fff; border:none; padding:0 18px; font-family:var(--font-ui); font-weight:600;
  border-radius: 0 var(--radius) var(--radius) 0; cursor:pointer;
}
.hero-search button:hover{ background: var(--accent-2); }

/* Divizor "hârtie ruptă" */
.torn-divider{ display:block; width:100%; height:22px; margin-top:-1px; }
.torn-divider path{ fill: var(--bg); }

/* =========================================================
   2b. BANNER "ARTICOL RECOMANDAT / FIXAT"
   ========================================================= */
.featured-banner{ margin: 0 0 34px; }
.featured-banner-link{
  display:grid; grid-template-columns: 1fr; overflow:hidden; border-radius: var(--radius);
  background: var(--paper); box-shadow: var(--shadow-card); color: inherit; text-decoration:none;
}
.featured-banner-link:hover{ text-decoration:none; box-shadow: 0 12px 30px rgba(36,31,26,0.18); }
.featured-banner-media{
  aspect-ratio: 21/9; background: var(--header-bg); overflow:hidden;
  display:flex; align-items:center; justify-content:center;
}
.featured-banner-media img{ width:100%; height:100%; object-fit:cover; }
.featured-banner-media.no-image .wax-seal{ width:64px; height:64px; font-size:1.6rem; }
.featured-banner-body{ padding: 22px 26px 26px; }
.featured-banner-tag{
  display:inline-block; font-family: var(--font-ui); font-size:0.72rem; font-weight:700;
  text-transform:uppercase; letter-spacing:1.5px; color:#fff; background: var(--accent);
  padding:5px 12px; border-radius:20px; margin-bottom:12px;
}
.featured-banner-body h2{ margin-bottom:10px; }
.featured-banner-body p{ color: var(--ink-soft); margin-bottom:10px; }
.featured-banner-cta{ font-family: var(--font-ui); font-size:0.85rem; font-weight:600; color: var(--accent); }
@media (min-width: 720px){
  .featured-banner-link{ grid-template-columns: 1.1fr 1fr; align-items:stretch; }
  .featured-banner-media{ aspect-ratio:auto; }
  .featured-banner-body{ padding: 34px 38px; display:flex; flex-direction:column; justify-content:center; }
}

/* Imagine reprezentativă de categorie (înlocuiește sigiliul cu prima literă) */
.categorie-iconita{
  width:44px; height:44px; border-radius:50%; overflow:hidden; flex:none;
  box-shadow: inset 0 0 0 2px rgba(244,233,216,0.4), 0 2px 5px rgba(0,0,0,0.2);
}
.categorie-iconita img{ width:100%; height:100%; object-fit:cover; display:block; }

/* =========================================================
   3. LAYOUT PRINCIPAL (conținut + coloană dreapta)
   ========================================================= */
.page-wrap{ padding: 40px 0 60px; }
.layout{
  display:grid;
  grid-template-columns: 1fr;
  gap: 40px;
}
@media (min-width: 900px){
  .layout{ grid-template-columns: minmax(0,1fr) 320px; align-items:start; }
}
main.content-area{ min-width:0; }
.sidebar-right{ min-width:0; }

/* =========================================================
   4. SIGILIU (element semnătură) + SECȚIUNI CATEGORII
   ========================================================= */
.wax-seal{
  width:44px; height:44px; border-radius:50%;
  background: radial-gradient(circle at 35% 30%, var(--accent) 0%, #5a1f1f 100%);
  color:#f4e9d8; display:flex; align-items:center; justify-content:center;
  font-family: var(--font-headings); font-size:1.1rem; flex:none;
  box-shadow: inset 0 0 0 2px rgba(244,233,216,0.25), 0 2px 5px rgba(0,0,0,0.25);
}
.chapter-section{ margin-bottom: 52px; }
.chapter-head{
  display:flex; align-items:center; gap:14px; margin-bottom:20px;
  border-bottom:1px solid var(--line); padding-bottom:14px;
}
.chapter-head h2{ margin:0; flex:1; }
.chapter-head .chapter-more{
  font-family: var(--font-ui); font-size:0.85rem; font-weight:600; white-space:nowrap;
}
.posts-grid{
  display:grid; grid-template-columns: repeat(auto-fit, minmax(230px,1fr)); gap:22px;
}
.post-card{
  background: var(--paper); border-radius: var(--radius); overflow:hidden;
  box-shadow: var(--shadow-card); transition: transform .18s ease, box-shadow .18s ease;
  display:flex; flex-direction:column;
}
.post-card:hover{ transform: translateY(-4px); box-shadow: 0 10px 26px rgba(36,31,26,0.16); }
.post-card .thumb{ aspect-ratio: 16/10; overflow:hidden; background: var(--bg-alt); }
.post-card .thumb img{ width:100%; height:100%; object-fit:cover; }
.post-card .thumb.no-image{ display:flex; align-items:center; justify-content:center; }
.post-card .thumb.no-image .wax-seal{ opacity:.55; }
.post-card .card-body{ padding:16px 18px 18px; flex:1; display:flex; flex-direction:column; }
.post-card .card-meta{
  font-family: var(--font-ui); font-size:0.72rem; text-transform:uppercase; letter-spacing:1px;
  color: var(--accent-2); margin-bottom:8px;
}
.post-card h3{ margin-bottom:8px; font-size:1.1rem; }
.post-card h3 a{ color: var(--ink); }
.post-card h3 a:hover{ color: var(--accent); text-decoration:none; }
.post-card .excerpt{ font-size:0.92rem; color: var(--ink-soft); margin-bottom:0; flex:1; }
.post-card .read-more{ font-family:var(--font-ui); font-size:0.8rem; font-weight:600; margin-top:10px; display:inline-block; }

/* --- Articole similare: variantă compactă, 3 pe rând chiar și pe mobil --- */
.related-posts .posts-grid{
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
}
.related-posts .post-card,
.related-posts .post-card a{ text-decoration:none; }
.related-posts .post-card{ border-radius: 8px; }
.related-posts .post-card:hover{ transform:none; }
.related-posts .post-card .thumb{ aspect-ratio: 1/1; }
.related-posts .post-card .thumb.no-image .wax-seal{ font-size:1.3rem; }
.related-posts .post-card .card-body{ padding: 8px 6px 10px; }
.related-posts .post-card .card-meta,
.related-posts .post-card .excerpt,
.related-posts .post-card .read-more{ display:none; }
.related-posts .post-card h3{
  margin:0; font-size:0.74rem; line-height:1.25; font-weight:600;
  display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden;
}
@media (min-width: 600px){
  .related-posts .post-card .card-body{ padding:10px 12px 12px; }
  .related-posts .post-card h3{ font-size:0.86rem; -webkit-line-clamp:2; }
}

/* =========================================================
   5. WIDGETURI / COLOANA DREAPTA
   ========================================================= */
.widget{
  background: var(--paper); border-radius: var(--radius); padding:20px 22px; margin-bottom:24px;
  box-shadow: var(--shadow-card);
}
.widget-title{
  font-family: var(--font-headings); font-size:1.05rem; margin:0 0 14px; padding-bottom:10px;
  border-bottom: 2px solid var(--accent-2);
}
.widget ul{ list-style:none; margin:0; padding:0; }
.widget li{ padding:7px 0; border-bottom:1px dashed var(--line); font-size:0.92rem; }
.widget li:last-child{ border-bottom:none; }
.widget select, .widget input[type="text"], .widget input[type="search"]{
  width:100%; padding:8px 10px; font-family:var(--font-ui); border:1px solid var(--line); border-radius:4px;
}

/* =========================================================
   6. ZONE DE RECLAMĂ (widgetizate, poziționate de admin)
   ========================================================= */
.ad-zone{ margin: 30px 0; }
.ad-zone:empty{ display:none; }
.ad-zone-label{
  font-family: var(--font-ui); font-size:0.65rem; text-transform:uppercase; letter-spacing:1.5px;
  color: var(--ink-soft); opacity:.55; text-align:center; margin-bottom:6px;
}
.ad-zone .widget{ box-shadow:none; background: transparent; padding:0; text-align:center; }
.ad-zone .textwidget, .ad-zone .widget_text, .ad-zone .widget_custom_html{ overflow-x:auto; }

/* =========================================================
   7. ARTICOL SINGUR
   ========================================================= */
.entry-header{ margin-bottom:24px; }
.entry-meta{
  font-family: var(--font-ui); font-size:0.8rem; text-transform:uppercase; letter-spacing:1px;
  color: var(--accent); margin-bottom:12px;
}
.entry-meta span{ margin-right:14px; }
.entry-thumb{ margin: 0 0 28px; border-radius: var(--radius); overflow:hidden; box-shadow: var(--shadow-card); }

/* Cuprins automat (TOC) - generat pentru articolele lungi, cu 3+ titluri */
.toc{
  background: var(--paper); border:1px solid var(--line); border-radius: var(--radius);
  padding: 6px 20px; margin: 0 0 28px; box-shadow: var(--shadow-card);
}
.toc summary{
  font-family: var(--font-headings); font-weight:600; font-size:1.05rem; padding:12px 0;
  cursor:pointer; list-style:revert;
}
.toc summary::marker{ color: var(--accent-2); }
.toc ol{ margin: 4px 0 16px; padding-left: 22px; }
.toc li{ margin-bottom:6px; font-family: var(--font-ui); font-size:0.92rem; }
.toc li.toc-nivel-3{ list-style-type: circle; margin-left: 18px; font-size:0.88rem; }
.toc a{ text-decoration:none; }
.toc a:hover{ text-decoration:underline; }

.entry-content{ font-size:1.08rem; }
.entry-content p{ margin-bottom:1.3em; }
.entry-content h2, .entry-content h3{ margin-top:1.6em; }
.entry-content blockquote{
  margin: 24px 0; padding: 4px 0 4px 22px; border-left: 4px solid var(--accent-2);
  font-style: italic; color: var(--ink-soft);
}
.entry-content img{ border-radius: var(--radius); }
.entry-content a{ text-decoration: underline; text-decoration-color: var(--accent-2); }
.entry-footer{ margin-top:34px; padding-top:18px; border-top:1px solid var(--line); }
.tags-list a{
  display:inline-block; font-family:var(--font-ui); font-size:0.78rem; background:var(--bg-alt);
  padding:5px 12px; border-radius:20px; margin:0 6px 6px 0; color:var(--ink-soft);
}
.tags-list a:hover{ background:var(--accent-2); color:#fff; text-decoration:none; }

.related-posts{ margin-top:46px; }

/* =========================================================
   8. ARHIVĂ / CATEGORIE / CĂUTARE
   ========================================================= */
.archive-header{ margin-bottom:30px; padding-bottom:16px; border-bottom:2px solid var(--accent-2); }
.archive-list .post-row{
  display:flex; gap:20px; padding:20px 0; border-bottom:1px solid var(--line);
}
.archive-list .post-row .thumb{ width:180px; flex:none; border-radius:var(--radius); overflow:hidden; aspect-ratio:4/3; }
.archive-list .post-row .thumb img{ width:100%; height:100%; object-fit:cover; }
@media (max-width:600px){ .archive-list .post-row{ flex-direction:column; } .archive-list .post-row .thumb{ width:100%; } }

.pagination{ display:flex; gap:8px; margin-top:30px; flex-wrap:wrap; }
.pagination a, .pagination span{
  font-family:var(--font-ui); padding:8px 13px; border-radius:4px; background:var(--paper); box-shadow: var(--shadow-card);
}
.pagination .current{ background: var(--accent); color:#fff; }

/* =========================================================
   9. FOOTER
   ========================================================= */
.site-footer{
  background: var(--header-bg); color: rgba(242,236,221,0.8); margin-top:60px; padding: 40px 0 26px;
  font-family: var(--font-ui); font-size:0.9rem;
}
.site-footer a{ color: var(--accent-2); }
.footer-grid{ display:grid; gap:30px; grid-template-columns: repeat(auto-fit,minmax(200px,1fr)); margin-bottom:26px; }
.footer-grid .widget-title{ color: var(--header-ink); border-bottom-color: rgba(242,236,221,0.25); }
.footer-grid .widget{ background:transparent; box-shadow:none; padding:0; }
.footer-grid .online-acum-numar{ color: var(--header-ink); }
.footer-grid .online-acum-eticheta{ color: rgba(242,236,221,0.65); }
.footer-grid .cele-mai-citite-lista a,
.footer-grid .cronica-partenere-lista a,
.footer-grid .cronica-youtube-item span,
.footer-grid .cronica-recomandat-item{ color: var(--header-ink); }
.footer-grid .cele-mai-citite-nr,
.footer-grid .cronica-partenere-sursa{ color: rgba(242,236,221,0.6); }
.footer-bottom{
  border-top:1px solid rgba(242,236,221,0.15); padding-top:18px; text-align:center; font-size:0.8rem;
  color: rgba(242,236,221,0.55);
}

/* =========================================================
   10. COMENTARII
   ========================================================= */
.comments-area{ margin-top:50px; }
.comments-title{
  font-family: var(--font-headings); font-size:1.4rem; margin:0 0 20px;
  display:flex; align-items:center; gap:12px;
}
.comments-title::before{
  content:'✎'; display:flex; align-items:center; justify-content:center;
  width:34px; height:34px; border-radius:50%; background: var(--accent);
  color:#fff; font-size:1rem; flex-shrink:0;
}
.comment-list{ list-style:none; margin:0 0 30px; padding:0; }
.comment-list .children{ list-style:none; margin:0; padding-left: clamp(16px, 4vw, 40px); }
.comment-body{
  background:var(--paper); border-radius:var(--radius); padding:16px 18px; margin-bottom:16px;
  box-shadow: var(--shadow-card); border-left: 3px solid transparent;
}
.bypostauthor > .comment-body{ border-left-color: var(--accent-2); }
.comment-meta{ display:flex; align-items:center; gap:10px; margin-bottom:8px; }
.comment-author .avatar{ border-radius:50%; display:block; }
.comment-author .fn{ font-family: var(--font-ui); font-weight:700; font-style:normal; color: var(--ink); font-size:0.92rem; }
.comment-metadata{ font-family: var(--font-ui); font-size:0.75rem; color: var(--ink-soft); }
.comment-metadata a{ color:inherit; text-decoration:none; }
.comment-content p{ margin: 0 0 10px; font-size:0.95rem; }
.comment-content p:last-child{ margin-bottom:0; }
.reply{ margin-top:8px; }
.comment-reply-link{
  font-family: var(--font-ui); font-size:0.78rem; font-weight:600; color: var(--accent-2);
  text-decoration:none; border:1px solid var(--accent-2); border-radius:999px; padding:4px 12px;
}
.comment-reply-link:hover{ background: var(--accent-2); color:#fff; text-decoration:none; }
.comment-awaiting-moderation{
  display:block; margin-top:8px; font-family: var(--font-ui); font-size:0.8rem;
  color: var(--accent); font-style:italic;
}
.no-comments{ font-family: var(--font-ui); color: var(--ink-soft); margin-bottom:20px; }

/* --- Comentarii Facebook (iframe oficial) --- */
.fb-comments-wrap{
  background: var(--paper); border-radius: var(--radius); box-shadow: var(--shadow-card);
  padding: 18px; overflow:hidden;
}
.fb-comments-wrap iframe{ display:block; width:100%; }
.fb-comments-avertisment{
  background:#fdf3e2; border:1px dashed var(--accent-2); border-radius: var(--radius);
  padding:14px 16px; font-family: var(--font-ui); font-size:0.85rem; color: var(--ink);
}

/* --- Formular de comentat --- */
#respond, .comment-respond{
  background: var(--paper); border-radius: var(--radius); box-shadow: var(--shadow-card);
  padding: 22px 24px;
}
.comment-reply-title{ font-family: var(--font-headings); font-size:1.15rem; margin:0 0 6px; }
.comment-reply-title small a{ font-size:0.7rem; font-family: var(--font-ui); color: var(--accent); }
.comment-notes, .comment-form-comment label, .comment-form-author label, .comment-form-email label{
  font-family: var(--font-ui); font-size:0.82rem; color: var(--ink-soft); display:block; margin-bottom:4px;
}
.comment-respond input[type="text"], .comment-respond input[type="email"], .comment-respond input[type="url"], .comment-respond textarea{
  width:100%; padding:10px 12px; font-family:var(--font-ui); font-size:0.92rem;
  border:1px solid var(--line); border-radius:4px; margin-bottom:14px; background: var(--bg);
}
.comment-respond textarea{ min-height:120px; resize:vertical; }
.comment-form-cookies-consent{ display:flex; align-items:flex-start; gap:8px; font-family:var(--font-ui); font-size:0.78rem; color:var(--ink-soft); margin-bottom:14px; }
.comment-respond button{
  background:var(--accent); color:#fff; border:none; padding:11px 24px; border-radius:var(--radius);
  font-family:var(--font-ui); font-weight:600; cursor:pointer; font-size:0.92rem;
  transition: background .15s ease;
}
.comment-respond button:hover{ background:var(--accent-2); }

/* =========================================================
   11. UTILITARE
   ========================================================= */
.btn{
  display:inline-block; font-family:var(--font-ui); font-weight:600; background:var(--accent); color:#fff;
  padding:11px 22px; border-radius:var(--radius); text-decoration:none;
}
.btn:hover{ background:var(--accent-2); color:#fff; text-decoration:none; }
.text-center{ text-align:center; }
.no-results{ padding:40px 0; text-align:center; }

/* =========================================================
   12. GAMIFICARE — sigilii, streak, quiz, ziua din istorie
   ========================================================= */

/* --- Indicator streak în antet --- */
.cronica-streak-badge{
  display:flex; align-items:center; gap:6px;
  font-family: var(--font-ui); font-size:0.82rem; font-weight:600;
  color: var(--header-ink); background: rgba(242,236,221,0.12);
  border: 1px solid rgba(242,236,221,0.25); border-radius: 999px;
  padding:6px 12px; white-space:nowrap;
  text-decoration:none;
}
.cronica-streak-badge:hover{ background: rgba(242,236,221,0.22); text-decoration:none; }
.cronica-streak-badge .streak-flacara{ font-size:0.95rem; }

/* --- Toast de notificare (sigiliu nou / cronicar complet) --- */
.cronica-toast{
  position:fixed; left:50%; bottom:24px; transform: translate(-50%, 20px);
  background: var(--header-bg); color: var(--header-ink);
  font-family: var(--font-ui); font-size:0.9rem; font-weight:600;
  padding:13px 22px; border-radius: 999px; box-shadow: 0 10px 28px rgba(0,0,0,0.28);
  opacity:0; transition: opacity .35s ease, transform .35s ease; z-index:9999; max-width: 90vw; text-align:center;
}
.cronica-toast.vizibil{ opacity:1; transform: translate(-50%, 0); }

/* --- Quiz per articol (compact) --- */
.cronica-quiz{ margin: 30px 0; }
.quiz-body{ display:flex; flex-direction:column; gap:12px; }
.quiz-intrebare{
  background: var(--paper); border-radius: var(--radius); padding:12px 14px; box-shadow: var(--shadow-card);
}
.quiz-text{ font-family: var(--font-headings); font-weight:600; margin:0 0 9px; font-size:0.98rem; line-height:1.3; }
.quiz-numar{ color: var(--accent); }
.quiz-optiuni{ display:flex; flex-direction:column; gap:6px; }
.quiz-optiune{
  text-align:left; font-family: var(--font-ui); font-size:0.87rem; background: var(--bg);
  border:1px solid var(--line); border-radius:4px; padding:7px 10px; cursor:pointer; line-height:1.3;
  transition: background .15s ease, border-color .15s ease;
}
.quiz-optiune:hover:not(:disabled){ border-color: var(--accent-2); }
.quiz-optiune:disabled{ cursor:default; }
.quiz-optiune.quiz-corect{ background: #e4f0e0; border-color:#5c8a52; color:#2c4a26; font-weight:600; }
.quiz-optiune.quiz-gresit{ background: #f4e0df; border-color: var(--accent); color: var(--accent); }
.quiz-feedback{ font-family: var(--font-ui); font-size:0.78rem; font-weight:600; margin:6px 0 0; color: var(--ink-soft); min-height:1.1em; }
.quiz-scor-final{
  font-family: var(--font-ui); font-weight:700; text-align:center; padding:9px; margin:0; font-size:0.9rem;
  background: var(--bg-alt); border-radius: var(--radius);
}
.quiz-cta{
  font-family: var(--font-ui); font-size:0.85rem; text-align:center; margin:14px 0 0;
  padding:10px; border-top:1px dashed var(--line);
}
.quiz-cta a{ color: var(--accent-2); font-weight:600; text-decoration:none; }
.quiz-cta a:hover{ text-decoration:underline; }

/* --- Ziua din istorie (widget) --- */
.ziua-din-istorie{ list-style:none; margin:0; padding:0; }
.ziua-din-istorie li{ padding:9px 0; border-bottom:1px dashed var(--line); font-size:0.9rem; }
.ziua-din-istorie li:last-child{ border-bottom:none; }
.zdi-an{
  display:inline-block; font-family: var(--font-headings); font-weight:700; color: var(--accent);
  margin-right:8px;
}
.zdi-sursa{ font-family: var(--font-ui); font-size:0.72rem; color: var(--ink-soft); margin:10px 0 0; text-align:right; }

/* --- Pagina "Jurnalul meu de cronicar" --- */
.layout-fara-sidebar{ display:block; }
.jurnal-statistici{
  display:grid; grid-template-columns: repeat(auto-fit, minmax(150px,1fr)); gap:16px; margin: 28px 0 40px;
}
.jurnal-stat{
  background: var(--paper); border-radius: var(--radius); box-shadow: var(--shadow-card);
  padding:22px 16px; text-align:center;
}
.jurnal-stat-numar{ display:block; font-family: var(--font-headings); font-size:2rem; color: var(--accent); }
.jurnal-stat-eticheta{ font-family: var(--font-ui); font-size:0.8rem; color: var(--ink-soft); text-transform:uppercase; letter-spacing:0.5px; }

.sigilii-grila{
  display:grid; grid-template-columns: repeat(auto-fill, minmax(120px,1fr)); gap:18px; margin: 24px 0 40px;
}
.sigiliu-celula{
  display:flex; flex-direction:column; align-items:center; gap:10px; text-align:center;
  padding:18px 10px; background: var(--paper); border-radius: var(--radius); box-shadow: var(--shadow-card);
  opacity:0.45; filter: grayscale(1);
  transition: opacity .2s ease, filter .2s ease, transform .2s ease, box-shadow .2s ease;
  text-decoration:none; cursor:pointer;
}
.sigiliu-celula:hover{ transform: translateY(-3px); box-shadow: 0 10px 24px rgba(36,31,26,0.18); text-decoration:none; opacity:0.7; filter: grayscale(0.4); }
.sigiliu-celula.castigat{ opacity:1; filter:none; }
.sigiliu-celula.castigat:hover{ opacity:1; filter:none; }
.sigiliu-nume{ font-family: var(--font-ui); font-size:0.78rem; color: var(--ink-soft); }
.sigiliu-progres{
  font-family: var(--font-ui); font-size:0.68rem; color: var(--accent-2); font-weight:700;
  background: var(--bg-alt); border-radius:999px; padding:2px 8px; margin-top:2px;
}

.jurnal-reset-wrap{ margin-top:40px; text-align:center; }
.jurnal-reset{
  background:none; border:1px solid var(--line); color: var(--ink-soft); font-family: var(--font-ui);
  font-size:0.8rem; padding:9px 16px; border-radius: 999px; cursor:pointer;
}
.jurnal-reset:hover{ border-color: var(--accent); color: var(--accent); }

/* =========================================================
   13. GAMIFICARE (extindere) — progres citire, nivele, bonus
   ========================================================= */

/* --- Bară de progres la citire (fixă, sus de tot) --- */
.cronica-progres-citire{
  position: fixed; top:0; left:0; width:100%; height:3px;
  background: transparent; z-index: 600; pointer-events:none;
}
.cronica-progres-citire-umplere{
  height:100%; width:0%; background: linear-gradient(90deg, var(--accent-2), var(--accent));
  transition: width .1s linear;
}

/* --- Bloc nivel de cronicar (pagina Jurnalul meu) --- */
.jurnal-nivel{
  background: var(--paper); border-radius: var(--radius); box-shadow: var(--shadow-card);
  padding:22px 24px; margin: 0 0 40px;
}
.jurnal-nivel-cap{ display:flex; align-items:baseline; justify-content:space-between; gap:12px; margin-bottom:12px; flex-wrap:wrap; }
.jurnal-nivel-nume{ font-family: var(--font-headings); font-size:1.3rem; color: var(--ink); }
.jurnal-nivel-puncte{ font-family: var(--font-ui); font-size:0.85rem; color: var(--accent-2); font-weight:600; }
.jurnal-nivel-bara{ height:10px; border-radius:999px; background: var(--bg-alt); overflow:hidden; }
.jurnal-nivel-bara-umplere{ height:100%; width:0%; background: linear-gradient(90deg, var(--accent-2), var(--accent)); transition: width .4s ease; }
.jurnal-nivel-urmatorul{ font-family: var(--font-ui); font-size:0.8rem; color: var(--ink-soft); margin: 10px 0 0; }

/* --- Secțiune bonus deblocată --- */
.jurnal-bonus{
  background: linear-gradient(135deg, var(--paper), var(--bg-alt));
  border: 1px solid var(--accent-2); border-radius: var(--radius);
  padding:26px 26px 28px; margin: 8px 0 44px;
}
.jurnal-bonus .chapter-head{ border-bottom-color: rgba(168,132,44,0.35); }
.jurnal-bonus-intro{ font-family: var(--font-ui); font-size:0.85rem; color: var(--ink-soft); margin-bottom:16px; }
.jurnal-bonus-cerinte{ list-style:none; margin:0 0 20px; padding:0; display:flex; flex-direction:column; gap:8px; }
.jurnal-bonus-cerinta{
  font-family: var(--font-ui); font-size:0.88rem; color: var(--ink-soft);
  display:flex; align-items:center; gap:9px;
}
.jurnal-bonus-bifa{
  display:inline-flex; align-items:center; justify-content:center; width:20px; height:20px;
  border-radius:50%; border:1.5px solid var(--line); font-size:0.75rem; color: var(--ink-soft); flex-shrink:0;
}
.jurnal-bonus-cerinta.indeplinita{ color: var(--ink); font-weight:600; }
.jurnal-bonus-cerinta.indeplinita .jurnal-bonus-bifa{
  background: #5c8a52; border-color:#5c8a52; color:#fff;
}
.jurnal-bonus-recompensa{ border-top:1px dashed rgba(168,132,44,0.35); padding-top:18px; }
.jurnal-bonus-recompensa h3{ font-family: var(--font-headings); margin:0 0 10px; }
.jurnal-bonus-recompensa p{ margin-bottom:16px; }

/* =========================================================
   14. TOP CITITORI (clasament anonim)
   ========================================================= */
.jurnal-clasament{
  background: var(--paper); border-radius: var(--radius); box-shadow: var(--shadow-card);
  padding:22px 24px 26px; margin: 0 0 44px;
}
.jurnal-clasament .chapter-head{ margin-bottom:10px; }
.jurnal-nickname-info{ font-family: var(--font-ui); font-size:0.82rem; color: var(--ink-soft); margin-bottom:16px; }
.jurnal-nickname-form{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-bottom:22px; }
.jurnal-nickname-form input[type="text"]{
  flex:1; min-width:160px; padding:9px 12px; font-family:var(--font-ui);
  border:1px solid var(--line); border-radius:4px;
}
.jurnal-nickname-form .btn{ padding:9px 18px; font-size:0.9rem; }
.jurnal-nickname-confirmare{ font-family: var(--font-ui); font-size:0.8rem; color: #2c4a26; font-weight:600; }

.clasament-lista{ list-style:none; margin:0; padding:0; counter-reset: none; }
.clasament-rand{
  display:grid; grid-template-columns: 34px 1fr auto; align-items:center; gap:12px;
  padding:11px 4px; border-bottom:1px dashed var(--line);
}
.clasament-rand:last-child{ border-bottom:none; }
.clasament-rang{
  font-family: var(--font-headings); font-weight:700; color: var(--accent-2);
  width:30px; height:30px; border-radius:50%; display:flex; align-items:center; justify-content:center;
  background: var(--bg-alt); font-size:0.9rem;
}
.clasament-rand:nth-child(1) .clasament-rang{ background: var(--accent-2); color:#fff; }
.clasament-nume{ font-family: var(--font-ui); font-weight:600; color: var(--ink); }
.clasament-puncte{ font-family: var(--font-ui); font-size:0.85rem; color: var(--ink-soft); white-space:nowrap; }
.clasament-rand.esti-tu{ background: rgba(168,132,44,0.12); border-radius:6px; padding-left:8px; padding-right:8px; }
.clasament-rand.esti-tu .clasament-nume::after{
  content: " (tu)"; font-weight:400; font-size:0.8rem; color: var(--accent-2);
}

/* =========================================================
   15. DISTRIBUIRE + CONTOR CITITORI AZI
   ========================================================= */

/* --- Contor combinat: total / azi / live, lângă titlul articolului --- */
.vizite-combinat{
  display:inline-flex; align-items:center; flex-wrap:wrap; gap:4px;
  font-family: var(--font-ui); font-size:0.78rem; color: var(--ink-soft);
  margin-top:6px;
}
.vizite-total-text::before{ content: "👁 "; font-size:0.85rem; }
.vizite-separator{ opacity:.5; margin:0 2px; }
.vizite-live-parte{ display:inline-flex; align-items:center; gap:5px; }
.vizite-live-numar{ font-weight:700; color: var(--ink); }

/* --- Secțiune distribuire --- */
.cronica-distribuire{ margin: 40px 0; }
.distribuire-butoane{ display:flex; flex-wrap:wrap; gap:10px; margin: 6px 0 10px; }
.distribuire-buton{
  font-family: var(--font-ui); font-size:0.88rem; font-weight:600; text-decoration:none;
  padding:10px 18px; border-radius: 999px; border:1px solid var(--line); cursor:pointer;
  background: var(--paper); color: var(--ink); transition: background .15s ease, color .15s ease, border-color .15s ease;
}
.distribuire-buton:hover{ text-decoration:none; }
.distribuire-buton.fb{ border-color:#1877F2; color:#1877F2; }
.distribuire-buton.fb:hover{ background:#1877F2; color:#fff; }
.distribuire-buton.wa{ border-color:#25D366; color:#128C4A; }
.distribuire-buton.wa:hover{ background:#25D366; color:#fff; }
.distribuire-buton.x{ border-color: var(--ink); color: var(--ink); }
.distribuire-buton.x:hover{ background: var(--ink); color: var(--paper); }
.distribuire-buton.copiaza{ border-color: var(--accent-2); color: var(--accent-2); }
.distribuire-buton.copiaza:hover{ background: var(--accent-2); color:#fff; }
.distribuire-feedback{ font-family: var(--font-ui); font-size:0.82rem; color: #2c4a26; font-weight:600; min-height:1.2em; margin:0; }

/* --- Sigiliul special al difuzorului (nu e link, e recompensă separată) --- */
.sigiliu-difuzor{ cursor:default; }
.sigiliu-difuzor:hover{ transform:none; box-shadow: var(--shadow-card); }
.sigiliu-difuzor.castigat:hover{ transform: translateY(-3px); box-shadow: 0 10px 24px rgba(36,31,26,0.18); }

/* --- Widget "Top cititori" (coloana dreapta) --- */
.clasament-lista-widget .clasament-rand{ padding:8px 0; }
.clasament-vezi-tot{ margin: 12px 0 0; font-family: var(--font-ui); font-size:0.82rem; text-align:right; }

/* =========================================================
   16. HARTA RECOMPENSELOR PE NIVELURI
   ========================================================= */
.nivele-recompense{ display:flex; flex-direction:column; gap:14px; margin: 0 0 44px; }
.nivel-recompensa-card{
  background: var(--paper); border-radius: var(--radius); box-shadow: var(--shadow-card);
  padding:18px 22px; border-left:4px solid var(--line);
  opacity:0.6; filter: grayscale(0.5);
  transition: opacity .2s ease, filter .2s ease, border-color .2s ease;
}
.nivel-recompensa-card.deblocat{ opacity:1; filter:none; border-left-color: var(--accent-2); }
.nivel-recompensa-cap{ display:flex; align-items:baseline; justify-content:space-between; gap:10px; flex-wrap:wrap; margin-bottom:6px; }
.nivel-recompensa-nume{ font-family: var(--font-ui); font-size:0.78rem; text-transform:uppercase; letter-spacing:0.8px; color: var(--ink-soft); font-weight:600; }
.nivel-recompensa-stare{ font-family: var(--font-ui); font-size:0.78rem; font-weight:700; color: var(--ink-soft); }
.nivel-recompensa-card.deblocat .nivel-recompensa-stare{ color: #2c4a26; }
.nivel-recompensa-titlu{ font-family: var(--font-headings); font-size:1.1rem; margin:0 0 6px; color: var(--ink); }
.nivel-recompensa-text{ font-family: var(--font-ui); font-size:0.88rem; color: var(--ink-soft); margin:0 0 12px; }
.nivel-recompensa-buton{ font-size:0.85rem; padding:8px 16px; }

/* --- Contor global de bonusuri descărcate --- */
.bonusuri-total{
  font-family: var(--font-ui); font-size:0.82rem; color: var(--accent-2); font-weight:600;
  margin: -6px 0 20px;
}

/* --- Pagina "Toate quiz-urile" --- */
.quiz-agregator-item{ margin: 0 0 46px; padding-bottom: 40px; border-bottom: 1px dashed var(--line); }
.quiz-agregator-item:last-child{ border-bottom:none; padding-bottom:0; }
.quiz-agregator-item .chapter-head h2{ font-size:1.4rem; }
.quiz-agregator-item .chapter-head h2 a{ color: var(--ink); text-decoration:none; }
.quiz-agregator-item .chapter-head h2 a:hover{ color: var(--accent-2); }

/* =========================================================
   17. CITITORI ONLINE + BUTON "ÎNAPOI SUS"
   ========================================================= */

/* --- Widget cititori online --- */
.online-acum{ display:flex; align-items:center; gap:8px; font-family: var(--font-ui); font-size:0.92rem; margin:0; }
.online-acum-punct{
  width:9px; height:9px; border-radius:50%; background:#4caf50; flex-shrink:0;
  box-shadow: 0 0 0 rgba(76,175,80,0.5); animation: cronica-puls-online 2s infinite;
}
@keyframes cronica-puls-online{
  0%   { box-shadow: 0 0 0 0 rgba(76,175,80,0.5); }
  70%  { box-shadow: 0 0 0 7px rgba(76,175,80,0); }
  100% { box-shadow: 0 0 0 0 rgba(76,175,80,0); }
}
.online-acum-numar{ font-weight:700; color: var(--ink); }
.online-acum-eticheta{ color: var(--ink-soft); }

/* --- Buton "înapoi sus", jos-dreapta --- */
.buton-sus{
  position:fixed; right:20px; bottom:24px; z-index:550;
  width:46px; height:46px; border-radius:50%; border:none; cursor:pointer;
  background: var(--header-bg); color: var(--header-ink); font-size:1.3rem; line-height:1;
  box-shadow: 0 6px 18px rgba(0,0,0,0.28);
  display:flex; align-items:center; justify-content:center;
  transition: background .15s ease, transform .15s ease, opacity .2s ease;
}
.buton-sus:hover{ background: var(--accent); transform: translateY(-2px); }
.buton-sus[hidden]{ display:none; }
@media (max-width:600px){
  .buton-sus{ right:14px; bottom:18px; width:42px; height:42px; font-size:1.15rem; }
}

/* --- Butoane plutitoare de mărime text, jos-stânga --- */
.marime-text-grup{
  position:fixed; left:20px; bottom:24px; z-index:550;
  display:flex; gap:6px;
}
.marime-text-grup button{
  width:38px; height:38px; border-radius:50%; border:none; cursor:pointer;
  background: var(--header-bg); color: var(--header-ink); font-size:0.85rem; font-weight:700;
  font-family: var(--font-ui); box-shadow: 0 6px 18px rgba(0,0,0,0.24);
  display:flex; align-items:center; justify-content:center;
  transition: background .15s ease, transform .15s ease;
}
.marime-text-grup button:hover{ background: var(--accent); transform: translateY(-2px); }
@media (max-width:600px){
  .marime-text-grup{ left:14px; bottom:18px; }
  .marime-text-grup button{ width:34px; height:34px; font-size:0.78rem; }
}

/* =========================================================
   18. RATING NATIV + WIDGET-URI NOI (cele mai citite, YouTube, partenere)
   ========================================================= */

/* --- Rating cu stele --- */
.cronica-rating{ display:flex; align-items:center; gap:10px; margin:8px 0 0; flex-wrap:wrap; }
.cronica-rating-stele{ display:flex; gap:2px; }
.cronica-rating-stea{
  background:none; border:none; cursor:pointer; font-size:1.3rem; line-height:1; padding:2px;
  color: var(--line); transition: color .1s ease, transform .1s ease;
}
.cronica-rating-stea:hover:not(:disabled){ transform: scale(1.15); }
.cronica-rating-stea.activa{ color: var(--accent-2); }
.cronica-rating.evaluat .cronica-rating-stea{ cursor:default; }
.cronica-rating.evaluat .cronica-rating-stea:hover{ transform:none; }
.cronica-rating-info{ font-family: var(--font-ui); font-size:0.82rem; color: var(--ink-soft); }

/* --- Widget "Cele mai citite" --- */
.cele-mai-citite-lista{ list-style:none; margin:0; padding:0; }
.cele-mai-citite-lista li{
  display:flex; align-items:baseline; gap:8px; padding:8px 0; border-bottom:1px dashed var(--line);
}
.cele-mai-citite-lista li:last-child{ border-bottom:none; }
.cele-mai-citite-rang{ font-family: var(--font-headings); font-weight:700; color: var(--accent-2); flex-shrink:0; }
.cele-mai-citite-lista a{ flex:1; font-family: var(--font-ui); font-size:0.9rem; color: var(--ink); text-decoration:none; }
.cele-mai-citite-lista a:hover{ color: var(--accent-2); }
.cele-mai-citite-nr{ font-family: var(--font-ui); font-size:0.72rem; color: var(--ink-soft); white-space:nowrap; }

/* --- Widget YouTube --- */
.cronica-youtube-lista{ display:flex; flex-direction:column; gap:12px; }
.cronica-youtube-item{ display:flex; gap:10px; text-decoration:none; align-items:center; }
.cronica-youtube-item img{ width:88px; height:auto; border-radius:4px; flex-shrink:0; }
.cronica-youtube-item span{ font-family: var(--font-ui); font-size:0.85rem; color: var(--ink); line-height:1.3; }
.cronica-youtube-item:hover span{ color: var(--accent-2); }

/* --- Widget articole partenere --- */
.cronica-partenere-lista{ list-style:none; margin:0; padding:0; }
.cronica-partenere-lista li{ padding:8px 0; border-bottom:1px dashed var(--line); }
.cronica-partenere-lista li:last-child{ border-bottom:none; }
.cronica-partenere-lista a{ font-family: var(--font-ui); font-size:0.88rem; color: var(--ink); text-decoration:none; display:block; }
.cronica-partenere-lista a:hover{ color: var(--accent-2); }
.cronica-partenere-sursa{ display:block; font-family: var(--font-ui); font-size:0.7rem; color: var(--ink-soft); margin-top:2px; text-transform:uppercase; letter-spacing:0.4px; }

/* =========================================================
   19. BREADCRUMBS, TEMĂ ÎNTUNECATĂ, SALVATE, RECOMANDĂRI, CARD
   ========================================================= */

/* --- Breadcrumbs --- */
.cronica-breadcrumbs{
  font-family: var(--font-ui); font-size:0.8rem; color: var(--ink-soft);
  margin: 0 0 22px;
}
.cronica-breadcrumbs a{ color: var(--ink-soft); text-decoration:none; }
.cronica-breadcrumbs a:hover{ color: var(--accent-2); text-decoration:underline; }
.cronica-breadcrumbs-sep{ margin:0 6px; opacity:.6; }
.cronica-breadcrumbs-curent{ color: var(--ink); font-weight:600; }

/* --- Buton comutare temă (antet) --- */
.buton-tema{
  background: transparent; border: 2px solid rgba(242,236,221,0.4); border-radius:50%;
  width:38px; height:38px; display:flex; align-items:center; justify-content:center;
  cursor:pointer; flex-shrink:0; font-size:1rem; transition: background .15s ease, transform .15s ease;
}
.buton-tema:hover{ background: rgba(242,236,221,0.12); transform: rotate(15deg); }

/* --- Buton "Salvează pentru mai târziu" --- */
.buton-salveaza{
  display:inline-flex; align-items:center; gap:7px; margin:10px 0 0;
  background: var(--paper); border:1px solid var(--line); border-radius:999px;
  padding:8px 16px; font-family: var(--font-ui); font-size:0.85rem; font-weight:600;
  color: var(--ink-soft); cursor:pointer; transition: border-color .15s ease, color .15s ease;
}
.buton-salveaza:hover{ border-color: var(--accent-2); color: var(--accent-2); }
.buton-salveaza.salvat{ background: var(--accent-2); border-color: var(--accent-2); color:#fff; }
.buton-salveaza-icon{ font-size:1rem; }

/* --- Pagina "Salvate" --- */
.cronica-salvate-lista{ display:flex; flex-direction:column; gap:14px; }
.salvat-card{
  display:flex; gap:14px; background: var(--paper); border-radius: var(--radius);
  box-shadow: var(--shadow-card); padding:12px; align-items:center;
}
.salvat-thumb{ flex-shrink:0; width:90px; height:90px; border-radius:6px; overflow:hidden; display:block; }
.salvat-thumb img{ width:100%; height:100%; object-fit:cover; display:block; }
.salvat-thumb-fara-imagine{ background: var(--bg-alt); display:flex; align-items:center; justify-content:center; }
.salvat-info{ flex:1; display:flex; flex-direction:column; gap:8px; min-width:0; }
.salvat-titlu{
  font-family: var(--font-headings); font-size:1rem; color: var(--ink); text-decoration:none;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
}
.salvat-titlu:hover{ color: var(--accent-2); }
.salvat-elimina{
  align-self:flex-start; background:none; border:none; color: var(--accent); font-family: var(--font-ui);
  font-size:0.78rem; cursor:pointer; padding:0; text-decoration:underline;
}

/* --- Zona de notiță editabilă, în listele din Jurnal --- */
.salvat-nota-zona{ margin-top:2px; }
.salvat-nota{
  font-family: var(--font-ui); font-size:0.85rem; color: var(--ink-soft); font-style:italic;
  margin:0 0 4px; background: var(--bg-alt); padding:8px 10px; border-radius:4px;
}
.salvat-nota-link{
  background:none; border:none; color: var(--accent-2); font-family: var(--font-ui);
  font-size:0.76rem; font-weight:600; cursor:pointer; padding:0;
}
.salvat-nota-link:hover{ text-decoration:underline; }
.salvat-nota-textarea{
  width:100%; padding:12px 14px; font-family: var(--font-ui); font-size:0.95rem;
  border:1px solid var(--line); border-radius:6px; resize:vertical; margin-bottom:8px;
  min-height:80px; box-sizing:border-box;
}
.salvat-nota-butoane{ display:flex; gap:10px; align-items:center; }
.salvat-card.editare-nota-activa{ flex-direction:column; align-items:stretch; }
.salvat-card.editare-nota-activa .salvat-thumb{ width:100%; height:150px; }
.salvat-nota-salveaza{ font-size:0.78rem; padding:6px 14px; }
.salvat-nota-anuleaza{
  background:none; border:none; color: var(--ink-soft); font-family: var(--font-ui);
  font-size:0.78rem; cursor:pointer; padding:0;
}
.salvat-nota-anuleaza:hover{ color: var(--accent); }

/* --- Widget "Continuă lectura + Recomandat" --- */
.cronica-recomandat-widget{ display:flex; flex-direction:column; gap:22px; }
.cronica-recomandat-bloc .widget-title{ margin-bottom:10px; }
.cronica-recomandat-lista{ display:flex; flex-direction:column; gap:10px; }
.cronica-recomandat-item{
  display:flex; align-items:center; gap:10px; text-decoration:none; font-family: var(--font-ui);
  font-size:0.85rem; color: var(--ink);
}
.cronica-recomandat-item img{ width:52px; height:52px; object-fit:cover; border-radius:6px; flex-shrink:0; }
.cronica-recomandat-item .wax-seal{ width:52px; height:52px; flex-shrink:0; font-size:1.2rem; }
.cronica-recomandat-item:hover{ color: var(--accent-2); }

/* --- Buton generare card de realizare --- */
.jurnal-card-buton{ width:100%; margin-top:16px; justify-content:center; display:flex; align-items:center; gap:8px; }

/* =========================================================
   20. STIL DE PRINTARE — text curat, fără elemente inutile
   ========================================================= */
@media print{
  .site-header, .sidebar-right, .primary-navigation, .menu-toggle,
  .cronica-streak-badge, .site-link-extra, .buton-tema, .buton-sus,
  .cronica-progres-citire, .cronica-distribuire, .cronica-quiz,
  .cronica-rating, .buton-salveaza, .related-posts, .comments-area,
  .site-footer, .vizite-combinat, .online-acum, .quiz-cta,
  [class*="reclama"], .cronica-toast, .cronica-breadcrumbs{
    display:none !important;
  }
  body{ background:#fff; color:#000; font-size:12pt; }
  .container, .layout, .entry-content{ max-width:100%; width:100%; margin:0; padding:0; display:block; }
  .entry-content a{ color:#000; text-decoration:underline; }
  .entry-content a[href^="http"]::after{ content:" (" attr(href) ")"; font-size:0.75em; color:#555; }
  h1{ font-size:20pt; }
  .entry-thumb img{ max-width:100%; }
  a{ text-decoration:none; }
}

/* =========================================================
   21. CONSIMȚĂMÂNT (GDPR), NEWSLETTER, PLACEHOLDER FACEBOOK
   ========================================================= */

/* --- Banner consimțământ --- */
.cronica-consimtamant{
  position: fixed; left:0; right:0; bottom:0; z-index:700;
  background: var(--header-bg); color: var(--header-ink);
  padding: 16px 20px; box-shadow: 0 -6px 20px rgba(0,0,0,0.25);
  display:flex; flex-wrap:wrap; align-items:center; gap:16px; justify-content:space-between;
}
.cronica-consimtamant[hidden]{ display:none; }
.cronica-consimtamant p{
  margin:0; font-family: var(--font-ui); font-size:0.82rem; flex:1 1 320px; max-width:720px;
  color: rgba(242,236,221,0.85);
}
.cronica-consimtamant-butoane{ display:flex; gap:10px; flex-shrink:0; }
.cronica-consimtamant .btn{ padding:9px 18px; font-size:0.85rem; }
.cronica-consimtamant-esential{
  background:transparent; border:1px solid rgba(242,236,221,0.4); color: var(--header-ink);
  font-family: var(--font-ui); font-size:0.85rem; padding:9px 16px; border-radius: var(--radius); cursor:pointer;
}
.cronica-consimtamant-esential:hover{ background: rgba(242,236,221,0.12); }
@media (max-width:600px){
  .cronica-consimtamant{ flex-direction:column; align-items:stretch; text-align:center; }
  .cronica-consimtamant-butoane{ justify-content:center; }
}

/* --- Placeholder comentarii Facebook (înainte de consimțământ) --- */
.fb-comments-placeholder{
  background: var(--paper); border: 1px dashed var(--line); border-radius: var(--radius);
  padding:20px; text-align:center;
}
.fb-comments-placeholder p{ font-family: var(--font-ui); font-size:0.85rem; color: var(--ink-soft); margin-bottom:12px; }

/* --- Formular newsletter --- */
.cronica-newsletter-form{ display:flex; flex-direction:column; gap:10px; }
.cronica-newsletter-text{ font-family: var(--font-ui); font-size:0.85rem; color: var(--ink-soft); margin:0; }
.cronica-newsletter-email{
  padding:10px 12px; font-family: var(--font-ui); font-size:0.9rem;
  border:1px solid var(--line); border-radius:4px;
}
.cronica-newsletter-buton{ width:100%; text-align:center; justify-content:center; }
.cronica-newsletter-mesaj{
  font-family: var(--font-ui); font-size:0.8rem; color: var(--accent-2); font-weight:600; margin:0;
}

/* =========================================================
   22. SIGURANȚĂ GLOBALĂ — atributul hidden câștigă mereu
   ========================================================= */
[hidden]{ display:none !important; }

/* --- Salvare/recuperare progres prin email --- */
.jurnal-progres-email{
  background: var(--paper); border: 1px solid var(--accent-2); border-radius: var(--radius);
  box-shadow: var(--shadow-card); padding:22px 24px; margin: 0 0 40px;
}
.jurnal-progres-email .chapter-head{ border-bottom-color: rgba(168,132,44,0.3); }
.jurnal-progres-email-form{ display:flex; flex-wrap:wrap; gap:10px; margin-top:14px; }
.jurnal-progres-email-form input[type="email"]{
  flex:1 1 220px; padding:10px 12px; font-family: var(--font-ui); font-size:0.9rem;
  border:1px solid var(--line); border-radius:4px;
}
.jurnal-progres-recupereaza{
  background:transparent; border:1px solid var(--accent-2); color: var(--accent-2);
  font-family: var(--font-ui); font-size:0.9rem; font-weight:600; padding:10px 18px;
  border-radius: var(--radius); cursor:pointer;
}
.jurnal-progres-recupereaza:hover{ background: var(--accent-2); color:#fff; }
.jurnal-progres-mesaj{ font-family: var(--font-ui); font-size:0.85rem; color: var(--accent-2); font-weight:600; margin:12px 0 0; }
