
/* MyLuckyMeal V2 Premium — harmonisation visuelle TEST, sans changement métier */
:root{--mlm-bg:#15131c;--mlm-panel:#24212e;--mlm-panel2:#302a3a;--mlm-pink:#f13a9e;--mlm-text:#faf6fc;--mlm-muted:#c6bccc}
html{color-scheme:dark}
body{background:var(--mlm-bg)!important;color:var(--mlm-text)}
:where(header,header.top){box-shadow:0 5px 28px #0003}
:where(.card,.carte,.bon,.produit,.ticket,.dish,.colonne,.panneau){border-radius:18px;box-shadow:0 8px 30px #0003}
:where(button,.b,.btn){border-radius:12px;letter-spacing:.01em}
:where(button,.b,.btn):not(:disabled):hover{filter:brightness(1.1)}
:where(input,textarea,select){border-radius:12px}
:where(.card,.carte,.bon){border-color:#51435b}
:where(h1,h2,h3){letter-spacing:-.025em}
:where(.prix,.total){font-variant-numeric:tabular-nums}
@media (min-width:900px){:where(.card,.bon,.carte){transition:box-shadow .18s ease,transform .18s ease}:where(.card,.bon,.carte):hover{box-shadow:0 12px 35px #0005}}
@media(prefers-reduced-motion:reduce){:where(.card,.bon,.carte){transition:none!important}}
/* Bouton Z compact : ne modifie ni impression ni calcul */
:where(button,.b,.btn)[id*="imprimerZ" i],:where(button,.b,.btn)[id*="printZ" i]{width:auto!important;max-width:220px!important;min-height:42px!important;padding:10px 16px!important;font-size:.9rem!important}
