/* ==========================================================================
   Penitele Laurei — stilul site-ului public.

   Un blog literar: textul e eroul principal, deci totul aici servește
   lizibilitatea — o coloană îngustă, o serifă croită pentru ecran (Lora) și
   contrast suficient. Accentul vișiniu vine din logo și e folosit cu zgârcenie.
   Funcționează la fel în temă deschisă și întunecată.
   ========================================================================== */

:root{
  --pl-primary:#8C3B4A;
  --pl-primary-dark:#6E2C38;
  --pl-primary-soft:#F4E9EA;

  --pl-ink:#241E20;
  --pl-ink-2:#4E4649;
  --pl-ink-3:#7C7377;

  --pl-bg:#FBF9F7;
  --pl-bg-2:#F3EEEA;
  --pl-card:#FFFFFF;
  --pl-border:#E4DDD7;
  --pl-border-light:#F0EAE5;

  --pl-max:700px;      /* măsura coloanei de text */
  --pl-wide:1140px;    /* lățimea maximă a paginii */

  --pl-serif:'Lora',Georgia,'Iowan Old Style','Times New Roman',serif;
  --pl-sans:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;

  --pl-logo-filter:none;
  --pl-shadow:0 1px 2px rgba(36,30,32,.04), 0 8px 24px -12px rgba(36,30,32,.18);
  --pl-shadow-lift:0 2px 4px rgba(36,30,32,.05), 0 18px 40px -18px rgba(36,30,32,.3);
}

@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --pl-primary:#E39AA6;
    --pl-primary-dark:#F0B8C1;
    --pl-primary-soft:#312427;
    --pl-ink:#EDE7E8;
    --pl-ink-2:#BFB5B8;
    --pl-ink-3:#948A8E;
    --pl-bg:#191416;
    --pl-bg-2:#221C1E;
    --pl-card:#221C1E;
    --pl-border:#3A3134;
    --pl-border-light:#2C2427;
    /* Logo-ul e o marcă monocromă închisă; pe fundal întunecat îl inversăm. */
    --pl-logo-filter:invert(1) brightness(1.7);
    --pl-shadow:0 1px 2px rgba(0,0,0,.3), 0 8px 24px -12px rgba(0,0,0,.6);
    --pl-shadow-lift:0 2px 4px rgba(0,0,0,.35), 0 18px 40px -18px rgba(0,0,0,.75);
  }
}
:root[data-theme="dark"]{
  --pl-primary:#E39AA6;
  --pl-primary-dark:#F0B8C1;
  --pl-primary-soft:#312427;
  --pl-ink:#EDE7E8;
  --pl-ink-2:#BFB5B8;
  --pl-ink-3:#948A8E;
  --pl-bg:#191416;
  --pl-bg-2:#221C1E;
  --pl-card:#221C1E;
  --pl-border:#3A3134;
  --pl-border-light:#2C2427;
  --pl-logo-filter:invert(1) brightness(1.7);
}

*{box-sizing:border-box}

html{scroll-behavior:smooth}
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  *{animation:none!important;transition:none!important}
}

body{
  margin:0;
  background:var(--pl-bg);
  color:var(--pl-ink);
  font-family:var(--pl-sans);
  font-size:17px;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

img{max-width:100%;height:auto}
a{color:var(--pl-primary);text-decoration:none}
a:hover{text-decoration:underline}

/* Titlurile și textul conțin cuvinte lungi („supraviețuire”, „străinătatea”)
   și uneori adrese web. Pe ecrane înguste ele ar împinge pagina în lateral,
   așa că le lăsăm să se rupă în loc să depășească. */
h1,h2,h3,h4,p,li,figcaption,blockquote{overflow-wrap:break-word}
.prose a{word-break:break-word}

:focus-visible{outline:2px solid var(--pl-primary);outline-offset:3px;border-radius:2px}

.wrap{max-width:var(--pl-wide);margin:0 auto;padding:0 20px}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0 0 0 0);white-space:nowrap;border:0}
.skip{position:absolute;left:-9999px}
.skip:focus{left:20px;top:20px;background:var(--pl-primary);color:#fff;padding:10px 18px;
  border-radius:4px;z-index:100}

/* ── Antet ────────────────────────────────────────────────────────────── */
.site-header{background:var(--pl-card);border-bottom:1px solid var(--pl-border);
  position:sticky;top:0;z-index:50}

.header-top-inner{display:flex;align-items:center;justify-content:space-between;
  gap:24px;padding-top:15px;padding-bottom:13px}
.header-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}

.brand{display:flex;align-items:center;gap:13px;text-decoration:none;flex-shrink:0;min-width:0}
.brand:hover{text-decoration:none}
.brand-mark{height:44px;width:auto;filter:var(--pl-logo-filter)}
.brand-text{display:flex;flex-direction:column;gap:4px;min-width:0}
.brand-wordmark{height:23px;width:auto;filter:var(--pl-logo-filter)}
.brand-tagline{font-size:12px;color:var(--pl-ink-3);letter-spacing:.3px;
  font-style:italic;font-family:var(--pl-serif)}

/* Bara rubricilor: un rând propriu, care se derulează lateral dacă nu încape. */
.site-nav{border-top:1px solid var(--pl-border-light);background:var(--pl-card)}
.nav-list{display:flex;align-items:center;gap:4px;list-style:none;margin:0;padding:0;
  overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}
.nav-list::-webkit-scrollbar{display:none}
.nav-list li{flex-shrink:0}
.nav-list a{color:var(--pl-ink-2);font-size:13.5px;font-weight:500;padding:11px 13px;
  display:block;white-space:nowrap;border-bottom:2px solid transparent;
  transition:color .15s, border-color .15s}
.nav-list a:hover{color:var(--pl-primary);text-decoration:none}
.nav-list a.is-current{color:var(--pl-primary);font-weight:600;
  border-bottom-color:var(--pl-primary)}

.search-form{display:flex;align-items:center;border:1px solid var(--pl-border);
  border-radius:20px;overflow:hidden;background:var(--pl-bg);transition:border-color .15s}
.search-form:focus-within{border-color:var(--pl-primary)}
.search-form input{border:none;background:transparent;padding:7px 8px 7px 15px;font-size:14px;
  width:120px;font-family:inherit;color:var(--pl-ink);transition:width .2s}
.search-form input:focus{outline:none;width:170px}
.search-form button{border:none;background:transparent;padding:7px 13px 7px 6px;cursor:pointer;
  color:var(--pl-ink-3);display:flex;align-items:center}
.search-form button:hover{color:var(--pl-primary)}

.nav-toggle{display:none;background:none;border:1px solid var(--pl-border);border-radius:5px;
  padding:9px 11px;cursor:pointer;color:var(--pl-ink)}
.nav-toggle-bars,.nav-toggle-bars::before,.nav-toggle-bars::after{
  display:block;width:18px;height:2px;background:currentColor;border-radius:2px;transition:.2s}
.nav-toggle-bars{position:relative}
.nav-toggle-bars::before,.nav-toggle-bars::after{content:"";position:absolute;left:0}
.nav-toggle-bars::before{top:-6px}
.nav-toggle-bars::after{top:6px}
.nav-toggle.is-open .nav-toggle-bars{background:transparent}
.nav-toggle.is-open .nav-toggle-bars::before{top:0;transform:rotate(45deg)}
.nav-toggle.is-open .nav-toggle-bars::after{top:0;transform:rotate(-45deg)}

@media(max-width:820px){
  .nav-toggle{display:block}
  .site-nav{display:none}
  .site-nav.open{display:block;padding-bottom:10px}
  .nav-list{flex-direction:column;align-items:stretch;gap:0;overflow:visible;padding-top:6px}
  .nav-list a{padding:11px 4px;border-bottom:1px solid var(--pl-border-light)}
  .nav-list a.is-current{border-bottom-color:var(--pl-border-light)}
  .nav-list li:last-child a{border-bottom:none}
  .search-form input{width:100px}
  .search-form input:focus{width:130px}
  .brand-mark{height:38px}
  .brand-wordmark{height:20px}
}
@media(max-width:480px){
  .brand-tagline{display:none}
  .search-form input{width:80px}
}

/* ── Titluri de secțiune ──────────────────────────────────────────────── */
.section-head{padding:44px 0 0;max-width:var(--pl-max)}
.section-head h1{font-family:var(--pl-serif);font-size:34px;margin:0 0 8px;line-height:1.2;
  letter-spacing:-.3px}
.section-head p{color:var(--pl-ink-2);margin:0;font-family:var(--pl-serif);font-size:17px}
.section-head .count{color:var(--pl-ink-3);font-size:14px;font-family:var(--pl-sans);margin-top:6px}

.section-rule{display:flex;align-items:center;gap:14px;margin:38px 0 4px}
.section-rule h2{font-family:var(--pl-sans);font-size:12px;text-transform:uppercase;
  letter-spacing:1.5px;color:var(--pl-ink-3);margin:0;font-weight:700;white-space:nowrap}
.section-rule::after{content:"";flex:1;height:1px;background:var(--pl-border)}

/* ── Articolul scos în evidență ───────────────────────────────────────── */
.featured{display:grid;grid-template-columns:1.15fr 1fr;gap:38px;align-items:center;
  padding:44px 0 8px}
.featured-media{display:block;border-radius:8px;overflow:hidden;background:var(--pl-bg-2);
  aspect-ratio:16/10;box-shadow:var(--pl-shadow)}
.featured-media img{width:100%;height:100%;object-fit:cover;display:block;
  transition:transform .5s ease}
.featured-media:hover img{transform:scale(1.03)}
.featured-body{min-width:0}
.featured h2{font-family:var(--pl-serif);font-size:33px;line-height:1.22;margin:12px 0 12px;
  letter-spacing:-.4px}
.featured h2 a{color:var(--pl-ink)}
.featured h2 a:hover{color:var(--pl-primary);text-decoration:none}
.featured p{color:var(--pl-ink-2);font-family:var(--pl-serif);font-size:17.5px;margin:0 0 16px}

@media(max-width:860px){
  .featured{grid-template-columns:1fr;gap:20px;padding-top:30px}
  .featured h2{font-size:26px}
}

/* ── Fișa de articol (eticheta de rubrică + meta) ─────────────────────── */
.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:1.3px;color:var(--pl-primary);
  font-weight:700;font-family:var(--pl-sans)}
.eyebrow a{color:inherit}
.eyebrow a:hover{text-decoration:underline}

.meta{font-size:13px;color:var(--pl-ink-3);display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.meta .dot{color:var(--pl-border)}

/* ── Grila de articole ────────────────────────────────────────────────── */
.article-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));
  gap:40px 34px;padding:26px 0 10px}

.card{display:flex;flex-direction:column;gap:11px;min-width:0}
.card-thumb{display:block;aspect-ratio:3/2;background:var(--pl-bg-2);overflow:hidden;
  border-radius:6px;box-shadow:var(--pl-shadow)}
.card-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s ease}
.card:hover .card-thumb img{transform:scale(1.04)}
.card h2{font-family:var(--pl-serif);font-size:20.5px;line-height:1.32;margin:0;letter-spacing:-.15px}
.card h2 a{color:var(--pl-ink)}
.card h2 a:hover{color:var(--pl-primary);text-decoration:none}
.card-excerpt{color:var(--pl-ink-2);font-size:15.5px;margin:0;font-family:var(--pl-serif)}

/* ── Articolul ────────────────────────────────────────────────────────── */
.article{max-width:var(--pl-max);margin:0 auto;padding:46px 20px 20px}
.article-head{margin-bottom:28px;text-align:center}
.article-head .eyebrow{margin-bottom:12px;display:block}
.article h1{font-family:var(--pl-serif);font-size:40px;line-height:1.16;margin:0 0 14px;
  letter-spacing:-.6px}
.article-subtitle{font-family:var(--pl-serif);font-size:20px;color:var(--pl-ink-2);
  font-style:italic;margin:0 0 18px;line-height:1.48}
.article-head .meta{justify-content:center;padding-top:16px;border-top:1px solid var(--pl-border-light)}

.article-feature{margin:0 0 32px}
/* Multe fotografii sunt verticale. Le limităm înălțimea ca să nu ocupe tot
   ecranul, dar fără să le tăiem: portretele apar centrate, mai înguste. */
.article-feature img{max-width:100%;max-height:min(72vh,640px);width:auto;margin:0 auto;
  border-radius:8px;display:block;box-shadow:var(--pl-shadow)}
.article-feature figcaption{font-size:13.5px;color:var(--pl-ink-3);margin-top:9px;text-align:center}

/* Corpul articolului — aici stă textul Laurei */
.prose{font-family:var(--pl-serif);font-size:19px;line-height:1.78;color:var(--pl-ink)}
.prose p{margin:0 0 1.2em}

/* Semnătura autoarei, de obicei primul rând al articolului. */
.prose p.semnatura{font-style:italic;color:var(--pl-ink-3);font-size:16px;
  margin-bottom:1.6em;letter-spacing:.2px}
.prose p.semnatura em,.prose p.semnatura strong{font-style:italic;font-weight:400}

/* Inițiala ornată cade pe primul paragraf adevărat, nu pe semnătură. */
.prose p.intro::first-letter{
  float:left;font-size:3.4em;line-height:.82;padding:.06em .09em 0 0;
  color:var(--pl-primary);font-weight:600}
.prose h2{font-size:27px;line-height:1.28;margin:1.8em 0 .5em;letter-spacing:-.2px}
.prose h3{font-size:22px;line-height:1.3;margin:1.6em 0 .45em}
.prose h4{font-size:19px;margin:1.4em 0 .4em}
.prose a{text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:1px;
  text-decoration-color:rgba(140,59,74,.4)}
.prose a:hover{text-decoration-color:currentColor}
.prose ul,.prose ol{margin:0 0 1.2em;padding-left:1.4em}
.prose li{margin-bottom:.4em}
.prose em{font-style:italic}
.prose strong{font-weight:700}
.prose hr{border:none;border-top:1px solid var(--pl-border);margin:2.4em 0}
.prose img{border-radius:6px}

.prose figure.bloc-imagine{margin:2em 0}
.prose figure.bloc-imagine img{display:block;border-radius:6px;box-shadow:var(--pl-shadow)}
.prose figure.align-center{text-align:center}
.prose figure.align-center img{margin:0 auto}
.prose figure.align-left{float:left;max-width:46%;margin:.4em 1.8em 1.3em 0}
.prose figure.align-right{float:right;max-width:46%;margin:.4em 0 1.3em 1.8em}
.prose figure.align-full img{width:100%}
.prose figcaption{font-family:var(--pl-sans);font-size:13.5px;color:var(--pl-ink-3);
  margin-top:9px;line-height:1.5;text-align:center}

.prose blockquote.bloc-citat{margin:2em 0;padding:2px 0 2px 24px;
  border-left:3px solid var(--pl-primary);font-style:italic;color:var(--pl-ink-2);font-size:20px}
.prose blockquote.bloc-citat p{margin:0 0 .4em}
.prose blockquote.bloc-citat cite{font-family:var(--pl-sans);font-size:14px;font-style:normal;
  color:var(--pl-ink-3);display:block}
.prose blockquote.bloc-citat cite::before{content:"— "}

.bloc-video{position:relative;padding-bottom:56.25%;height:0;margin:2em 0;
  border-radius:8px;overflow:hidden;background:#000;box-shadow:var(--pl-shadow)}
.bloc-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

@media(max-width:700px){
  .article{padding-top:32px}
  .article h1{font-size:29px}
  .article-subtitle{font-size:17.5px}
  .prose{font-size:17.5px}
  .prose p.intro::first-letter{font-size:2.9em}
  .prose figure.align-left,.prose figure.align-right{float:none;max-width:100%;margin:1.6em 0}
}

/* ── Sfârșitul articolului: etichete, distribuire, semnătură ──────────── */
.article-foot{max-width:var(--pl-max);margin:0 auto;padding:0 20px}

.tag-list{display:flex;flex-wrap:wrap;gap:8px;margin:34px 0 0;padding-top:24px;
  border-top:1px solid var(--pl-border-light)}
.tag-list a{font-size:12.5px;background:var(--pl-bg-2);color:var(--pl-ink-2);
  padding:5px 12px;border-radius:14px;transition:.15s}
.tag-list a:hover{background:var(--pl-primary);color:#fff;text-decoration:none}

.share{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:26px 0 0;
  padding-top:22px;border-top:1px solid var(--pl-border-light)}
.share-label{font-size:12px;text-transform:uppercase;letter-spacing:1.2px;
  color:var(--pl-ink-3);font-weight:700}
.share a,.share button{display:inline-flex;align-items:center;gap:6px;font-size:13.5px;
  padding:7px 14px;border:1px solid var(--pl-border);border-radius:18px;
  background:var(--pl-card);color:var(--pl-ink-2);cursor:pointer;font-family:inherit;
  transition:.15s}
.share a:hover,.share button:hover{border-color:var(--pl-primary);color:var(--pl-primary);
  text-decoration:none}

.author-box{display:flex;gap:18px;align-items:flex-start;margin:34px 0 0;padding:22px;
  background:var(--pl-bg-2);border-radius:8px}
.author-box img{width:56px;height:56px;border-radius:50%;object-fit:cover;flex-shrink:0;
  filter:var(--pl-logo-filter);background:var(--pl-card);padding:6px}
.author-box h2{font-family:var(--pl-serif);font-size:17px;margin:0 0 4px}
.author-box p{margin:0;font-size:14.5px;color:var(--pl-ink-2)}

/* ── Navigare între articole ──────────────────────────────────────────── */
.article-nav{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:36px 0 0}
.article-nav a{display:flex;flex-direction:column;gap:5px;padding:16px 18px;
  border:1px solid var(--pl-border);border-radius:8px;background:var(--pl-card);
  color:var(--pl-ink);transition:.18s}
.article-nav a:hover{border-color:var(--pl-primary);box-shadow:var(--pl-shadow);text-decoration:none}
.article-nav .dir{font-size:11.5px;text-transform:uppercase;letter-spacing:1.2px;
  color:var(--pl-ink-3);font-weight:700}
.article-nav .t{font-family:var(--pl-serif);font-size:16px;line-height:1.35}
.article-nav .next{text-align:right;align-items:flex-end}
@media(max-width:620px){.article-nav{grid-template-columns:1fr}.article-nav .next{text-align:left;align-items:flex-start}}

/* ── Înrudite ─────────────────────────────────────────────────────────── */
.related{max-width:var(--pl-wide);margin:0 auto;padding:10px 20px 44px}
.related-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:26px;
  padding-top:20px}
.related-item{display:flex;flex-direction:column;gap:9px}
.related-item .thumb{display:block;aspect-ratio:3/2;border-radius:6px;overflow:hidden;
  background:var(--pl-bg-2)}
.related-item .thumb img{width:100%;height:100%;object-fit:cover;display:block}
.related-item a.t{color:var(--pl-ink);font-family:var(--pl-serif);font-weight:600;
  font-size:16.5px;line-height:1.35}
.related-item a.t:hover{color:var(--pl-primary);text-decoration:none}

/* ── Comentarii ───────────────────────────────────────────────────────── */
.comments{max-width:var(--pl-max);margin:0 auto;padding:10px 20px 56px}
.comments h2{font-family:var(--pl-serif);font-size:23px;margin:28px 0 20px}
.comment{background:var(--pl-card);border:1px solid var(--pl-border);border-radius:8px;
  padding:18px 20px;margin-bottom:14px}
.comment-head{font-size:13px;color:var(--pl-ink-3);margin-bottom:7px}
.comment-head strong{color:var(--pl-ink);font-size:14.5px}
.comment-body{font-size:16px;color:var(--pl-ink-2);font-family:var(--pl-serif)}

.comment-form{background:var(--pl-card);border:1px solid var(--pl-border);border-radius:8px;
  padding:24px;margin-top:26px}
.comment-form h3{margin:0 0 6px;font-family:var(--pl-serif);font-size:20px}
.comment-form .note{font-size:13.5px;color:var(--pl-ink-3);margin:0 0 18px}
.comment-form label{display:block;font-size:13px;font-weight:600;margin-bottom:5px}
.comment-form input[type=text],.comment-form input[type=email],.comment-form textarea{
  width:100%;padding:11px 13px;border:1px solid var(--pl-border);border-radius:5px;
  font-family:inherit;font-size:15px;margin-bottom:15px;background:var(--pl-bg);color:var(--pl-ink)}
.comment-form input:focus,.comment-form textarea:focus{outline:none;border-color:var(--pl-primary);
  box-shadow:0 0 0 3px rgba(140,59,74,.13)}
.comment-form button{background:var(--pl-primary);color:#fff;border:none;border-radius:5px;
  padding:12px 26px;font-size:15px;font-weight:600;cursor:pointer;font-family:inherit}
.comment-form button:hover{background:var(--pl-primary-dark)}
.comment-form .errorlist{color:#B3283A;font-size:13px;list-style:none;padding:0;margin:-10px 0 12px}

/* ── Paginare ─────────────────────────────────────────────────────────── */
.pagination{display:flex;gap:12px;justify-content:center;align-items:center;
  padding:44px 20px 56px;flex-wrap:wrap}
.pagination a,.pagination span{padding:10px 19px;border:1px solid var(--pl-border);
  border-radius:5px;background:var(--pl-card);color:var(--pl-ink);font-size:14px}
.pagination a:hover{border-color:var(--pl-primary);color:var(--pl-primary);text-decoration:none}
.pagination .current{color:var(--pl-ink-3);border-color:transparent;background:transparent}

/* ── Subsol ───────────────────────────────────────────────────────────── */
.site-footer{background:var(--pl-bg-2);border-top:1px solid var(--pl-border);margin-top:20px}
.footer-inner{padding:44px 20px 32px;display:grid;
  grid-template-columns:1.6fr 1fr 1fr;gap:34px}
.footer-brand img{height:24px;width:auto;filter:var(--pl-logo-filter);margin-bottom:10px}
.footer-brand p{margin:0;font-family:var(--pl-serif);font-style:italic;font-size:15px}
.footer-col h2{font-size:11.5px;text-transform:uppercase;letter-spacing:1.3px;
  color:var(--pl-ink-3);margin:0 0 12px;font-weight:700}
.footer-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.footer-col a{color:var(--pl-ink-2);font-size:14.5px}
.footer-col a:hover{color:var(--pl-primary)}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;
  padding:18px 20px 26px;border-top:1px solid var(--pl-border);font-size:13.5px;flex-wrap:wrap;gap:12px}
.to-top{color:var(--pl-ink-3)}
.muted{color:var(--pl-ink-3)}
@media(max-width:760px){.footer-inner{grid-template-columns:1fr;gap:26px}}

/* ── Stări goale / erori ──────────────────────────────────────────────── */
.empty-state{max-width:var(--pl-max);margin:0 auto;padding:80px 20px;text-align:center}
.empty-state h1{font-family:var(--pl-serif);font-size:32px;margin:0 0 12px}
.empty-state p{color:var(--pl-ink-2);font-family:var(--pl-serif);font-size:17.5px}
.notice{background:var(--pl-primary-soft);border-left:3px solid var(--pl-primary);
  padding:14px 18px;border-radius:5px;margin:24px auto;max-width:var(--pl-max);font-size:14.5px}
