/* BENETIERE — motifs techniques. FICHIER GÉNÉRÉ par scripts/build_patterns.py depuis patterns/*.svg : ne pas éditer à la main.
   Couleur = currentColor (suit --fg du thème). Toujours en arrière-plan, opacité 6 à 12 %. */
.bn-pattern { position: absolute; inset: 0; z-index: 0; pointer-events: none; color: var(--fg); background-color: currentColor; opacity: 0.08; -webkit-mask-repeat: repeat; mask-repeat: repeat; }
.bn-pattern--leger { opacity: 0.06; }
.bn-pattern--fort { opacity: 0.12; }
.bn-pattern-grille { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 120 120%22 width=%22120%22 height=%22120%22 fill=%22none%22 stroke=%22%23000%22%3E%3Cpath stroke-opacity=%22.45%22 d=%22M0 .5H120M0 24.5H120M0 48.5H120M0 72.5H120M0 96.5H120M.5 0V120M24.5 0V120M48.5 0V120M72.5 0V120M96.5 0V120%22/%3E%3Cpath stroke-width=%222%22 d=%22M54 60H66M60 54V66%22/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 120 120%22 width=%22120%22 height=%22120%22 fill=%22none%22 stroke=%22%23000%22%3E%3Cpath stroke-opacity=%22.45%22 d=%22M0 .5H120M0 24.5H120M0 48.5H120M0 72.5H120M0 96.5H120M.5 0V120M24.5 0V120M48.5 0V120M72.5 0V120M96.5 0V120%22/%3E%3Cpath stroke-width=%222%22 d=%22M54 60H66M60 54V66%22/%3E%3C/svg%3E"); -webkit-mask-size: 120px 120px; mask-size: 120px 120px; }
.bn-pattern-reseau { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 160 160%22 width=%22160%22 height=%22160%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22square%22%3E%3Cpath d=%22M0 40H70V110H160%22/%3E%3Cpath d=%22M120 0V40H160%22/%3E%3Cpath d=%22M0 110H30M40 110H50M50 104V116%22/%3E%3Cpath d=%22M30 104 40 116V104L30 116Z%22/%3E%3Cpath d=%22M120 160V130H90V110%22/%3E%3Cpath d=%22M50 35V45M115 20H125M140 105V115%22/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 160 160%22 width=%22160%22 height=%22160%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22square%22%3E%3Cpath d=%22M0 40H70V110H160%22/%3E%3Cpath d=%22M120 0V40H160%22/%3E%3Cpath d=%22M0 110H30M40 110H50M50 104V116%22/%3E%3Cpath d=%22M30 104 40 116V104L30 116Z%22/%3E%3Cpath d=%22M120 160V130H90V110%22/%3E%3Cpath d=%22M50 35V45M115 20H125M140 105V115%22/%3E%3C/svg%3E"); -webkit-mask-size: 160px 160px; mask-size: 160px 160px; }
.bn-pattern-flux { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 192 80%22 width=%22192%22 height=%2280%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.5%22 stroke-linecap=%22square%22%3E%3Cpath d=%22M0 20H192%22 stroke-dasharray=%2214 10%22/%3E%3Cpath d=%22M0 60H192%22 stroke-dasharray=%2214 10%22 stroke-dashoffset=%2212%22/%3E%3Cpath d=%22M86 15 94 20 86 25M178 55 186 60 178 65%22/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 192 80%22 width=%22192%22 height=%2280%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.5%22 stroke-linecap=%22square%22%3E%3Cpath d=%22M0 20H192%22 stroke-dasharray=%2214 10%22/%3E%3Cpath d=%22M0 60H192%22 stroke-dasharray=%2214 10%22 stroke-dashoffset=%2212%22/%3E%3Cpath d=%22M86 15 94 20 86 25M178 55 186 60 178 65%22/%3E%3C/svg%3E"); -webkit-mask-size: 192px 80px; mask-size: 192px 80px; }
.bn-pattern-hachures { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 16 16%22 width=%2216%22 height=%2216%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.5%22%3E%3Cpath d=%22M-4 4 4-4M0 16 16 0M12 20 20 12%22/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 16 16%22 width=%2216%22 height=%2216%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.5%22%3E%3Cpath d=%22M-4 4 4-4M0 16 16 0M12 20 20 12%22/%3E%3C/svg%3E"); -webkit-mask-size: 16px 16px; mask-size: 16px 16px; }
.bn-pattern-isothermes { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 240 240%22 width=%22240%22 height=%22240%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.5%22%3E%3Cg transform=%22rotate%28-12 120 120%29%22%3E%3Cpath d=%22M86 120C86 104 102 96 120 96C140 96 154 106 154 120C154 136 138 144 120 144C100 144 86 134 86 120Z%22/%3E%3Cpath d=%22M56 122C54 92 86 74 122 74C160 74 186 96 184 122C182 150 154 166 120 166C84 166 58 150 56 122Z%22/%3E%3Cpath d=%22M24 124C20 80 66 46 124 48C180 50 218 84 214 124C210 166 170 194 118 192C64 190 28 164 24 124Z%22/%3E%3C/g%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 240 240%22 width=%22240%22 height=%22240%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.5%22%3E%3Cg transform=%22rotate%28-12 120 120%29%22%3E%3Cpath d=%22M86 120C86 104 102 96 120 96C140 96 154 106 154 120C154 136 138 144 120 144C100 144 86 134 86 120Z%22/%3E%3Cpath d=%22M56 122C54 92 86 74 122 74C160 74 186 96 184 122C182 150 154 166 120 166C84 166 58 150 56 122Z%22/%3E%3Cpath d=%22M24 124C20 80 66 46 124 48C180 50 218 84 214 124C210 166 170 194 118 192C64 190 28 164 24 124Z%22/%3E%3C/g%3E%3C/svg%3E"); -webkit-mask-size: 240px 240px; mask-size: 240px 240px; }
