/* Moteur d'affichage de la carte — styles thémables (variables sous .mrz) */
.mrz{
  --accent:#c0562e; --fond:#fbf7f0; --hbg:#12281b; --htxt:#e9c96b;
  --doux:#8a7f74; --texte:#2b2320; --bord:#ece0cf; --accent-2:#e8d9c4; --wa:#25D366;
  --mrz-font:system-ui,"Segoe UI",Roboto,Arial,sans-serif;
  background:var(--fond); color:var(--texte); min-height:100%;
  font-family:var(--mrz-font); line-height:1.5;
}
.mrz.font-elegante{--mrz-font:Georgia,"Times New Roman",serif}
.mrz.font-arrondie{--mrz-font:"Trebuchet MS","Segoe UI",system-ui,sans-serif}
.mrz.font-moderne{--mrz-font:system-ui,"Segoe UI",Roboto,Arial,sans-serif}
.mrz *{box-sizing:border-box;margin:0;padding:0}
.mrz .wrap{max-width:680px;margin:0 auto}
.mrz .head{text-align:center;padding:32px 16px 20px;background:var(--hbg);color:var(--htxt)}
.mrz .head img.logo{max-height:76px;margin-bottom:10px;border-radius:10px}
.mrz .head h1{font-size:clamp(28px,7vw,40px);font-weight:800;letter-spacing:.4px;color:var(--htxt)}
.mrz .head .sl{opacity:.92;font-size:15px;margin-top:5px}
.mrz .head .inf{opacity:.85;font-size:12.5px;margin-top:10px;line-height:1.7}
.mrz .head .inf a{color:inherit}
.mrz .head .inf .nb{white-space:nowrap}
.mrz nav.rub{position:sticky;top:0;z-index:10;background:var(--fond);display:flex;gap:7px;overflow-x:auto;padding:10px 14px;box-shadow:0 2px 10px rgba(0,0,0,.06);scrollbar-width:none}
.mrz nav.rub::-webkit-scrollbar{display:none}
.mrz nav.rub button{flex:0 0 auto;border:1px solid var(--accent-2);background:#fff;color:var(--texte);padding:8px 14px;border-radius:999px;font-size:14px;font-weight:700;white-space:nowrap;cursor:pointer}
.mrz nav.rub button.on{background:var(--accent);color:#fff;border-color:var(--accent)}
.mrz .body{padding:0 16px 40px}
.mrz .subnav{display:flex;gap:7px;overflow-x:auto;padding:12px 0 4px;scrollbar-width:none}
.mrz .subnav::-webkit-scrollbar{display:none}
.mrz .subnav button{flex:0 0 auto;border:1px solid var(--bord);background:#fff;color:var(--accent);padding:5px 11px;border-radius:9px;font-size:12.5px;font-weight:700;white-space:nowrap;cursor:pointer}
.mrz .cat>h2{font-size:22px;color:var(--accent);font-weight:800;margin:20px 0 3px}
.mrz .cat .cdesc{color:var(--doux);font-size:13.5px;margin-bottom:10px}
.mrz .sub{margin-left:8px;border-left:2px solid var(--accent-2);padding-left:10px;margin-top:4px}
.mrz .sub>h3{font-size:16px;color:var(--accent);opacity:.92;font-weight:800;margin:14px 0 5px}
.mrz .plat{background:#fff;border-radius:12px;padding:13px 15px;box-shadow:0 4px 18px rgba(60,40,20,.08);margin-bottom:9px;display:flex;justify-content:space-between;gap:12px}
.mrz .plat .n{font-weight:700;font-size:15.5px}
.mrz .plat .d{color:var(--doux);font-size:13px;margin-top:2px}
.mrz .plat .p{font-weight:800;color:var(--accent);white-space:nowrap;font-size:15.5px}
.mrz .plat.epuise{opacity:.5}
.mrz .ev{background:#fff;border-radius:12px;padding:13px 15px;box-shadow:0 4px 18px rgba(60,40,20,.08);margin-bottom:9px}
.mrz .ev .n{font-weight:800;font-size:15.5px;color:var(--accent)}
.mrz .ev .d{color:var(--doux);font-size:13px;margin-top:2px}
.mrz .tg{font-size:10px;font-weight:800;text-transform:uppercase;padding:2px 7px;border-radius:5px;background:var(--accent-2);color:#7a5a3a;margin-right:5px}
.mrz .tg.veg{background:#dcefdc;color:#3f7a3f}.mrz .tg.epice{background:#fbdcd2;color:#b34a2a}.mrz .tg.new{background:#d9e8f7;color:#2a6bb3}
.mrz .credit{text-align:center;font-size:12px;color:var(--doux);padding:16px 8px 24px}
.mrz .credit a{color:var(--accent);font-weight:700;text-decoration:none}
.mrz .pop{position:sticky;bottom:0;z-index:20;display:flex;justify-content:center;padding:12px;pointer-events:none}
.mrz .pop .c{pointer-events:auto;background:#fff;border-radius:16px;max-width:440px;width:100%;padding:15px 16px 13px;text-align:center;box-shadow:0 -4px 26px rgba(0,0,0,.2);position:relative;border:1px solid var(--bord)}
.mrz .pop.hide{display:none}
.mrz .pop .x{position:absolute;top:6px;right:11px;border:0;background:none;color:var(--doux);font-size:16px;cursor:pointer}
.mrz .pop .t{font-weight:800;color:var(--accent);font-size:16px}
.mrz .pop .d{color:var(--doux);font-size:13px;margin:3px 0 10px}
.mrz .pop a.f{display:block;background:var(--wa);color:#fff;text-decoration:none;font-weight:800;padding:12px;border-radius:12px;font-size:15px}
