
/* ==================================================================================== */
/* ---------- Noua România (2026-10): everything below is specific to nouaromania.eu ---------- */
/* Loaded after site.css (the Nove Europa stylesheet, unchanged). Approved choices: wordmark "Noua România .eu"
   (Spectral 400, hairline gap, same colour), thin tricolour line under the menu bar, phone bar on two
   lines (name above, menu below), home = cover + chapters with the map tile + sub-projects + articles. */

/* Menu bar: wordmark instead of the badge */
.nr .wm { font: 400 1.75rem/1.1 "Spectral", "Georgia", serif; letter-spacing: -0.01em; color: var(--on-dark); text-decoration: none; white-space: nowrap; }
.nr .wm .tld { margin-left: 0.14em; }
.nr .mast-in { padding-block: 14px; }
.nr .mast nav a { font-size: 1rem; }

/* Thin tricolour line along the bottom of the menu bar (the reading progress line runs just below it, see the end of this file) */
.nr .tri { display: flex; height: 4px; }
.nr .tri i { flex: 1; }
.nr .tri i:nth-child(1) { background: #002b7f; }
.nr .tri i:nth-child(2) { background: #fcd116; }
.nr .tri i:nth-child(3) { background: #ce1126; }
.nr .progress { height: 4px; background: transparent; }

/* Tablets and small laptops: name and all five menu words stay on one line, also with enlarged browser text */
@media (min-width: 681px) and (max-width: 1100px) {
  .nr .wm { font-size: min(1.75rem, 3.4vw); }
  .nr .mast nav { flex-wrap: nowrap; column-gap: clamp(12px, 1.8vw, 24px); }
  .nr .mast nav a { font-size: min(1rem, 1.9vw); white-space: nowrap; }
}

/* Phones: two lines, name centred above, all menu words on one line below */
@media (max-width: 680px) {
  .nr .mast-in { flex-direction: column; flex-wrap: nowrap; align-items: stretch; gap: 2px; padding: 8px var(--gutter) 6px; }
  .nr .wm { align-self: center; font-size: 1.5rem; }
  .nr .mast nav { flex: none; width: 100%; justify-content: space-between; gap: 0; column-gap: 0; font-size: min(1rem, calc((100vw - 2 * var(--gutter)) / 25)); }
  .nr .mast nav a { font-size: 1em; padding: 7px 0; }
}
@media (min-width: 431px) and (max-width: 680px) { .nr .mast nav { justify-content: space-between; column-gap: 0; font-size: 1rem; } }

/* ---------- Home: cover ---------- */
.nr-cover { background: var(--burg-deep); color: var(--on-dark); --focus: var(--gold); }
.nr-cover-in { max-width: var(--wrap); margin: 0 auto; padding: clamp(40px, 5vw, 72px) var(--gutter) clamp(44px, 5.5vw, 76px); }
/* Wide screens: the cover title stays on one line, sized from its own column (same rule as Nove Europa) */
.nr-cover-in { container-type: inline-size; }
@media (min-width: 861px) { .nr .nr-cover h1 { font-size: min(4.1rem, 100cqw / 15); text-wrap: nowrap; white-space: nowrap; } }
.nr-eyebrow { margin: 0 0 12px; font: 600 0.85rem/1.4 var(--f-ui); letter-spacing: 0.08em; text-transform: uppercase; color: var(--gold-soft); }
.nr-cover h1 { margin: 0; font: 400 clamp(2.3rem, 5vw, 4.1rem)/1.08 "Spectral", "Georgia", serif; letter-spacing: -0.02em; text-wrap: balance; }
.nr-lead { margin: 16px 0 0; max-width: 40rem; font: 400 clamp(1.02rem, 1.4vw, 1.12rem)/1.55 var(--f-read); color: #d9c9c2; text-wrap: pretty; }
.nr .btn.nr-start { margin-top: 26px; padding: 15px 22px; background: var(--gold); color: var(--burg-ink); font-weight: 700; border-radius: 4px; }
.nr .btn.nr-start:hover { background: var(--gold-soft); }

/* ---------- Home: chapters (left) and the mind-map tile (right) ---------- */
.nr-model { max-width: var(--wrap); margin: 0 auto; padding: clamp(40px, 5vw, 64px) var(--gutter) clamp(48px, 6vw, 80px); display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 40px; align-items: start; }
.nr-model h2, .nr-sec h2 { margin: 0 0 18px; font: 700 clamp(1.5rem, 2.2vw, 1.85rem)/1.2 var(--f-head); letter-spacing: -0.02em; color: var(--burg); }
.nr-ch { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.nr-ch a { display: grid; grid-template-columns: 64px minmax(0, 1fr) auto; gap: 14px; align-items: center; padding: 15px 18px; background: #fff; border: 1px solid var(--paper-3); border-radius: 10px; color: var(--ink); text-decoration: none; transition: border-color 0.25s var(--ease), transform 0.35s var(--ease); }
.nr-ch a:hover { border-color: var(--gold); transform: translateX(3px); text-decoration: none; }
.nr-ch .num { font: 400 1.5rem/1 "Spectral", "Georgia", serif; color: var(--burg); }
.nr-ch .tt { font: 700 1.06rem/1.3 var(--f-head); letter-spacing: -0.01em; }
.nr-ch .min { font: 500 0.88rem/1.3 var(--f-ui); color: var(--ink-2); white-space: nowrap; }
.nr-ch a.soon { background: transparent; border: 1px dashed #b9ab95; }
.nr-ch a.soon .tt { color: var(--ink-2); }
.nr-ch .tag { display: inline-block; margin-left: 6px; padding: 1px 8px; border-radius: 4px; background: var(--paper-2); font: 500 0.8rem/1.5 var(--f-ui); letter-spacing: 0; color: var(--ink-2); vertical-align: 2px; }
.nr-map { position: sticky; top: calc(var(--stick, var(--mast-h, 84px)) + 16px); display: block; overflow: hidden; background: #fff; border: 1px solid var(--paper-3); border-radius: 12px; color: var(--ink); text-decoration: none; transition: border-color 0.25s var(--ease), top 0.4s var(--ease); }
.nr-map:hover { border-color: var(--gold); text-decoration: none; }
.nr-map img { width: 100%; height: auto; background: #1d0f15; border-bottom: 1px solid var(--paper-3); }
.nr-map .cap { display: block; padding: 14px 16px 16px; }
.nr-map strong { display: block; font: 700 1.06rem/1.3 var(--f-head); color: var(--burg); }
.nr-map small { display: block; margin: 4px 0 10px; font: 400 0.9rem/1.45 var(--f-ui); color: var(--ink-2); }
.nr-map .go, .nr-more { display: inline-flex; align-items: center; gap: 10px; font: 700 1rem/1 var(--f-ui); color: var(--burg); }
.nr-map .go svg, .nr-more svg { width: 20px; height: 20px; transition: transform 0.35s var(--ease); }
.nr-map:hover .go svg, .nr-more:hover svg { transform: translateX(5px); }

/* ---------- Home: sub-projects and recent articles ---------- */
.nr-sec { max-width: var(--wrap); margin: 0 auto; padding: 0 var(--gutter) clamp(48px, 6vw, 72px); }
.nr-sec-lead { margin: -8px 0 20px; color: var(--ink-2); }
.nr-cards { list-style: none; margin: 0; padding: 0; display: grid; gap: 18px; }
.nr-cards.four { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.nr-cards.three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.nr-card { height: 100%; display: flex; flex-direction: column; overflow: hidden; background: #fff; border: 1px solid var(--paper-3); border-radius: 12px; color: var(--ink); text-decoration: none; transition: border-color 0.25s var(--ease), transform 0.4s var(--ease); }
.nr-card:hover { border-color: var(--gold); transform: translateY(-3px); text-decoration: none; }
.nr-card img { width: 100%; height: auto; aspect-ratio: 768 / 429; object-fit: cover; }
.nr-card .in { display: block; padding: 14px 16px 18px; }
.nr-card strong { display: block; font: 700 1.06rem/1.3 var(--f-head); letter-spacing: -0.01em; }
.nr-card small { display: block; margin-top: 6px; font: 400 0.9rem/1.45 var(--f-ui); color: var(--ink-2); }
.nr-more { margin-top: 20px; text-decoration: none; }
.nr-sep { max-width: calc(var(--wrap) - 2 * var(--gutter)); margin: 0 auto clamp(44px, 5vw, 60px); border: 0; border-top: 1px solid var(--paper-3); }

/* ---------- Footer: wordmark, links, then the disclaimer on its own line ---------- */
.nr .foot { background: var(--burg-ink); }
.nr .foot strong.wm { font-size: 1.45rem; margin-bottom: 8px; }
.nr-foot .nr-note { flex-basis: 100%; max-width: none; margin-top: 4px; padding-top: 16px; border-top: 1px solid rgba(234, 219, 211, 0.16); font: 400 0.84rem/1.5 var(--f-ui); color: #bfa9b1; }

/* ---------- Home: tablet and phone ---------- */
@media (max-width: 960px) {
  .nr-model { grid-template-columns: minmax(0, 1fr) 240px; gap: 24px; }
  .nr-cards.four, .nr-cards.three { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 680px) {
  .nr-model { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .nr-ch a { grid-template-columns: 44px minmax(0, 1fr); row-gap: 2px; padding: 12px 14px; }
  .nr-ch .min { grid-column: 2; font-size: 0.82rem; }
  .nr-map { position: static; }
  .nr .nr-cover h1 { font-size: min(2.3rem, 100cqw / 9); }
  .nr-map img { max-height: 300px; object-fit: contain; }
  .nr-cards.four, .nr-cards.three { grid-template-columns: minmax(0, 1fr); }
}

/* ---------- Articles (layout "read") ---------- */
/* Tables sit in a frame that scrolls sideways only when a table is too wide for the screen */
/* Long web addresses (source lists) break onto the next line instead of pushing the page sideways */
.nr .prose a { overflow-wrap: anywhere; }
.nr .prose p, .nr .prose li { overflow-wrap: break-word; }
.nr .prose .table-wrap { background: #fff; }
/* Chapter pager under the chapters of the model: the "coming soon" tag on the dark button */
.nr-pager .tag { display: inline-block; margin-left: 8px; padding: 1px 8px; border-radius: 4px; background: rgba(246, 244, 239, 0.14); font: 500 0.8rem/1.5 var(--f-ui); letter-spacing: 0; color: var(--gold-soft); vertical-align: 4px; }
/* Very long article titles (over 70 characters) get a calmer size, so they never fill a phone screen */
.nr .band h1.long { font-size: clamp(1.7rem, 3.2vw, 2.7rem); max-width: 30ch; }
@media (max-width: 680px) { .nr .band h1 { font-size: min(2.2rem, 8.5vw); } .nr .band h1.long { font-size: min(1.7rem, 6.4vw); } }

/* ---------- Article list (/blog/) and ordinary pages ---------- */
.nr-list { padding-top: clamp(36px, 5vw, 64px); }
/* Ordinary pages (Despre, Contact, Donații...): the contact form fields follow the site's look */
.nr .prose .wpforms-container input[type=text], .nr .prose .wpforms-container input[type=email], .nr .prose .wpforms-container textarea { border: 1px solid var(--paper-3) !important; border-radius: 6px !important; background: #fff !important; font: 400 1rem/1.4 var(--f-ui) !important; }
.nr .prose .wpforms-container button[type=submit] { background: var(--burg) !important; color: var(--paper) !important; border: 0 !important; border-radius: 4px !important; padding: 12px 22px !important; font: 700 1rem/1 var(--f-ui) !important; height: auto !important; }
.nr .prose .wpforms-container button[type=submit]:hover { background: var(--burg-deep) !important; }

/* ---------- Category and tag pages: page numbers under the cards (only when there are many articles) ---------- */
.nr-pages { margin-top: 28px; }
.nr-pages ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.nr-pages a, .nr-pages span { display: inline-block; min-width: 42px; padding: 9px 12px; border: 1px solid var(--paper-3); border-radius: 6px; background: #fff; text-align: center; font: 600 0.95rem/1 var(--f-ui); color: var(--burg); text-decoration: none; }
.nr-pages .current { background: var(--burg); border-color: var(--burg); color: var(--paper); }

/* ---------- Search results and "page not found" ---------- */
.nr-search { margin: 0 0 28px; max-width: 560px; }
.nr-search label { display: block; margin-bottom: 8px; font: 600 0.95rem/1.3 var(--f-ui); color: var(--ink-2); }
.nr-search .row { display: flex; gap: 8px; }
.nr-search input[type=search] { flex: 1; min-width: 0; padding: 12px 14px; border: 1px solid var(--paper-3); border-radius: 6px; background: #fff; font: 400 1rem/1.3 var(--f-ui); color: var(--ink); }
.nr-search input[type=search]:focus { outline: 3px solid var(--burg); outline-offset: 1px; }
.nr-search button { padding: 12px 20px; border: 0; border-radius: 6px; background: var(--burg); color: var(--paper); font: 700 1rem/1 var(--f-ui); cursor: pointer; }
.nr-search button:hover { background: var(--burg-deep); }
/* link cards on the 404 page only (ul): the link accordions in articles also carry the class "nr-links" */
ul.nr-links { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; max-width: 560px; }
ul.nr-links a { display: flex; justify-content: space-between; align-items: center; padding: 15px 18px; background: #fff; border: 1px solid var(--paper-3); border-radius: 10px; font: 700 1.02rem/1.3 var(--f-head); color: var(--burg); text-decoration: none; }
ul.nr-links a:hover { border-color: var(--gold); }
ul.nr-links svg { width: 20px; height: 20px; flex: none; }

/* ---------- Search button in the menu bar (a small magnifier that opens the search box) ---------- */
.nr .mast-in { position: relative; }
.nr .mast nav { margin-left: auto; }
.nr-find { position: relative; flex: none; }
.nr-find > summary { list-style: none; cursor: pointer; width: 40px; height: 40px; display: grid; place-items: center; border-radius: 6px; color: var(--on-dark); }
.nr-find > summary::-webkit-details-marker { display: none; }
.nr-find > summary:hover, .nr-find[open] > summary { background: rgba(246, 244, 239, 0.14); }
.nr-find svg { width: 22px; height: 22px; }
.nr-find-panel { position: absolute; right: 0; top: calc(100% + 10px); z-index: 60; width: min(420px, calc(100vw - 2 * var(--gutter))); padding: 16px; background: var(--paper); border-radius: 10px; box-shadow: 0 10px 30px rgba(38, 16, 26, 0.28); color: var(--ink); }
.nr-find-panel .nr-search { margin: 0; max-width: none; }
@media (max-width: 680px) {
  .nr-find { position: absolute; right: calc(var(--gutter) - 8px); top: 4px; }
  .nr-find > summary { width: 34px; height: 34px; }
}

/* ---------- Chapters extracted from the mind map: score line, "în lucru" label, "!" notes ---------- */
.nr .prose .nr-score { margin: -0.4em 0 1.1em; font: 500 0.9rem/1.5 var(--f-ui); color: var(--ink-2); }
.nr .prose .nr-score b { color: var(--burg); font-weight: 700; }
.nr .prose .nr-wip { display: inline-block; padding: 0 8px; border-radius: 4px; background: var(--gold-soft); color: var(--burg-ink); font: 600 0.8rem/1.6 var(--f-ui); }
.nr .prose .nr-note { padding: 12px 16px; border-left: 3px solid var(--gold); background: var(--paper-2); font-size: 0.98rem; }
.nr .prose ul ul { padding-left: 1.15em; }

/* ---------- Map branches that fold (as in the mind map): the branch text stays visible, its sub-points open on click ---------- */
.nr .prose .nr-soft { color: var(--ink-2); }
.nr.ne-read .prose details.nr-branch { margin: 0 0 8px; padding: 0; background: transparent; border: 0; border-left: 2px solid var(--paper-3); border-radius: 0; }
.nr.ne-read .prose details.nr-branch[open] { border-left-color: var(--gold); }
.nr.ne-read .prose details.nr-branch > summary { position: relative; padding: 6px 10px 6px 30px; list-style: none; cursor: pointer; font: 400 1.0625rem/1.5 var(--f-read); color: var(--ink); letter-spacing: 0; }
.nr.ne-read .prose details.nr-branch > summary::-webkit-details-marker { display: none; }
.nr.ne-read .prose details.nr-branch > summary::before { content: ""; position: absolute; left: 12px; top: 0.95em; width: 7px; height: 7px; border-right: 2px solid var(--burg); border-bottom: 2px solid var(--burg); transform: rotate(-45deg); transition: transform 0.2s var(--ease); }
.nr.ne-read .prose details.nr-branch[open] > summary::before { transform: rotate(45deg); }
.nr.ne-read .prose details.nr-branch > summary:hover { background: var(--paper-2); }
.nr.ne-read .prose details.nr-branch > summary strong { font-weight: 700; }
.nr .prose .nr-count { display: inline-block; min-width: 1.7em; margin-left: 4px; padding: 0 6px; border: 1px solid var(--gold); border-radius: 999px; font: 600 0.78rem/1.55 var(--f-ui); color: var(--burg); text-align: center; vertical-align: 1px; }
.nr.ne-read .prose details.nr-branch[open] > summary .nr-count { background: var(--gold-soft); }
.nr.ne-read .prose details.nr-branch > :not(summary) { margin-left: 30px; margin-right: 0; }

/* ---------- Reading font: Source Serif 4 instead of Cabin (owner request 2026-10-12, better readability) ---------- */
/* Source Serif 4 (SIL Open Font License), self-hosted: latin + latin-ext (Romanian ă â î ș ț), weights 400-700, normal + italic */
@font-face { font-family: 'Source Serif 4'; font-style: italic; font-weight: 400 700; font-display: swap; src: url(fonts/source-serif-4-italic-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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: 'Source Serif 4'; font-style: italic; font-weight: 400 700; font-display: swap; src: url(fonts/source-serif-4-italic-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; }
@font-face { font-family: 'Source Serif 4'; font-style: normal; font-weight: 400 700; font-display: swap; src: url(fonts/source-serif-4-normal-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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: 'Source Serif 4'; font-style: normal; font-weight: 400 700; font-display: swap; src: url(fonts/source-serif-4-normal-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; }
/* Option 1 chosen by the owner: reading text in Source Serif 4; menu, buttons and small labels stay in Cabin (--f-ui). */
:root { --f-read: "Source Serif 4", Georgia, serif; }

/* Reading text a little smaller and lines a little closer (owner request 2026-10-12): 18px -> 17px (16px on phones), line spacing 1.5 -> 1.42 */
body.nr { font-size: 1.0625rem; }
.nr .prose { line-height: 1.42; }
.nr.ne-read .prose details.nr-branch > summary { font-size: 1em; line-height: 1.42; }
@media (max-width: 680px) { body.nr { font-size: 1rem; } }

/* ---------- Headings, menu, buttons and labels: Inter (owner chose trial variant 3, 2026-10-12); big cover title and site name stay Spectral ---------- */
@font-face { font-family: 'Inter'; font-style: normal; font-weight: 400 800; font-display: swap; src: url(fonts/inter-normal-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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: 'Inter'; font-style: normal; font-weight: 400 800; font-display: swap; src: url(fonts/inter-normal-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; }
:root { --f-head: "Inter", system-ui, sans-serif; --f-ui: "Inter", system-ui, sans-serif; }
/* Inter is wider than Cabin: the menu is a little smaller so all five words keep clear gaps on every phone */
.nr .mast nav a { font-size: 0.95rem; }
@media (min-width: 681px) and (max-width: 1100px) { .nr .mast nav a { font-size: min(0.95rem, 1.75vw); } }
@media (max-width: 680px) { .nr .mast nav { font-size: min(0.95rem, calc((100vw - 2 * var(--gutter)) / 28)); } .nr .mast nav a { font-size: 1em; } }
@media (min-width: 431px) and (max-width: 680px) { .nr .mast nav { font-size: 0.9rem; } }

/* Reading-progress accordions in the chapters: a little air and a fine line above, to set them apart from the topic before */
.nr .prose details.nr-support { position: relative; margin-top: 30px; }
.nr .prose details.nr-support::before { content: ""; position: absolute; left: 0; right: 0; top: -16px; border-top: 1px solid var(--paper-3); }

/* Reading text 14px everywhere (owner request 2026-10-12, was 16px): the page and the article column (the Nove base fixed articles at 17px) */
body.nr, .nr .prose { font-size: 0.875rem; }

/* Article headings much smaller (owner chose variant B, 2026-10-12): H2 20px, H3 17px, H4 15px, H5-H6 as the text (14px) but bold */
.nr .prose h2 { font-size: 1.25rem; line-height: 1.25; }
.nr .prose h3 { font-size: 1.0625rem; line-height: 1.3; }
.nr .prose h4 { font-size: 0.9375rem; line-height: 1.35; }
.nr .prose h5, .nr .prose h6 { font-size: 0.875rem; line-height: 1.4; }
/* All article headings in Inter, also H4-H6 (the Nove base gave them the reading font) */
.nr .prose h4, .nr .prose h5, .nr .prose h6 { font-family: var(--f-head); }

/* Score line in the chapters: each score shows the author's explanation on hover (mouse) or tap (phone) - owner's option 3 */
.nr .prose .nr-tip { position: relative; cursor: help; border-bottom: 1px dotted var(--ink-2); outline: none; }
.nr .prose .nr-tip:hover::after, .nr .prose .nr-tip:focus::after { content: attr(data-tip); position: absolute; left: 0; bottom: calc(100% + 6px); z-index: 30; width: max-content; max-width: min(280px, 78vw); padding: 7px 10px; border-radius: 6px; background: var(--burg-ink); color: var(--paper); font: 500 0.8rem/1.4 var(--f-ui); white-space: normal; box-shadow: 0 6px 18px rgba(38, 16, 26, 0.25); }
.nr .prose .nr-tip:nth-last-of-type(-n+2):hover::after, .nr .prose .nr-tip:nth-last-of-type(-n+2):focus::after { left: auto; right: 0; }

/* Headings fill each line before wrapping (owner chose "rânduri pline" over balanced lines, 2026-10-12); the cover title keeps its own one-line sizing */
.nr .prose h2, .nr .prose h3, .nr .prose h4, .nr .prose h5, .nr .prose h6, .nr .band h1, .nr .nr-model h2, .nr .nr-sec h2 { text-wrap: wrap; }

/* Count bubble on folding branches: "13 sub-topice – apasă pentru a deschide" (owner's wording); the hint follows the open/closed state */
.nr .prose .nr-count { min-width: 0; padding: 0 9px; border-radius: 999px; font: 500 0.75rem/1.6 var(--f-ui); white-space: nowrap; }
.nr .prose details.nr-branch > summary .nr-count::after { content: " – apasă pentru a deschide"; }
.nr .prose details.nr-branch[open] > summary .nr-count::after { content: " – apasă pentru a închide"; }

/* map notes in II.B and later chapters: the note accordion's title at reading size (owner: the big Inter title was too large) */
.nr .prose details.nr-note-acc > summary { font-size: 0.875rem; line-height: 1.45; padding: 10px 16px; }
/* every other accordion in articles (links, reading progress, older chapters' link accordions): same reading-size title as the note accordions (owner, 2026-10-12) */
.nr .prose details:not(.nr-branch) > summary { font-size: 0.875rem; line-height: 1.45; padding: 10px 16px; }
/* count bubble a little lower, centred on the text line beside it, so it no longer crowds the line above (owner, 2026-10-12) */
.nr .prose .nr-count { vertical-align: middle; margin-top: 5px; margin-bottom: 2px; position: relative; top: 1px; }
/* reading column 20% wider (owner, 2026-10-12): 54ch -> 65ch, about 69 characters per line instead of 57; phones unchanged; set below as 30rem */
/* reading column in rem (same width everywhere it is used: text, title block, page grid): 30rem = the 65ch chosen by the owner (480px for a visitor) */
:root { --measure: 30rem; }
/* centred article like on Nove Europa (owner, 2026-10-12): the title / text block is as wide as the real reading column, so it sits in the middle */
@media (min-width: 961px) {
  .layout.single:not(.wide-list), body:has(.layout.single:not(.wide-list)) .band-in { max-width: calc(var(--measure) + 2 * var(--gutter)); }
  .layout:not(.single):not(.wide), body:has(.layout:not(.single):not(.wide)) .band-in, body:has(.layout:not(.single):not(.wide)) .pager { max-width: calc(250px + clamp(16px, 2vw, 28px) + var(--measure) + 2 * var(--gutter)); }
}
@media (min-width: 1340px) {
  .layout:not(.single):not(.wide), body:has(.layout:not(.single):not(.wide)) .pager { max-width: calc(var(--measure) + 2 * var(--gutter)); }
  body:has(.layout:not(.single):not(.wide)) .band-in { margin-left: calc((100% - var(--measure) - 2 * var(--gutter)) / 2); }
}
/* jump menu ("Pe această pagină") titles 2 points smaller (owner, 2026-10-12): 0.95rem -> 0.85rem, numbers 0.9rem -> 0.8rem */
.nr .rail li a { font-size: 0.85rem; }
.nr .rail li a .n { font-size: 0.8rem; }
/* a point closed in the map, folded inside a list: no list bullet, the accordion arrow takes its place (owner chose B, 2026-10-12) */
.nr .prose li:has(> details.wp-block-details) { list-style: none; }
/* headings and separator lines inside accordions keep the same side margin as the text (owner, 2026-10-12: headings touched the left edge) */
.nr .prose details:not(.nr-branch) > :is(h1, h2, h3, h4, h5, h6, hr) { margin-left: 22px; margin-right: 22px; }
/* progress accordions sit in the middle of the space between two sections (owner, 2026-10-12: too close to the section above,
   too far from the next one): equal space above and below, the fine line halfway above */
.nr .prose details.nr-support { margin-top: 36px; margin-bottom: 0; }
.nr .prose details.nr-support::before { top: -18px; }
.nr .prose details.nr-support + h2 { margin-top: 36px; }
/* a map note shown open as the description of the point / link above it (owner, 2026-10-12): smaller, indented */
.nr .prose .nr-desc { padding-left: 0.85rem; border-left: 2px solid var(--gold); font-size: 0.8125rem; line-height: 1.55; color: var(--ink-2); margin-top: 0.35em; margin-bottom: 1em; }
.nr .prose li > .nr-desc { margin-left: 0.1rem; margin-right: 0; }
.nr .prose details > .nr-desc { margin-left: calc(22px + 0.9rem); margin-right: 22px; }   /* inside an accordion: keep its side margins, indent a bit more */
.nr .prose p + .nr-desc { margin-top: -0.55em; }   /* closer to the link / point it describes (owner: "un pic mai sus", quote-like bar) */
.nr .prose .nr-desc :is(p, ul, ol, h4, figure) { margin: 0 0 0.6em; }
.nr .prose .nr-desc .wp-block-group__inner-container > :last-child { margin-bottom: 0; }
/* phones: the count bubble may wrap onto two lines, so it never sticks out of the screen inside deeply nested accordions */
@media (max-width: 480px) { .nr .prose .nr-count { white-space: normal; max-width: 100%; border-radius: 12px; } }
/* tighter list points in articles, the same inside and outside accordions (owner, 2026-10-12: gaps between points of one list too big;
   base was 0.5em, 0.75em inside accordions) */
.nr .prose li, .nr .prose details li { margin-top: 0.3em; margin-bottom: 0.3em; }
.nr .prose li > ul, .nr .prose li > ol { margin-top: 0.3em; margin-bottom: 0.3em; }
/* less space above section headings in articles and pages (owner chose "A peste tot", 2026-10-12): 36px everywhere
   (base: 56-88px in articles, 36-56px on pages); the progress accordions keep equal space above and below (36px) */
.nr .prose h2 { margin-top: 36px; }
/* reading progress line just BELOW the tricolour line, no longer drawn over it (owner, 2026-10-12); when the menu bar slides away
   while reading, the whole 4px tricolour line stays visible with the progress line under it */
.nr .progress { top: 100%; bottom: auto; }
html.mast-away.has-progress body.nr .mast { transform: translateY(calc(-100% + 4px)); }
/* reading progress line in vernil-mint (owner chose B, 2026-10-12: the ochre clashed with the flag's yellow) */
.nr .progress i { background: #8fc9a8; }
/* reading progress line 1.5x thicker (owner, 2026-10-12): 4px -> 6px */
.nr .progress { height: 6px; }
/* Titles in IBM Plex Sans Bold instead of Inter (owner chose "700 bold", 2026-10-12): page title band, article/page headings,
   home section and card titles (everything that uses --f-head). Self-hosted, latin + latin-ext (Romanian letters). Menu and labels stay Inter. */
@font-face { font-family: 'IBM Plex Sans'; font-style: normal; font-weight: 700; font-display: swap; src: url(fonts/ibm-plex-sans-700-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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: 'IBM Plex Sans'; font-style: normal; font-weight: 700; font-display: swap; src: url(fonts/ibm-plex-sans-700-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; }
:root { --f-head: "IBM Plex Sans", system-ui, sans-serif; }
.nr .band h1, .nr .prose h1, .nr .prose h2, .nr .prose h3, .nr .prose h4, .nr .prose h5, .nr .prose h6 { font-family: var(--f-head); font-weight: 700; }
/* the "Ai ajuns la N%" boxes stand out from the other accordions (owner chose B, 2026-10-12): light vernil background,
   border in the vernil-mint of the reading progress line */
.nr .prose details.nr-support { background: #cfe8da; border-color: #8fc9a8; }
/* label on an article card that is also an adjacent project, on the Articole page, under the title (owner, 2026-10-12) */
.nr-card .nr-tag { display: inline-block; margin: 12px 0 0; padding: 1px 9px; border: 1px solid var(--gold); border-radius: 999px; background: var(--gold-soft); font: 500 0.72rem/1.6 var(--f-ui); color: var(--burg); }
/* cards without dates (owner, 2026-10-12); the "Proiecte Adiacente" label sits at the bottom right of its card */
.nr-card .in { flex: 1; display: flex; flex-direction: column; }
.nr-card .nr-tag { align-self: flex-end; margin-top: auto; }
.nr-card strong:has(+ .nr-tag) { margin-bottom: 12px; }   /* at least 12px between a long title and the label */
/* big home title "Proiectul / modelul Noua România": letters a little tighter (owner chose B, 2026-10-12; was -0.02em) */
.nr-cover h1 { letter-spacing: -0.04em; }
/* link boxes (accordions with links: II.B and later chapters, the older ones in chapter I and post 1075) - owner chose B, 2026-10-12:
   light-blue background that hints at "links", title in the article's own reading font instead of the sans-serif */
.nr .prose details:not(.nr-branch):not(.nr-note-acc):not(.nr-support) { background: #e3edf7; border-color: #b4cbe2; }
.nr .prose details:not(.nr-branch):not(.nr-note-acc):not(.nr-support) > summary { font-family: var(--f-read); font-weight: 400; font-size: 0.875rem; line-height: 1.5; }
/* mouse over a box title: a lighter shade of the box's own colour instead of the theme's beige-brown (owner, 2026-10-12) */
.nr .prose details:not(.nr-branch):not(.nr-note-acc):not(.nr-support) > summary:hover { background: #eff5fb; }   /* link boxes: lighter blue */
.nr .prose details.nr-support > summary:hover { background: #e2f2e9; }   /* "Ai ajuns la N%" boxes: lighter vernil */
.nr .prose details.nr-note-acc > summary:hover { background: #f3eee4; }   /* notes: lighter beige on mouse-over (owner, 2026-10-12) */
/* note boxes: title in the article's reading font, like the link boxes (owner, 2026-10-12) */
.nr .prose details.nr-note-acc > summary { font-family: var(--f-read); font-weight: 400; font-size: 0.875rem; line-height: 1.5; }
/* "Ai ajuns la N%" boxes: title in the reading font too, like notes and link boxes (owner, 2026-10-12) */
.nr .prose details.nr-support > summary { font-family: var(--f-read); font-weight: 400; font-size: 0.875rem; line-height: 1.5; }
/* a dead link kept as plain text: small grey note "– pagina originală nu mai există online" (owner chose C, 2026-10-12) */
.nr .prose .nr-dead { font-size: 0.8em; color: var(--ink-2); opacity: 0.85; }
/* a folding point inside a list: its arrow takes the bullet's place and its text lines up with the other points' text
   (owner, 2026-10-12; before, it looked one level deeper than its neighbours) */
.nr.ne-read .prose li > details.nr-branch { margin-left: -31px; }
/* lighter fills (owner, 2026-10-12): the bubble of an open point B (#F5EDD8), the "în lucru" label A (#EFE3C4) */
.nr.ne-read .prose details.nr-branch[open] > summary .nr-count { background: #f5edd8; }
.nr .prose .nr-wip { background: #efe3c4; }
/* bubble colours swapped (owner, 2026-10-12): a CLOSED point ("… apasă pentru a deschide") gets the light tan fill,
   an OPEN point ("… apasă pentru a închide") the lightest look (no fill) */
.nr.ne-read .prose details.nr-branch > summary .nr-count { background: #f5edd8; }
.nr.ne-read .prose details.nr-branch[open] > summary .nr-count { background: transparent; }

/* Gutenberg palette colours (GeneratePress global colours). The redesign switches off the
   GeneratePress stylesheet, which is where these class names get their colours; without this,
   a text or background colour picked in the editor is saved but not shown. */
.nr .has-contrast-color { color: #050905 !important; }
.nr .has-contrast-2-color { color: #161a11 !important; }
.nr .has-contrast-3-color { color: #89854a !important; }
.nr .has-base-color { color: #422929 !important; }
.nr .has-base-2-color { color: #592c3c !important; }
.nr .has-base-3-color { color: #eaf0e9 !important; }
.nr .has-accent-color { color: #174e7c !important; }
.nr .has-contrast-background-color { background-color: #050905 !important; }
.nr .has-contrast-2-background-color { background-color: #161a11 !important; }
.nr .has-contrast-3-background-color { background-color: #89854a !important; }
.nr .has-base-background-color { background-color: #422929 !important; }
.nr .has-base-2-background-color { background-color: #592c3c !important; }
.nr .has-base-3-background-color { background-color: #eaf0e9 !important; }
.nr .has-accent-background-color { background-color: #174e7c !important; }

/* Reading text 16px in articles and pages, PC and phone (owner chose B over 15px, 2026-10-12; was 14px): the text, the accordion titles that sit at text size, H5-H6, and the small description text in the same proportion (13/14). Headings H2-H4, count bubbles and the menu unchanged. */
.nr .prose { font-size: 1rem; }
.nr .prose details.nr-note-acc > summary, .nr .prose details:not(.nr-branch) > summary, .nr .prose details:not(.nr-branch):not(.nr-note-acc):not(.nr-support) > summary, .nr .prose details.nr-support > summary, .nr .prose h5, .nr .prose h6 { font-size: 1rem; }
.nr .prose .nr-desc { font-size: 0.9286rem; }

/* Home: "Proiecte Adiacente" closer to the chapters (owner chose B, 2026-10-12): less space under the chapters block (was 48-80px); on phones, where the map card sits right above the heading, a little more air */
.nr-model { padding-bottom: 16px; }
@media (max-width: 680px) { .nr-model { padding-bottom: 32px; } }
/* tablets (two columns, the chapter list can be longer than the map card): keep some air under the last chapter */
@media (min-width: 681px) and (max-width: 960px) { .nr-model { padding-bottom: 40px; } }

/* Home: the three section names end with ":" (owner, 2026-10-12) - added on display, so the same words used elsewhere (404 page links, menu) stay without it */
.ne-home .nr-model h2::after, .ne-home .nr-sec h2::after { content: ":"; }

/* Home: "Articole recente" closer to "Proiecte Adiacente" (owner chose B, 2026-10-12): 32px above the line, 32px below it to the letters - the margin under the line is 25px because the heading has ~7px of empty space above its letters (phones: 22px / 22px -> 17px) */
.ne-home #sub-proiecte { padding-bottom: 32px; }
.ne-home .nr-sep { margin-bottom: 25px; }
@media (max-width: 680px) { .ne-home #sub-proiecte { padding-bottom: 22px; } .ne-home .nr-sep { margin-bottom: 17px; } }

/* Image viewer (owner, 2026-10-12): pictures open over the page, the page stays visible behind a semi-transparent burgundy veil */
.nr .prose img:not(a img):not(.emoji) { cursor: zoom-in; }
.nr-lb { position: fixed; inset: 0; z-index: 9999; display: none; align-items: center; justify-content: center; padding: 56px 64px 40px; background: rgba(38, 16, 26, 0.78); -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px); }
.nr-lb.on { display: flex; animation: nr-lb-in 0.18s ease-out; }
@keyframes nr-lb-in { from { opacity: 0; } to { opacity: 1; } }
html.nr-lb-open { overflow: hidden; }
.nr-lb-f { margin: 0; display: flex; flex-direction: column; align-items: center; max-width: 100%; max-height: 100%; }
.nr-lb-f img { display: block; max-width: min(1400px, 100%); max-height: calc(100vh - 150px); width: auto; height: auto; border-radius: 6px; border: 6px solid rgba(246, 244, 239, 0.35); box-shadow: 0 18px 60px rgba(0, 0, 0, 0.45); background: #f6f4ef; }
.nr-lb-f figcaption { margin-top: 12px; display: flex; flex-wrap: wrap; gap: 6px 16px; justify-content: center; align-items: baseline; max-width: 900px; color: #f3e9dc; font: 400 0.95rem/1.45 var(--f-read); text-align: center; }
.nr-lb-n { font: 500 0.8rem/1 var(--f-ui); color: rgba(243, 233, 220, 0.7); }
.nr-lb-o { font: 500 0.8rem/1 var(--f-ui); color: #e8c97a; text-decoration: underline; text-underline-offset: 3px; }
.nr-lb button { position: absolute; display: grid; place-items: center; width: 44px; height: 44px; border: 1px solid rgba(246, 244, 239, 0.35); border-radius: 999px; background: rgba(246, 244, 239, 0.12); color: #f6f4ef; font: 400 30px/1 var(--f-ui); cursor: pointer; }
.nr-lb button:hover, .nr-lb button:focus-visible { background: rgba(246, 244, 239, 0.25); outline: none; }
.nr-lb-x { top: 12px; right: 14px; }
.nr-lb-p { left: 12px; top: 50%; transform: translateY(-50%); }
.nr-lb-nx { right: 12px; top: 50%; transform: translateY(-50%); }
.nr-lb button[hidden] { display: none; }
@media (max-width: 680px) {
  .nr-lb { padding: 56px 10px 24px; }
  .nr-lb-f img { max-height: calc(100vh - 170px); border-width: 4px; }
  .nr-lb-p, .nr-lb-nx { top: auto; bottom: 14px; transform: none; }
}

/* Reading progress line and the "Ai ajuns la N%" boxes in light plum-mauve (owner chose B, 2026-10-12; was vernil-mint #8fc9a8 / #cfe8da) */
.nr .progress i { background: #9C6B8E; }
.nr .prose details.nr-support { background: #f1dada; border-color: #9C6B8E; }
.nr .prose details.nr-support > summary:hover { background: #f4ecf1; }

/* Legend of the solution indices (P, D, C, B) in the chapters: short heading, the long explanation as a quieter lead,
   the indices as four cards with a burgundy letter (owner chose A, 2026-10-12). A normal List block with the class
   "nr-legend", so it stays editable in Gutenberg. */
.nr .prose .nr-legend-lead { font-size: 0.95rem; color: var(--ink-2); margin-top: -0.2em; }
.nr .prose ul.nr-legend { list-style: none; padding: 0; margin: 1em 0 1.1em; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.nr .prose ul.nr-legend > li { margin: 0; padding: 14px 16px 14px 64px; position: relative; background: #fbf8f2; border: 1px solid #e4d9c6; border-radius: 10px; line-height: 1.4; }
.nr .prose ul.nr-legend > li::marker { content: none; }
.nr .prose ul.nr-legend > li > strong:first-child { position: absolute; left: 14px; top: 14px; width: 36px; height: 36px; border-radius: 999px; display: grid; place-items: center; background: var(--burg); color: #f6f4ef; font: 700 1.05rem/1 var(--f-head); }
.nr .prose ul.nr-legend .nr-lg-name { display: block; font: 700 1rem/1.3 var(--f-head); color: var(--burg); }
.nr .prose ul.nr-legend .nr-lg-desc { display: block; font-size: 0.92rem; color: var(--ink); margin-top: 2px; }
.nr .prose ul.nr-legend .nr-lg-scale { display: block; font: 500 0.78rem/1.4 var(--f-ui); color: var(--ink-2); margin-top: 6px; }
@media (max-width: 680px) { .nr .prose ul.nr-legend { grid-template-columns: 1fr; } }

/* 111: "De la resurse la prosperitate" - value chain, dossier box, involvement cards, topic accordions */
.nr .prose ul.nr-chain { list-style: none; margin: 28px 0 8px; padding: 0; display: flex; align-items: stretch; gap: 22px; }
.nr .prose ul.nr-chain > li { position: relative; flex: 1 1 0; margin: 0; padding: 12px 8px; background: var(--paper-2); border: 1px solid var(--paper-3); border-top: 3px solid var(--gold); border-radius: 6px; text-align: center; font: 400 0.8rem/1.35 var(--f-ui); color: var(--ink-2); }
.nr .prose ul.nr-chain > li strong { display: block; margin-bottom: 4px; font: 700 0.9rem/1.25 var(--f-head); color: var(--burg); }
.nr .prose ul.nr-chain > li + li::before { content: "→"; position: absolute; left: -18px; top: 50%; transform: translateY(-50%); font: 700 1rem/1 var(--f-ui); color: var(--gold); }
.nr .prose p.nr-chain-note { margin-top: 0; font-size: 0.8rem; line-height: 1.45; color: var(--ink-2); text-align: center; }
@media (max-width: 680px) {
  .nr .prose ul.nr-chain { flex-direction: column; gap: 20px; }
  .nr .prose ul.nr-chain > li + li::before { content: "↓"; left: 50%; top: -17px; transform: translateX(-50%); }
}
.nr .prose .nr-dossier { margin: 36px 0; padding: 18px 22px 6px; background: var(--paper-2); border: 1px dashed var(--gold); border-radius: 8px; }
.nr .prose .nr-dossier > h3 { margin-top: 4px; }
.nr .prose p.nr-dossier-label { display: inline-block; margin: 0; padding: 1px 10px; border: 1px solid var(--gold); border-radius: 999px; background: var(--gold-soft); font: 500 0.72rem/1.6 var(--f-ui); color: var(--burg); }
.nr .prose .wp-block-columns.nr-involve { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; margin: 18px 0 36px; }
.nr .prose .nr-involve > .wp-block-column { display: grid; grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "t b" "p b"; column-gap: 18px; align-items: center; margin: 0; padding: 14px 18px; background: #fff; border: 1px solid var(--paper-3); border-left: 3px solid var(--gold); border-radius: 8px; }
.nr .prose .nr-involve > .wp-block-column > h3 { grid-area: t; }
.nr .prose .nr-involve > .wp-block-column > p { grid-area: p; }
.nr .prose .nr-involve > .wp-block-column > .wp-block-buttons { grid-area: b; }
@media (max-width: 480px) { .nr .prose .nr-involve > .wp-block-column { grid-template-columns: minmax(0, 1fr); grid-template-areas: "t" "p" "b"; } }
.nr .prose .nr-involve > .wp-block-column > h3 { margin: 0 0 8px; }
.nr .prose .nr-involve > .wp-block-column > p { margin: 0; font-size: 0.875rem; line-height: 1.45; }
.nr .prose .nr-involve .wp-block-buttons { margin: 0; }
.nr .prose details.nr-topic:not(.nr-branch) > summary { font: 700 1rem/1.4 var(--f-head); color: var(--burg); padding: 12px 18px; }
.nr .prose .wp-block-buttons.nr-cta { justify-content: center; margin: 28px 0; }

/* 113: subtitles (WP Subtitle field) under the page title */
.band .nr-subtitle { margin: 12px 0 0; max-width: 46rem; font: 400 1.15rem/1.45 var(--f-read); color: var(--on-dark); opacity: 0.86; }
@media (max-width: 680px) { .band .nr-subtitle { font-size: 1rem; } }

/* 114: card label after the subtitle (owner, 2026-10-13) */
.nr-card small:has(+ .nr-tag) { margin-bottom: 14px; }
/* 115: topic accordions (not links) in the beige of the note boxes, not link blue (owner, 2026-10-13) */
.nr .prose details.nr-topic:not(.nr-branch):not(.nr-note-acc):not(.nr-support) { background: var(--paper-2); border-color: var(--paper-3); }
.nr .prose details.nr-topic:not(.nr-branch):not(.nr-note-acc):not(.nr-support) > summary:hover { background: #f3eee4; }
/* 116: justified article text with Romanian soft hyphens added by the engine (owner chose D, 2026-10-13) */
.nr.ne-read .prose p:not([class*="has-text-align"]), .nr.ne-read .prose li:not([class*="has-text-align"]) { text-align: justify; hyphens: manual; -webkit-hyphens: manual; }
.nr.ne-read .prose ul.nr-chain > li, .nr.ne-read .prose p.nr-chain-note { text-align: center; }
.nr.ne-read .prose .nr-involve p, .nr.ne-read .prose p.nr-dossier-label { text-align: left; }

.nr.ne-read .prose summary, .nr.ne-read .prose summary * { text-align: left; }

/* 117: card subtitles justified with soft hyphens (owner chose D, 2026-10-13) */
.nr-card .in small { text-align: justify; hyphens: manual; -webkit-hyphens: manual; }

/* 2026-10-13: secondary outline button (e.g. blueprint PDF next to donation CTA) */
.ne .prose .wp-block-button.is-style-outline .wp-block-button__link { background: transparent; color: var(--burg); box-shadow: inset 0 0 0 1.5px var(--burg); }
.ne .prose .wp-block-button.is-style-outline .wp-block-button__link:hover { background: var(--burg); color: var(--paper); }

/* 118: on phones list items stay left-aligned (short lines left big gaps when justified; owner, 2026-10-13) */
@media (max-width: 680px) { .nr.ne-read .prose li:not([class*="has-text-align"]) { text-align: left; } }

/* 119: form labels in one style (field titles, checkbox titles, sub-labels, choices, descriptions) - Colaborare + Contact (2026-10-13) */
.nr .prose .wpforms-container .wpforms-field-label { font: 600 1rem/1.35 var(--f-ui) !important; color: var(--ink) !important; margin-bottom: 6px !important; }
.nr .prose .wpforms-container .wpforms-field-sublabel { font: 400 0.85rem/1.4 var(--f-ui) !important; color: var(--ink-2) !important; }
.nr .prose .wpforms-container .wpforms-field-label-inline { font: 400 0.95rem/1.4 var(--f-ui) !important; color: var(--ink) !important; }
.nr .prose .wpforms-container .wpforms-field-description { font: 400 0.85rem/1.45 var(--f-ui) !important; color: var(--ink-2) !important; }

/* 121-123: wide title block on articles and pages (owner, 2026-10-13, variant 3): breadcrumbs, title, subtitle and reading time are left-aligned in one block that starts where a centred 60%-wide block would start and extends to 72% of the window (up to 1500px); applies to simple articles/pages and to articles with the "Pe această pagină" menu; the reading column below stays 30rem; phones and windows under 961px unchanged */
@media (min-width: 961px) {
  body:has(.layout.single:not(.wide-list)) .band-in, body:has(.layout:not(.single):not(.wide)) .band-in { max-width: calc(min(72vw, 1500px) + 2 * var(--gutter)); margin-left: calc((100% - min(60vw, 1250px)) / 2 - var(--gutter)); margin-right: auto; }
}
body:has(.layout.single:not(.wide-list)) .band h1, body:has(.layout.single:not(.wide-list)) .band h1.long, body:has(.layout.single:not(.wide-list)) .band h1.wide { max-width: none; }

/* menu bar: smoother hide (0.6s ease-in-out) and gentler return (0.5s ease-out) (owner, 2026-10-13) */
body.nr .mast { transition: transform 0.5s cubic-bezier(0.22, 0.61, 0.36, 1); }
html.mast-away body.nr .mast { transition: transform 0.6s cubic-bezier(0.45, 0, 0.55, 1); }

/* cards: more space around title and subtitle, 22px sides (owner chose B, 2026-10-13) */
.nr-card .in { padding: 18px 22px 22px; }

/* phones/tablets (<=960px): the jump list sticks under the menu bar and hides / returns with it (owner, 2026-10-13) */
@media (max-width: 960px) {
  .layout > .rail { position: sticky; top: var(--stick, 0px); z-index: 30; background: var(--paper); margin: 0 0 8px; transition: transform 0.5s cubic-bezier(0.22, 0.61, 0.36, 1), top 0.5s cubic-bezier(0.22, 0.61, 0.36, 1), box-shadow 0.3s; box-shadow: 0 6px 14px -12px rgba(59, 26, 40, 0.5); }
  html.mast-away .layout > .rail.is-stuck { transform: translateY(calc(-100% - 12px)); pointer-events: none; transition: transform 0.6s cubic-bezier(0.45, 0, 0.55, 1), top 0.6s cubic-bezier(0.45, 0, 0.55, 1); }
  /* open list = drop-down over the text, so opening it does not push the page (which scrolled it and hid the bar) */
  .layout > .rail[open] .rail-body { position: absolute; left: 0; right: 0; top: 100%; background: var(--paper); box-shadow: 0 14px 24px -14px rgba(59, 26, 40, 0.45); border-radius: 0 0 6px 6px; max-height: calc(100vh - var(--stick, 0px) - 120px); max-height: calc(100dvh - var(--stick, 0px) - 120px); overflow-y: auto; overscroll-behavior: contain; }
  .layout > .rail-mark { height: 0; margin: 0; }
  .layout > .rail[open] { z-index: 45; }
  .layout > .rail[open] .rail-body { padding-top: 8px; }
}
/* phones/tablets: sticky jump list in the light mauve of the "Ai ajuns la N%" boxes, full width, square corners (owner, 2026-10-14) */
@media (max-width: 960px) {
  /* full window width also when the text column is narrower than the screen (tablets) */
  .layout:has(> .rail) { container-type: inline-size; }
  .layout > .rail { width: 100vw; max-width: 100vw; justify-self: start; margin-left: calc(50cqw - 50vw); margin-right: 0; border-radius: 0; box-sizing: border-box; }
  .layout > .rail > summary { background: #f1dada; border-radius: 0; border-bottom: 1px solid #e3caca; padding-left: calc(50vw - 50cqw + 18px); padding-right: calc(50vw - 50cqw + 18px); }
  .layout > .rail[open] .rail-body { border-radius: 0; padding-left: calc(50vw - 50cqw + 4px); padding-right: calc(50vw - 50cqw + 4px); }
}
/* sticky jump list on phones/tablets: open list also light mauve; title centred in sentence case with a curved down arrow in the chevron's style (owner, 2026-10-14) */
@media (max-width: 960px) {
  .layout > .rail[open] .rail-body { background: #f1dada; }
  .layout > .rail > summary { justify-content: center; gap: 8px; text-transform: none; letter-spacing: 0.005em; font-size: 0.95rem; font-weight: 600; }
  .layout > .rail > summary::after { width: 18px; height: 18px; border: 0; transform: translateY(2px); background: var(--burg); -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 6h8a6 6 0 0 1 6 6v7'/%3E%3Cpath d='M14 15.5l4 4 4-4'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 6h8a6 6 0 0 1 6 6v7'/%3E%3Cpath d='M14 15.5l4 4 4-4'/%3E%3C/svg%3E") center / contain no-repeat; transition: transform 0.3s; }
  .layout > .rail[open] > summary::after { transform: translateY(2px) scaleY(-1); }
}
@media (max-width: 960px) {
  .nr .layout > .rail li a:hover, .nr .layout > .rail li a[aria-current="true"] { background: #e5c4c4; }
}

/* jump list title: longer on phones/tablets only, thinner bar (owner, 2026-10-14) */
.rail .rail-more { display: none; }
@media (max-width: 960px) {
  .rail .rail-more { display: inline; margin-left: -6px; } /* cancels the flex gap before the comma */
  .layout > .rail > summary { padding-top: 7px; padding-bottom: 7px; font-size: 0.875rem; line-height: 1.3; gap: 6px; }
  .layout > .rail > summary::after { width: 16px; height: 16px; flex: none; }
}

/* phones/tablets: the jump list sits right under the dark title band (owner, 2026-10-14) */
@media (max-width: 960px) { .layout:has(> .rail) { padding-top: 0; } }

/* logged-in admins under 600px: WordPress lets its black admin bar scroll away there, so the menu bar must stick at 0, not 46px (left a see-through gap; owner, 2026-10-14) */
@media (max-width: 600px) { .admin-bar .mast { top: 0; } }

/* full-width jump list uses 100vw, which on PC includes the vertical scrollbar -> a few px of sideways scroll; clip it (clip keeps sticky working) (2026-10-14) */
@media (max-width: 960px) { html, body { overflow-x: clip; } }

/* jump list: reading time per topic + fold-out subtopics for big topics (owner, 2026-10-14) */
.nr .rail li a { grid-template-columns: 2.2em minmax(0, 1fr) auto; }
.nr .rail li a .min { font: 500 0.68rem/1.7 var(--f-ui); color: var(--ink-2); opacity: 0.85; white-space: nowrap; padding-left: 8px; }
.nr .rail li.has-sub { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: start; }
.nr .rail .sub-t { display: inline-grid; grid-auto-flow: column; align-items: center; gap: 5px; margin: 6px 0 0 2px; padding: 3px 7px; border: 1px solid rgba(156, 107, 142, 0.45); border-radius: 999px; background: transparent; color: var(--burg); font: 600 0.66rem/1.2 var(--f-ui); cursor: pointer; -webkit-tap-highlight-color: transparent; }
.nr .rail .sub-t:hover, .nr .rail .sub-t[aria-expanded="true"] { background: rgba(156, 107, 142, 0.16); }
.nr .rail .sub-t::after { content: ""; width: 6px; height: 6px; border-right: 1.6px solid currentColor; border-bottom: 1.6px solid currentColor; transform: translateY(-2px) rotate(45deg); transition: transform 0.25s; }
.nr .rail .sub-t[aria-expanded="true"]::after { transform: translateY(1px) rotate(225deg); }
.nr .rail ol.sub { grid-column: 1 / -1; margin: 2px 0 8px 2.2em; padding-left: 10px; border-left: 2px solid rgba(156, 107, 142, 0.45); }
.nr .rail ol.sub li a { grid-template-columns: minmax(0, 1fr); margin-left: 0; padding: 6px 10px; font-size: 0.8rem; font-weight: 500; }
/* desktop: the side column is narrow, so reading time and the subtopics button go under the title */
@media (min-width: 961px) {
  .nr .rail li a { grid-template-columns: 2.2em minmax(0, 1fr); }
  .nr .rail li a .min { grid-column: 2; padding-left: 0; }
  .nr .rail li.has-sub { display: block; }
  .nr .rail li.has-sub > .sub-t { margin: 0 0 6px 2.2em; }
}

/* FIX 2026-10-14: the invisible marker after the jump list (site.js, used by the floating buttons) took a grid cell on desktop and squeezed the text column; it must never take space there */
.layout > .rail-mark { display: none; }
@media (max-width: 960px) { .layout > .rail-mark { display: block; height: 0; margin: 0; } }

/* jump list titles: whole text, cut only after 2 lines (phones/tablets) or 3 lines (desktop side column) (owner, 2026-10-14) */
.nr .rail li a .t { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; line-clamp: 3; overflow: hidden; }
@media (max-width: 960px) { .nr .rail li a .t { -webkit-line-clamp: 2; line-clamp: 2; } }

/* jump list: the big topics (with their own subtopics drop-down) a little bolder and darker (owner, 2026-10-14) */
.nr .rail li.has-sub > a .t { font-weight: 650; color: var(--ink); }

/* 2026-10-14 (owner): light mauve #eadbe5 -> light rose #f1dada everywhere (progress boxes, jump list); companion shades #dcc5d5 -> #e5c4c4, #d9c3d2 -> #e3caca */
/* "Ai ajuns la N%" boxes: same breathing room below as above (owner, 2026-10-14: touched the accordion under it) */
.nr .prose details.nr-support { margin-bottom: 30px; }
/* link boxes that carry a count bubble (II.C link branches) get the same open/close hint as the branch accordions (2026-10-14) */
.nr .prose details.nr-links > summary .nr-count::after { content: " – apasă pentru a deschide"; }
.nr .prose details.nr-links[open] > summary .nr-count::after { content: " – apasă pentru a închide"; }
/* a note accordion inside a list that looks like an ordinary bullet point, with a small arrow after the text (class nr-note-inline; owner, 2026-10-14, only "Asumare, responsabilitate" in II.C for now) */
.nr .prose li:has(> details.nr-note-inline) { list-style: inherit; }
.nr .prose details.nr-note-inline { margin: 0; padding: 0; background: transparent; border: 0; border-radius: 0; }
.nr .prose details.nr-note-inline > summary { display: block; list-style: none; padding: 0; margin: 0; background: transparent; font: inherit; color: inherit; cursor: pointer; }
.nr .prose details.nr-note-inline > summary::-webkit-details-marker { display: none; }
.nr .prose details.nr-note-inline > summary::marker { content: ""; }
.nr .prose details.nr-note-inline > summary::after { content: ""; display: inline-block; vertical-align: middle; width: 1.05em; height: 1.05em; margin-left: 8px; background: var(--burg); -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 6h8a6 6 0 0 1 6 6v7'/%3E%3Cpath d='M14 15.5l4 4 4-4'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 6h8a6 6 0 0 1 6 6v7'/%3E%3Cpath d='M14 15.5l4 4 4-4'/%3E%3C/svg%3E") center / contain no-repeat; transform: translateY(-1px); transition: transform 0.25s; }
.nr .prose details.nr-note-inline[open] > summary::after { transform: translateY(-1px) scaleY(-1); }
.nr .prose details.nr-note-inline > summary:hover { background: transparent; color: var(--burg); }
.nr .prose details.nr-note-inline > :not(summary) { margin: 6px 0 10px; padding: 8px 14px; background: var(--paper-2); border-left: 2px solid var(--gold); font-size: 0.95em; }
/* nr-note-inline v2 (owner, 2026-10-14): triangle in the bullet's place (as before), classic V chevron after the text */
.nr .prose li:has(> details.nr-note-inline) { list-style: none; }
.nr .prose details.nr-note-inline > summary { position: relative; }
.nr .prose details.nr-note-inline > summary::before { content: "\25B6"; position: absolute; left: -1.15em; top: 0.32em; font-size: 0.68em; line-height: 1; color: var(--ink); transition: transform 0.2s; }
.nr .prose details.nr-note-inline[open] > summary::before { transform: rotate(90deg); }
.nr .prose details.nr-note-inline > summary::after { -webkit-mask: none; mask: none; background: transparent; width: 7px; height: 7px; margin-left: 10px; vertical-align: 0.25em; border-right: 2px solid var(--burg); border-bottom: 2px solid var(--burg); transform: rotate(45deg); }
.nr .prose details.nr-note-inline[open] > summary::after { transform: translateY(3px) rotate(225deg); }

/* nr-note-inline v3 (owner, 2026-10-14): the triangle is the list marker itself, so it sits exactly where the bullets sit, same colour and line */
.nr .prose li:has(> details.nr-note-inline) { list-style: inherit; list-style-type: "\25B8\2002"; }
.nr .prose li:has(> details.nr-note-inline[open]) { list-style-type: "\25BE\2002"; }
.nr .prose details.nr-note-inline > summary::before { content: none; display: none; }
.nr .prose li:has(> details.nr-note-inline)::marker { font-size: 1.3em; }
/* nr-note-inline v4 (owner, 2026-10-14): triangle marker sized and spaced to sit exactly in the bullets' column, same colour, same line height */
.nr .prose li:has(> details.nr-note-inline) { list-style-type: "\25B6\2002\2002"; }
.nr .prose li:has(> details.nr-note-inline[open]) { list-style-type: "\25BC\2002\2002"; }
.nr .prose li:has(> details.nr-note-inline)::marker { font-size: 0.62em; }
/* nr-note-inline v5 (owner): a bit smaller and a little to the right */
.nr .prose li:has(> details.nr-note-inline) { list-style-type: "\25B6\2002\2009"; }
.nr .prose li:has(> details.nr-note-inline[open]) { list-style-type: "\25BC\2002\2009"; }
.nr .prose li:has(> details.nr-note-inline)::marker { font-size: 0.5em; }
/* nr-note-inline v6 (owner): a little to the left (in the bullets' column) and a touch higher */
.nr .prose li:has(> details.nr-note-inline) { list-style-type: "\25B6\2002\2002\2009"; }
.nr .prose li:has(> details.nr-note-inline[open]) { list-style-type: "\25BC\2002\2002\2009"; }
.nr .prose li:has(> details.nr-note-inline)::marker { font-size: 0.56em; }
/* nr-note-inline v7 (owner): centred exactly on the bullets' column (measured from pixels in the owner's Chrome: 0.25px off) */
.nr .prose li:has(> details.nr-note-inline) { list-style-type: "\25B6\2002\2009"; }
.nr .prose li:has(> details.nr-note-inline[open]) { list-style-type: "\25BC\2002\2009"; }

/* nr-note-inline v8 (owner, 2026-10-14): drawn triangle instead of the list marker, so it can sit exactly in the bullets' column with its tip 1px above the crossbar of the first letter (A); positions in em, measured from pixels in the owner's Chrome */
.nr .prose li:has(> details.nr-note-inline), .nr .prose li:has(> details.nr-note-inline[open]) { list-style: none; }
.nr .prose details.nr-note-inline > summary::before { content: ""; display: block; position: absolute; font-size: 1em; border: 0; background: var(--burg); width: 0.42em; height: 0.48em; clip-path: polygon(0 0, 100% 50%, 0 100%); left: -0.978em; top: 0.522em; transform: none; transition: none; }
.nr .prose details.nr-note-inline[open] > summary::before { width: 0.48em; height: 0.42em; clip-path: polygon(0 0, 100% 0, 50% 100%); left: -1.008em; top: 0.552em; transform: none; }
/* nr-note-inline v9: horizontal position from the owner's NORMAL (100%) view, where bullets sit ~15px left of the text (the 200% view had misled) */
.nr .prose details.nr-note-inline > summary::before { left: -1.205em; }
.nr .prose details.nr-note-inline[open] > summary::before { left: -1.235em; }

/* 2026-10-14 (owner): mobile jump list title arrow = the standard accordion V chevron (was the curved arrow) */
@media (max-width: 960px) {
  .layout > .rail > summary::after { width: 7px; height: 7px; background: none; -webkit-mask: none; mask: none; border-right: 2px solid var(--burg); border-bottom: 2px solid var(--burg); transform: translateY(-2px) rotate(45deg); transition: transform 0.25s; }
  .layout > .rail[open] > summary::after { transform: translateY(2px) rotate(225deg); }
}


/* cards: fine line across the whole card between title and subtitle, tighter subtitle lines 1.45 -> 1.32 (owner, 2026-10-14) */
.nr-card .in strong + small { border-top: 1px solid var(--paper-3); margin: 12px -22px 0; padding: 11px 22px 0; line-height: 1.32; }

/* 125: less empty space between the title band and the start of the article (owner, 2026-10-14): 72px padding + 36px first-heading margin (about 108px) -> 40px; windows from 961px up, phones unchanged */
@media (min-width: 961px) {
  .layout:has(> .prose) { padding-top: 40px; }
  .nr .prose > :first-child { margin-top: 0; }
}

/* 166: fonts (owner chose variant 3, 2026-10-14): reading text and subtitles in Cabin, titles and headings in Lora (big title Semibold 600, other headings Bold 700, as on nove-europa.eu); menu, buttons and labels stay Inter. Cabin and Lora come from fonts.css */
:root { --f-read: "Cabin", system-ui, sans-serif; --f-head: "Lora", Georgia, serif; }
.nr .band h1 { font-weight: 600; letter-spacing: -0.015em; }

/* 167: cards (owner chose the 0.9rem picture, 2026-10-14): title 1.06rem -> 0.9rem so long titles take fewer lines; subtitle 0.9rem -> 1rem (16px, same as the website text). All cards: home, Proiecte adiacente, Articole */
.nr-card strong { font-size: 0.9375rem; }   /* 15px (owner, 2026-10-14) */
.nr-card small { font-size: 0.9375rem; font-family: var(--f-read); }   /* 16px in the reading font (Cabin), like the article text; it was Inter, which looks bigger at the same size */

/* 169: card subtitles left-aligned instead of justified, and no hyphen breaks (owner, 2026-10-14); overrides the justify rule from 2026-10-13 */
.nr-card .in small { text-align: left; hyphens: none; -webkit-hyphens: none; }

/* 171: tables in articles: tighter lines and cell padding (owner chose C, 2026-10-14): line height 1.45 -> 1.25, cell padding top/bottom 12px -> 7px; all tables on the site */
.nr .prose table td, .nr .prose table th { line-height: 1.25; padding-top: 7px; padding-bottom: 7px; }

/* 172: table text in the reading font Cabin (it was Inter, the interface font) like the article text; size unchanged (owner, 2026-10-14) */
.nr .prose table td, .nr .prose table th { font-family: var(--f-read); }

/* 173: more text in the reading font Cabin instead of Inter (owner, 2026-10-14): score lines (II.B), footer paragraphs, form labels/descriptions/options/fields (Colaborare, Contact) and the comment form. Menu, buttons, cookie banner, search, jump list, count bubbles, crumbs and reading time stay Inter. */
.nr .prose p.nr-score, .nr .prose p.nr-score * { font-family: var(--f-read); }
.nr .foot p { font-family: var(--f-read); }
.nr .prose .wpforms-container :is(.wpforms-field-label, .wpforms-field-label-inline, .wpforms-field-sublabel, .wpforms-field-description, legend, label, input[type=text], input[type=email], input[type=tel], input[type=url], textarea, select) { font-family: var(--f-read) !important; }
.nr .comment-respond :is(label, input:not([type=submit]), textarea) { font-family: var(--f-read); }

/* 174: site name (menu bar and footer) in Lora Semibold instead of Spectral; footer tagline no longer limited to 40 characters, so it only wraps when the window is tight (owner, 2026-10-14) */
.nr .wm { font-family: "Lora", Georgia, serif; font-weight: 600; }
.nr .foot p:not(.nr-note) { max-width: none; }

/* 175: home cover title in Lora Semibold instead of Spectral (owner, 2026-10-14) */
.nr-cover h1 { font-family: "Lora", Georgia, serif; font-weight: 600; }

/* 2026-10-21: "callout" note inside a topic accordion (quote block with class nr-callout), e.g. "O schimbare de perspectivă" in „Să moară și capra vecinului”. White card with a gold line on the left, so it stands out on the beige accordion. */
.prose details.nr-topic blockquote.wp-block-quote.nr-callout {
  background: #fff !important;
  border: 0 !important;
  border-left: 3px solid #cba652 !important;
  border-radius: 2px !important;
  padding: 14px 18px !important;
  margin: 6px 23px 20px !important;
  font-style: normal !important;
  box-shadow: 0 1px 2px rgba(89, 44, 60, 0.06);
}
.prose details.nr-topic blockquote.wp-block-quote.nr-callout p { margin: 0 !important; }

/* 2026-10-21: category accordions (class nr-cat) that hold topic accordions (nr-topic), first used in "Provocările autentice ale României". White card, gold left bar, title in the heading font. Needs !important: the general rule `.nr .prose details:not(...)` (light blue link boxes) is more specific. */
.nr .prose details.wp-block-details.nr-cat {
  background: #fff !important;
  border: 1px solid #ddd4c2 !important;
  border-left: 4px solid #cba652 !important;
  border-radius: 3px !important;
  margin: 0 0 14px !important;
  padding: 0 0 4px !important;
}
.nr .prose details.nr-cat > summary {
  padding: 16px 18px !important;
  font: 700 1.15rem/1.3 Lora, Georgia, serif !important;
  letter-spacing: -0.01em !important;
  color: #592c3c !important;
  background: transparent !important;
  cursor: pointer;
}
.nr .prose details.nr-cat[open] > summary { border-bottom: 1px solid #eadfcd !important; margin-bottom: 12px !important; }
.nr .prose details.nr-cat > :not(summary) { margin-left: 12px !important; margin-right: 12px !important; }
.nr .prose details.nr-cat > details.nr-topic { margin-bottom: 8px !important; }
.nr .prose details.nr-cat > summary .nr-count { font-family: var(--f-ui, Inter, sans-serif) !important; font-weight: 500 !important; font-size: 0.8rem !important; }
/* 2026-10-21: count bubble vertically centred in the category title (owner) */
.nr .prose details.nr-cat > summary .nr-count { vertical-align: middle !important; margin-top: 0 !important; margin-bottom: 0 !important; top: -2px !important; position: relative !important; }
/* 2026-10-21: count bubble aligned to the right edge of the category accordion, vertically centred (owner) */
.nr .prose details.nr-cat > summary { position: relative !important; padding-right: 118px !important; }
.nr .prose details.nr-cat > summary .nr-count { position: absolute !important; right: 18px !important; top: 50% !important; transform: translateY(-50%) !important; margin: 0 !important; white-space: nowrap !important; max-width: none !important; border-radius: 999px !important; }
/* phones: the bubble goes back right after the title, so the title keeps the full width (2026-10-21) */
@media (max-width: 680px) {
  .nr .prose details.nr-cat > summary { padding-right: 18px !important; }
  .nr .prose details.nr-cat > summary .nr-count { position: relative !important; right: auto !important; top: -2px !important; transform: none !important; margin-left: 6px !important; vertical-align: middle !important; }
}
/* 2026-10-21 (final layout, replaces the two rules above): the category title is a row: arrow | title (wraps if needed) | count bubble pinned right, vertically centred. Same at every width, so the bubble never jumps under the title. Own arrow, because a flex summary loses the browser's arrow. */
.nr .prose details.nr-cat > summary {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 16px 18px !important;
  list-style: none !important;
}
.nr .prose details.nr-cat > summary::-webkit-details-marker { display: none !important; }
.nr .prose details.nr-cat > summary::marker { content: "" !important; }
.nr .prose details.nr-cat > summary::before { content: "▶"; flex: none; font-size: 0.6em; line-height: 1; color: #592c3c; }
.nr .prose details.nr-cat[open] > summary::before { content: "▼"; }
.nr .prose details.nr-cat > summary .nr-count {
  position: static !important;
  transform: none !important;
  top: auto !important;
  right: auto !important;
  margin: 0 0 0 auto !important;
  flex: none !important;
  white-space: nowrap !important;
}
@media (max-width: 480px) {
  .nr .prose details.nr-cat > summary { padding: 14px 14px !important; gap: 8px !important; font-size: 1.05rem !important; }
}
/* very narrow screens (<=440px): the bubble goes on its own row under the title, aligned with the title text, the same for every category (2026-10-21) */
@media (max-width: 440px) {
  .nr .prose details.nr-cat > summary { flex-wrap: wrap !important; row-gap: 6px !important; }
  .nr .prose details.nr-cat > summary::after { content: ""; flex-basis: 100%; order: 1; height: 0; }
  .nr .prose details.nr-cat > summary .nr-count { order: 2 !important; margin: 0 0 0 calc(0.6em + 8px) !important; }
}
/* <=440px, corrected: grid instead of wrapping, so the arrow stays next to the title and the bubble sits under the title text */
@media (max-width: 440px) {
  .nr .prose details.nr-cat > summary { display: grid !important; grid-template-columns: auto 1fr !important; column-gap: 8px !important; row-gap: 6px !important; align-items: center !important; flex-wrap: nowrap !important; }
  .nr .prose details.nr-cat > summary::after { content: none !important; display: none !important; }
  .nr .prose details.nr-cat > summary::before { grid-column: 1; grid-row: 1; }
  .nr .prose details.nr-cat > summary .nr-count { grid-column: 2 !important; grid-row: 2 !important; justify-self: start !important; order: 0 !important; margin: 0 !important; }
}

/* separator lines: 28px above and below instead of 48px (owner, 2026-10-21, log 210) */
.nr .prose hr.wp-block-separator { margin-top:28px !important; margin-bottom:28px !important; }

/* a group of topics inside a topic (nr-group): inner accordions on a lighter card so they stand out from the beige group (owner, 2026-10-22, log 213) */
.nr .prose details.nr-group > details.nr-topic { background:#fbf8f2 !important; border:1px solid #ddd4c2 !important; }
.nr .prose details.nr-group > details.nr-topic > summary { background:transparent !important; }
@media (max-width:600px){ /* phones: less side space for the nested group so the text keeps ~270px of width (log 213) */
.nr .prose details.nr-cat > details.nr-group { margin-left:6px !important; margin-right:6px !important; }
.nr .prose details.nr-group > details.nr-topic { margin-left:8px !important; margin-right:8px !important; }
.nr .prose details.nr-group > details.nr-topic > :not(summary) { margin-left:14px !important; margin-right:14px !important; }
.nr .prose details.nr-group > details.nr-topic > summary { padding-left:12px !important; padding-right:12px !important; } }

/* the solutions accordion (nr-solutions) keeps the bold title the old heading had (owner, 2026-10-22, log 221) */
.nr .prose details.nr-solutions > summary { font-weight:700 !important; }
/* a progress box placed inside a section after a separator: hide its own top line, so only one divider shows (log 221) */
.nr .prose details.nr-cat > hr.wp-block-separator + details.nr-support::before { display:none !important; }
/* dividers inside a section accordion: tighter (14px above and below instead of 28px); the last solutions list or progress box gets more room at the bottom (owner, 2026-10-22, log 222) */
.nr .prose details.nr-cat > hr.wp-block-separator { margin-top:14px !important; margin-bottom:14px !important; }
.nr .prose details.nr-cat > details.nr-solutions:last-child, .nr .prose details.nr-cat > details.nr-support:last-child { margin-bottom:16px !important; }
.nr .prose details.nr-cat > hr.wp-block-separator + details.nr-support { margin-top:0 !important; }
/* softer accordion colours, site-wide (owner chose pair A, 2026-10-22, log 223): section card #FBF9F4 instead of white, topic accordions #F2EDE3 instead of #ECE6DA */
.nr .prose details.wp-block-details.nr-cat { background:#FBF9F4 !important; }
.nr .prose details.nr-topic:not(.nr-branch):not(.nr-note-acc):not(.nr-support) { background:#F2EDE3; }
.nr .prose details.nr-topic:not(.nr-branch):not(.nr-note-acc):not(.nr-support) > summary:hover { background:#EDE7DB; }
/* colours swapped for more contrast (owner, 2026-10-22, log 224): section card darker #F2EDE3, topic accordions lighter #FBF9F4, topics inside a group white */
.nr .prose details.wp-block-details.nr-cat { background:#F2EDE3 !important; }
.nr .prose details.nr-topic:not(.nr-branch):not(.nr-note-acc):not(.nr-support) { background:#FBF9F4; }
.nr .prose details.nr-topic:not(.nr-branch):not(.nr-note-acc):not(.nr-support) > summary:hover { background:#F4EFE6; }
.nr .prose details.nr-group > details.nr-topic { background:#FFFFFF !important; }
/* the small solutions accordion inside a topic: white card with a full thin border, so it stands out from the topic (log 226) */
.nr .prose details.nr-topic > details.nr-solutions { background:#FFFFFF !important; border:1px solid #ddd4c2 !important; border-radius:2px; }
.nr .prose details.nr-topic > details.nr-solutions > summary:hover { background:#F7F3EC !important; }
@media (max-width:600px){ /* phones: less side space for solutions lists so the links keep a readable width (log 226) */
.nr .prose details.nr-topic > details.nr-solutions { margin-left:8px !important; margin-right:8px !important; }
.nr .prose details.nr-solutions > ul { margin-left:8px !important; margin-right:8px !important; padding-left:18px !important; } }

/* 227: title block centred over the article (owner, 2026-10-22): breadcrumbs, title, subtitle and reading time sit in a box 60% wider than the reading column (30rem -> 48rem = 768px), centred like the text, lines left-aligned; long titles wrap inside it. Replaces the wide left-shifted block of 121-123. Chapters with the "Pe aceasta pagina" list: from 1340px up the box is centred over the text; at 961-1339px the first rule also reaches them (their comments block is a .layout.single), so the box is centred on the window and spans list + text, from the list start to the text end */
@media (min-width: 961px) { body:has(.layout.single:not(.wide-list)) .band-in { max-width: calc(var(--measure) * 1.6 + 2 * var(--gutter)); margin-left: auto; margin-right: auto; } }
@media (min-width: 1340px) { body:has(.layout:not(.single):not(.wide)) .band-in { max-width: calc(var(--measure) * 1.6 + 2 * var(--gutter)); margin-left: auto; margin-right: auto; } }

/* 229: reading font Source Sans 3 instead of Cabin, everywhere Cabin was used (owner, 2026-10-22, after a side-by-side comparison page): article and page text, card subtitles, tables, forms, footer text, subtitles. Normal letter spacing (the +2% of log 228 removed). Articles (posts) 17px instead of 16px, with the accordion titles that sit at text size, H5-H6 and the small description text in the same proportion; pages (Despre, Donatii, Colaborare...) stay 16px */
:root { --f-read: "Source Sans 3", system-ui, sans-serif; }
body.single-post.nr .prose { font-size: 1.0625rem; }
body.single-post.nr .prose details.nr-note-acc > summary, body.single-post.nr .prose details:not(.nr-branch) > summary, body.single-post.nr .prose details:not(.nr-branch):not(.nr-note-acc):not(.nr-support) > summary, body.single-post.nr .prose details.nr-support > summary, body.single-post.nr .prose h5, body.single-post.nr .prose h6 { font-size: 1.0625rem; }
body.single-post.nr .prose .nr-desc { font-size: 0.9866rem; }

/* more air between the links of a solutions list (owner, 2026-10-22, log 230) */
.nr .prose details.nr-solutions li { margin-bottom:9px !important; }
.nr .prose details.nr-solutions li:last-child { margin-bottom:0 !important; }
/* tighter line spacing for reading text, site-wide: 1.28 instead of 1.42 (owner chose from a 3-way comparison, 2026-10-22, log 231) */
.nr .prose, .nr .prose p, .nr .prose li { line-height:1.28 !important; }

/* 236: titles and headings in Source Serif 4 instead of Spectral (owner, 2026-10-22, changed his mind while comparing Spectral sizes): normal letter spacing everywhere (no tightening), natural size (no size boost). Replaces 232 / 232b (Spectral, tight spacing, +8%). Weights unchanged (600 big titles and site name, 700 headings); Source Serif 4 picks its display shapes for big sizes by itself (optical size). The home chapter letters stay Spectral 400 */
:root { --f-head: "Source Serif 4", Georgia, serif; }
.nr .wm, .nr-cover h1 { font-family: var(--f-head); }
.nr .prose details.nr-cat > summary { font-family: var(--f-head) !important; letter-spacing: normal !important; }
body.nr :is(.nr-model h2, .nr-sec h2, .nr-ch .tt, .nr-map strong, .nr-card strong, ul.nr-links a, .prose h2, .prose h3, .prose h4, .prose h5, .prose h6, .nr-legend .nr-lg-name, .nr-chain > li strong, details.nr-topic:not(.nr-branch) > summary, .wm, .pager .pn, #comments h2, #comments h3, .band h1, .nr-cover h1, .prose ul.nr-legend > li > strong:first-child) { letter-spacing: normal; }
.ne #cookieadmin_notice_title { letter-spacing: normal !important; }

/* bullets of reading lists moved left, under the start of the paragraph text, and closer to their text (owner, 2026-10-22): list indent 1.05em instead of 1.5em, item padding 2px instead of 0.25em; special lists (link cards, legends, chains) untouched */
.nr .prose ul:not(.nr-links):not(.nr-legend):not(.nr-chain) { padding-left:1.05em !important; }
.nr .prose ul:not(.nr-links):not(.nr-legend):not(.nr-chain) > li { padding-left:2px !important; }

/* solutions accordions: links without bullets, lined up under the accordion title text (owner, 2026-10-22); only lists inside nr-solutions */
.nr .prose details.nr-solutions > ul { list-style:none !important; padding-left:0 !important; margin-left:19px !important; }
.nr .prose details.nr-solutions > ul > li { padding-left:0 !important; }
@media (max-width:600px){ .nr .prose details.nr-solutions > ul { margin-left:14px !important; } }

/* a little more space between reading paragraphs, site-wide: 1.45em below each paragraph instead of 1.1em (owner, 2026-10-22) */
.nr .prose p { margin-bottom:1.45em !important; }

/* solutions links: more space between them (14px) and closer to the left edge (8px; 6px on phones) (owner, 2026-10-22) */
.nr .prose details.nr-solutions li { margin-bottom:14px !important; }
.nr .prose details.nr-solutions li:last-child { margin-bottom:0 !important; }
.nr .prose details.nr-solutions > ul { margin-left:8px !important; }
@media (max-width:600px){ .nr .prose details.nr-solutions > ul { margin-left:6px !important; } }

/* accordion triangles at half strength, fading towards the background, every accordion (owner, 2026-10-22) */
.nr .prose details > summary::marker { color: color-mix(in srgb, currentColor 50%, transparent); }
.nr .prose details.nr-cat > summary::before { color: color-mix(in srgb, #592c3c 50%, transparent) !important; }
/* triangles a little stronger: 63% (37% transparent); the section accordions' own triangle made as big as the sub-accordions' triangle (was .6em) (owner, 2026-10-22) */
.nr .prose details > summary::marker { color: color-mix(in srgb, currentColor 63%, transparent); }
.nr .prose details.nr-cat > summary::before { color: color-mix(in srgb, #592c3c 63%, transparent) !important; font-size:0.74em !important; }
/* all accordion triangles small, like the section accordions' original one (owner, 2026-10-22) */
.nr .prose details > summary::marker { font-size: 0.65em; }
.nr .prose details.nr-cat > summary::before { font-size:0.6em !important; }
.nr .prose details.nr-cat > summary::before { font-size:0.5em !important; } /* same visual size as the small native triangles */

/* hint after a section title (first section of Radiografia): reading font, smaller, lighter; text follows the open/closed state (owner, 2026-10-22) */
.nr .prose details.nr-cat > summary .nr-hint { font-family: var(--f-read) !important; font-weight:400 !important; font-size:0.72em !important; letter-spacing:0 !important; font-size-adjust:none !important; color:#8a6f78; white-space:nowrap; }
.nr .prose details.nr-cat > summary .nr-hint::after { content:"(apasă pentru a deschide)"; }
.nr .prose details.nr-cat[open] > summary .nr-hint::after { content:"(apasă pentru a închide)"; }
.nr .prose details.nr-cat > summary .nr-hint { font-size:0.765em !important; } /* one pixel bigger (owner) */

/* progress boxes (nr-support): more space between their items, like the solutions lists (owner, 2026-10-23) */
.nr .prose details.nr-support li { margin-bottom:12px !important; }
.nr .prose details.nr-support li:last-child { margin-bottom:0 !important; }
.nr .prose details.nr-support li > ul { margin-top:12px !important; }
.nr .prose details.nr-support > summary { line-height:1.28 !important; } /* progress box title: same line spacing as the reading text (owner, 2026-10-23) */

/* progress boxes: background 25% closer to the page colour (#F1DADA -> #F2E1DF), links dark warm navy #2B4A6F instead of plum (owner, 2026-10-23) */
.nr .prose details.nr-support { background:#F2E1DF !important; }
.nr .prose details.nr-support a, .nr .prose details.nr-support a:visited { color:#2B4A6F !important; text-decoration-color: color-mix(in srgb, #2B4A6F 55%, transparent) !important; }
.nr .prose details.nr-support a:hover { color:#1B2B45 !important; }
/* solutions accordions: links in the same warm navy as the progress boxes (owner, 2026-10-23) */
.nr .prose details.nr-solutions a, .nr .prose details.nr-solutions a:visited { color:#2B4A6F !important; text-decoration-color: color-mix(in srgb, #2B4A6F 55%, transparent) !important; }
.nr .prose details.nr-solutions a:hover { color:#1B2B45 !important; }

/* external-links accordions (nr-links): navy links, 10px between their paragraphs, and the open/close hint text (owner, 2026-10-23) */
.nr .prose details.nr-links a, .nr .prose details.nr-links a:visited { color:#2B4A6F !important; text-decoration-color: color-mix(in srgb, #2B4A6F 55%, transparent) !important; }
.nr .prose details.nr-links a:hover { color:#1B2B45 !important; }
.nr .prose details.nr-links > p { margin-bottom:10px !important; }
.nr .prose details.nr-links > p:last-child { margin-bottom:0 !important; }
.nr .prose details.nr-links > summary .nr-hint::after { content:"– apasă pentru a deschide"; }
.nr .prose details.nr-links[open] > summary .nr-hint::after { content:"– apasă pentru a închide"; }
.nr .prose details.nr-note-acc > summary .nr-hint::after { content:"– apasă pentru a deschide"; }
.nr .prose details.nr-note-acc[open] > summary .nr-hint::after { content:"– apasă pentru a închide"; }

/* 250 (2026-10-23): more space between the items of ordinary reading lists, site-wide (owner request); accordion items, solutions/progress lists, link cards, legend and chain unchanged */
.nr .prose :is(ul,ol):not(.nr-links):not(.nr-legend):not(.nr-chain) > li:not(:has(> details)) { margin-bottom:0.55em; }
/* 254 (2026-10-23): heading class nr-no-mark = no small gold line above that heading (owner request, donations page) */
.nr .prose h2.nr-no-mark::before, .nr .prose h3.nr-no-mark::before { display:none !important; }
/* 258 (2026-10-23): donation banner = synced pattern "Banner donații" (group nr-donate with two linked images): wide picture from 768px up, the bigger-text picture on phones, like the old HTML banner */
.nr .prose .nr-donate { margin: 2em 0 !important; padding: 0 !important; }
.nr .prose .nr-donate figure { margin: 0 !important; }
.nr .prose .nr-donate img { width: 100%; height: auto; display: block; border-radius: 6px; }
.nr .prose .nr-donate .nr-don-narrow { display: none; }
@media (max-width: 767px) { .nr .prose .nr-donate .nr-don-wide { display: none; } .nr .prose .nr-donate .nr-don-narrow { display: block; } }
/* 2026-10-23: open / close all buttons for category accordions (bar above the categories, line inside each category; made by site.js) */
.nr .prose .nr-openall { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; margin: 0 0 10px; }
.nr .prose .nr-oa-b { appearance: none; margin: 0; padding: 5px 13px; border: 1px solid #cba652; border-radius: 999px; background: #fff; color: #592c3c; font: 500 0.8rem/1.4 var(--f-ui, Inter, sans-serif); letter-spacing: 0; cursor: pointer; transition: background .15s, border-color .15s; }
.nr .prose .nr-oa-b:hover { background: #FBF9F4; border-color: #592c3c; }
.nr .prose .nr-oa-b:focus-visible { outline: 2px solid #592c3c; outline-offset: 2px; }
.nr .prose .nr-oa-b[aria-pressed="true"] { background: #F2EDE3; }
.nr .prose details.nr-cat > p.nr-oa-row { margin: -4px 12px 10px !important; text-align: right; }
.nr .prose .nr-oa-t { padding: 3px 11px; font-size: 0.75rem; }
@media (max-width: 480px) { .nr .prose .nr-openall { justify-content: flex-start; } .nr .prose details.nr-cat > p.nr-oa-row { text-align: left; } }

/* 2026-10-23 (log 270): donation banner inside a category accordion: tighter, about 14px above and below (owner) */
.nr .prose details.nr-cat > .nr-donate { margin-top: 14px !important; margin-bottom: 10px !important; }
.nr .prose details.nr-cat > .nr-donate img { display: block; }
.nr .prose details.nr-cat > .nr-donate figure { margin: 0 !important; }
.nr .prose details.nr-cat > .nr-donate a { display: block; }

/* 2026-10-23 (log 271): list items / paragraphs that are only a link: left-aligned at every width (class set by site.js) */
.nr .prose .nr-linkonly { text-align: left !important; }

/* 2026-10-23 (log 272): ONE light background for every accordion level (owner): category, topic, group, topics inside a group and solutions lists all #FBF9F4 (the palette's colour lighter than the page #F6F4EF); levels differ only by their borders. Hover on any title #F4EFE6. Progress boxes and notes keep their own colours. */
.nr .prose details.wp-block-details.nr-cat { background:#FBF9F4 !important; }
.nr .prose details.nr-topic:not(.nr-branch):not(.nr-note-acc):not(.nr-support), .nr .prose details.nr-group > details.nr-topic, .nr .prose details.nr-topic > details.nr-solutions { background:#FBF9F4 !important; }
.nr .prose details.nr-topic:not(.nr-branch):not(.nr-note-acc):not(.nr-support) > summary:hover, .nr .prose details.nr-topic > details.nr-solutions > summary:hover { background:#F4EFE6 !important; }

/* 2026-10-23 (log 273): a little lighter everywhere there is reading text (owner chose variant A of 4): page cream --paper #F6F4EF -> #FAF8F4 (also jump list, search panel, cookie banner, text on burgundy buttons); every accordion level #FBF9F4 -> #FDFCF9. Replaces the colours of log 272. */
:root { --paper: #FAF8F4; }
body.nr { background: #FAF8F4; }
.nr .prose details.wp-block-details.nr-cat, .nr .prose details.nr-topic:not(.nr-branch):not(.nr-note-acc):not(.nr-support), .nr .prose details.nr-group > details.nr-topic, .nr .prose details.nr-topic > details.nr-solutions { background:#FDFCF9 !important; }

/* 2026-10-23 (log 274): same colours and article look as nove-europa.eu (owner): page beige --paper #ECE6DA; the reading column of every post is a near-white #FBF7ED card (4px corners; 20/14/28px padding, from 961px 28/40/40px, same rules as nove-europa site.css 1181/1185); every accordion level #FBF7ED too, levels differ only by borders. Replaces the colours of logs 272-273. */
:root { --paper: #ECE6DA; }
body.nr { background: #ECE6DA; }
body.single-post.nr article.prose { background: #FBF7ED; border-radius: 4px; margin-left: -14px; margin-right: -14px; padding: 20px 14px 28px; }
@media (min-width: 961px) { body.single-post.nr article.prose { box-sizing: content-box; margin-left: -40px; margin-right: -40px; padding: 28px 40px 40px; } }
.nr .prose details.wp-block-details.nr-cat, .nr .prose details.nr-topic:not(.nr-branch):not(.nr-note-acc):not(.nr-support), .nr .prose details.nr-group > details.nr-topic, .nr .prose details.nr-topic > details.nr-solutions { background:#FBF7ED !important; }

/* log 275: pages (Despre, Donații, Contact, Colaborare, legal pages...) get the same #FBF7ED reading card as posts (owner); home page unchanged */
body.page.nr:not(.ne-home) article.prose { background: #FBF7ED; border-radius: 4px; margin-left: -14px; margin-right: -14px; padding: 20px 14px 28px; }
@media (min-width: 961px) { body.page.nr:not(.ne-home) article.prose { box-sizing: content-box; margin-left: -40px; margin-right: -40px; padding: 28px 40px 40px; } }

/* log 276: side jump list highlight visible again: it used --paper-2 #ECE6DA, the same as the page since log 274; now the light card colour #FBF7ED (as on nove-europa). The section title of a folded active sub-topic gets the same look (class is-here, site.js). */
.nr .rail li a[aria-current="true"], .nr .rail li a.is-here { background: #FBF7ED !important; color: var(--burg-deep); font-weight: 700; }

/* log 277: less space around the donation banner and under the reading card (owner): banner 24px above/below (was 34); nothing extra after the last block of the card (only its padding); empty paragraphs next to the banner or at the end hidden; 40px (phones 28px) between the card and what follows (was ~94 / 48). Banners inside a category accordion keep their own 14px (log 270). */
.nr .prose > .nr-donate { margin-top: 24px !important; margin-bottom: 24px !important; }
.nr article.prose > p:empty:has(+ .nr-donate), .nr article.prose > .nr-donate + p:empty, .nr article.prose > p:empty:last-child { display: none !important; }
.nr article.prose > :nth-last-child(1 of :not(p:empty)) { margin-bottom: 0 !important; }
body.single-post.nr .layout, body.page.nr:not(.ne-home) .layout { padding-bottom: 40px !important; }
@media (max-width: 960px) { body.single-post.nr .layout, body.page.nr:not(.ne-home) .layout { padding-bottom: 28px !important; } }

/* log 278: 40px (phones 28px) under the chapter pager, before the comments or the footer (was ~94 / 48px) (owner) */
.nr .nr-pager { padding-bottom: 40px !important; }
@media (max-width: 960px) { .nr .nr-pager { padding-bottom: 28px !important; } }

/* 282: II.a solutions accordions (nr-sol-v): a V chevron on the right instead of the left triangle; the open/close hint in normal weight (owner, 2026-10-24) */
.nr .prose details.nr-topic.nr-sol-v:not(.nr-branch) > summary { list-style: none; position: relative; padding-right: 48px; cursor: pointer; }
.nr .prose details.nr-topic.nr-sol-v:not(.nr-branch) > summary::-webkit-details-marker { display: none; }
.nr .prose details.nr-topic.nr-sol-v:not(.nr-branch) > summary::after { content: ""; position: absolute; right: 20px; top: 50%; width: 9px; height: 9px; border-right: 2px solid var(--burg); border-bottom: 2px solid var(--burg); transform: translateY(-75%) rotate(45deg); transition: transform 0.2s var(--ease); }
.nr .prose details.nr-topic.nr-sol-v:not(.nr-branch)[open] > summary::after { transform: translateY(-25%) rotate(-135deg); }
.nr .prose details.nr-topic.nr-sol-v:not(.nr-branch) > summary .nr-open-hint { font-family: var(--f-read); font-weight: 400; color: var(--ink); }
.nr .prose details.nr-topic.nr-sol-v:not(.nr-branch) > summary .nr-open-hint::before { content: "(apasă pentru a deschide)"; }
.nr .prose details.nr-topic.nr-sol-v:not(.nr-branch)[open] > summary .nr-open-hint::before { content: "(apasă pentru a închide)"; }
@media (prefers-reduced-motion: reduce) { .nr .prose details.nr-topic.nr-sol-v:not(.nr-branch) > summary::after { transition: none; } }

/* log 284: warmer light colour (owner): every #FFFDF8 (reading card, accordions, jump-list highlight, editor) replaced by #FBF7ED, in place. */

/* 290. Wider reading column like nove-europa.eu, centred at every window width; reading text and titles about 6% larger (owner, 2026-10-26). Articles and pages only: home page, Articole list, category and search pages unchanged.
   Why the column sat left between 481 and 960px: the page made room for a 641px column (Nove Europa base) but the text was only 30rem = 480px and stood at the left of that room.
   Column: 40rem = 640px of text (Nove Europa 641px); articles get 72px side space inside the card (Nove Europa log 186-188, 190), pages keep 40px; the card grows smoothly between 480 and 960px and is centred at every width.
   Fonts: articles 17 -> 18px, pages 16 -> 17px; titles, accordion titles, notes and descriptions x1.06. Small labels (counts, scores, breadcrumbs, reading time, jump list) unchanged.
   NOTE: font sizes of the reading area set ABOVE this block are overridden here on articles and pages; change them here.
   Undo: copy bak/nr.css.bak-20261026-v168 back, purge LiteSpeed. */

/* A. Wider column on articles and pages */
body.nr.single-post, body.nr.page:not(.ne-home) { --measure: 40rem; }

/* B. Card side space and centring, articles (same values as nove-europa.eu) */
@media (min-width: 961px) { body.single-post.nr article.prose { margin-left: -72px; margin-right: -72px; padding-left: 72px; padding-right: 72px; } }
/* 480-960px: one smooth rule, no jump at 767/768. The layout box takes the full window width minus its side gutters; the card is the text column plus its side space, but never more than 14px past the gutters on each side, and centred. Side space grows from 14px at 480px to 34px at 768px (Nove Europa log 188) and on to 72px at 844px (log 187); pages stop at 40px. */
@media (min-width: 480px) and (max-width: 960px) {
  body.nr:is(.single-post, .page:not(.ne-home)) { --nr-pad: clamp(14px, calc(14px + (100vw - 480px) * 0.0694), 34px); }
  body.nr:is(.single-post, .page:not(.ne-home)) .layout:not(.wide-list):not(.wide) { max-width: none; grid-template-columns: minmax(0, 1fr); }
  body.nr:is(.single-post, .page:not(.ne-home)) .layout:not(.wide-list):not(.wide) > article.prose { box-sizing: border-box; width: min(calc(var(--measure) + 2 * var(--nr-pad)), calc(100% + 28px)); max-width: none; justify-self: center; padding-left: var(--nr-pad); padding-right: var(--nr-pad); }
}
@media (min-width: 768px) and (max-width: 960px) {
  body.nr:is(.single-post, .page:not(.ne-home)) { --nr-pad: clamp(34px, calc((100vw - 700px) / 2), 72px); }
  body.nr.page:not(.ne-home):not(.single-post) { --nr-pad: clamp(34px, calc((100vw - 700px) / 2), 40px); }
}
/* C. Articles WITH the jump list (chapters II.B, II.C, Justitie...): 961-1339px the list is a column beside the text, card side space 28px; from 1340px the card is centred on the page and the list hangs 24px + the card side space to its left (side space 14px at 1352px growing to 72px at 1468px, as the window has room) */
@media (min-width: 961px) and (max-width: 1339px) {
  body.single-post.nr .layout:has(> .rail):not(.single) { padding-right: max(var(--gutter), 52px); }
  body.single-post.nr .layout:has(> .rail):not(.single) > article.prose { margin-left: -28px; margin-right: -28px; padding-left: 28px; padding-right: 28px; }
}
@media (min-width: 1340px) {
  body.single-post.nr .layout:has(> .rail):not(.single):not(.wide) { --nr-p: clamp(14px, calc(50vw - 662px), 72px); justify-content: center; }
  body.single-post.nr .layout:has(> .rail):not(.single):not(.wide) > .rail { margin-right: calc(24px + var(--nr-p)); }
  body.single-post.nr .layout:has(> .rail):not(.single):not(.wide) > article.prose { margin-left: calc(-1 * var(--nr-p)); margin-right: calc(-1 * var(--nr-p)); padding-left: var(--nr-p); padding-right: var(--nr-p); width: 100%; justify-self: center; }
}

/* Title band from 961px: the box stays 48rem = 768px wide as before (owner chose this over letting it grow to 1.6 x the new column), so the title starts at the left edge of the reading card */
@media (min-width: 961px) { body.nr:is(.single-post, .page:not(.ne-home)):has(.layout.single:not(.wide-list)) .band-in { max-width: calc(48rem + 2 * var(--gutter)); } }
@media (min-width: 1340px) { body.nr.single-post:has(.layout:not(.single):not(.wide)) .band-in { max-width: calc(48rem + 2 * var(--gutter)); } }

/* D. Reading text: articles 18px, pages 17px */
body.single-post.nr .prose { font-size: 1.125rem; }
body.nr.page:not(.ne-home) .prose { font-size: 1.0625rem; }
body.single-post.nr .prose details.nr-note-acc > summary, body.single-post.nr .prose details:not(.nr-branch) > summary, body.single-post.nr .prose details:not(.nr-branch):not(.nr-note-acc):not(.nr-support) > summary, body.single-post.nr .prose details.nr-support > summary, body.single-post.nr .prose h5, body.single-post.nr .prose h6 { font-size: 1.125rem; }
body.nr.page:not(.ne-home) .prose details.nr-note-acc > summary, body.nr.page:not(.ne-home) .prose details:not(.nr-branch) > summary, body.nr.page:not(.ne-home) .prose details.nr-support > summary, body.nr.page:not(.ne-home) .prose h5, body.nr.page:not(.ne-home) .prose h6 { font-size: 1.0625rem; }
body.nr.page:not(.ne-home) .prose details.nr-topic:not(.nr-branch) > summary { font-size: 1.0625rem; }

/* E. Titles x1.06 */
@media (min-width: 681px) { body.nr:is(.single-post, .page:not(.ne-home)) .band h1 { font-size: clamp(2.332rem, 4.77vw, 4.134rem); } body.nr:is(.single-post, .page:not(.ne-home)) .band .nr-subtitle { font-size: 1.219rem; } }
@media (max-width: 680px) { body.nr:is(.single-post, .page:not(.ne-home)) .band h1 { font-size: min(2.332rem, 9.01vw); } body.nr:is(.single-post, .page:not(.ne-home)) .band .nr-subtitle { font-size: 1.06rem; } }
body.nr:is(.single-post, .page:not(.ne-home)) .prose h2 { font-size: 1.325rem; }
body.nr:is(.single-post, .page:not(.ne-home)) .prose h3 { font-size: 1.126rem; }
body.nr:is(.single-post, .page:not(.ne-home)) .prose h4 { font-size: 0.994rem; }
body.nr:is(.single-post, .page:not(.ne-home)) .prose details.nr-cat > summary { font-size: 1.219rem !important; }
body.nr:is(.single-post, .page:not(.ne-home)) .pager .pn { font-size: clamp(1.484rem, 2.65vw, 2.12rem); }

/* F. Notes, descriptions, captions, tables x1.06 */
body.nr:is(.single-post, .page:not(.ne-home)) .prose .nr-note { font-size: 1.039rem; }
body.single-post.nr .prose .nr-desc { font-size: 1.0446rem; }
body.nr:is(.single-post, .page:not(.ne-home)) .prose .nr-legend-lead { font-size: 1.007rem; }
body.nr:is(.single-post, .page:not(.ne-home)) .prose ul.nr-legend > li > strong:first-child { font-size: 1.113rem; }
body.nr:is(.single-post, .page:not(.ne-home)) .prose ul.nr-legend .nr-lg-name { font-size: 1.06rem; }
body.nr:is(.single-post, .page:not(.ne-home)) .prose ul.nr-legend .nr-lg-desc { font-size: 0.975rem; }
body.nr:is(.single-post, .page:not(.ne-home)) .prose ul.nr-chain > li { font-size: 0.848rem; }
body.nr:is(.single-post, .page:not(.ne-home)) .prose ul.nr-chain > li strong { font-size: 0.954rem; }
body.nr:is(.single-post, .page:not(.ne-home)) .prose p.nr-chain-note { font-size: 0.848rem; }
body.nr:is(.single-post, .page:not(.ne-home)) .prose .nr-involve > .wp-block-column > p { font-size: 0.9275rem; }
body.nr:is(.single-post, .page:not(.ne-home)) .prose figcaption { font-size: 0.954rem; }
body.nr:is(.single-post, .page:not(.ne-home)) .prose table { font-size: 1.007rem; }


/* 293. Top menu with 6 items (the Materiale Externe item, shown only while that page is live; owner chose 'two tidy rows', 2026-10-26, rollback log 293):
   below 1024px the items sit in two even rows of 3 (Modelul, Proiecte adiacente, Articole / Materiale Externe, Despre, Donatii), each column centred;
   from 1024px all 6 stay on one line as before. With 5 items nothing here applies. */
@media (max-width: 1023px) { .nr .mast nav:has(> a:nth-child(6)) { display: grid; grid-template-columns: repeat(3, auto); justify-items: center; row-gap: 0; } }
@media (min-width: 681px) and (max-width: 1023px) { .nr .mast nav:has(> a:nth-child(6)) { column-gap: clamp(14px, 2.2vw, 26px); } .nr .mast nav:has(> a:nth-child(6)) a { padding: 5px 0; } }
@media (max-width: 680px) { .nr .mast nav:has(> a:nth-child(6)) { justify-content: space-between; column-gap: 12px; } }


/* 295 (2026-10-26): a category accordion with class nr-no-openall gets no 'Deschide categoriile / Deschide tot' bar above it (donations page, one single box). */
.nr .prose .nr-openall:has(+ details.nr-no-openall) { display: none !important; }


/* 296 (2026-10-26): PayPal cards on the donations page (owner chose variant A, like G4Media): Columns block class nr-pp, each Column class nr-pp-card = white card, centred; small "PayPal" word (nr-pp-brand), yellow round button (nr-pp-btn), small hint (nr-pp-hint). */
.nr .prose .wp-block-columns.nr-pp { gap: 16px !important; margin: 6px 0 24px !important; align-items: stretch !important; }
.nr .prose .nr-pp-card { background: #fff !important; border: 1px solid #ddd4c2 !important; border-radius: 4px !important; padding: 20px 18px 16px !important; text-align: center !important; display: flex !important; flex-direction: column !important; align-items: center !important; }
.nr .prose .nr-pp-card > * { margin: 0 0 10px !important; }
.nr .prose .nr-pp-card > :last-child { margin-bottom: 0 !important; }
.nr .prose .nr-pp-brand { font: italic 800 1.15rem/1 "Source Sans 3", system-ui, sans-serif !important; color: #003087 !important; letter-spacing: -0.01em !important; }
.nr .prose .nr-pp-card h3 { font-size: 1.15rem !important; margin-top: 0 !important; }
.nr .prose .nr-pp-card p { max-width: 34ch; }
.nr .prose .nr-pp-card .wp-block-buttons { justify-content: center !important; }
.nr .prose .nr-pp-btn .wp-block-button__link { background: #FFC439 !important; color: #111 !important; border: 0 !important; border-radius: 999px !important; font-weight: 700 !important; padding: 9px 28px !important; text-decoration: none !important; }
.nr .prose .nr-pp-btn .wp-block-button__link:hover { background: #f2b600 !important; }
.nr .prose .nr-pp-hint { font-size: 0.85rem !important; color: #6b5a5f !important; }
/* 297 (2026-10-26): PayPal card hint as big as the card text (owner: much too small) */
.nr .prose .nr-pp-hint { font-size: 1em !important; }


/* 320. Letters one step larger (2026-10-28, owner): reading text +1px (articles 18 -> 19px, pages 17 -> 18px), accordion titles, notes, descriptions, captions and tables +1px; titles, subtitles, section headings and chapter titles in proportion (x19/18, about +1 to +2px). Articles and pages only: menu, small labels, home, Articole list, category and search pages unchanged. This block overrides the same rules of section 290 above it; to go back one step, delete this block (or copy bak/nr.css.bak-20261028-v173 back). */
body.single-post.nr .prose { font-size: 1.1875rem; }
body.nr.page:not(.ne-home) .prose { font-size: 1.125rem; }
body.single-post.nr .prose details.nr-note-acc > summary, body.single-post.nr .prose details:not(.nr-branch) > summary, body.single-post.nr .prose details:not(.nr-branch):not(.nr-note-acc):not(.nr-support) > summary, body.single-post.nr .prose details.nr-support > summary, body.single-post.nr .prose h5, body.single-post.nr .prose h6 { font-size: 1.1875rem; }
body.nr.page:not(.ne-home) .prose details.nr-note-acc > summary, body.nr.page:not(.ne-home) .prose details:not(.nr-branch) > summary, body.nr.page:not(.ne-home) .prose details.nr-support > summary, body.nr.page:not(.ne-home) .prose h5, body.nr.page:not(.ne-home) .prose h6 { font-size: 1.125rem; }
body.nr.page:not(.ne-home) .prose details.nr-topic:not(.nr-branch) > summary { font-size: 1.125rem; }
@media (min-width: 681px) { body.nr:is(.single-post, .page:not(.ne-home)) .band h1 { font-size: clamp(2.4616rem, 5.035vw, 4.3637rem); } body.nr:is(.single-post, .page:not(.ne-home)) .band .nr-subtitle { font-size: 1.2867rem; } }
@media (max-width: 680px) { body.nr:is(.single-post, .page:not(.ne-home)) .band h1 { font-size: min(2.4616rem, 9.5106vw); } body.nr:is(.single-post, .page:not(.ne-home)) .band .nr-subtitle { font-size: 1.1189rem; } }
body.nr:is(.single-post, .page:not(.ne-home)) .prose h2 { font-size: 1.3986rem; }
body.nr:is(.single-post, .page:not(.ne-home)) .prose h3 { font-size: 1.1886rem; }
body.nr:is(.single-post, .page:not(.ne-home)) .prose h4 { font-size: 1.0492rem; }
body.nr:is(.single-post, .page:not(.ne-home)) .prose details.nr-cat > summary { font-size: 1.2867rem !important; }
body.nr:is(.single-post, .page:not(.ne-home)) .pager .pn { font-size: clamp(1.5664rem, 2.7972vw, 2.2378rem); }
body.nr:is(.single-post, .page:not(.ne-home)) .prose .nr-note { font-size: 1.1015rem; }
body.single-post.nr .prose .nr-desc { font-size: 1.1071rem; }
body.nr:is(.single-post, .page:not(.ne-home)) .prose .nr-legend-lead { font-size: 1.0695rem; }
body.nr:is(.single-post, .page:not(.ne-home)) .prose ul.nr-legend > li > strong:first-child { font-size: 1.1755rem; }
body.nr:is(.single-post, .page:not(.ne-home)) .prose ul.nr-legend .nr-lg-name { font-size: 1.1225rem; }
body.nr:is(.single-post, .page:not(.ne-home)) .prose ul.nr-legend .nr-lg-desc { font-size: 1.0375rem; }
body.nr:is(.single-post, .page:not(.ne-home)) .prose ul.nr-chain > li { font-size: 0.9105rem; }
body.nr:is(.single-post, .page:not(.ne-home)) .prose ul.nr-chain > li strong { font-size: 1.0165rem; }
body.nr:is(.single-post, .page:not(.ne-home)) .prose p.nr-chain-note { font-size: 0.9105rem; }
body.nr:is(.single-post, .page:not(.ne-home)) .prose .nr-involve > .wp-block-column > p { font-size: 0.99rem; }
body.nr:is(.single-post, .page:not(.ne-home)) .prose figcaption { font-size: 1.0165rem; }
body.nr:is(.single-post, .page:not(.ne-home)) .prose table { font-size: 1.0695rem; }

/* Menu bar stays on screen: full at the top of the page, slimming step by step with the scroll; on phones the menu rows fade into a three-line button (owner, 2026-10-28; it used to slide away).
   The script sets --p on the bar (0 = full, 1 = slim) and keeps the bar's box at the full height; the contents sit at its bottom. */
html.mast-away body.nr .mast, html.mast-away.has-progress body.nr .mast { transform: none; }
html.mast-js .mast { display: flex; flex-direction: column; justify-content: flex-end; transition: none; padding-top: calc(var(--pull, 0px) * var(--p, 0)); }
html.mast-js .mast > .mast-in { width: 100%; margin-block: auto; }
html.mast-js body.nr .mast-in { padding-block: calc(14px - 8px * var(--p, 0)); }
@media (min-width: 681px) and (max-width: 1023px) { html.mast-js body.nr .mast nav a { padding-block: calc(5px - 1px * var(--p, 0)); } }
.mast-burger { display: none; width: 34px; height: 34px; padding: 0; border: 0; border-radius: 6px; background: transparent; color: var(--on-dark); cursor: pointer; place-items: center; }
.mast-burger svg { width: 22px; height: 22px; }
.mast-burger:hover, html.mast-menu .mast-burger { background: rgba(246, 244, 239, 0.14); }
@media (max-width: 680px) {
  html.mast-js body.nr .mast-in { padding: calc(8px + 4px * var(--p, 0)) var(--gutter) calc(6px + 5px * var(--p, 0)); }
  html.mast-js body.nr .wm { font-size: calc(1.5rem - 0.2rem * var(--p, 0)); }
  html.mast-js body.nr .nr-find { top: calc(4px + 2.5px * var(--p, 0)); }
  html.mast-js body.nr .mast nav { overflow: hidden; max-height: calc((1 - var(--p, 0)) * var(--nav-h, 6em)); opacity: clamp(0, 1 - 2.5 * var(--p, 0), 1); }
  html.mast-slim body.nr .mast nav { visibility: hidden; }
  html.mast-js body.nr .mast-burger { display: grid; position: absolute; left: calc(var(--gutter) - 8px); top: calc(4px + 2.5px * var(--p, 0)); pointer-events: none; opacity: clamp(0, (var(--p, 0) - 0.4) * 2.5, 1); }
  html.mast-slim body.nr .mast-burger { pointer-events: auto; }
  html.mast-slim.mast-menu body.nr .mast nav { visibility: visible; opacity: 1; max-height: calc(100dvh - var(--stick, 60px) - 8px); overflow-y: auto; display: flex; flex-direction: column; align-items: flex-start; position: absolute; left: 0; right: 0; top: calc(100% + 4px); z-index: 55; margin: 0; padding: 4px var(--gutter) 10px; background: var(--burg); box-shadow: 0 14px 24px -14px rgba(29, 20, 24, 0.6); font-size: 1.05rem; }
  html.mast-slim.mast-menu body.nr .mast nav a { padding: 11px 0; width: 100%; border-top: 1px solid rgba(246, 244, 239, 0.14); }
  html.mast-slim.mast-menu body.nr .mast nav a:first-child { border-top: 0; }
  html.mast-slim.mast-menu body.nr .mast nav a::after { right: auto; width: 3em; }
}
html.mast-still .mast, html.mast-still .mast * { transition: none !important; }
/* Menu bar, Varianta C (owner, 2026-10-29): where the browser can tie animations to the scroll, the script writes them (style#mast-c-anim)
   and the bar keeps its full layout (--p stays 0). Here: the motto is never cut (on tablets it needs three lines; Varianta B cut the third),
   and the one-row copy of the menu, used on tablets whose full bar needs two menu rows; the copy never takes part in the bar's layout. */
html.mast-c .brand-text small { max-height: calc(99em * (1 - var(--p, 0))); }
html.mast-js .mast > .mast-in > nav.mast-nav1 { display: none !important; position: absolute; margin: 0; flex-wrap: nowrap; white-space: nowrap; z-index: 1; }
@media (min-width: 681px) { html.mast-c.mast-wrap:not(.mast-still) .mast > .mast-in > nav.mast-nav1 { display: flex !important; } }
/* Compact slim menu bar on computers, V1 about 20% lower (owner, 2026-10-30): slim bar 4+33+4+4 px instead of 6+40+6+4. */
@media (min-width: 1024px) {
  html.mast-js body.nr .mast-in { padding-block: calc(14px - 10px * var(--p, 0)); }
  html.mast-js body.nr .wm { font-size: calc(min(1.75rem, 3.4vw) * (1 - 0.1429 * var(--p, 0))); }
  html.mast-js body.nr .nr-find > summary { width: calc(40px - 7px * var(--p, 0)); height: calc(40px - 7px * var(--p, 0)); }
  html.mast-js body.nr .nr-find svg { width: calc(22px - 3.85px * var(--p, 0)); height: calc(22px - 3.85px * var(--p, 0)); }
  html.mast-js body.nr .mast nav a { padding-block: calc(10px - 1.5px * var(--p, 0)); }
  html.mast-js body.nr .mast nav a::after { bottom: calc(4px - 1.5px * var(--p, 0)); }
}

/* 340 (2026-10-30): donations page - the PayPal cards (nr-pp) now sit inside the 'PayPal sau card bancar' topic accordion; give them the same side space as the other content in the box. */
.nr .prose details.nr-topic > .wp-block-columns.nr-pp { margin: 6px 22px 22px !important; }

/* 342 (2026-10-30): donations page only - all accordion titles (the 4 ways to donate and the 8 projects) in bold, owner request. Same font, size and colour. */
body.page-id-157 .prose details.nr-topic:not(.nr-branch) > summary { font-weight: 700 !important; }
