@font-face { font-family: "Barlow"; src: url("{{ font_base }}/Barlow-Regular.ttf"); font-weight: 400; font-style: normal; } @font-face { font-family: "Barlow"; src: url("{{ font_base }}/Barlow-Italic.ttf"); font-weight: 400; font-style: italic; } @font-face { font-family: "Barlow"; src: url("{{ font_base }}/Barlow-Medium.ttf"); font-weight: 500; } @font-face { font-family: "Barlow"; src: url("{{ font_base }}/Barlow-SemiBold.ttf"); font-weight: 600; } @font-face { font-family: "Barlow"; src: url("{{ font_base }}/Barlow-Bold.ttf"); font-weight: 700; } @font-face { font-family: "Barlow Condensed"; src: url("{{ font_base }}/BarlowCondensed-Medium.ttf"); font-weight: 500; } @font-face { font-family: "Barlow Condensed"; src: url("{{ font_base }}/BarlowCondensed-SemiBold.ttf"); font-weight: 600; } @font-face { font-family: "Barlow Condensed"; src: url("{{ font_base }}/BarlowCondensed-Bold.ttf"); font-weight: 700; } @page { size: {{ page.css_size }}; margin: {{ layout.margin }}mm {{ layout.margin }}mm {{ layout.margin + 3 }}mm {{ layout.margin }}mm; {% if opts.pagination %} @bottom-right { content: "Page " counter(page) " / " counter(pages); font-family: "Barlow"; font-size: 7.5pt; color: #5b6b82; } {% endif %} } * { box-sizing: border-box; } html, body { margin: 0; padding: 0; } body { font-family: "Barlow", "DejaVu Sans", sans-serif; color: #10203a; font-size: {{ layout.font }}pt; line-height: 1.3; -webkit-print-color-adjust: exact; print-color-adjust: exact; } .diffusion { text-align: center; font-family: "Barlow Condensed"; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; font-size: 8.5pt; color: #b3172d; margin: 0 0 {{ 2 * layout.head }}mm; } .draft-banner { border: 1.2pt solid #d7263d; color: #b3172d; border-radius: 2mm; text-align: center; font-weight: 700; font-size: 8.5pt; letter-spacing: .08em; padding: 1.2mm 2mm; margin: 0 0 {{ 3 * layout.head }}mm; } .doc-head { display: flex; align-items: center; padding-bottom: {{ 3.5 * layout.head }}mm; } .logo { width: {{ 22 * layout.head }}mm; height: {{ 22 * layout.head }}mm; object-fit: contain; flex: 0 0 auto; margin-right: 5mm; } .titles { flex: 1 1 auto; min-width: 0; } .kicker { font-size: 8pt; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: #3a5a8c; } h1 { font-family: "Barlow Condensed"; font-weight: 700; font-size: {{ 22 * layout.head }}pt; line-height: 1.02; margin: .6mm 0 1.2mm; color: #0a2a5e; letter-spacing: .01em; } .period { display: block; } .week { font-family: "Barlow Condensed"; font-weight: 700; font-size: {{ 15 * layout.head }}pt; color: #fff; background: #1f6feb; padding: .4mm 2.6mm; border-radius: 1.4mm; letter-spacing: .04em; margin-right: 3mm; display: inline-block; } .dates { font-size: {{ 11.5 * layout.head if layout.head > 0.8 else 10 }}pt; font-weight: 600; color: #10203a; } .head-side { text-align: right; font-size: 8pt; color: #5b6b82; flex: 0 0 auto; margin-left: 4mm; } .head-side strong { display: block; font-family: "Barlow Condensed"; font-size: 20pt; color: #0a2a5e; line-height: 1; } .rule { height: 1.6mm; border-radius: 1mm; margin-bottom: {{ 4 * layout.head }}mm; background: linear-gradient(90deg, #0a2a5e 0%, #1f6feb 78%, #1f6feb 88%, #f2b705 88%, #f2b705 94%, #d7263d 94%); } h2 { font-family: "Barlow Condensed"; font-weight: 700; font-size: 13pt; letter-spacing: .1em; color: #0a2a5e; margin: 0 0 {{ 2.5 * layout.head }}mm; padding-left: 3mm; border-left: 1.4mm solid #d7263d; line-height: 1.15; } table.main { width: 100%; border-collapse: separate; border-spacing: 0; table-layout: fixed; } col.c-label { width: {{ layout.label_col }}%; } col.c-num { width: {{ layout.num_col }}%; } table.main thead th { background: #0a2a5e; color: #fff; font-family: "Barlow Condensed"; font-weight: 600; text-transform: uppercase; letter-spacing: .08em; font-size: 9pt; text-align: left; padding: 2mm 3mm; } table.main thead th:first-child { border-top-left-radius: 2mm; } table.main thead th:last-child { border-top-right-radius: 2mm; } table.main thead th.num { text-align: center; } table.main td, table.main tbody th { padding: {{ layout.pad }}mm 3mm; border-bottom: .5pt solid #d5dcea; vertical-align: middle; } table.main tbody tr:nth-child(even) td, table.main tbody tr:nth-child(even) th { background: #f3f6fb; } table.main tbody tr { page-break-inside: avoid; break-inside: avoid; } th.label { font-weight: 600; text-align: left; } th.label .lbl { display: block; margin-left: 6mm; } th.label .idx { float: left; width: 6mm; color: #8a9ab3; font-weight: 500; font-size: {{ layout.font - 1.5 }}pt; } td.num { text-align: center; font-family: "Barlow Condensed"; font-weight: 700; font-size: {{ layout.font * 1.4 }}pt; color: #0a2a5e; line-height: 1; } td.num.zero { color: #6b7a92; font-weight: 600; } td.num .nr { color: #a6b1c4; font-weight: 500; } td.obs { font-size: {{ layout.font - 0.5 }}pt; color: #23334d; word-wrap: break-word; overflow-wrap: anywhere; } td.obs .details { margin-top: .6mm; font-size: {{ layout.font - 0.5 }}pt; color: #0a2a5e; font-weight: 600; } td.obs .details:first-child { margin-top: 0; } table.main tbody tr:last-child td, table.main tbody tr:last-child th { border-bottom: 1pt solid #0a2a5e; } .legend { font-size: 7.5pt; color: #5b6b82; margin: 1.6mm 0 0; } .chart { margin-top: {{ 5 * layout.head }}mm; break-inside: avoid; } .chart h2 { font-size: 11pt; } .chart svg { width: 100%; height: auto; } .doc-foot { margin-top: {{ 5 * layout.head }}mm; padding-top: 2mm; border-top: .6pt solid #c3cddd; font-size: 7.5pt; color: #5b6b82; display: table; width: 100%; break-inside: avoid; } .doc-foot > div { display: table-cell; vertical-align: top; } .doc-foot > div + div { padding-left: 4mm; text-align: right; } .doc-diffusion { margin-top: 1.5mm; } @media screen { html { background: transparent; } body { background: transparent; } .sheet { position: relative; width: {{ page.width }}mm; min-height: {{ page.height * layout.pages }}mm; padding: {{ layout.margin }}mm {{ layout.margin }}mm {{ layout.margin + 3 }}mm; background: #fff; overflow: hidden; } .page-no { position: absolute; right: {{ layout.margin }}mm; top: {{ page.height - layout.margin - 1 }}mm; font-size: 7.5pt; color: #5b6b82; } .page-limit { position: absolute; left: 0; right: 0; top: {{ page.height - layout.margin - 3 }}mm; border-top: 1.2pt dashed #d7263d; } .page-limit span { position: absolute; right: 2mm; top: -5.2mm; background: #d7263d; color: #fff; font-size: 7.5pt; font-weight: 700; padding: .6mm 2mm; border-radius: 1mm; } } @media print { .sheet { width: auto; min-height: 0; padding: 0; } .page-no, .page-limit { display: none; } }
{% if diffusion %}
{{ diffusion }}
{% endif %} {% if not official %}
DOCUMENT DE TRAVAIL — BILAN NON VALIDÉ ({{ status_label|upper }})
{% endif %}
{% if logo %}{% endif %}
Escadron départemental de contrôle des flux · Haute-Marne

{{ title }}

SEMAINE {{ week }}du {{ start }} au {{ end }}
{{ year }}Année

{{ section }}

{% if opts.include_observations %}{% endif %}{% if opts.include_observations %}{% endif %} {% for r in rows %} {% if opts.include_observations %}{% endif %} {% endfor %}
Thématique de contrôleNombreObservations
{{ loop.index }}{{ r.label }} {% if r.value is none %}—{% else %}{{ r.value }}{% endif %}{% if r.observation %}{{ r.observation|nl2br }}{% endif %}{% if r.details_text %}
{{ r.details_text }}
{% endif %}
{% if has_empty %}

« — » : non renseigné (à distinguer de « 0 » : aucune infraction relevée).

{% endif %}
{% if chart_svg %}

Répartition de la semaine

{{ chart_svg|safe }}
{% endif %}
{{ footer }}
{{ status_line }}{% if opts.show_generated_at %} · Généré le {{ generated }}{% endif %}
{% if diffusion %}
{{ diffusion }}
{% endif %} {% if screen %} {% if opts.pagination %}
Page 1 / {{ layout.pages }}
{% endif %} {% if layout.pages > 1 %}
Fin de la page 1 — la suite passe en page 2
{% endif %} {% endif %}