/* Mur d'Iris (démo mur-test.html, validée) : grille 3 colonnes ; appui = aperçu qui reste ouvert ;
   double appui = grand ; appui sur le côté = referme ; barre d'actions à droite ; rien de sélectionnable. */
.mi-grille{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
.mi-tuile{position:relative;aspect-ratio:1/1;border-radius:12px;overflow:hidden;background:var(--panneau2);padding:0;border:0;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-user-drag:none;transition:transform .2s ease}
.mi-tuile:active{transform:scale(.97)}
.mi-fond{position:absolute;inset:0;background:linear-gradient(160deg,var(--c),var(--panneau) 110%)}
.mi-tuile::after{content:"";position:absolute;left:0;right:0;bottom:0;height:55%;background:linear-gradient(transparent,rgba(2,5,12,.74));pointer-events:none}
.mi-duree{z-index:1;position:absolute;top:6px;right:6px;font-size:11px;font-weight:700;color:#fff;background:rgba(2,5,12,.6);border-radius:6px;padding:1px 5px}
.mi-cap{z-index:1;position:absolute;left:6px;right:6px;bottom:6px;font-size:11px;font-weight:600;color:#fff;text-shadow:0 1px 3px #000;text-align:left;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;pointer-events:none}

.mi-prev{position:absolute;inset:0;z-index:90;background:rgba(7,11,22,.86);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
.mi-prev[hidden]{display:none}
.mi-scene{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:10px;padding:0 12px}
.mi-carte{position:relative;flex:none;width:min(72vw,calc((100dvh - 150px) * 9 / 16));aspect-ratio:9/16;border-radius:24px;overflow:hidden;background:#0f1628;box-shadow:0 14px 44px rgba(0,0,0,.6)}
.mi-art{position:absolute;inset:0;display:grid;place-items:center;background:linear-gradient(160deg,var(--c),#070b16 95%);color:#fff}
.mi-art svg{width:30%;height:auto;opacity:.45}
.mi-art::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.12) 50%,transparent 70%);transform:translateX(-100%);animation:mi-lecture 2.4s linear infinite}
@keyframes mi-lecture{to{transform:translateX(100%)}}
.mi-carte::after{content:"";position:absolute;left:0;right:0;bottom:0;height:50%;background:linear-gradient(transparent,rgba(2,5,12,.72));pointer-events:none}
.mi-texte{position:absolute;left:14px;right:14px;bottom:14px;z-index:1;display:flex;flex-direction:column;align-items:flex-start;gap:6px;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
.mi-titre{margin:0;font-size:14px;font-weight:700;line-height:1.3;color:#fff;text-shadow:0 1px 6px #000}
.mi-legende{margin:0;font-size:13px;line-height:1.4;color:#fff;text-shadow:0 1px 6px #000}
.mi-risque{margin:0;font-size:11px;line-height:1.35;color:rgba(255,255,255,.78);text-shadow:0 1px 4px #000}
.mi-plus{display:flex;gap:4px;align-items:center;justify-content:flex-start;min-width:44px;min-height:44px;margin:-12px 0 -12px -4px;padding:0 4px}
.mi-plus[hidden]{display:none}
.mi-tiret{display:block;width:6px;height:2px;background:#f7c948}
.mi-rail{display:flex;flex-direction:column;align-items:center;gap:10px;flex:none}
.mi-b{display:flex;flex-direction:column;align-items:center;gap:3px;min-width:58px;color:#fff;font-size:10px;font-weight:600;text-shadow:0 1px 4px #000;-webkit-user-select:none;user-select:none}
.mi-p{position:relative;width:44px;height:32px;display:grid;place-items:center;color:#c9d3e8}
.mi-amande{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:2;opacity:.7}
.mi-p > svg:not(.mi-amande){position:relative;width:18px;height:18px}
.mi-b.actif .mi-p{color:#f7c948}
.mi-b.actif .mi-amande{fill:rgba(247,201,72,.18);opacity:1}
.mi-n{font-size:10px;opacity:.85}

.mi-prev.grand .mi-scene{padding:0}
.mi-prev.grand .mi-carte{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;border-radius:0;box-shadow:none}
.mi-prev.grand .mi-rail{position:absolute;right:12px;bottom:calc(env(safe-area-inset-bottom,0px) + 96px);z-index:3}

@media (prefers-reduced-motion: reduce){ .mi-art::after{animation:none} .mi-tuile{transition:none} }
