/*
 * Tiskové nastavení letáku 2 (`www/letak-2.php`).
 *
 * Sazba je navržená na A5. A4 a A3 mají stejný poměr stran, proto se list
 * jen zvětší — pro A4 297 / 210 = 1,414, pro A3 420 / 210 = 2; na šířku tím
 * zbyde 0,7 mm, resp. 1 mm, které zakryje barva papíru na `.draft-page`.
 *
 * Tisková data (`?tisk=1`) mají kolem ořezu 3mm spadávku a 5mm prostor pro
 * ořezové značky, tedy o 16 mm větší list. TrimBox a BleedBox do hotového
 * PDF doplňuje `bin/render-flyer.mjs`.
 */
@page draft-a5 {
  size: A5;
  margin: 0;
}

@page draft-a4 {
  size: A4;
  margin: 0;
}

@page draft-a3 {
  size: A3;
  margin: 0;
}

@page draft-a5-press {
  size: 164mm 226mm;
  margin: 0;
}

@page draft-a4-press {
  size: 226mm 313mm;
  margin: 0;
}

@page draft-a3-press {
  size: 313mm 436mm;
  margin: 0;
}

.draft-page {
  --trim-w: 148mm;
  --trim-h: 210mm;
  --scale: 1;
  position: relative;
  page: draft-a5;
  width: var(--trim-w);
  height: var(--trim-h);
  overflow: hidden;
  background: var(--color-bone);
}

.format-a4 .draft-page {
  --trim-w: 210mm;
  --trim-h: 297mm;
  --scale: 1.41428;
  page: draft-a4;
}

.format-a3 .draft-page {
  --trim-w: 297mm;
  --trim-h: 420mm;
  --scale: 2;
  page: draft-a3;
}

.draft-sheet {
  position: absolute;
  top: 0;
  left: 0;
  width: 148mm;
  height: 210mm;
  overflow: hidden;
  transform: scale(var(--scale));
  transform-origin: 0 0;
}

/*
 * Písmo listu ze statických řezů, ne z proměnných fontů webu: proměnné
 * písmo vloží Chrome do PDF jako Type 3 a tiskárna s ním slévala písmena.
 * Statické řezy jdou do PDF jako běžné TrueType. Soubory kopíruje
 * `npm run fonts` (bin/copy-fonts.mjs), čeština potřebuje obě sady.
 */

@font-face {
  font-family: "Libre Franklin Print";
  font-style: normal;
  font-display: block;
  font-weight: 400;
  src: url("../fonts/libre-franklin-latin-400-normal.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: "Libre Franklin Print";
  font-style: normal;
  font-display: block;
  font-weight: 400;
  src: url("../fonts/libre-franklin-latin-ext-400-normal.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF,
    U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020,
    U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: "Libre Franklin Print";
  font-style: normal;
  font-display: block;
  font-weight: 500;
  src: url("../fonts/libre-franklin-latin-500-normal.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: "Libre Franklin Print";
  font-style: normal;
  font-display: block;
  font-weight: 500;
  src: url("../fonts/libre-franklin-latin-ext-500-normal.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF,
    U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020,
    U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: "Libre Franklin Print";
  font-style: normal;
  font-display: block;
  font-weight: 600;
  src: url("../fonts/libre-franklin-latin-600-normal.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: "Libre Franklin Print";
  font-style: normal;
  font-display: block;
  font-weight: 600;
  src: url("../fonts/libre-franklin-latin-ext-600-normal.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF,
    U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020,
    U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: "Libre Franklin Print";
  font-style: normal;
  font-display: block;
  font-weight: 700;
  src: url("../fonts/libre-franklin-latin-700-normal.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: "Libre Franklin Print";
  font-style: normal;
  font-display: block;
  font-weight: 700;
  src: url("../fonts/libre-franklin-latin-ext-700-normal.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF,
    U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020,
    U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: "Inter Print";
  font-style: normal;
  font-display: block;
  font-weight: 400;
  src: url("../fonts/inter-latin-400-normal.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: "Inter Print";
  font-style: normal;
  font-display: block;
  font-weight: 400;
  src: url("../fonts/inter-latin-ext-400-normal.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF,
    U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020,
    U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: "Inter Print";
  font-style: normal;
  font-display: block;
  font-weight: 500;
  src: url("../fonts/inter-latin-500-normal.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: "Inter Print";
  font-style: normal;
  font-display: block;
  font-weight: 500;
  src: url("../fonts/inter-latin-ext-500-normal.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF,
    U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020,
    U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: "Inter Print";
  font-style: normal;
  font-display: block;
  font-weight: 600;
  src: url("../fonts/inter-latin-600-normal.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: "Inter Print";
  font-style: normal;
  font-display: block;
  font-weight: 600;
  src: url("../fonts/inter-latin-ext-600-normal.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF,
    U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020,
    U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: "Inter Print";
  font-style: normal;
  font-display: block;
  font-weight: 700;
  src: url("../fonts/inter-latin-700-normal.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: "Inter Print";
  font-style: normal;
  font-display: block;
  font-weight: 700;
  src: url("../fonts/inter-latin-ext-700-normal.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF,
    U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020,
    U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

.draft-sheet {
  --font-heading: "Libre Franklin Print", sans-serif;
  --font-sans: "Inter Print", sans-serif;
  font-family: var(--font-sans);
}

/*
 * Tisková data: ořez začíná 8 mm od okraje listu, spadávka 5 mm od něj.
 * Osm tenkých gradientů tvoří ořezové značky, mezi značkou a spadávkou
 * zůstává 1 mm. Papír i kresba obce přetékají až do spadávky.
 */
.print-pdf .draft-page {
  page: draft-a5-press;
  width: calc(var(--trim-w) + 16mm);
  height: calc(var(--trim-h) + 16mm);
  background-color: #fff;
  background-image:
    linear-gradient(#000, #000), linear-gradient(#000, #000),
    linear-gradient(#000, #000), linear-gradient(#000, #000),
    linear-gradient(#000, #000), linear-gradient(#000, #000),
    linear-gradient(#000, #000), linear-gradient(#000, #000);
  background-position:
    0 8mm,
    calc(var(--trim-w) + 12mm) 8mm,
    0 calc(var(--trim-h) + 8mm),
    calc(var(--trim-w) + 12mm) calc(var(--trim-h) + 8mm),
    8mm 0,
    calc(var(--trim-w) + 8mm) 0,
    8mm calc(var(--trim-h) + 12mm),
    calc(var(--trim-w) + 8mm) calc(var(--trim-h) + 12mm);
  background-repeat: no-repeat;
  background-size:
    4mm 0.1mm, 4mm 0.1mm, 4mm 0.1mm, 4mm 0.1mm,
    0.1mm 4mm, 0.1mm 4mm, 0.1mm 4mm, 0.1mm 4mm;
}

.print-pdf.format-a4 .draft-page {
  page: draft-a4-press;
}

.print-pdf.format-a3 .draft-page {
  page: draft-a3-press;
}

.draft-bleed {
  display: none;
}

.print-pdf .draft-bleed {
  display: block;
  position: absolute;
  top: 5mm;
  left: 5mm;
  width: calc(var(--trim-w) + 6mm);
  height: calc(var(--trim-h) + 6mm);
  background: var(--color-bone);
}

.print-pdf .draft-sheet {
  top: 8mm;
  left: 8mm;
  overflow: visible;
}

/*
 * Kresba obce jde přes boky a spodek listu až na vnější hranu spadávky. List
 * A4 a A3 je zvětšený, spadávka se proto přepočítá do jeho měřítka.
 */
.print-pdf .draft-illustration {
  inset-inline: calc(-3mm / var(--scale));
  bottom: calc(-3mm / var(--scale));
}

/*
 * List je modrý: tmavá ocelová modrá pro `text-forest`, `bg-forest` i logo
 * (`fill-forest`), cihlová červená (`text-vote`) pro výzvu „Volte č. 2“
 * a zvýrazněná slova v důvodech — ne signální, k modré a papíru ladí
 * a v tisku nepřebije fotky kandidátů. Web z letáku převzal stejné barvy;
 * tady jsou zopakované, aby se list nezměnil, až se bude ladit paleta webu.
 *
 * Text je v barvě listu: černý i tmavě šedý text převezme modrou, šedé
 * popisky její světlejší odstín.
 */
.draft-sheet {
  --color-forest: #2c4a70;
  --color-forest-2: #1f3553;
  --color-vote: #b23a2e;
  --color-ink: var(--color-forest);
  --color-slate: var(--color-forest);
  --color-muted: color-mix(in srgb, var(--color-forest) 75%, var(--color-bone));
}

/* Bez tohohle prohlížeč v tisku vyhodí barevné plochy a zůstanou bílé rámečky. */
*, *::before, *::after {
  print-color-adjust: exact;
  -webkit-print-color-adjust: exact;
}

@media screen {
  body { background: #55594f; }
  .draft-page { margin: 0 auto 32px; box-shadow: 0 10px 40px rgb(0 0 0 / 0.35); }
}

@media print {
  html, body { background: #fff; }
  .no-print { display: none !important; }
  .draft-page { margin: 0; box-shadow: none; }
}
