/* Constat amiable — reproduction of the Algerian paper form (A4). Colours sampled from the owner's scan. */
.cs-root{--a-title:#1b78b8;--a-strip:#3ea6dc;--a-fill:#9dd0ee;--b-title:#c0386d;--b-strip:#e46c98;--b-fill:#f3b7cb;--ink:#161616;--typed:#0d2a6b;--rule:#2a2a2a;--dot:#6b6b6b;
  font-family:"Times New Roman",Times,"Liberation Serif",serif;color:var(--ink);font-size:3.3mm;line-height:1.25}
.cs-root *{box-sizing:border-box}
.cs-page{width:210mm;min-height:297mm;background:#fff;margin:0 auto 8mm;padding:7mm 8mm 6mm;position:relative;box-shadow:0 2px 12px rgba(0,0,0,.18);overflow:hidden}
.cs-ar{font-family:"Noto Naskh Arabic","Amiri","Traditional Arabic","Times New Roman",serif;direction:rtl;text-align:right}
.cs-b{font-weight:700}.cs-i{font-style:italic}
/* Header */
.cs-head{display:flex;justify-content:space-between;align-items:flex-end;gap:4mm}
.cs-title-fr{font-size:5.6mm;font-weight:700;letter-spacing:.1mm;white-space:nowrap}
.cs-title-ar{font-size:8mm;font-weight:700;line-height:1}
.cs-line{display:flex;align-items:baseline;gap:1.5mm;min-height:5.2mm}
.cs-line>.cs-ar{margin-left:auto}
.cs-split{display:grid;grid-template-columns:1fr 1fr;column-gap:6mm}
/* Typed fields */
.cs-in{flex:1;min-width:6mm;border:0;border-bottom:.25mm dotted var(--dot);background:transparent;font:600 3.4mm/1.2 "Segoe UI",Roboto,Arial,sans-serif;color:var(--typed);padding:0 .8mm;height:4.6mm;outline:none;border-radius:0}
.cs-in:focus{background:rgba(255,255,160,.55)}
.cs-in[type=date],.cs-in[type=time]{font-size:3.1mm}
.cs-in.cs-w10{flex:0 0 10mm}.cs-in.cs-w18{flex:0 0 18mm}.cs-in.cs-w26{flex:0 0 26mm}.cs-in.cs-w34{flex:0 0 34mm}
textarea.cs-in{display:block;width:100%;height:auto;resize:none;border:0;line-height:5mm;background-image:repeating-linear-gradient(transparent 0 4.75mm,var(--dot) 4.75mm 5mm);background-size:100% 5mm;padding-top:0}
.cs-show{font:600 3.3mm "Segoe UI",Roboto,Arial,sans-serif;color:var(--typed);border-bottom:.25mm dotted var(--dot);flex:1;min-height:4.4mm;padding:0 .8mm;direction:ltr;text-align:center}
.cs-readonly .cs-in{pointer-events:none}
.cs-readonly .cs-in::-webkit-calendar-picker-indicator{display:none}
/* Yes/no boxes (Oui | نعم) */
.cs-yn{display:inline-grid;grid-template-columns:13mm 9mm;border:.3mm solid var(--rule);height:4.6mm;cursor:pointer;user-select:none;font-size:3.2mm;background:#fff;vertical-align:middle}
.cs-yn span{padding:0 1mm;line-height:4.2mm}.cs-yn span+span{border-left:.3mm solid var(--rule);text-align:right}
.cs-yn.cs-on{background:#fff}.cs-yn.cs-on span:first-child::after{content:"✕";font:700 3.6mm Arial;color:var(--typed);margin-left:2mm}
/* Body: column A | centre | column B */
.cs-body{display:grid;grid-template-columns:61mm 1fr 61mm;margin-top:1.5mm;border-top:.3mm solid var(--rule)}
.cs-col{padding:1.6mm 2mm 7mm;position:relative}
.cs-col-a{background:var(--a-fill)}.cs-col-b{background:var(--b-fill)}
.cs-vtitle{display:flex;justify-content:space-between;align-items:center;border:.35mm solid;background:rgba(255,255,255,.45);padding:.6mm 2.5mm;font-weight:700;font-size:4.3mm;margin:0 0 2mm}
.cs-col-a .cs-vtitle{color:var(--a-title);border-color:var(--a-title)}.cs-col-b .cs-vtitle{color:var(--b-title);border-color:var(--b-title)}
.cs-vtitle .cs-ar{font-size:5mm}
.cs-col .cs-line{min-height:5mm}
.cs-sec{font-weight:700;font-size:3.6mm;margin-top:2.4mm}
.cs-sec small{font-weight:400;font-size:2.8mm}
.cs-col-b .cs-line{flex-direction:row-reverse}.cs-col-b .cs-line>.cs-ar{margin-left:0}
.cs-col-b .cs-sec{text-align:right}
.cs-cats{display:flex;gap:1.6mm;align-items:center}
.cs-cat{cursor:pointer;padding:0 .7mm;border:.3mm solid transparent;border-radius:50%;min-width:4.4mm;text-align:center;user-select:none}
.cs-cat.cs-on{border-color:var(--typed);color:var(--typed);font-weight:700}
.cs-letter{position:absolute;bottom:1mm;font:700 6mm Arial;color:var(--ink)}
.cs-col-a .cs-letter{right:2mm}.cs-col-b .cs-letter{left:2mm}
/* Silhouettes and impact arrow */
.cs-choc{display:grid;grid-template-columns:repeat(3,1fr);border:.35mm solid var(--rule);background:#fff;height:23mm;margin-top:1.2mm}
.cs-sil{position:relative;cursor:crosshair;display:flex;align-items:center;justify-content:center}
.cs-sil svg.cs-shape{height:20mm;width:auto}
.cs-arrow{position:absolute;width:9mm;height:3mm;margin:-1.5mm 0 0 -9mm;transform-origin:100% 50%;pointer-events:none}
.cs-readonly .cs-sil{cursor:default}
/* Centre circumstances with the coloured box strips */
.cs-centre{display:flex;flex-direction:column}
.cs-chead{display:grid;grid-template-columns:1fr 1fr;font-size:3mm;padding:1.5mm 2mm 1mm;font-weight:700}
.cs-row{display:grid;grid-template-columns:6mm 1fr 1fr 6mm;align-items:center;font-size:2.95mm;line-height:1.18}
.cs-row>.cs-fr,.cs-row>.cs-ar{padding:.55mm 1.2mm}
.cs-strip-a{background:var(--a-strip);align-self:stretch;display:flex;align-items:center;justify-content:center}
.cs-strip-b{background:var(--b-strip);align-self:stretch;display:flex;align-items:center;justify-content:center}
.cs-box{width:4mm;height:4mm;background:#fff;border:.25mm solid rgba(0,0,0,.25);cursor:pointer;display:flex;align-items:center;justify-content:center;font:700 3.6mm Arial;color:var(--typed);user-select:none}
.cs-box.cs-on::after{content:"✕"}
.cs-sep{display:grid;grid-template-columns:6mm 1fr 6mm;height:1.8mm}.cs-sep>div:nth-child(2){border-bottom:.3mm solid var(--rule);margin:0 1mm .9mm}
.cs-sep>div:first-child{background:var(--a-strip)}.cs-sep>div:last-child{background:var(--b-strip)}
.cs-count{display:grid;grid-template-columns:6mm 1fr 6mm;align-items:center;font-size:2.95mm;margin-top:1mm}
.cs-count .cs-mid{display:flex;justify-content:space-between;padding:1mm 2mm;text-align:center}
.cs-num{width:4.4mm;height:4.6mm;background:#fff;border:.3mm solid var(--rule);font:700 3.4mm Arial;color:var(--typed);display:flex;align-items:center;justify-content:center}
.cs-croquis-head{display:flex;justify-content:space-between;font-weight:700;font-size:3.6mm;padding:2mm 2mm 1mm}
.cs-grid{position:relative;margin:0 2mm;aspect-ratio:2/1;border:.35mm solid var(--rule);
  background-image:linear-gradient(var(--rule) .2mm,transparent .2mm),linear-gradient(90deg,var(--rule) .2mm,transparent .2mm);background-size:6.25% 12.5%;background-color:#fff}
.cs-grid canvas{position:absolute;inset:0;width:100%;height:100%;touch-action:none}
.cs-tools{display:flex;flex-wrap:wrap;gap:1mm;margin:1mm 2mm 0;font:2.8mm Arial}
.cs-tools button{font:inherit;border:.25mm solid #999;background:#fafafa;border-radius:1mm;padding:.5mm 1.6mm;cursor:pointer}
.cs-tools button.cs-on{background:#183e7a;color:#fff;border-color:#183e7a}
.cs-readonly .cs-tools{display:none}
.cs-foot{display:grid;grid-template-columns:1fr 1.25fr 1fr;align-items:end;margin-top:1mm;font-size:2.9mm;gap:2mm}
.cs-signs{display:grid;grid-template-columns:1fr 1fr;gap:2mm}
.cs-sig{height:16mm;border:.3mm solid var(--rule);position:relative;background:#fff}
.cs-sig b{position:absolute;left:1mm;top:.5mm;font:700 3mm Arial}
.cs-sig svg{position:absolute;inset:0;width:100%;height:100%}
.cs-sig.cs-a b{color:var(--a-title)}.cs-sig.cs-b b{color:var(--b-title)}
.cs-imprint{position:absolute;right:2mm;bottom:28mm;writing-mode:vertical-rl;transform:rotate(180deg);font-size:2.2mm;color:#555}
/* Verso — Déclaration */
.cs-verso .cs-line{min-height:5.6mm}
.cs-verso .cs-num-t{font-weight:700}
.cs-plan{display:grid;grid-template-columns:52mm 1fr 40mm;gap:3mm;align-items:start;margin:1mm 0}
.cs-plan .cs-grid{margin:0;aspect-ratio:2.2/1;background-size:4.55% 10%}
.cs-mini-sil{display:flex;gap:2mm;border:.3mm solid var(--rule);padding:1mm 2mm;width:max-content;margin-top:2mm}
.cs-mini-sil svg{height:9mm;width:auto}
.cs-ynrow{display:grid;grid-template-columns:1fr 24mm 24mm 1fr;align-items:center;gap:2mm;min-height:5.6mm}
.cs-ynrow>.cs-ar{text-align:right}
.cs-bracket{display:grid;grid-template-columns:6mm 1fr 6mm;margin:1mm 0}
.cs-bracket>.cs-v{writing-mode:vertical-rl;transform:rotate(180deg);text-align:center;border-right:.3mm solid var(--rule);border-radius:0 2mm 2mm 0;font-size:3.3mm}
.cs-bracket>.cs-v.cs-ar{transform:none;border-right:0;border-left:.3mm solid var(--rule);border-radius:2mm 0 0 2mm}
.cs-bracket .cs-inner{padding:0 2mm}
.cs-hr{border:0;border-top:.45mm solid var(--rule);margin:1.5mm 0}
.cs-sig-assure{display:grid;grid-template-columns:1fr 50mm 1fr;align-items:end;gap:3mm;margin-top:2mm}
.cs-sig-assure .cs-sig{height:14mm}
/* Screen adjustments */
@media screen and (max-width:840px){.cs-root{zoom:var(--cs-zoom,1)}}
@media print{@page{size:A4;margin:0}body{margin:0}.cs-page{box-shadow:none;margin:0;page-break-after:always}.cs-noprint{display:none!important}
  .cs-root{-webkit-print-color-adjust:exact;print-color-adjust:exact}.cs-in{border-bottom-color:var(--dot)}}
.cs-centre{background:linear-gradient(90deg,var(--a-strip) 0 6mm,#fff 6mm calc(100% - 6mm),var(--b-strip) calc(100% - 6mm));padding-bottom:4mm}
.cs-chead,.cs-croquis-head{padding-left:8mm;padding-right:8mm}
.cs-centre .cs-grid,.cs-centre .cs-tools{margin-left:8mm;margin-right:8mm}
/* A4 fitting (measured against the scanned liasse) */
.cs-root{font-size:2.85mm;line-height:1.2}
.cs-page{height:297mm;padding:6mm 7mm 5mm}
.cs-title-fr{font-size:5.2mm}.cs-title-ar{font-size:7mm;white-space:nowrap}
.cs-line{min-height:4.6mm}.cs-col .cs-line{min-height:4.35mm}
.cs-in{height:4.1mm;font-size:3mm}.cs-in[type=date],.cs-in[type=time]{font-size:2.7mm}
textarea.cs-in{line-height:4.3mm;background-image:repeating-linear-gradient(transparent 0 4.05mm,var(--dot) 4.05mm 4.3mm);background-size:100% 4.3mm}
.cs-body{grid-template-columns:55mm 1fr 55mm}
.cs-col{padding:1.2mm 1.8mm 6mm}
.cs-vtitle{font-size:3.9mm;padding:.3mm 2mm;margin-bottom:1.2mm}.cs-vtitle .cs-ar{font-size:4.4mm}
.cs-sec{font-size:3.2mm;margin-top:1.5mm}
.cs-row{font-size:2.55mm;line-height:1.12}.cs-row>.cs-fr,.cs-row>.cs-ar{padding:.3mm 1mm}
.cs-chead{font-size:2.6mm;padding-top:1mm;padding-bottom:.6mm}
.cs-count{font-size:2.5mm}.cs-croquis-head{font-size:3.2mm;padding-top:1.2mm}
.cs-choc{height:19mm}.cs-sil svg.cs-shape{height:16.5mm}.cs-sil{overflow:hidden}
.cs-sig{height:13mm}.cs-foot{font-size:2.6mm}
.cs-yn{height:4.2mm;font-size:2.9mm}.cs-yn span{line-height:3.8mm}
.cs-verso .cs-line,.cs-ynrow{min-height:5mm}
.cs-plan .cs-grid{aspect-ratio:2.4/1}
@media screen{.cs-page{height:auto;min-height:297mm}}
.cs-in::-webkit-calendar-picker-indicator{display:none}
.cs-in[type=date]{min-width:15mm;padding:0 .3mm}
.cs-cats{gap:.6mm}.cs-cat{min-width:3.8mm;padding:0 .3mm}
.cs-lbl{flex:none;white-space:nowrap}
.cs-choc{overflow:hidden}.cs-sil{overflow:visible}.cs-sil svg.cs-shape{height:14mm}
.cs-arrow{width:6mm;height:2.4mm;margin:-1.2mm 0 0 -6mm}
.cs-fit{overflow:hidden}.cs-fit>.cs-root,.cs-fit>[x-ref]{transform-origin:top left}
.cs-tight{font-size:2.45mm;gap:.6mm}.cs-tight .cs-in{font-size:2.55mm;padding:0;min-width:13mm}
