/* psk-news - CSS-ul temei. Portat din mockup/tema.css (aceleasi clase si tokenuri) + modulele noi:
   panou de meniu, banda de sectiuni ascunsa pe mobil, pagina de autor, cautare, 404, sloturi de reclama.
   Tokenurile din :root se suprascriu din child sau din Customizer (stil inline in head). */
:root {
  --fond: #F3F4F6;         /* fundalul paginii */
  --hartie: #FFFFFF;       /* cardurile, articolul */
  --ink: #141414; --ink2: #262626; --gri: #6B6B6B; --gri2: #9A9A9A;
  --accent: #C8102E;
  --accent-text: #A30D25; --accent-soft: #FBE9EC;
  --linie: #E4E6EA;
  --cap-fond: #FFFFFF; --cap-text: #141414;   /* header alb, ca HotNews */
  --umbra: 0 1px 2px rgba(20,20,20,.05), 0 8px 24px rgba(20,20,20,.07);
  --umbra-mare: 0 2px 6px rgba(20,20,20,.08), 0 20px 50px rgba(20,20,20,.14);
  --raza: 10px;
  --font-titlu: 'Plus Jakarta Sans', 'Jakarta fallback', system-ui, sans-serif;
  --font-corp: 'Plus Jakarta Sans', 'Jakarta fallback', system-ui, sans-serif;
  --font-ui: 'Plus Jakarta Sans', 'Jakarta fallback', system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --latime: 1180px;
}

/* ---------- fonturi self-hosted ---------- */
/* Plus Jakarta Sans (fontul HotNews): fisier variabil 500-800 de la Google Fonts, servit local, latin + latin-ext (diacritice RO). */
@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-weight: 500 800;
  font-display: swap;
  src: url('../fonturi/plus-jakarta-sans-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-weight: 500 800;
  font-display: swap;
  src: url('../fonturi/plus-jakarta-sans-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* fallback aliniat la Jakarta, ca schimbul de font sa nu miste randurile (CLS) */
@font-face {
  font-family: 'Jakarta fallback';
  src: local('Segoe UI'), local('Arial'), local('Helvetica Neue');
  size-adjust: 104%;
  ascent-override: 100%;
  descent-override: 26%;
  line-gap-override: 0%;
}
/* Archivo 900, doar literele N E W S 2 4: marca */
@font-face {
  font-family: 'PSK Marca';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url('../fonturi/archivo-logo.woff2') format('woff2');
  unicode-range: U+32, U+34, U+45, U+4E, U+53, U+57;
}
* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; background: var(--fond); color: var(--ink); font-family: var(--font-ui); line-height: 1.5; }
img { max-width: 100%; height: auto; display: block; }
a { color: inherit; }
h1, h2, h3, h4 { margin: 0; font-weight: 700; line-height: 1.2; text-wrap: balance; }
.shell { max-width: var(--latime); margin: 0 auto; padding: 0 16px; }
@media (min-width: 900px) { .shell { padding: 0 24px; } }
.etich { display: inline-flex; align-items: center; gap: 6px; font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--gri); font-weight: 700; text-decoration: none; }
.etich b { color: var(--accent-text); }
.etich time { margin-left: auto; letter-spacing: 0; text-transform: none; font-weight: 600; }
.sageata { color: var(--accent-text); }
.btn-linie { display: inline-block; border: 1px solid var(--linie); background: var(--hartie); border-radius: 8px; padding: 9px 14px; font-size: 13px; font-weight: 700; text-decoration: none; }
.btn-linie:hover { border-color: var(--accent); color: var(--accent-text); }

/* accesibilitate: skip link + focus vizibil peste tot */
.sari-la { position: absolute; left: -9999px; top: 0; z-index: 100; background: var(--hartie); color: var(--ink); padding: 10px 16px; border-radius: 0 0 8px 0; font-weight: 700; font-size: 14px; }
.sari-la:focus { left: 0; }
:focus-visible { outline: 3px solid var(--accent); outline-offset: 2px; border-radius: 3px; }
.doar-cititor, .screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px,1px,1px,1px); clip-path: inset(50%); white-space: nowrap; }

/* imagine lipsa: pastram raportul, fara salt de layout */
.fara-img { display: block; width: 100%; height: 100%; background: linear-gradient(135deg, var(--fond), var(--linie)); }

/* ---------- header (ca HotNews: bara alba, cautare stanga, sigla centrata, Google News dreapta) ---------- */
.cap { background: var(--cap-fond, #fff); color: var(--cap-text, var(--ink)); border-bottom: 1px solid var(--linie); }
.cap-rand { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; height: 60px; gap: 10px; }
@media (min-width: 900px) { .cap-rand { height: 84px; } }
.cap-stanga { display: flex; align-items: center; gap: 8px; min-width: 0; }
.cap-dreapta { display: flex; justify-content: flex-end; align-items: center; min-width: 0; }
.ico { width: 44px; height: 44px; border: 0; background: none; display: grid; place-content: center; gap: 5px; cursor: pointer; padding: 0; color: inherit; margin-left: -10px; }
.ico span { display: block; width: 22px; height: 2px; background: currentColor; border-radius: 2px; }
@media (min-width: 900px) { .ico { display: none; } }
.cauta { display: none; align-items: center; gap: 6px; border-bottom: 1px solid var(--linie); padding: 4px 0; max-width: 240px; }
@media (min-width: 900px) { .cauta { display: flex; } }
.cauta__btn { border: 0; background: none; padding: 4px; color: var(--gri); cursor: pointer; display: grid; place-content: center; }
.cauta__btn:hover { color: var(--ink); }
.cauta__camp { border: 0; background: none; font: inherit; font-size: 14px; color: var(--ink); width: 150px; outline: none; }
.cauta__camp::placeholder { color: var(--gri2); }
.cauta:focus-within { border-bottom-color: var(--ink); }
.logo { justify-self: center; display: inline-flex; align-items: center; gap: 7px; text-decoration: none; font-family: 'PSK Marca', 'Arial Black', Impact, sans-serif; font-weight: 900; letter-spacing: -.03em; line-height: 1; }
.logo img { max-height: 44px; width: auto; display: block; }
@media (min-width: 900px) { .logo img { max-height: 56px; } }
.logo-news { color: var(--ink); font-size: 30px; }
.logo-24 { background: var(--accent); color: #fff; border-radius: 6px; padding: 2px 7px 4px; font-size: 30px; letter-spacing: -.02em; }
@media (min-width: 900px) { .logo-news { font-size: 36px; } .logo-24 { font-size: 36px; padding: 2px 8px 4px; border-radius: 7px; } }
.logo-mic .logo-news, .logo-mic .logo-24 { font-size: 22px; } .logo-mic .logo-24 { padding: 1px 6px 3px; border-radius: 5px; }
.btn-gn { display: inline-flex; align-items: center; gap: 8px; height: 38px; padding: 0 14px 0 12px; border-radius: 19px; background: var(--ink); color: #fff; text-decoration: none; font-size: 12.5px; font-weight: 700; white-space: nowrap; }
.btn-gn:hover { background: #000; }
.btn-gn svg { background: #fff; border-radius: 50%; padding: 2px; box-sizing: content-box; }
.btn-gn span { display: none; }
@media (min-width: 900px) { .btn-gn span { display: inline; } }
@media (max-width: 899px) { .btn-gn { width: 38px; padding: 0; justify-content: center; margin-right: -6px; } }
/* banda de sectiuni: fond deschis, majuscule, mai inalta; "Mai mult" pentru ce nu incape; data in dreapta */
.nav { background: var(--fond); border-bottom: 1px solid var(--linie); }
.nav-rand { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.nav-lista { display: flex; align-items: center; gap: 26px; list-style: none; margin: 0; padding: 0; min-width: 0; }
.nav-lista > li { flex: none; position: relative; }
.nav-lista a, .nav-mai__btn { display: inline-flex; align-items: center; height: 46px; font-size: 12.5px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; text-decoration: none; color: var(--ink2); border: 0; border-bottom: 3px solid transparent; border-top: 3px solid transparent; background: none; padding: 0; cursor: pointer; font-family: var(--font-ui); }
.nav-lista > li > a.activ, .nav-lista > li > a:hover, .nav-mai__btn:hover, .nav-mai:focus-within .nav-mai__btn { color: var(--accent-text); border-bottom-color: var(--accent); }
.nav-mai__sageata { font-size: 10px; margin-left: 5px; }
.nav-mai__lista { display: none; position: absolute; left: -14px; top: 100%; z-index: 60; min-width: 220px; margin: 0; padding: 8px 0; list-style: none; background: var(--hartie); border: 1px solid var(--linie); border-radius: 0 0 10px 10px; box-shadow: var(--umbra-mare); }
.nav-mai:hover .nav-mai__lista, .nav-mai:focus-within .nav-mai__lista { display: block; }
.nav-mai__lista a { display: block; height: auto; padding: 9px 16px; border: 0; text-transform: none; letter-spacing: 0; font-size: 14px; font-weight: 700; }
.nav-mai__lista a:hover, .nav-mai__lista a.activ { color: var(--accent-text); background: var(--fond); }
.nav-data { flex: none; font-size: 12px; font-weight: 600; color: var(--gri); white-space: nowrap; }
@media (max-width: 1100px) { .nav-data { display: none; } }
/* pe mobil sectiunile stau doar in panoul de meniu, banda dispare */
@media (max-width: 899px) { .nav { display: none; } }

/* ---------- panou de meniu (hamburger) ---------- */
.panou { position: fixed; inset: 0; z-index: 90; }
.panou[hidden] { display: none; }
.panou__fundal { position: absolute; inset: 0; background: rgba(10,10,10,.5); border: 0; width: 100%; cursor: pointer; }
.panou__box { position: absolute; left: 0; top: 0; bottom: 0; width: min(88vw, 360px); background: var(--hartie); box-shadow: var(--umbra-mare); overflow-y: auto; padding: 0 0 24px; }
.panou__cap { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 12px 16px; background: var(--hartie); color: var(--ink); border-bottom: 1px solid var(--linie); }
.panou__cap .logo { justify-self: start; }
.panou__inchide { width: 40px; height: 40px; border: 0; background: none; color: var(--cap-text); font-size: 26px; line-height: 1; cursor: pointer; border-radius: 8px; }
.panou__cauta { display: flex; gap: 8px; padding: 12px 16px 4px; }
.panou__cauta input { flex: 1; min-width: 0; border: 1px solid var(--linie); border-radius: 8px; padding: 10px 12px; font: inherit; font-size: 15px; }
.panou__cauta button { border: 0; background: var(--ink); color: #fff; border-radius: 8px; padding: 0 14px; font-weight: 700; cursor: pointer; }
.panou__lista { list-style: none; margin: 0; padding: 6px 16px; }
.panou__lista li { border-top: 1px solid var(--linie); }
.panou__lista > li:first-child { border-top: 0; }
.panou__lista a { display: block; padding: 12px 0; font-size: 15px; font-weight: 700; text-decoration: none; }
.panou__lista a:hover { color: var(--accent-text); }
.panou__lista .sub-menu { list-style: none; margin: 0 0 8px; padding: 0 0 0 14px; }
.panou__lista .sub-menu a { font-size: 14px; font-weight: 600; padding: 9px 0; color: var(--gri); }
.panou__social { display: flex; flex-wrap: wrap; gap: 8px; padding: 14px 16px 0; }
body.panou-deschis { overflow: hidden; }

/* ---------- carduri ---------- */
.card-ov { position: relative; display: block; border-radius: var(--raza); overflow: hidden; box-shadow: var(--umbra); aspect-ratio: 4/3; background: #222; color: #fff; text-decoration: none; }
.card-ov img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.card-ov::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,0,0,0) 35%, rgba(0,0,0,.78) 100%); }
.card-ov__text { position: absolute; left: 0; right: 0; bottom: 0; z-index: 1; padding: 16px; }
.card-ov .etich { color: rgba(255,255,255,.85); }
.card-ov .etich b { color: #fff; background: var(--accent); padding: 2px 6px; border-radius: 4px; }
.card-ov h3 { font-family: var(--font-titlu); font-size: 16.5px; font-weight: 800; letter-spacing: -.01em; line-height: 1.25; margin-top: 8px; text-shadow: 0 1px 8px rgba(0,0,0,.5); }
.card-ov--mare { aspect-ratio: 16/10; }
.card-ov--mare h2 { font-family: var(--font-titlu); font-size: clamp(22px, 4.6vw, 32px); font-weight: 800; letter-spacing: -.02em; line-height: 1.15; margin-top: 10px; text-shadow: 0 1px 10px rgba(0,0,0,.55); }
@media (min-width: 900px) { .card-ov--mare { aspect-ratio: 16/9; } .card-ov--mare .card-ov__text { padding: 26px 28px; } }

.card-top { background: var(--hartie); border-radius: var(--raza); box-shadow: var(--umbra); overflow: hidden; display: flex; flex-direction: column; }
.card-top__img { display: block; aspect-ratio: 16/10; overflow: hidden; }
.card-top__img img { width: 100%; height: 100%; object-fit: cover; }
.card-top .etich { padding: 12px 14px 0; }
.card-top h2, .card-top h3 { font-family: var(--font-titlu); padding: 6px 14px 14px; font-size: 16px; font-weight: 800; letter-spacing: -.01em; line-height: 1.28; }
.card-top h2 { font-size: clamp(20px, 2.2vw, 26px); }
.card-top a { text-decoration: none; }
.card-top .dek { padding: 0 14px 14px; margin: -6px 0 0; color: var(--gri); font-size: 14px; line-height: 1.55; }

.rand { display: grid; grid-template-columns: 1fr 96px; gap: 12px; align-items: start; padding: 12px 0; border-top: 1px solid var(--linie); }
.rand:first-child { border-top: 0; }
.rand h3 { font-family: var(--font-titlu); font-size: 15px; font-weight: 800; letter-spacing: -.01em; line-height: 1.3; margin-top: 4px; }
.rand h3 a { text-decoration: none; }
.rand__img { display: block; aspect-ratio: 4/3; border-radius: 6px; overflow: hidden; }
.rand__img img { width: 100%; height: 100%; object-fit: cover; }
@media (min-width: 900px) { .rand { grid-template-columns: 1fr 120px; } }

/* ---------- homepage ---------- */
.grila-home { display: grid; gap: 22px; padding: 16px 16px 40px; }
@media (min-width: 1000px) { .grila-home { grid-template-columns: minmax(0, 1fr) 320px; gap: 28px; padding-top: 22px; } }
.col-principal { min-width: 0; display: grid; gap: 22px; }
.trei { display: grid; gap: 14px; }
.doua-mari { display: grid; gap: 14px; }
@media (min-width: 640px) { .doua-mari { grid-template-columns: 1fr 1fr; } }
@media (min-width: 640px) { .trei { grid-template-columns: repeat(3, 1fr); } }
.doua-col { display: grid; gap: 18px; }
@media (min-width: 900px) { .doua-col { grid-template-columns: 1.15fr 1fr; align-items: stretch; } .doua-col__mare .card-top { height: 100%; } .doua-col__lista { display: flex; flex-direction: column; } .doua-col__lista .rand { flex: 1 1 0; align-items: center; } }
.doua-col__lista { background: var(--hartie); border-radius: var(--raza); box-shadow: var(--umbra); padding: 4px 14px; }
.grila-randuri { background: var(--hartie); border-radius: var(--raza); box-shadow: var(--umbra); padding: 4px 14px; display: grid; }
@media (min-width: 900px) { .grila-randuri { grid-template-columns: 1fr 1fr; column-gap: 28px; } .grila-randuri .rand:nth-child(2) { border-top: 0; } }
.patru { display: grid; gap: 14px; }
@media (min-width: 640px) { .patru { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1000px) { .patru { grid-template-columns: repeat(4, 1fr); } }
.sectiune-cap { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; font-family: var(--font-titlu); font-size: 21px; font-weight: 800; letter-spacing: -.02em; padding-bottom: 8px; border-bottom: 2px solid var(--ink); }
.sectiune-cap a { font-family: var(--font-ui); font-size: 13px; font-weight: 700; text-decoration: none; color: var(--gri); }
.sectiune-cap--rosu { border-bottom-color: var(--accent); color: var(--accent-text); font-family: var(--font-ui); font-size: 15px; letter-spacing: .06em; text-transform: uppercase; }
.mai-mult { text-align: center; margin: 4px 0 0; }
.bloc-cat { display: grid; gap: 14px; }
.sidebar { display: grid; gap: 22px; align-content: start; }
@media (min-width: 1000px) { .sidebar { align-self: stretch; } .sidebar > .bloc:last-child { position: sticky; top: 16px; } }
.bloc { background: var(--hartie); border-radius: var(--raza); box-shadow: var(--umbra); padding: 14px 16px 12px; }
.bloc-cap { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; padding-bottom: 10px; margin-bottom: 4px; border-bottom: 2px solid var(--ink); }
.bloc-cap h2 { font-family: var(--font-titlu); font-size: 20px; font-weight: 800; letter-spacing: -.02em; }
.bloc-cap a { font-size: 12px; font-weight: 700; text-decoration: none; color: var(--gri); }
.bloc-sub { font-size: 12px; font-weight: 700; color: var(--gri); text-transform: uppercase; letter-spacing: .08em; }
.ultima { list-style: none; margin: 0; padding: 0; }
.ultima li { display: grid; grid-template-columns: minmax(0, 1fr) 56px; gap: 10px; align-items: start; padding: 11px 0; border-top: 1px solid var(--linie); }
.ultima li:first-child { border-top: 0; }
.ultima .etich time { margin: 0; font-size: 11px; font-weight: 700; color: var(--gri); font-variant-numeric: tabular-nums; letter-spacing: 0; text-transform: none; }
.ultima li.acum .etich time { color: var(--accent-text); }
.ultima li.acum .etich time::before { content: ""; display: inline-block; width: 6px; height: 6px; border-radius: 50%; background: var(--accent); margin-right: 5px; vertical-align: 1px; box-shadow: 0 0 0 3px var(--accent-soft); }
.ultima .etich { font-size: 10.5px; gap: 5px; }
.ultima div a { display: block; margin-top: 3px; font-size: 14px; font-weight: 700; line-height: 1.32; text-decoration: none; }
.ultima div a:hover { color: var(--accent-text); }
.ultima .mini { display: block; aspect-ratio: 1; border-radius: 6px; overflow: hidden; background: var(--fond); }
.ultima .mini img { width: 100%; height: 100%; object-fit: cover; }
.citite { margin: 0; padding: 0; list-style: none; }
.citite li { border-top: 1px solid var(--linie); }
.citite li:first-child { border-top: 0; }
.citite a { display: grid; grid-template-columns: 26px minmax(0, 1fr) 56px; gap: 10px; align-items: center; padding: 10px 0; text-decoration: none; }
.citite .nr { font-family: var(--font-titlu); font-size: 26px; line-height: 1; color: var(--accent); font-weight: 800; }
.citite .t { font-size: 14px; font-weight: 700; line-height: 1.32; }
.citite img { width: 56px; height: 56px; object-fit: cover; border-radius: 6px; background: var(--fond); }
.citite .fara-img { width: 56px; height: 56px; border-radius: 6px; }
.bloc--urmareste { background: var(--ink); color: #fff; }
.bloc--urmareste h2 { font-family: var(--font-titlu); font-size: 20px; margin-bottom: 6px; }
.bloc--urmareste p { margin: 0 0 12px; font-size: 13.5px; color: rgba(255,255,255,.75); line-height: 1.5; }
.urm-btn { display: flex; flex-wrap: wrap; gap: 8px; }
.btn-plin { display: inline-block; background: #fff; color: var(--ink); border-radius: 8px; padding: 9px 14px; font-size: 13px; font-weight: 700; text-decoration: none; }
.bloc--urmareste .btn-linie { background: transparent; color: #fff; border-color: rgba(255,255,255,.35); }

/* ---------- categorie / eticheta ---------- */
.fir { font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--gri); padding: 14px 0 6px; }
.fir a { text-decoration: none; }
.cap-cat { background: var(--hartie); border-radius: var(--raza); box-shadow: var(--umbra); padding: 18px 18px 16px; margin: 6px 0 18px; }
.cap-cat h1 { font-family: var(--font-titlu); font-size: clamp(28px, 3.6vw, 40px); font-weight: 800; letter-spacing: -.025em; margin-bottom: 8px; }
.cap-cat__desc { margin: 0; color: var(--ink2); font-size: 15px; line-height: 1.65; max-width: 900px; }
.cap-cat__desc a { color: var(--accent-text); font-weight: 700; text-decoration: none; }
.cap-cat__text p { margin: 0 0 10px; }
.cap-cat__text p:last-child { margin-bottom: 0; }
.cap-cat__text h2, .cap-cat__text h3 { font-family: var(--font-titlu); font-size: 17px; font-weight: 800; letter-spacing: -.01em; margin: 14px 0 6px; color: var(--ink); }
.cap-cat__text ul { margin: 0 0 10px; padding-left: 20px; }
.cap-cat__text li { margin: 0 0 4px; }
/* pliat: ~4 randuri + estompare; JS-ul (tema.js) comuta clasa; fara JS ramane desfacut */
.js .cap-cat__desc--pliabil .cap-cat__text { position: relative; max-height: 6.6em; overflow: hidden; }
.js .cap-cat__desc--pliabil .cap-cat__text::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 2.6em; background: linear-gradient(180deg, rgba(255,255,255,0), var(--hartie) 85%); }
.js .cap-cat__desc--pliabil.desfacut .cap-cat__text { max-height: none; }
.js .cap-cat__desc--pliabil.desfacut .cap-cat__text::after { display: none; }
.cap-cat__comutator { display: none; margin-top: 8px; border: 0; background: none; padding: 0; color: var(--accent-text); font: inherit; font-weight: 700; cursor: pointer; }
.js .cap-cat__desc--pliabil .cap-cat__comutator { display: inline-block; }
@media (min-width: 900px) { .cap-cat { padding: 26px 28px 22px; } }
.cat-hero { display: grid; gap: 14px; margin: 16px 0; }
@media (min-width: 900px) { .cat-hero { grid-template-columns: 2fr 1fr; align-items: stretch; } .cat-hero__lat { display: grid; grid-template-rows: 1fr 1fr; gap: 14px; } .cat-hero__lat .card-top { height: 100%; } .cat-hero__lat .card-top__img { flex: 1 1 0; aspect-ratio: auto; min-height: 140px; } .cat-hero__lat .card-top__img img { min-height: 0; } .cat-hero__mare .card-top { height: 100%; } .cat-hero__mare .card-top__img { aspect-ratio: 16/9.5; } }
.grila-cat { display: grid; gap: 22px; margin-top: 18px; }
@media (min-width: 1000px) { .grila-cat { grid-template-columns: minmax(0, 1fr) 320px; gap: 28px; } }
.lista-mare { background: var(--hartie); border-radius: var(--raza); box-shadow: var(--umbra); padding: 6px 16px 18px; }
.rand--mare { grid-template-columns: 1fr 140px; grid-template-areas: "t img" "d img"; gap: 6px 14px; padding: 16px 0; }
.rand--mare .rand__t { grid-area: t; } .rand--mare .rand__img { grid-area: img; aspect-ratio: 16/10; border-radius: 8px; } .rand--mare .dek { grid-area: d; margin: 0; color: var(--gri); font-size: 14px; line-height: 1.5; }
.rand--mare h3 { font-size: 18px; }
@media (min-width: 900px) { .rand--mare { grid-template-columns: 1fr 240px; gap: 6px 20px; } .rand--mare h3 { font-size: 20px; } }
.lista-mare .paginare { margin: 18px 0 4px; }
.paginare { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin: 24px 0 40px; font-weight: 700; font-size: 14px; }
.paginare a, .paginare span { min-width: 38px; height: 38px; display: inline-flex; align-items: center; justify-content: center; padding: 0 10px; border-radius: 8px; border: 1px solid var(--linie); background: var(--hartie); text-decoration: none; }
.paginare .activ { background: var(--ink); color: #fff; border-color: var(--ink); }
.paginare .urm { margin-left: auto; }

/* ---------- articol (Veritate) ---------- */
.grila-articol { display: grid; gap: 22px; padding-bottom: 40px; }
@media (min-width: 1000px) { .grila-articol { grid-template-columns: minmax(0, 1fr) 320px; gap: 36px; padding-top: 6px; } }
.articol { max-width: 800px; min-width: 0; }
.grila-articol .sidebar { padding-top: 46px; }
.articol h1 { font-family: var(--font-titlu); font-size: clamp(26px, 3.8vw, 40px); font-weight: 800; line-height: 1.15; letter-spacing: -.025em; margin: 6px 0 12px; }
.articol .dek { font-family: var(--font-corp); font-size: 18px; font-weight: 500; color: var(--gri); margin: 0 0 16px; line-height: 1.5; }
.meta-rand { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; padding: 12px 0; border-top: 1px solid var(--linie); border-bottom: 1px solid var(--linie); }
.semneaza { display: inline-flex; align-items: center; gap: 10px; text-decoration: none; font-size: 14px; }
.avatar { width: 34px; height: 34px; border-radius: 50%; background: var(--accent-soft); color: var(--accent-text); display: grid; place-content: center; font-weight: 800; font-family: var(--font-titlu); overflow: hidden; flex: none; }
.avatar img { width: 100%; height: 100%; object-fit: cover; border-radius: 50%; }
.avatar--mare { width: 56px; height: 56px; font-size: 22px; }
.pastile { display: flex; flex-wrap: wrap; gap: 6px; }
.pastila { display: inline-flex; align-items: center; gap: 6px; border: 1px solid var(--linie); background: var(--hartie); border-radius: 20px; padding: 6px 12px; font-size: 12px; font-weight: 700; color: var(--ink2); }
button.pastila { cursor: pointer; font-family: inherit; }
.foto-hero { margin: 18px 0 0; }
.foto-hero img { width: 100%; aspect-ratio: 16/9; object-fit: cover; border-radius: var(--raza); box-shadow: var(--umbra-mare); }
.foto-hero figcaption { font-size: 12.5px; color: var(--gri); margin: 8px 2px 0; text-align: right; font-style: italic; }
.psk-gs { display: flex; align-items: center; justify-content: center; gap: 14px; margin: 18px 0 22px; padding: 8px; background: var(--hartie); border: 1px solid var(--linie); border-radius: var(--raza); box-shadow: var(--umbra); font-size: 14px; font-weight: 700; line-height: 1.15; }
.psk-gs__logo { flex: 0 0 auto; }
.psk-gs__btn { flex: 1 1 0; display: flex; align-items: center; justify-content: center; text-align: center; min-height: 44px; padding: 11px 16px; border-radius: 8px; text-decoration: none; color: var(--ink); background: var(--fond); }
.psk-gs__btn--discover { background: var(--ink); color: #fff; }
@media (max-width: 600px) { .psk-gs { flex-wrap: wrap; gap: 8px; } .psk-gs__logo { order: -1; width: 100%; height: 28px; } .psk-gs__btn { flex: 1 1 100%; font-size: 13px; } }
.fapte { margin: 0 0 24px; background: var(--hartie); border: 1px solid var(--linie); border-radius: var(--raza); box-shadow: var(--umbra); padding: 16px 20px 12px; }
.fapte h5 { margin: 0 0 8px; font-size: 11px; letter-spacing: .18em; text-transform: uppercase; color: var(--accent-text); font-weight: 800; }
.fapte ul { margin: 0; padding: 0; list-style: none; }
.fapte li { padding: 8px 0 8px 22px; position: relative; font-size: 15px; line-height: 1.5; border-top: 1px solid var(--linie); }
.fapte li:first-child { border-top: 0; }
.fapte li::before { content: ""; position: absolute; left: 2px; top: 16px; width: 7px; height: 7px; border-radius: 50%; background: var(--accent); }
.corp { font-family: var(--font-corp); font-size: 17px; font-weight: 500; line-height: 1.7; color: var(--ink2); }
.corp p { margin: 0 0 19px; }
/* sapoul redactiei ramane bold sans daca a ramas in corp; cand tema il scoate sus, corpul incepe normal */
.corp .psk-sapou { font-family: var(--font-ui); font-weight: 700; font-size: 18px; line-height: 1.55; color: var(--ink); }
.corp h2 { font-family: var(--font-titlu); font-size: 23px; font-weight: 800; letter-spacing: -.02em; line-height: 1.22; margin: 28px 0 12px; color: var(--ink); }
.corp h3 { font-family: var(--font-titlu); font-size: 19px; font-weight: 800; margin: 22px 0 10px; }
.corp a { color: var(--accent-text); }
.corp ul, .corp ol { margin: 0 0 19px; padding-left: 22px; }
.corp li { margin: 0 0 8px; }
.corp blockquote { margin: 0 0 19px; padding: 10px 18px; border-left: 3px solid var(--accent); color: var(--gri); font-style: italic; }
.corp figure { margin: 0 0 19px; } .corp figcaption { font-size: 12.5px; color: var(--gri); font-family: var(--font-ui); margin-top: 6px; }
.corp img { border-radius: 8px; }
.corp table { width: 100%; border-collapse: collapse; margin: 0 0 19px; font-family: var(--font-ui); font-size: 15px; }
.corp th, .corp td { border: 1px solid var(--linie); padding: 8px 10px; text-align: left; }
.citeste-inline { margin: 6px 0 22px; padding: 12px 16px; border-left: 4px solid var(--accent); background: var(--hartie); border-radius: 0 8px 8px 0; box-shadow: var(--umbra); font-family: var(--font-ui); }
.citeste-inline .etich { display: block; margin-bottom: 4px; }
.citeste-inline a { display: block; font-size: 15px; font-weight: 700; line-height: 1.35; text-decoration: none; padding: 4px 0; }
.citeste-inline a:hover { color: var(--accent-text); }
.distribuie { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; padding: 14px 0; border-top: 1px solid var(--linie); border-bottom: 1px solid var(--linie); margin: 0 0 26px; }
.share-btn { display: inline-flex; align-items: center; min-height: 36px; padding: 0 14px; border-radius: 18px; border: 1px solid var(--linie); background: var(--hartie); font-size: 13px; font-weight: 700; text-decoration: none; }
button.share-btn { cursor: pointer; font-family: inherit; color: inherit; }
.share-btn--fb { background: #0B5ED7; color: #fff; border-color: #0B5ED7; } /* 5,4:1, AA */ .share-btn--x { background: #000; color: #fff; border-color: #000; } .share-btn--wa { background: #128C4A; color: #fff; /* 4,9:1, AA */ border-color: #25D366; }
.taguri { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin: 22px 0; }
.taguri a { border: 1px solid var(--linie); background: var(--hartie); border-radius: 20px; padding: 6px 12px; font-size: 12.5px; font-weight: 700; text-decoration: none; }
.autor-caseta { display: grid; grid-template-columns: 56px 1fr; gap: 14px; background: var(--hartie); border: 1px solid var(--linie); border-radius: var(--raza); padding: 16px; margin: 0 0 26px; }
.autor-caseta h3 { font-family: var(--font-titlu); font-size: 18px; margin-bottom: 4px; }
.autor-caseta h3 a { text-decoration: none; }
.autor-caseta p { margin: 0; color: var(--gri); font-size: 14px; line-height: 1.55; }
.autor-caseta p a { color: var(--accent-text); font-weight: 700; text-decoration: none; }
.citeste-si .sectiune-cap { margin-bottom: 14px; }

.parteneri { margin-top: 26px; }
.sectiune-cap__nota { font-family: var(--font-ui); font-size: 12px; font-weight: 600; color: var(--gri); }
.parteneri__grila { display: grid; gap: 12px; margin-top: 14px; grid-template-columns: repeat(2, 1fr); }
@media (min-width: 640px) { .parteneri__grila { grid-template-columns: repeat(3, 1fr); } }
.partener { display: flex; flex-direction: column; background: var(--hartie); border-radius: var(--raza); box-shadow: var(--umbra); overflow: hidden; text-decoration: none; }
.partener__img { display: block; aspect-ratio: 16/10; overflow: hidden; }
.partener__img img { width: 100%; height: 100%; object-fit: cover; }
.partener__sursa { display: inline-block; margin: 10px 12px 0; font-size: 10.5px; letter-spacing: .12em; text-transform: uppercase; font-weight: 800; color: var(--accent-text); }
.partener__titlu { display: block; padding: 4px 12px 12px; font-family: var(--font-titlu); font-size: 14.5px; line-height: 1.3; font-weight: 800; letter-spacing: -.01em; }

/* ---------- pagina de autor ---------- */
.autor-cap { display: grid; grid-template-columns: 76px 1fr; gap: 18px; align-items: start; background: var(--hartie); border-radius: var(--raza); box-shadow: var(--umbra); padding: 20px; margin: 6px 0 18px; }
.autor-cap .avatar { width: 76px; height: 76px; font-size: 30px; }
.autor-cap h1 { font-family: var(--font-titlu); font-size: clamp(26px, 3.4vw, 38px); margin-bottom: 6px; }
.autor-cap__bio { margin: 0 0 10px; color: var(--gri); font-size: 15px; line-height: 1.6; max-width: 760px; }
.autor-cap__meta { display: flex; flex-wrap: wrap; gap: 8px; }
@media (min-width: 900px) { .autor-cap { padding: 26px 28px; } }

/* ---------- cautare, pagina, 404 ---------- */
.cauta-form { display: flex; gap: 8px; flex-wrap: wrap; margin: 12px 0 0; }
.cauta-form input[type="search"] { flex: 1 1 220px; min-width: 0; height: 42px; padding: 0 14px; border: 1px solid var(--linie); border-radius: 8px; background: var(--hartie); font-size: 15px; font-family: inherit; color: var(--ink); }
.cauta-form button { height: 42px; padding: 0 18px; border: 0; border-radius: 8px; background: var(--ink); color: #fff; font-weight: 700; font-size: 14px; cursor: pointer; font-family: inherit; }
.pagina { background: var(--hartie); border-radius: var(--raza); box-shadow: var(--umbra); padding: 20px; margin: 6px 0 26px; max-width: 860px; }
@media (min-width: 900px) { .pagina { padding: 30px 34px; } }
.pagina h1 { font-family: var(--font-titlu); font-size: clamp(28px, 4vw, 42px); margin-bottom: 14px; }
.eroare { text-align: center; padding: 26px 0 6px; }
.eroare__nr { font-family: var(--font-titlu); font-size: clamp(64px, 14vw, 120px); line-height: 1; color: var(--accent); font-weight: 800; }
.eroare h1 { font-family: var(--font-titlu); font-size: clamp(24px, 3.4vw, 34px); margin: 6px 0 10px; }
.eroare p { color: var(--gri); margin: 0 auto 16px; max-width: 560px; font-size: 15px; line-height: 1.6; }
.eroare .cauta-form { max-width: 460px; margin: 0 auto 8px; }
.gol { background: var(--hartie); border-radius: var(--raza); box-shadow: var(--umbra); padding: 22px; color: var(--gri); font-size: 15px; line-height: 1.6; }

/* ---------- sloturi de reclama (pregatite, ascunse pana la activare) ---------- */
.reclama { display: none; }
.reclama--activ { display: block; margin: 0 0 22px; min-height: 100px; background: var(--hartie); border: 1px dashed var(--linie); border-radius: var(--raza); }
.reclama--sidebar.reclama--activ { min-height: 250px; }

/* ---------- subsol ---------- */
.subsol { background: var(--subsol-fond, var(--ink)); color: var(--subsol-text, rgba(255,255,255,.72)); margin-top: 34px; padding: 34px 0 20px; }
.subsol a { color: inherit; text-decoration: none; }
.subsol a:hover { color: var(--subsol-hover, #fff); }
.subsol-sus { display: grid; gap: 26px; }
@media (min-width: 720px) { .subsol-sus { grid-template-columns: 1fr 1fr; } }
@media (min-width: 1000px) { .subsol-sus { grid-template-columns: 1.5fr 1.4fr 1fr 1fr; gap: 32px; } }
.subsol-brand .logo { justify-self: start; }
.subsol .logo-news { color: var(--subsol-titlu, #fff); }
.subsol-desc { color: var(--subsol-text, rgba(255,255,255,.72)); font-size: 14px; line-height: 1.6; margin: 12px 0 0; max-width: 360px; }
.subsol-social { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px; }
.social-btn { display: inline-flex; align-items: center; gap: 7px; min-height: 34px; padding: 0 13px; border-radius: 17px; border: 1px solid var(--subsol-linie, rgba(255,255,255,.22)); font-size: 12.5px; font-weight: 700; }
.social-btn:hover { border-color: var(--subsol-hover, #fff); background: rgba(255,255,255,.06); }
.subsol a.social-btn--gn { background: #fff; color: var(--ink); border-color: #fff; } /* .subsol a e mai specific decat .social-btn--gn: fara .subsol in fata, textul ramanea alb pe alb */
.subsol a.social-btn--gn:hover { color: var(--ink); background: #f1f1f1; }
.subsol-titlu { font-size: 11.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--subsol-titlu, #fff); font-weight: 800; margin-bottom: 12px; }
.subsol ul { list-style: none; margin: 0; padding: 0; }
.subsol li { margin: 0 0 9px; }
.subsol li a { font-size: 14px; font-weight: 600; }
.subsol-doua { display: grid; grid-template-columns: 1fr 1fr; grid-auto-flow: column; grid-template-rows: repeat(5, auto); gap: 0 18px; } /* se umple prima coloana, apoi a doua (citit pe verticala) */
.subsol-jos { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 18px; margin-top: 20px; padding-top: 16px; border-top: 1px solid var(--subsol-linie, rgba(255,255,255,.16)); }
.legal { margin: 0; font-size: 12.5px; color: var(--subsol-text, rgba(255,255,255,.72)); }
.legal__editor { display: inline-block; margin-left: 10px; padding-left: 10px; border-left: 1px solid var(--subsol-linie, rgba(255,255,255,.22)); }
.subsol-jos__linkuri { margin: 0; display: flex; flex-wrap: wrap; gap: 16px; font-size: 12.5px; font-weight: 700; }
@media (max-width: 719px) { .legal__editor { display: block; margin: 4px 0 0; padding: 0; border: 0; } }
