:root{color-scheme:light;--paper:#f7f6f1;--surface:#fffefa;--ink:#1d302e;--muted:#647169;--line:#dedfd5;--green:#173f3c;--soft:#e8eee5;--accent:#c6603b;--wash:#eeeee6;--badge:#f6eee0;--badge-ink:#795126;font-family:Arial,Helvetica,sans-serif;font-synthesis:none}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-size:15px;line-height:1.65}
a{color:var(--green);text-underline-offset:3px;overflow-wrap:anywhere}
button,input{font:inherit;color:inherit}
button{cursor:pointer}
a,button,input{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
[hidden]{display:none!important}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:fixed;top:-100px;left:18px;padding:12px 16px;background:var(--green);color:var(--surface);z-index:5;border-radius:5px}
.skip-link:focus{top:12px}
.masthead,main,.installation,footer{width:min(900px,calc(100% - 48px));margin-inline:auto}
.masthead{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:16px 0}
.brand{display:inline-flex;align-items:center;gap:10px;color:var(--ink);font-size:31px;letter-spacing:-1.5px;font-weight:750;text-decoration:none;line-height:1}
.brand img{flex-shrink:0}
.brand-dot{color:var(--accent)}
.header-actions{display:flex;align-items:center;gap:20px;font-size:12px}
.header-actions>a{text-decoration:none;white-space:nowrap;min-height:42px;display:inline-flex;align-items:center}
.header-actions>a[aria-current=page]{text-decoration:underline;text-decoration-thickness:2px}
.install-button{border-radius:6px;background:var(--green);color:var(--surface);padding:10px 16px;font-weight:600}
h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.2;letter-spacing:-.6px}
h1{font-size:39px;margin:10px 0 18px}
h2{font-size:27px}
p{margin:0 0 12px}
.eyebrow{color:var(--muted);font-size:10px;font-weight:700;letter-spacing:1.5px}
.edition-intro{padding:36px 0 10px}
.edition-meta{display:flex;gap:9px 22px;flex-wrap:wrap;align-items:baseline}
.edition-meta strong{font-size:16px;font-weight:600}
.edition-meta>span,.cadence{color:var(--muted);font-size:12px}
.cadence{margin:8px 0 18px}
.editorial-note{font-size:13px;background:var(--soft);border-left:3px solid var(--green);border-radius:0 6px 6px 0;padding:14px 17px;line-height:1.7}
.editorial-note a{white-space:nowrap}
.back-link{display:inline-block;font-size:13px;margin:8px 0;min-height:32px}
.briefing{padding:12px 0 20px}
.country-index{margin:0 0 25px}
.country-index h2{font-family:inherit;margin:0 0 10px;line-height:1.5}
.country-index-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.country-jump{min-width:0;min-height:44px;display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 10px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--ink);font-size:12px;font-weight:600;line-height:1.25;text-align:center;text-decoration:none;overflow-wrap:anywhere}
.country-jump:hover{border-color:var(--green);background:var(--soft);color:var(--green)}
.country-jump-wide{grid-column:span 2}
.country-flag{font-family:'Noto Color Emoji','Apple Color Emoji','Segoe UI Emoji',sans-serif;font-size:16px;font-variant-emoji:emoji;line-height:1;flex:0 0 auto}
.search-box{margin-bottom:22px;max-width:480px}
.search-box>label{display:block;font-size:11px;font-weight:600;margin-bottom:7px;color:var(--muted)}
.search-control{display:flex;align-items:center;gap:8px;background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:3px 6px 3px 13px}
.search-control:focus-within{outline:2px solid var(--green);outline-offset:2px}
.search-control input{border:0;background:transparent;width:100%;min-width:0;padding:10px 0;outline:0;font-size:14px}
.search-control button{border:0;background:var(--soft);border-radius:4px;padding:9px;font-size:11px;min-height:36px;flex-shrink:0}
.country-grid{display:grid;grid-template-columns:1fr;gap:18px}
.country-card{min-width:0;background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:0 6px 22px #20362c04;overflow:hidden;scroll-margin-top:18px}
.card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:21px 24px 14px;border-bottom:1px solid var(--line)}
.card-top>div{min-width:0}
.country-name{font-size:27px;margin:0 0 5px}
.conflict-name{font-size:12px;color:var(--muted);margin:0;overflow-wrap:anywhere;line-height:1.5}
.coverage{font-size:10px;border:1px solid var(--line);border-radius:4px;padding:2px 7px;color:var(--muted);white-space:nowrap;flex-shrink:0;margin-top:3px}
.two-lines{list-style:none;margin:0;padding:0 24px}
.brief-line{display:grid;grid-template-columns:22px minmax(0,1fr);gap:10px;padding:20px 0;border-bottom:1px solid var(--line)}
.brief-line:last-child{border:0}
.line-number{font:15px Georgia,serif;color:var(--muted);padding-top:1px}
.line-label{display:block;font-size:11px;font-weight:700;color:var(--green);letter-spacing:.2px;margin-bottom:5px}
.line-content{min-width:0;overflow-wrap:anywhere}
.line-text{font-size:15px;margin:0;line-height:1.7}
.line-meta,.line-sources{display:flex;align-items:baseline;flex-wrap:wrap;gap:5px 12px;margin-top:8px;font-size:11px;color:var(--muted);line-height:1.6}
.line-status{color:var(--green);font-weight:700}
.source-link{font-size:11px;font-weight:600}
.actor,.origin-date{font-size:11px;line-height:1.5;color:var(--muted);margin:7px 0 0}
.origin-date{color:var(--green)}
.party-label{font-size:10px;line-height:1.5;color:var(--badge-ink);background:var(--badge);border-radius:3px;padding:2px 5px}
.unavailable-text,.muted{color:var(--muted)}
.continuity-note{margin:0;padding:12px 24px;background:var(--soft);color:var(--green);font-size:12px;border-bottom:1px solid var(--line)}
.country-sources{border-top:1px solid var(--line);padding:14px 24px 17px;background:color-mix(in srgb,var(--paper) 45%,var(--surface))}
.country-sources h3{font-size:11px;font-weight:700;margin:0 0 5px;color:var(--green)}
.selection-reason{font-size:11px;color:var(--muted);line-height:1.6;margin:0 0 10px;overflow-wrap:anywhere}
.source-list{margin:0;padding-left:17px;font-size:11px}
.source-detail{padding:5px 0;overflow-wrap:anywhere}
.source-detail a{font-size:11px}
.source-detail p{margin:3px 0 0;font-size:10px;color:var(--muted)}
.country-top-link{width:44px;height:44px;display:flex;align-items:center;justify-content:center;position:relative;z-index:1;margin:-22px 10px -22px auto;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--green);font-size:20px;line-height:1;text-decoration:none}
.country-top-link:hover{background:var(--soft);border-color:var(--green)}
.empty-state{padding:30px 20px;text-align:center;border:1px dashed var(--line);border-radius:6px;color:var(--muted)}
.edition-footnote{font-size:11px;color:var(--muted);line-height:1.8;padding:0 0 26px}
.installation{display:flex;align-items:flex-start;gap:28px;justify-content:space-between;border-top:1px solid var(--line);padding:30px 0;scroll-margin-top:16px}
.installation>div{max-width:640px;min-width:0}
.installation h2{margin:8px 0 12px;font-size:25px}
.installation p{font-size:12px}
.installation>.back-link{flex-shrink:0;font-size:11px}
footer{border-top:1px solid var(--line);display:flex;gap:18px;justify-content:space-between;align-items:center;padding:25px 0 30px}
.footer-brand{font-size:23px}
footer p,footer>a:last-child{font-size:11px;color:var(--muted);margin:0}
.text-page{padding:38px 0 42px;max-width:720px}
.lede{font-size:16px;color:var(--muted);line-height:1.7;margin-bottom:25px}
.text-page h2{font-size:25px;margin:30px 0 12px}
.method-page p,.method-page dd{font-size:14px;line-height:1.8}
.method-page dt{font-weight:700;font-size:13px;margin-top:15px;color:var(--green)}
.method-page dd{margin:4px 0 14px;color:var(--muted)}
.archive-list{list-style:none;padding:0;margin:28px 0}
.archive-list li{border-bottom:1px solid var(--line)}
.archive-list a{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 0;text-decoration:none;font:23px Georgia,serif}
.archive-list a:hover{color:var(--accent)}
@media(prefers-color-scheme:dark){:root{color-scheme:dark;--paper:#142622;--surface:#1c302b;--ink:#e9eddf;--muted:#aebbae;--line:#385045;--green:#b5d4bd;--soft:#2c4235;--accent:#e49a74;--wash:#2a3e34;--badge:#443c2c;--badge-ink:#e2c9a2}.install-button,.skip-link{color:#142622}.country-card{box-shadow:none}}
@media(max-width:650px){.masthead,main,.installation,footer{width:calc(100% - 28px)}.masthead{min-height:73px;gap:12px;flex-wrap:wrap}.brand{font-size:26px;gap:7px}.brand img{width:28px;height:28px}.header-actions{gap:13px;font-size:11px}.install-button{padding:9px 11px}.edition-intro{padding-top:26px}h1{font-size:31px}.edition-meta{gap:5px;flex-direction:column}.edition-meta strong{font-size:14px}.editorial-note{font-size:12px;padding:12px 14px}.country-index-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.country-jump{min-height:45px;font-size:12px;padding:8px}.country-grid{gap:14px}.card-top{padding:17px 16px 13px;gap:10px}.country-name{font-size:24px}.conflict-name{font-size:11px}.coverage{font-size:9px;padding:2px 5px}.two-lines{padding:0 16px}.brief-line{grid-template-columns:18px minmax(0,1fr);gap:7px;padding:17px 0}.line-text{font-size:14px}.line-meta,.line-sources{font-size:10px;gap:5px 9px}.country-sources{padding:13px 16px}.country-top-link{margin:-22px 8px -22px auto}.continuity-note{padding:12px 16px}.installation{flex-direction:column;gap:0;padding:25px 0}.installation h2{font-size:24px}footer{flex-wrap:wrap;gap:12px}footer p{order:3;width:100%}.text-page{padding-top:28px}.archive-list a{font-size:22px}.search-box{max-width:none}}
@media(max-width:390px){.masthead{align-items:center}.header-actions{width:100%;justify-content:space-between;gap:8px}.masthead{padding:16px 0 10px}.header-actions>a{min-height:38px}h1{font-size:28px}.country-name{font-size:22px}.coverage{font-size:8px}.line-meta>span{max-width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media print{.header-actions,.country-index,.search-box,.installation,.skip-link,.country-top-link{display:none!important}.masthead,main,footer{width:100%}.country-card{break-inside:avoid;box-shadow:none}.country-card[hidden]{display:block!important}body{background:white;color:black}.country-sources{background:none}}

/* Repères France — même base de lecture, identité et commentaires quotidiens. */
:root{--green:#223e68;--soft:#e9edf3;--ink:#263449;--muted:#626e7d;--accent:#bc563e}
.brand-country{font-size:.64em;letter-spacing:-.4px;font-weight:500;color:var(--green)}
.preview-notice{border-left-color:var(--accent);background:#f5eadd;margin-bottom:18px}
.region-group-heading{margin:32px 0 14px;font-size:26px}
.territory-index-group{margin:0 0 12px}
.territory-index-group h3{font-size:12px;margin:0 0 8px;color:var(--muted)}
.story-number{font:28px Georgia,serif;color:var(--accent);flex-shrink:0;line-height:1.2}
.angle-badge{display:inline-block;padding:4px 9px;border:1px solid var(--line);border-radius:4px;background:var(--soft);font-size:11px;line-height:1.4;font-weight:700;color:var(--green);margin-top:9px}
.commentary{margin-top:18px;padding:15px 18px;border-left:3px solid var(--accent);border-radius:0 6px 6px 0;background:#f5eadd}
.commentary h3,.commentary-label{font-family:inherit;font-size:11px;font-weight:700;color:#894433;margin:0 0 6px;text-transform:uppercase;letter-spacing:.7px}
.commentary p{margin:0;font-size:15px;line-height:1.65}
.daily-index .country-index-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
.daily-index .country-jump{justify-content:flex-start;text-align:left}
@media(prefers-color-scheme:dark){:root{--green:#b8cceb;--soft:#2a3b53;--ink:#e8edf5;--muted:#b1bece;--paper:#172431;--surface:#1f3041;--line:#3d5168}.preview-notice,.commentary{background:#43322c}.commentary h3,.commentary-label{color:#edac97}.install-button,.skip-link{color:#172431}}
@media(max-width:650px){.daily-index .country-index-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.commentary{padding:13px 14px}.commentary p{font-size:14px}.brand-country{font-size:.64em}}
.brand-country{margin-left:7px}
.preview-notice{padding:16px 18px;border-left:3px solid var(--accent);border-radius:0 6px 6px 0;line-height:1.65;font-size:13px}
.preview-notice p{margin:6px 0 0}
.story-index{grid-template-columns:1fr;gap:7px}
.story-jump{justify-content:flex-start;text-align:left;padding:10px 14px;gap:12px}
.story-jump>span:nth-child(2){flex:1}
.jump-number{font:17px Georgia,serif;color:var(--accent)}
.story-card .card-top{align-items:center}
.story-card .angle-badge{margin:0}
.story-title{padding:20px 24px 0;margin:0 0 12px;font-size:28px}
.story-summary{padding:0 24px}
.story-card>.line-meta{padding:0 24px}
.story-card>.commentary{margin:18px 24px 20px}
.story-card .country-top-link{position:static;margin:0 10px 12px auto}
.story-card .source-list{list-style:none;padding:0;display:block}
.story-card .source-detail span{margin-left:8px}
@media(max-width:650px){.story-title{padding:17px 16px 0;font-size:24px}.story-summary,.story-card>.line-meta{padding-inline:16px}.story-card>.commentary{margin:16px 16px 18px}}

/* Le personnage du jour et sa note personnelle. */
.persona-banner{display:flex;align-items:center;gap:18px;padding:16px 18px;margin:18px 0;border:1px solid var(--line);border-radius:10px;background:var(--surface)}
.persona-avatar{width:80px;height:80px;object-fit:contain;flex:0 0 80px;border-radius:8px;background:var(--soft)}
.persona-banner>div{min-width:0}.persona-banner .eyebrow{margin:0 0 4px}.persona-banner h2{font-size:25px;margin:0 0 5px}.persona-tagline{font-size:13px;line-height:1.5;margin:0 0 5px}.persona-caption{font-size:10px;color:var(--muted);margin:0}
.rating-section{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:25px 0;margin:0 0 22px}.rating-section h2{margin:6px 0 12px;font-size:27px}.rating-section>p:not(.eyebrow){font-size:13px}.rating-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:12px 0}.primary-button,.text-button{border-radius:6px;min-height:44px;padding:10px 16px;font-weight:600;font-size:13px}.primary-button{border:1px solid var(--green);background:var(--green);color:var(--surface)}.text-button{border:1px solid var(--line);background:var(--surface);color:var(--ink)}.primary-button:hover{filter:brightness(.92)}.text-button:hover{background:var(--soft)}.primary-button:disabled{cursor:default;opacity:.45}.rating-privacy,.rating-status{color:var(--muted);font-size:11px!important;line-height:1.6;margin-bottom:0}.rating-status:empty{display:none}.rating-current{color:var(--green)}
.rating-dialog{width:min(460px,calc(100% - 28px));padding:26px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);box-shadow:0 18px 70px #0003}.rating-dialog::backdrop{background:#10203599}.rating-dialog h2{font-size:27px;margin:0 0 12px}.rating-dialog>p{font-size:12px;color:var(--muted)}.rating-dialog fieldset{margin:20px 0;padding:0;border:0}.rating-dialog legend{font-size:12px;font-weight:700;margin:0 0 10px}.rating-options{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}.rating-choice{position:relative;display:block;cursor:pointer}.rating-choice input{position:absolute;opacity:0;width:1px;height:1px}.rating-choice>span{display:flex;align-items:center;justify-content:center;min-height:48px;border:1px solid var(--line);border-radius:6px;background:var(--paper);font-weight:700;font-size:16px}.rating-choice input:checked+span{background:var(--green);color:var(--surface);border-color:var(--green)}.rating-choice input:focus-visible+span{outline:3px solid var(--accent);outline-offset:3px}.rating-dialog-actions{display:flex;justify-content:space-between;gap:12px}
.persona-gallery{padding:36px 0}.persona-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:28px 0}.persona-card{padding:20px 16px;border:1px solid var(--line);border-radius:10px;background:var(--surface);text-align:center;min-width:0}.persona-card img{width:160px;height:160px;max-width:100%;object-fit:contain;border-radius:8px;background:var(--soft)}.persona-card h2{font-size:23px;margin:14px 0 8px}.persona-card p{font-size:12px;line-height:1.6;color:var(--muted);margin:0}.archive-persona{display:block;font:12px Arial,Helvetica,sans-serif;letter-spacing:0;margin-top:5px;color:var(--muted)}
@media(prefers-color-scheme:dark){.primary-button,.rating-choice input:checked+span{color:#172431}}
@media(max-width:760px){.masthead{flex-wrap:wrap}.header-actions{flex-wrap:wrap;gap:9px 16px}.persona-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.persona-banner{gap:12px;padding:13px 12px;align-items:flex-start}.persona-avatar{width:64px;height:64px;flex-basis:64px}.persona-banner h2{font-size:22px}.persona-tagline{font-size:12px}.persona-caption{font-size:10px}.persona-gallery{padding-top:26px}.persona-gallery-grid{gap:12px}.persona-card{padding:15px 10px}.persona-card img{width:128px;height:128px}.persona-card h2{font-size:21px}.rating-dialog{padding:20px}.rating-section h2{font-size:25px}.rating-dialog h2{font-size:24px}}
@media(max-width:390px){.header-actions{justify-content:flex-start;gap:6px 14px}.persona-banner h2{font-size:20px}.persona-gallery-grid{grid-template-columns:1fr}.persona-card{display:grid;grid-template-columns:96px minmax(0,1fr);gap:0 14px;text-align:left;align-items:center}.persona-card img{width:96px;height:96px;grid-row:span 2}.persona-card h2{font-size:21px;margin:0 0 6px}.persona-card p{font-size:11px}.rating-options{gap:7px}.rating-choice>span{min-height:44px}.rating-dialog-actions>button{padding-inline:12px}}
@media print{.rating-section,.rating-dialog{display:none!important}.persona-banner{break-inside:avoid}.persona-avatar{background:none}}

/* Identité rouge et noir, identique quel que soit le thème du système. */
@media screen{
  :root{color-scheme:dark;--paper:#090709;--surface:#160d12;--ink:#fff6f8;--muted:#dbc5cc;--line:#71303f;--green:#ff8fa4;--soft:#30111c;--accent:#ff244b;--wash:#230b13;--badge:#4b1022;--badge-ink:#ffdae2}
  body{padding-top:88px;background-color:var(--paper);background-image:radial-gradient(ellipse at 0 0,#ff003c80,transparent 48%),radial-gradient(ellipse at 100% 60%,#ed003f5c,transparent 52%),linear-gradient(110deg,#470011 0%,#090709 27%,#090709 73%,#4d0016 100%);background-attachment:fixed}
  body::before{content:"";position:fixed;inset:0 0 auto;height:18px;background:linear-gradient(180deg,#ff4866,#e50035 65%,#930020);box-shadow:0 2px 8px #59001780,inset 0 3px 2px #ff9bac55;z-index:3;pointer-events:none}
  .masthead{border-bottom:2px solid var(--accent)}
  .brand img{width:40px;height:40px;object-fit:contain}
  .brand-country{color:var(--ink)}.brand-dot{color:#ff3459}
  h1{color:#fff7f9;font-weight:700;text-shadow:0 0 34px #ff174454}
  .eyebrow{color:#ff8fa4}
  .header-actions>a[aria-current=page]{color:#fff;text-decoration-color:var(--accent);text-decoration-thickness:3px}
  .install-button,.primary-button,.skip-link,.rating-choice input:checked+span{background:#ff244b;border-color:#ff244b;color:#100409;font-weight:700}
  .persona-banner{background:linear-gradient(110deg,#bd002b 0%,#72001e 44%,#1c0a12 100%);border-color:#ff4265;box-shadow:0 0 30px #ff003c29,inset 0 1px 0 #ff95ab35}
  .persona-banner h2,.persona-banner .eyebrow,.persona-tagline{color:#fff7f9}.persona-caption{color:#ffe0e8}.persona-avatar{background:#1d0811;border:1px solid #ff9bb358}
  .editorial-note{background:#280d18;border-left-color:#ff4265}
  .preview-notice{background:linear-gradient(110deg,#3d0a1b,#210b14);border-left-color:#ff4265}
  .country-card{border-color:#8d2744;background:linear-gradient(145deg,#1d0c14,#110b10 70%);box-shadow:0 8px 26px #0004}
  .card-top{background:#260a17;border-bottom-color:#71303f}.story-number,.jump-number{color:#ff718f}
  .angle-badge{background:#3c0b1e;border-color:#8c2544;color:#ffbdcc}
  .commentary{background:linear-gradient(110deg,#480b20,#260b17);border-left:4px solid #ff244b}
  .commentary h3,.commentary-label{color:#ff9db4}.commentary p{color:#fff4f7}
  .country-jump{background:#1e0b15;border-color:#7e2540}.country-jump:hover{background:#490b22;border-color:#ff4265;color:#fff7f9}
  .search-control{background:#140a10;border-color:#8e2b49}.search-control input::placeholder{color:#bda5ae}
  .country-sources{background:#11080e}.country-top-link{background:#300c1b;border-color:#8c2544}
  .persona-card{background:linear-gradient(145deg,#2a0b1c,#130b11);border-color:#8d2744;border-top:3px solid #ff244b;box-shadow:0 8px 24px #0004}.persona-card img{background:#330b1d}
  .rating-section{border-top:2px solid #ff244b;border-bottom-color:#71303f}.rating-dialog{background:#1c0b15;border-color:#ff4265;box-shadow:0 0 45px #ff003c38,0 18px 70px #0009}.rating-dialog::backdrop{background:#000c}
  .rating-choice>span{background:#2b0b1b;border-color:#83314c}.text-button{background:#2b0b1b;border-color:#83314c}.text-button:hover{background:#490d27}
  .installation,footer{border-top-color:#9b2547}
  .blood-fringe,.blood-drips{position:fixed;z-index:3;pointer-events:none;filter:drop-shadow(0 2px 5px #16000699)}
  .blood-fringe{inset:0 0 auto;height:60vh;height:60svh;padding-top:11px;display:flex;justify-content:space-around;align-items:flex-start;overflow:hidden;overflow:clip;filter:none}
  .blood-fringe span,.blood-drips span{width:5px;border-radius:0 0 8px 8px;background:linear-gradient(90deg,#8b001c,#ff244b 48%,#b60029);transform-origin:top;animation:blood-trickle 12s ease-in-out infinite;animation-delay:var(--blood-delay,-3s)}
  /* Réserve de 48px : pointe 7px + chute 36px + dilatation 1,275px < 48px.
     À portée 100%, la pointe reste donc au-dessus de 60svh ; clip protège les petits écrans. */
  .blood-fringe span{position:relative;flex:0 0 auto;height:max(4px,calc(var(--fringe-reach,70%) - 48px));animation:fringe-grow var(--fringe-duration,18s) ease-in-out infinite;animation-delay:var(--fringe-delay,-3s)}
  .blood-fringe span::after,.blood-drips span::after{content:"";position:absolute;left:50%;bottom:-7px;width:11px;height:17px;border-radius:55% 55% 48% 48%;background:linear-gradient(110deg,#ff6682 3%,#ed0039 38%,#88001e);box-shadow:inset 2px 0 1px #ff8ca84d;animation:blood-drop 12s ease-in infinite;animation-delay:var(--blood-delay,-3s)}
  .blood-fringe span::after{animation:fringe-drop var(--fringe-duration,18s) ease-in infinite;animation-delay:var(--fringe-delay,-3s)}
  .blood-fringe span:nth-child(1){--fringe-reach:27%;--fringe-duration:14.7s;--fringe-delay:-3.2s}
  .blood-fringe span:nth-child(2){--fringe-reach:79%;--fringe-duration:19.2s;--fringe-delay:-11.8s}
  .blood-fringe span:nth-child(3){--fringe-reach:43%;--fringe-duration:12.8s;--fringe-delay:-7.3s}
  .blood-fringe span:nth-child(4),.blood-fall--4{--fringe-reach:95%;--fringe-duration:24.5s;--fringe-delay:-16s}
  .blood-fringe span:nth-child(5){--fringe-reach:58%;--fringe-duration:17.1s;--fringe-delay:-5.4s}
  .blood-fringe span:nth-child(6){--fringe-reach:34%;--fringe-duration:10.9s;--fringe-delay:-8.7s}
  .blood-fringe span:nth-child(7){--fringe-reach:88%;--fringe-duration:22.6s;--fringe-delay:-13.9s}
  .blood-fringe span:nth-child(8){--fringe-reach:63%;--fringe-duration:15.8s;--fringe-delay:-2.6s}
  .blood-fringe span:nth-child(9){--fringe-reach:46%;--fringe-duration:18.4s;--fringe-delay:-16.1s}
  .blood-fringe span:nth-child(10),.blood-fall--10{--fringe-reach:100%;--fringe-duration:26.3s;--fringe-delay:-9.5s}
  .blood-fringe span:nth-child(11){--fringe-reach:71%;--fringe-duration:13.6s;--fringe-delay:-6.8s}
  .blood-fringe span:nth-child(12){--fringe-reach:39%;--fringe-duration:21.1s;--fringe-delay:-18.4s}
  .blood-fringe span:nth-child(13){--fringe-reach:84%;--fringe-duration:16.3s;--fringe-delay:-4.7s}
  .blood-fringe span:nth-child(14){--fringe-reach:52%;--fringe-duration:23.7s;--fringe-delay:-15.2s}
  .blood-fringe span:nth-child(15){--fringe-reach:96%;--fringe-duration:11.8s;--fringe-delay:-10.3s}
  .blood-fringe span:nth-child(16),.blood-fall--16{--fringe-reach:31%;--fringe-duration:28.1s;--fringe-delay:-7.6s}
  .blood-fringe span:nth-child(17){--fringe-reach:66%;--fringe-duration:20.4s;--fringe-delay:-17.3s}
  .blood-fringe span:nth-child(18){--fringe-reach:91%;--fringe-duration:15.1s;--fringe-delay:-1.9s}
  .blood-fringe span:nth-child(19){--fringe-reach:48%;--fringe-duration:25.6s;--fringe-delay:-21.7s}
  .blood-fringe span:nth-child(20){--fringe-reach:76%;--fringe-duration:18.9s;--fringe-delay:-12.4s}
  .blood-fringe span:nth-child(21){--fringe-reach:36%;--fringe-duration:13.1s;--fringe-delay:-9.1s}
  .blood-fringe span:nth-child(22),.blood-fall--22{--fringe-reach:98%;--fringe-duration:27.4s;--fringe-delay:-5.8s}
  .blood-fringe span:nth-child(23){--fringe-reach:57%;--fringe-duration:16.8s;--fringe-delay:-14.6s}
  .blood-fringe span:nth-child(24){--fringe-reach:86%;--fringe-duration:22.9s;--fringe-delay:-19.7s}
  .blood-drips{top:0;width:43px;height:75vh;height:75svh}
  .blood-drips--left{left:2px}.blood-drips--right{right:2px}
  .blood-drips span{position:absolute;top:8px;height:calc(var(--blood-reach,100%) - 30px)}
  .blood-drips span:nth-child(1){left:5px;--blood-reach:94%;--blood-delay:-4s}.blood-drips span:nth-child(2){left:19px;--blood-reach:100%;--blood-delay:-8s}.blood-drips span:nth-child(3){left:33px;--blood-reach:97%;--blood-delay:-6s}
  .blood-drips--right span:nth-child(1){--blood-reach:98%;--blood-delay:-9s}.blood-drips--right span:nth-child(2){--blood-reach:94%;--blood-delay:-5s}.blood-drips--right span:nth-child(3){--blood-reach:100%;--blood-delay:-7s}
  /* Les quatre perles quittent leur pointe à 68% du même cycle et touchent le sol à 79%.
     24 colonnes égales : leur centre se trouve à (index - .5) / 24 de la largeur. */
  .blood-fringe span:is(:nth-child(4),:nth-child(10),:nth-child(16),:nth-child(22))::after{animation-name:fringe-release}
  .blood-falls{position:fixed;inset:0;height:100vh;height:100dvh;z-index:4;overflow:hidden;overflow:clip;pointer-events:none;--fringe-space:calc(60vh - 11px)}
  .blood-fall{position:absolute;inset-block:0;left:var(--fall-x);width:0;--pearl-width:11px;--pearl-height:17px;--fall-start:calc(18px + max(4px,calc(var(--fringe-space) * var(--fall-factor) - 48px)))}
  .blood-fall--4{--fall-x:14.583333%;--fall-factor:.95}.blood-fall--10{--fall-x:39.583333%;--fall-factor:1}.blood-fall--16{--fall-x:64.583333%;--fall-factor:.31}.blood-fall--22{--fall-x:89.583333%;--fall-factor:.98}
  .blood-pearl,.blood-splat,.blood-spray i{position:absolute;left:0;animation-duration:var(--fringe-duration);animation-delay:var(--fringe-delay);animation-iteration-count:infinite;animation-fill-mode:both}
  .blood-pearl{width:var(--pearl-width);height:var(--pearl-height);border-radius:55% 55% 48% 48%;background:linear-gradient(110deg,#ff6682 3%,#ed0039 38%,#88001e);box-shadow:inset 2px 0 1px #ff8ca84d;transform:translate(-50%,-100%);animation-name:floor-fall;animation-timing-function:linear}
  .blood-splat{bottom:0;width:94px;height:17px;background:radial-gradient(ellipse at 45% 30%,#fa244b,#b3002c 67%,#64001b);clip-path:polygon(0 62%,9% 36%,18% 45%,28% 7%,42% 23%,51% 0,62% 31%,76% 17%,82% 48%,100% 60%,91% 84%,78% 78%,65% 100%,50% 89%,32% 100%,20% 79%,7% 91%);transform-origin:center bottom;animation-name:floor-stain;animation-timing-function:ease-out}
  .blood-spray{position:absolute;bottom:4px;left:0;width:0;height:0}
  .blood-spray i{bottom:0;width:4px;height:7px;border-radius:60% 45% 55% 40%;background:linear-gradient(135deg,#ff607c,#dd0035 60%,#850020);animation-name:floor-spray;animation-timing-function:ease-out}
  .blood-spray i:nth-child(1){--spray-x:-42px;--spray-y:-28px}.blood-spray i:nth-child(2){--spray-x:-28px;--spray-y:-46px;width:3px;height:5px}.blood-spray i:nth-child(3){--spray-x:-14px;--spray-y:-24px;width:5px;height:6px}.blood-spray i:nth-child(4){--spray-x:4px;--spray-y:-52px;width:3px}.blood-spray i:nth-child(5){--spray-x:20px;--spray-y:-30px;height:6px}.blood-spray i:nth-child(6){--spray-x:37px;--spray-y:-42px;width:3px;height:5px}.blood-spray i:nth-child(7){--spray-x:49px;--spray-y:-18px;width:3px;height:4px}
}
@supports(height:1svh){.blood-falls{--fringe-space:calc(60svh - 11px)}}
@keyframes blood-trickle{0%,100%{transform:scaleY(.78)}65%,88%{transform:scaleY(1)}}
@keyframes blood-drop{0%,72%{transform:translate(-50%,0) scale(1);opacity:1}88%{transform:translate(-50%,10px) scale(.8,1.15);opacity:.85}94%,100%{transform:translate(-50%,14px) scale(.6,1.1);opacity:0}}
@keyframes fringe-grow{0%,100%{transform:scaleY(.08);opacity:0}5%{transform:scaleY(.08);opacity:1}68%,83%{transform:scaleY(1);opacity:1}94%{transform:scaleY(1);opacity:0}}
@keyframes fringe-drop{0%,68%{transform:translate(-50%,0) scale(1);opacity:1}79%{transform:translate(-50%,36px) scale(.8,1.15);opacity:1}86%,100%{transform:translate(-50%,36px) scale(.6,1.05);opacity:0}}
@keyframes fringe-release{0%,67.99%{transform:translate(-50%,0);opacity:1}68%,100%{transform:translate(-50%,0);opacity:0}}
@keyframes floor-fall{0%,67.99%{top:var(--fall-start);opacity:0}68%{top:var(--fall-start);opacity:1;animation-timing-function:cubic-bezier(.55,.01,.93,.65)}79%{top:100%;opacity:1}79.1%,100%{top:100%;opacity:0}}
@keyframes floor-stain{0%,78.99%{transform:translateX(-50%) scale(.12,1.5);opacity:0}79%{transform:translateX(-50%) scale(.15,1.5);opacity:1}80%{transform:translateX(-50%) scale(.9,.75);opacity:1}82%,91%{transform:translateX(-50%) scale(1);opacity:.94}96%,100%{transform:translateX(-50%) scale(1.08,.7);opacity:0}}
@keyframes floor-spray{0%,78.99%{transform:translate(0,0) scale(.35);opacity:0}79%{transform:translate(0,0) scale(.35);opacity:1}81%{transform:translate(var(--spray-x),var(--spray-y));opacity:1}83.5%,100%{transform:translate(calc(var(--spray-x) * 1.2),-3px) scale(.4);opacity:0}}
@media screen and (max-width:1050px){.blood-drips{width:20px}.blood-drips span{width:2px}.blood-drips span::after{width:6px;height:12px}.blood-drips span:nth-child(1){left:2px}.blood-drips span:nth-child(2){left:8px}.blood-drips span:nth-child(3){left:14px}}
@media screen and (max-width:650px){.blood-drips{width:12px}.blood-drips--left{left:0}.blood-drips--right{right:0}.blood-drips span{width:1.6px}.blood-drips span::after{width:4px;height:10px}.blood-drips span:nth-child(1){left:1px}.blood-drips span:nth-child(2){left:5px}.blood-drips span:nth-child(3){left:9px}.blood-fringe span{width:2px}.blood-fringe span::after{width:5px;height:11px}}
@media screen and (max-width:650px){.brand img{width:36px;height:36px}}
@media screen and (max-width:650px){.blood-fall{--pearl-width:5px;--pearl-height:11px}.blood-splat{width:72px;height:13px}}
@media(prefers-reduced-motion:reduce){.blood-fringe span,.blood-fringe span::after,.blood-drips span,.blood-drips span::after{animation:none!important}.blood-fringe span{height:clamp(8px,calc(var(--fringe-reach,70%) * .08),42px);transform:none;opacity:1}.blood-fringe span::after,.blood-drips span::after{transform:translateX(-50%)}.blood-falls{display:none}.blood-falls *{animation:none!important}}
@media print{.blood-fringe,.blood-drips,.blood-falls{display:none}}
