@import "fonts.css";

/* ============================================================================
   ΘΕΣΜΙΚΗ ΕΠΑΝΙΔΡΥΣΗ — Editorial Design System
   Ηλεκτρονική πολιτική / θεσμική εφημερίδα · PDF-first · A4 portrait
   ----------------------------------------------------------------------------
   Αρχιτεκτονική:  CONTENT -> EDITORIAL ENGINE -> HTML (A4 paged) -> PDF -> PDF.js
   Το ίδιο stylesheet εξυπηρετεί:
     (α) προεπισκόπηση σε οθόνη  (φύλλα ως "sheets" πάνω σε σκούρο φόντο)
     (β) εκτύπωση / print-to-pdf (@page A4, named pages, margin boxes, folio)
   Καμία εξάρτηση από δίκτυο: μόνο εγκατεστημένες γραμματοσειρές (GFS + fallbacks).
   ========================================================================== */

/* ---------------------------------------------------------------------------
   1. DESIGN TOKENS
   ------------------------------------------------------------------------- */
:root{
  /* --- Χρωματική παλέτα ---------------------------------------------------
     Βάση: υπόλευκο χαρτί, σχεδόν-μαύρη μελάνη, ανθρακί δευτερεύοντα,
     ΕΝΑ accent (χρυσό ταυτότητας — κοινό με τον φορέα) με φειδώ. */
  --paper:        #fbfaf7;   /* υπόλευκο χαρτί                    */
  --paper-2:      #f2efe8;   /* ελαφρύ πλακίδιο / boxes           */
  --ink:          #14140f;   /* σχεδόν μαύρο κείμενο              */
  --ink-soft:     #3a3a34;   /* δευτερεύον κείμενο                */
  --anthracite:   #5b5b53;   /* metadata, captions, γραμμές      */
  --hairline:     #cfc9bd;   /* λεπτές διαχωριστικές γραμμές      */
  --rule-strong:  #14140f;   /* βαριές editorial γραμμές          */
  --accent:       #b0122b;   /* accent ταυτότητας (βαθύ κόκκινο)  */
  --accent-ink:   #7d0c1e;   /* accent σε μικρό μέγεθος / κείμενο */
  --accent-tint:  #f6e7e5;   /* πολύ απαλό πλακίδιο accent        */

  /* --- Τυπογραφικές οικογένειες ---------------------------------------- */
  --f-masthead: "GFS Bodoni", "GFS Didot", "Linux Libertine O", Georgia, serif;
  --f-display:  "GFS Didot", "GFS Bodoni", "Linux Libertine O", Georgia, "Times New Roman", serif;
  --f-serif:    "GFS Artemisia", "Gentium Plus", "Noto Serif", Georgia, "Times New Roman", serif;
  --f-sans:     "GFS Neohellenic", "Liberation Sans", "DejaVu Sans", Arial, sans-serif;
  --f-mono:     "Liberation Mono", "DejaVu Sans Mono", ui-monospace, monospace;

  /* --- Τυπογραφική κλίμακα (modular ~1.24, βάση 10pt σώμα εκτύπωσης) --- */
  --t-masthead:  33pt;   /* nameplate — μία γραμμή στο πλάτος σελίδας */
  --t-xl:        40pt;   /* Headline XL — κύριο θέμα πρωτοσέλιδου */
  --t-l:         27pt;   /* Headline L  — σημαντικά άρθρα         */
  --t-m:         18pt;   /* Headline M  — κανονικά άρθρα          */
  --t-s:         13pt;   /* Headline S  — μικρές ειδήσεις         */
  --t-lead:      11.5pt; /* Lead                                  */
  --t-body:      9.8pt;  /* Body                                  */
  --t-caption:   8pt;    /* Caption                               */
  --t-meta:      7.4pt;  /* Metadata / kicker / folio             */

  --lh-body:     1.5;
  --lh-tight:    1.12;
  --lh-lead:     1.42;

  /* --- Grid / ρυθμός ----------------------------------------------------- */
  --page-w:      210mm;
  --page-h:      297mm;
  --margin-top:      14mm;
  --margin-bottom:   15mm;
  --margin-outer:    15mm;
  --margin-inner:    18mm;   /* ράχη — λίγο μεγαλύτερο για δισέλιδα */
  --cols:        12;
  --gutter:      4.5mm;
  --baseline:    4.4mm;      /* κάθετος ρυθμός */
}

/* ---------------------------------------------------------------------------
   2. RESET / ΒΑΣΗ
   ------------------------------------------------------------------------- */
*,*::before,*::after{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; }
body{
  margin:0;
  background:#2b2b2b;                 /* σκούρο φόντο προεπισκόπησης */
  color:var(--ink);
  font-family:var(--f-serif);
  font-size:var(--t-body);
  line-height:var(--lh-body);
  text-rendering:optimizeLegibility;
  font-kerning:normal;
  -webkit-font-smoothing:antialiased;
  font-feature-settings:"kern" 1,"liga" 1,"onum" 1;
}
p{ margin:0; }
h1,h2,h3,h4,h5,h6{ margin:0; font-weight:normal; }
ol,ul{ margin:0; padding-left:5mm; }
dl,dd,dt,figure,blockquote{ margin:0; }
img{ max-width:100%; display:block; }
a{ color:var(--accent-ink); text-underline-offset:2px; text-decoration-thickness:.5pt; }
sup{ font-size:.7em; line-height:0; }
[hidden]{ display:none !important; }

/* ---------------------------------------------------------------------------
   3. ΤΟ ΦΥΛΛΟ (screen preview) — κάθε .sheet είναι μία σελίδα A4
   ------------------------------------------------------------------------- */
.paper-stack{
  display:flex; flex-direction:column; align-items:center;
  gap:14mm; padding:14mm 0 24mm;
}
.sheet{
  position:relative;
  width:var(--page-w);
  min-height:var(--page-h);
  background:var(--paper);
  color:var(--ink);
  box-shadow:0 2mm 12mm rgba(0,0,0,.45);
  padding:var(--margin-top) var(--margin-outer) var(--margin-bottom);
  overflow:hidden;
}
/* εσωτερικές σελίδες: ασύμμετρα περιθώρια (ράχη) εναλλάξ */
.sheet--left  { padding-left:var(--margin-outer); padding-right:var(--margin-inner); }
.sheet--right { padding-left:var(--margin-inner); padding-right:var(--margin-outer); }

/* ---------------------------------------------------------------------------
   4. EDITORIAL GRID
   3 βασικές στήλες = 12 μονάδες (4+4+4). Helpers για 1 / 2 / 3 / 2+1 / full.
   ------------------------------------------------------------------------- */
.grid{
  display:grid;
  grid-template-columns:repeat(var(--cols),1fr);
  column-gap:var(--gutter);
  row-gap:var(--baseline);
  align-items:start;
}
.col-1{grid-column:span 1}   .col-2{grid-column:span 2}
.col-3{grid-column:span 3}   .col-4{grid-column:span 4}   /* 1 από 3 */
.col-5{grid-column:span 5}   .col-6{grid-column:span 6}   /* 2 από 3 (μισή σελίδα) */
.col-7{grid-column:span 7}   .col-8{grid-column:span 8}   /* 2 από 3 */
.col-9{grid-column:span 9}   .col-10{grid-column:span 10}
.col-12{grid-column:1 / -1}                               /* πλήρες πλάτος */
.row-start{grid-row-start:1}

/* Ροή σώματος κειμένου σε στήλες μέσα σε ένα block πλήρους πλάτους */
.text-cols-2{ columns:2; column-gap:var(--gutter); }
.text-cols-3{ columns:3; column-gap:var(--gutter); }
.text-cols-2 > *, .text-cols-3 > *{ break-inside:avoid-column; }
.text-cols-2 p, .text-cols-3 p{ break-inside:auto; }

.stack > * + *{ margin-top:var(--baseline); }
.pad-r{ padding-right:var(--gutter); }
.pad-l{ padding-left:var(--gutter); }
.rule-l{ border-left:.4pt solid var(--hairline); }
.rule-r{ border-right:.4pt solid var(--hairline); }

/* ---------------------------------------------------------------------------
   5. ΓΡΑΜΜΕΣ / ΔΙΑΧΩΡΙΣΤΙΚΑ
   ------------------------------------------------------------------------- */
.rule        { border:0; border-top:.5pt solid var(--hairline); margin:0; }
.rule--strong{ border-top:2.4pt solid var(--rule-strong); }
.rule--hair  { border-top:.4pt solid var(--hairline); }
.rule--accent{ border-top:2pt solid var(--accent); }
.rule--double{ border:0; height:3pt; border-top:.5pt solid var(--ink); border-bottom:2pt solid var(--ink); }

/* ---------------------------------------------------------------------------
   6. MASTHEAD / ΠΡΩΤΟΣΕΛΙΔΟ
   ------------------------------------------------------------------------- */
.masthead{ text-align:center; padding-bottom:2mm; }
.masthead__pretitle{
  font-family:var(--f-sans);
  font-size:var(--t-meta);
  letter-spacing:.42em;
  text-transform:uppercase;
  color:var(--anthracite);
  margin-bottom:3mm;
}
.masthead__title{
  font-family:var(--f-masthead);
  font-weight:700;
  font-size:var(--t-masthead);
  line-height:1;
  letter-spacing:-.005em;
  color:var(--ink);
  text-transform:uppercase;
  white-space:nowrap;      /* πάντα μία γραμμή */
}
.masthead__tagline{
  font-family:var(--f-sans);
  font-size:var(--t-meta);
  letter-spacing:.34em;
  text-transform:uppercase;
  color:var(--anthracite);
  margin-top:3mm;
}
/* folio line κάτω από το masthead */
.folio-line{
  display:flex; justify-content:space-between; align-items:baseline;
  font-family:var(--f-sans);
  font-size:var(--t-meta);
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--ink-soft);
  border-top:2.4pt solid var(--rule-strong);
  border-bottom:.5pt solid var(--ink);
  padding:1.6mm 0;
  margin-top:3mm;
}
.folio-line b{ color:var(--accent-ink); }
.folio-line .folio-line__mid{ letter-spacing:.24em; }

/* QR placeholder */
.qr{
  width:20mm; height:20mm; flex:none;
  background:
    repeating-linear-gradient(90deg,var(--ink) 0 1.6mm,transparent 0 3.2mm),
    repeating-linear-gradient(0deg,var(--ink) 0 1.6mm,transparent 0 3.2mm);
  background-color:#fff;
  border:.5pt solid var(--ink);
}
.qr--sm{ width:14mm; height:14mm; }
.qr-caption{ font-family:var(--f-sans); font-size:6.4pt; letter-spacing:.06em;
  text-transform:uppercase; color:var(--anthracite); text-align:center; margin-top:1mm; }

/* ---------------------------------------------------------------------------
   7. ΤΥΠΟΓΡΑΦΙΚΗ ΙΕΡΑΡΧΙΑ ΑΡΘΡΩΝ
   ------------------------------------------------------------------------- */
.kicker{
  font-family:var(--f-sans);
  font-size:var(--t-meta);
  font-weight:700;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--accent-ink);
  margin-bottom:2mm;
  display:inline-flex; align-items:center; gap:2mm;
}
.kicker::before{ content:""; width:6mm; height:0; border-top:2pt solid var(--accent); }
.kicker--plain::before{ display:none; }

.headline{ font-family:var(--f-display); font-weight:700; line-height:var(--lh-tight);
  color:var(--ink); letter-spacing:.005em; text-wrap:balance; hyphens:none; }
.headline--xl{ font-size:var(--t-xl); }
.headline--l { font-size:var(--t-l); }
.headline--m { font-size:var(--t-m); }
.headline--s { font-size:var(--t-s); }
.headline a{ color:inherit; text-decoration:none; }

.deck{
  font-family:var(--f-serif);
  font-size:var(--t-lead);
  line-height:var(--lh-lead);
  color:var(--ink-soft);
  font-style:italic;
  margin-top:3mm;
  max-width:62ch;
}

.byline{
  font-family:var(--f-sans);
  font-size:var(--t-meta);
  letter-spacing:.06em;
  color:var(--ink);
  margin-top:3mm;
}
.byline b{ text-transform:uppercase; letter-spacing:.12em; }
.byline .byline__meta{ color:var(--anthracite); }

.lead{
  font-family:var(--f-serif);
  font-size:var(--t-lead);
  line-height:var(--lh-lead);
  margin-top:var(--baseline);
}
.lead::first-letter,
.dropcap::first-letter{
  float:left;
  font-family:var(--f-display);
  font-weight:700;
  font-size:15mm;
  line-height:.82;
  padding:1mm 2mm 0 0;
  color:var(--accent);
}

.body{ font-size:var(--t-body); line-height:var(--lh-body); hyphens:none; }
.body p + p{ text-indent:4mm; }
.body p.no-indent{ text-indent:0; }
.body p{ margin:0; }

.subhead{
  font-family:var(--f-sans);
  font-weight:700;
  font-size:9.6pt;
  letter-spacing:.02em;
  color:var(--ink);
  margin:var(--baseline) 0 1.5mm;
  break-after:avoid;
}
.subhead--accent{ color:var(--accent-ink); }

/* pull quote */
.pullquote{
  font-family:var(--f-display);
  font-style:italic;
  font-size:16pt;
  line-height:1.3;
  color:var(--ink);
  border-top:2pt solid var(--accent);
  border-bottom:.5pt solid var(--ink);
  padding:3mm 0;
  margin:var(--baseline) 0;
  break-inside:avoid;
}
.pullquote cite{
  display:block; margin-top:2mm;
  font-family:var(--f-sans); font-style:normal;
  font-size:var(--t-meta); letter-spacing:.1em; text-transform:uppercase;
  color:var(--anthracite);
}

/* αριθμημένα / λίστες */
.body ol, .body ul{ margin:var(--baseline) 0; padding-left:6mm; }
.body li{ margin:.6mm 0; }
ol.marker-accent{ list-style:none; padding-left:0; counter-reset:mk; }
ol.marker-accent > li{
  counter-increment:mk; position:relative; padding-left:8mm; margin:2mm 0;
  break-inside:avoid;
}
ol.marker-accent > li::before{
  content:counter(mk); position:absolute; left:0; top:0;
  font-family:var(--f-sans); font-weight:700; font-size:9pt;
  color:#fff; background:var(--accent);
  width:5.5mm; height:5.5mm; display:grid; place-items:center;
}

/* footnotes / references */
.footnotes{
  border-top:.5pt solid var(--hairline);
  margin-top:3mm;
  padding-top:1.6mm;
  font-size:7.2pt;
  line-height:1.36;
  color:var(--anthracite);
  columns:2; column-gap:var(--gutter);
}
.footnotes li{ break-inside:avoid; margin:.8mm 0; }
.ref-link::after{ content:" \2197"; color:var(--accent-ink); font-size:.85em; }

/* ---------------------------------------------------------------------------
   8. ΕΙΚΟΝΕΣ / FIGURES  (δημοσιογραφική χρήση, πάντα λεζάντα + πηγή)
   ------------------------------------------------------------------------- */
.figure{ margin:0; break-inside:avoid; }
.figure__frame{
  position:relative; overflow:hidden; background:var(--paper-2);
  border:.5pt solid var(--hairline);
}
.figure__frame img{ width:100%; height:100%; object-fit:cover; }
.figure__caption{
  font-family:var(--f-sans);
  font-size:var(--t-caption);
  line-height:1.36;
  color:var(--ink-soft);
  margin-top:1.4mm;
  padding-left:4mm;
  border-left:2pt solid var(--accent);
}
.figure__credit{
  display:block;
  font-size:6.6pt; letter-spacing:.08em; text-transform:uppercase;
  color:var(--anthracite); margin-top:.6mm;
}
/* Ύψη πλαισίου εικόνας — σταθερά (ντετερμινιστική σελιδοποίηση για το template).
   Η αναλογία προκύπτει από το πλάτος της στήλης όπου τοποθετείται το figure. */
.figure__frame.ar-band    { height:40mm; }   /* λωρίδα πλήρους πλάτους */
.figure__frame.ar-hero    { height:58mm; }   /* hero              */
.figure__frame.ar-wide    { height:52mm; }   /* φωτό στήλης 3:2    */
.figure__frame.ar-square  { height:48mm; }
.figure__frame.ar-portrait{ height:58mm; }
.figure__frame.ar-tall    { height:66mm; }

/* placeholder γεμίσματος (όταν δεν έχει φορτωθεί πραγματική εικόνα) */
.ph{
  position:absolute; inset:0;
  background:
    linear-gradient(135deg,rgba(0,0,0,.05) 25%,transparent 25%) 0 0/6mm 6mm,
    var(--paper-2);
  display:grid; place-items:center;
}
.ph::after{
  content:attr(data-label);
  font-family:var(--f-sans); font-size:7pt; letter-spacing:.24em;
  text-transform:uppercase; color:var(--anthracite);
}

/* editorial illustration / infographic wrappers */
.illus{ background:var(--paper); border:.5pt solid var(--ink); padding:4mm; break-inside:avoid; }
.illus__title{ font-family:var(--f-sans); font-weight:700; font-size:8.4pt;
  letter-spacing:.14em; text-transform:uppercase; color:var(--ink); margin-bottom:3mm; }

/* ---------------------------------------------------------------------------
   9. ΔΕΥΤΕΡΕΥΟΝΤΑ ΘΕΜΑΤΑ ΠΡΩΤΟΣΕΛΙΔΟΥ / BRIEFS
   ------------------------------------------------------------------------- */
.brief{ break-inside:avoid; }
.brief + .brief{ border-top:.5pt solid var(--hairline); padding-top:3mm; margin-top:3mm; }
.brief__cat{
  font-family:var(--f-sans); font-weight:700; font-size:var(--t-meta);
  letter-spacing:.2em; text-transform:uppercase; color:var(--accent-ink);
}
.brief__title{
  font-family:var(--f-display); font-weight:700; font-size:var(--t-s);
  line-height:1.16; margin:1.2mm 0; color:var(--ink);
}
.brief__teaser{ font-size:8.4pt; line-height:1.42; color:var(--ink-soft); }
.brief__jump{
  font-family:var(--f-sans); font-size:6.8pt; letter-spacing:.12em;
  text-transform:uppercase; color:var(--anthracite); margin-top:1.4mm;
}
.brief__jump b{ color:var(--accent-ink); }

/* παραπομπή "Ο ΦΑΚΕΛΟΣ ΣΤΙΣ ΣΕΛΙΔΕΣ 4–9" */
.jump-banner{
  font-family:var(--f-sans); font-weight:700; font-size:9pt;
  letter-spacing:.14em; text-transform:uppercase;
  color:var(--ink); background:var(--accent-tint);
  border-left:3pt solid var(--accent);
  padding:2.4mm 3mm; margin-top:var(--baseline);
}
.jump-banner b{ color:var(--accent-ink); }

/* ---------------------------------------------------------------------------
   10. ΠΛΑΙΣΙΑ ΠΛΗΡΟΦΟΡΙΑΣ / BOXES / ΠΙΝΑΚΕΣ
   ------------------------------------------------------------------------- */
.infobox{
  background:var(--paper-2);
  border:.5pt solid var(--hairline);
  border-top:2.4pt solid var(--ink);
  padding:2.6mm 3mm;
  font-size:8.6pt; line-height:1.42;
  break-inside:avoid;
}
.infobox__label{
  font-family:var(--f-sans); font-weight:700; font-size:var(--t-meta);
  letter-spacing:.2em; text-transform:uppercase; color:var(--ink);
  margin-bottom:2mm;
}
.infobox--accent{ border-top-color:var(--accent); background:var(--accent-tint); }
.infobox--accent .infobox__label{ color:var(--accent-ink); }

table.datatable{
  width:100%; border-collapse:collapse;
  font-family:var(--f-sans); font-size:8pt; line-height:1.3;
  break-inside:avoid;
}
table.datatable caption{
  text-align:left; font-weight:700; font-size:var(--t-meta);
  letter-spacing:.16em; text-transform:uppercase; color:var(--ink);
  padding-bottom:1.6mm;
}
table.datatable th,
table.datatable td{ text-align:left; padding:1.6mm 2mm; border-bottom:.4pt solid var(--hairline); }
table.datatable thead th{ border-bottom:1.4pt solid var(--ink); text-transform:uppercase; letter-spacing:.06em; }
table.datatable tbody tr:last-child td{ border-bottom:1.4pt solid var(--ink); }
table.datatable td.num{ text-align:right; font-variant-numeric:tabular-nums; }
table.datatable .accent{ color:var(--accent-ink); font-weight:700; }

/* απλό ραβδόγραμμα για infographics */
.bars{ display:grid; gap:2mm; font-family:var(--f-sans); font-size:7.6pt; }
.bars .bar{ display:grid; grid-template-columns:34mm 1fr auto; align-items:center; gap:2mm; }
.bars .bar__track{ background:var(--paper-2); height:4mm; position:relative; }
.bars .bar__fill{ position:absolute; inset:0 auto 0 0; background:var(--accent); }
.bars .bar__val{ font-variant-numeric:tabular-nums; color:var(--ink); }

/* ---------------------------------------------------------------------------
   11. TIMELINE / ΧΡΟΝΟΛΟΓΙΟ  (ΦΑΚΕΛΟΣ)
   ------------------------------------------------------------------------- */
.timeline{ border-left:2pt solid var(--ink); padding-left:5mm; margin:var(--baseline) 0; }
.timeline__item{ position:relative; padding-bottom:4mm; break-inside:avoid; }
.timeline__item::before{
  content:""; position:absolute; left:-6.1mm; top:1mm;
  width:2.6mm; height:2.6mm; background:var(--accent); border:1pt solid var(--paper);
}
.timeline__date{
  font-family:var(--f-sans); font-weight:700; font-size:7.6pt;
  letter-spacing:.12em; text-transform:uppercase; color:var(--accent-ink);
}
.timeline__text{ font-size:8.4pt; line-height:1.42; color:var(--ink-soft); margin-top:.8mm; }

/* λίστα βασικών προσώπων / φορέων */
.actors{ display:grid; gap:2.4mm; font-size:8.2pt; line-height:1.36; }
.actors__row{ display:grid; grid-template-columns:auto 1fr; gap:2.4mm; break-inside:avoid; }
.actors__name{ font-family:var(--f-sans); font-weight:700; text-transform:uppercase;
  letter-spacing:.06em; color:var(--ink); }

/* ---------------------------------------------------------------------------
   12. ΑΝΑΠΑΡΑΓΩΓΗ ΕΓΓΡΑΦΟΥ / ΤΕΚΜΗΡΙΟ
   ------------------------------------------------------------------------- */
.document{
  background:#fff;
  border:.5pt solid var(--anthracite);
  box-shadow:0 .6mm 2mm rgba(0,0,0,.12);
  padding:6mm 6mm 5mm;
  font-family:var(--f-mono);
  font-size:7.4pt; line-height:1.5; color:#23231d;
  break-inside:avoid;
}
.document__stamp{
  display:inline-block;
  font-family:var(--f-sans); font-weight:700; font-size:6.6pt;
  letter-spacing:.18em; text-transform:uppercase;
  color:var(--accent-ink); border:1pt solid var(--accent-ink);
  padding:.8mm 2mm; transform:rotate(-3deg); margin-bottom:3mm;
}
.document__head{ font-family:var(--f-sans); font-size:7pt; letter-spacing:.04em;
  color:var(--anthracite); text-transform:uppercase; margin-bottom:2mm;
  display:flex; justify-content:space-between; }
.document p{ margin:1.5mm 0; }
.document .redacted{ background:var(--ink); color:var(--ink); user-select:none; }
.document__caption{
  font-family:var(--f-sans); font-size:var(--t-caption);
  color:var(--ink-soft); margin-top:1.6mm;
  padding-left:4mm; border-left:2pt solid var(--accent);
}

/* ---------------------------------------------------------------------------
   13. ΣΕΛΙΔΑ ΑΠΟΨΕΩΝ
   ------------------------------------------------------------------------- */
.opinion-head{ display:grid; grid-template-columns:22mm 1fr; gap:4mm; align-items:start;
  border-bottom:2.4pt solid var(--ink); padding-bottom:3mm; margin-bottom:var(--baseline); }
.opinion-portrait{ width:22mm; height:26mm; background:var(--paper-2);
  border:.5pt solid var(--hairline); position:relative; overflow:hidden; filter:grayscale(1) contrast(1.05); }
.opinion-meta__name{ font-family:var(--f-sans); font-weight:700; font-size:9.4pt;
  letter-spacing:.06em; text-transform:uppercase; color:var(--ink); }
.opinion-meta__role{ font-family:var(--f-sans); font-size:7.4pt; color:var(--anthracite);
  letter-spacing:.04em; margin-top:.6mm; }
.opinion-bio{ font-size:7.4pt; line-height:1.4; color:var(--anthracite);
  border-top:.4pt solid var(--hairline); margin-top:var(--baseline); padding-top:2mm; font-style:italic; }
.opinion .headline{ font-style:italic; }
.opinion-tag{
  font-family:var(--f-sans); font-weight:700; font-size:var(--t-meta);
  letter-spacing:.24em; text-transform:uppercase; color:#fff; background:var(--ink);
  padding:1.4mm 3mm; display:inline-block;
}

/* ---------------------------------------------------------------------------
   14. ΕΝΟΤΗΤΑ ΦΑΚΕΛΟΣ — κεφαλίδα δισέλιδου
   ------------------------------------------------------------------------- */
.dossier-flag{
  display:flex; align-items:baseline; gap:3mm;
  font-family:var(--f-sans); font-weight:700;
  letter-spacing:.24em; text-transform:uppercase;
  border-bottom:3pt solid var(--accent); padding-bottom:2mm;
}
.dossier-flag .dossier-flag__k{ font-size:8pt; color:var(--accent-ink); }
.dossier-flag .dossier-flag__t{ font-size:8pt; color:var(--ink); }
.dossier-flag .dossier-flag__n{ margin-left:auto; font-size:7pt; color:var(--anthracite); letter-spacing:.1em; }

/* πλαίσια ΦΑΚΕΛΟΥ: ΤΟ ΕΓΓΡΑΦΟ / ΤΙ ΠΡΟΒΛΕΠΕΙ Ο ΝΟΜΟΣ / ΤΑ ΣΤΟΙΧΕΙΑ / ΤΟ ΕΡΩΤΗΜΑ / Η ΑΠΑΝΤΗΣΗ */
.dbox{ border:.5pt solid var(--hairline); padding:3mm 3.4mm; font-size:8.4pt; line-height:1.44;
  break-inside:avoid; background:var(--paper); }
.dbox__label{ font-family:var(--f-sans); font-weight:700; font-size:var(--t-meta);
  letter-spacing:.2em; text-transform:uppercase; margin-bottom:2mm;
  padding-bottom:1.4mm; border-bottom:1.4pt solid currentColor; }
.dbox--doc    { border-top:2.4pt solid var(--ink); }
.dbox--law    { border-top:2.4pt solid var(--anthracite); }
.dbox--data   { border-top:2.4pt solid var(--accent); background:var(--accent-tint); }
.dbox--data .dbox__label{ color:var(--accent-ink); }
.dbox--q      { border-top:2.4pt solid var(--ink); background:var(--paper-2); }
.dbox--a      { border-top:2.4pt solid var(--ink); }
.dbox--q .dbox__label::after{ content:" ;"; }

/* ---------------------------------------------------------------------------
   15. RUNNING HEADER / FOOTER (screen) — στο print γίνονται @page margin boxes
   ------------------------------------------------------------------------- */
.run-head{
  display:flex; justify-content:space-between; align-items:baseline;
  font-family:var(--f-sans); font-size:var(--t-meta);
  letter-spacing:.16em; text-transform:uppercase; color:var(--anthracite);
  border-bottom:.5pt solid var(--hairline);
  padding-bottom:1.2mm; margin-bottom:3.4mm;
}
.run-head b{ color:var(--ink); }
.run-foot{
  position:absolute; left:var(--margin-outer); right:var(--margin-outer);
  bottom:calc(var(--margin-bottom) - 9mm);
  display:flex; justify-content:space-between; align-items:baseline;
  font-family:var(--f-sans); font-size:var(--t-meta);
  letter-spacing:.12em; text-transform:uppercase; color:var(--anthracite);
  border-top:.5pt solid var(--hairline); padding-top:1.4mm;
}
.run-foot .folio{ font-weight:700; color:var(--ink); font-size:8.4pt; }
.sheet--left .run-foot{ flex-direction:row-reverse; }

/* section colour keying (accent παραμένει ίδιο· αλλάζει μόνο η ετικέτα) */
.sec-politiki  { --sec:"ΠΟΛΙΤΙΚΗ"; }
.sec-thesmoi   { --sec:"ΘΕΣΜΟΙ"; }
.sec-dikaiosyni{ --sec:"ΔΙΚΑΙΟΣΥΝΗ"; }
.sec-oikonomia { --sec:"ΟΙΚΟΝΟΜΙΑ"; }
.sec-koinonia  { --sec:"ΚΟΙΝΩΝΙΑ"; }
.sec-ereuna    { --sec:"ΕΡΕΥΝΑ"; }
.sec-apopseis  { --sec:"ΑΠΟΨΕΙΣ"; }
.sec-diethni   { --sec:"ΔΙΕΘΝΗ"; }
.sec-istoria   { --sec:"ΙΣΤΟΡΙΑ / ΑΡΧΕΙΟ"; }

/* ---------------------------------------------------------------------------
   16. ΤΕΛΕΥΤΑΙΑ ΣΕΛΙΔΑ
   ------------------------------------------------------------------------- */
.colophon{
  font-family:var(--f-sans); font-size:7.4pt; line-height:1.5; color:var(--ink-soft);
  border-top:2.4pt solid var(--ink); padding-top:3mm;
}
.colophon dt{ font-weight:700; text-transform:uppercase; letter-spacing:.1em;
  color:var(--ink); margin-top:2mm; }
.index-list{ font-family:var(--f-sans); font-size:8pt; line-height:1.7; columns:2; column-gap:var(--gutter); }
.index-list a{ text-decoration:none; display:flex; justify-content:space-between; gap:2mm; }
.index-list a::after{ content:leader(". ") target-counter(attr(href), page); color:var(--anthracite); }

/* ---------------------------------------------------------------------------
   17. UTILITIES
   ------------------------------------------------------------------------- */
.u-center{ text-align:center; }
.u-mt-0{ margin-top:0 !important; }
.u-mt-1{ margin-top:var(--baseline); }
.u-mt-2{ margin-top:calc(var(--baseline) * 2); }
.u-accent{ color:var(--accent-ink); }
.u-small{ font-size:var(--t-caption); color:var(--anthracite); }
.u-uc{ text-transform:uppercase; letter-spacing:.14em; }
.keep{ break-inside:avoid; }
.break-before{ break-before:page; }
.spacer{ flex:1 1 auto; }

/* ===========================================================================
   18. PRINT / PDF  —  @page, named pages, margin boxes, folio, running header
   =========================================================================== */
@page{
  size:A4 portrait;
  margin:var(--margin-top) var(--margin-outer) var(--margin-bottom);
  /* folio + ιστότοπος — δουλεύουν αξιόπιστα σε Chrome print-to-pdf */
  @bottom-left{
    content:"thesmiki-epanidrisi.gr";
    font-family:"GFS Neohellenic","Liberation Sans",sans-serif;
    font-size:7.4pt; letter-spacing:.12em; text-transform:uppercase; color:#5b5b53;
  }
  @bottom-right{
    content:counter(page);
    font-family:"GFS Neohellenic","Liberation Sans",sans-serif;
    font-weight:700; font-size:9pt; color:#14140f;
  }
}
@page front{ @bottom-left{content:none} @bottom-right{content:none} }
@page back { @bottom-left{content:none} }

/* named pages */
.page-front  { page:front; }
.page-back   { page:back; }

/* Ο running header τυπώνεται μέσα στη ροή (.run-head) — δεν εξαρτάται από
   string-set(), ώστε να αποδίδεται σταθερά σε κάθε μηχανή εκτύπωσης. */

@media print{
  html,body{ background:#fff; }
  .paper-stack{ display:block; gap:0; padding:0; }
  .sheet{
    width:auto; min-height:0; margin:0; padding:0;
    box-shadow:none; overflow:visible;
    break-after:page;
  }
  .sheet:last-child{ break-after:auto; }
  .sheet--left,.sheet--right{ padding:0; }
  .run-foot{ display:none; }              /* folio/site τα κάνει το @page */
  .screen-only{ display:none !important; }
  a{ color:var(--ink); text-decoration:none; }
  .figure,.pullquote,.infobox,.dbox,.document,.timeline__item,.brief,
  table.datatable,.illus,.actors__row{ break-inside:avoid; }
  h1,h2,h3,.headline,.subhead{ break-after:avoid; }
  p{ orphans:3; widows:3; }
}

@media screen{
  .print-only{ display:none !important; }
}

/* ---------------------------------------------------------------------------
   19. ΠΡΟΣΒΑΣΙΜΟΤΗΤΑ / ΜΙΚΡΕΣ ΟΘΟΝΕΣ (preview scaling)
   ------------------------------------------------------------------------- */
@media screen and (max-width:230mm){
  .paper-stack{ padding-left:4mm; padding-right:4mm; }
  .sheet{ width:100%; }
}
