/* VLYNK 27/10/2026 : styles de carte Vmenu (Street = style d'origine, inchangé) */
/* ---------- BISTROT : ardoise, crème, police à empattements ---------- */
.vxm.vxs-bistrot { --ink: #2B2118; --mut: #7A6A55; --line: #E3D7C1; --card: #FFFBF2; --bg: #F3ECDD; }
.vxs-bistrot .vxm-title, .vxs-bistrot .vxm-sec-h h2, .vxs-bistrot .vxm-item h4, .vxs-bistrot .vxm-d-body h3, .vxs-bistrot .vxm-hours h2 { font-family: 'Fraunces', Georgia, serif; font-weight: 600; letter-spacing: 0; }
.vxs-bistrot .vxm-title { font-size: 34px; font-style: italic; }
.vxs-bistrot .vxm-hero { border-radius: 0; }
.vxs-bistrot .vxm-hero:not(.has-cover) { background: #2B2B2B linear-gradient(180deg, rgba(255,255,255,.04), rgba(0,0,0,.25)); }
.vxs-bistrot .vxm-hero::after { inset: auto 0 10px 0; width: auto; height: 1px; border-radius: 0; background: rgba(255,255,255,.35); box-shadow: 0 4px 0 rgba(255,255,255,.18); }
.vxs-bistrot .vxm-kicker { font-family: 'Fraunces', Georgia, serif; font-style: italic; text-transform: none; letter-spacing: .02em; font-size: 15px; }
.vxs-bistrot .vxm-act { border-radius: 6px; box-shadow: none; border: 1px solid var(--line); }
.vxs-bistrot .vxm-chip { border-radius: 4px; font-family: 'Fraunces', Georgia, serif; font-weight: 500; }
.vxs-bistrot .vxm-sec-h { border-bottom: 1px solid var(--ink); padding-bottom: 8px; }
.vxs-bistrot .vxm-items { gap: 0; }
.vxs-bistrot .vxm-item { border-radius: 0; box-shadow: none; border: 0; border-bottom: 1px dashed var(--line); background: transparent; padding: 14px 4px; }
.vxs-bistrot .vxm-item-img { border-radius: 4px; width: 84px; height: 84px; }
.vxs-bistrot .vxm-price { font-family: 'Fraunces', Georgia, serif; font-weight: 600; color: var(--ink); }
.vxs-bistrot .vxm-sub { font-family: 'Fraunces', Georgia, serif; font-style: italic; text-transform: none; letter-spacing: 0; font-size: 16px; }

/* ---------- GASTRONOMIQUE : nuit, or, typographie fine ---------- */
.vxm.vxs-gastro { --ink: #F2EADB; --mut: #A99D88; --line: #2C2820; --card: #16140F; --bg: #0E0D0A; font-weight: 400; }
.vxs-gastro .vxm-title, .vxs-gastro .vxm-sec-h h2, .vxs-gastro .vxm-item h4, .vxs-gastro .vxm-hours h2 { font-family: 'Cormorant Garamond', Georgia, serif; font-weight: 500; letter-spacing: .01em; }
.vxs-gastro .vxm-title { font-size: 40px; text-transform: uppercase; letter-spacing: .12em; font-weight: 400; }
.vxs-gastro .vxm-kicker { letter-spacing: .32em; font-weight: 500; font-size: 11px; }
.vxs-gastro .vxm-hero { border-radius: 0; padding-bottom: 44px; }
.vxs-gastro .vxm-hero:not(.has-cover) { background: radial-gradient(90% 70% at 50% 0%, #2a2418 0%, #0E0D0A 75%); }
.vxs-gastro .vxm-hero::after { inset: auto 35% 18px 35%; width: auto; height: 1px; border-radius: 0; background: var(--a); }
.vxs-gastro .vxm-logo { border-radius: 50%; }
.vxs-gastro .vxm-act { background: var(--card); border: 1px solid var(--line); box-shadow: none; border-radius: 4px; color: var(--ink); }
.vxs-gastro .vxm-bar { background: color-mix(in srgb, var(--bg) 92%, transparent); }
.vxs-gastro .vxm-chip { background: transparent; border-color: var(--line); color: var(--mut); border-radius: 0; text-transform: uppercase; letter-spacing: .14em; font-size: 12px; }
.vxs-gastro .vxm-chip.on { background: transparent; border-color: var(--a); color: var(--ink); }
.vxs-gastro .vxm-search-btn, .vxs-gastro .vxm-search { background: var(--card); border-color: var(--line); color: var(--ink); }
.vxs-gastro .vxm-sec-h { justify-content: center; text-align: center; }
.vxs-gastro .vxm-sec-h h2 { font-size: 28px; }
.vxs-gastro .vxm-items { gap: 0; }
.vxs-gastro .vxm-item { background: transparent; border: 0; border-bottom: 1px solid var(--line); border-radius: 0; box-shadow: none; padding: 18px 4px; }
.vxs-gastro .vxm-item h4 { font-size: 20px; }
.vxs-gastro .vxm-item-img { width: 72px; height: 72px; border-radius: 50%; }
.vxs-gastro .vxm-price { color: var(--a); font-weight: 500; font-family: 'Cormorant Garamond', Georgia, serif; font-size: 19px; }
.vxs-gastro .vxm-al span { background: transparent; color: var(--mut); border: 1px solid var(--line); }
.vxs-gastro .vxm-hours, .vxs-gastro .vxm-foot { color: var(--mut); }
.vxs-gastro .vxm-add-n { background: var(--a); }
/* fenêtres (plat, panier, commande) : restent claires et lisibles */
.vxs-gastro [class*="vxm-sheet"], .vxs-gastro .vxm-cart, .vxs-gastro .vxm-done { --ink: #17171C; --mut: #6B6B76; --line: #ECE8E3; --card: #FFFFFF; --bg: #F6F4F1; color: var(--ink); }
.vxs-gastro .vxm-cartbar, .vxs-gastro .vxm-track { background: #F2EADB !important; color: #0E0D0A !important; }

/* ---------- FRAIS : pastel, arrondi, léger ---------- */
.vxm.vxs-frais { --ink: #1F2D27; --mut: #6C7F77; --line: #E2EEE8; --card: #FFFFFF; --bg: color-mix(in srgb, var(--a) 7%, #F7FBF9); }
.vxs-frais .vxm-title, .vxs-frais .vxm-sec-h h2, .vxs-frais .vxm-item h4, .vxs-frais .vxm-d-body h3 { font-family: 'Quicksand', 'Plus Jakarta Sans', sans-serif; font-weight: 700; letter-spacing: 0; }
.vxs-frais .vxm-hero { border-radius: 0 0 40px 40px; }
.vxs-frais .vxm-act { border-radius: 22px; }
.vxs-frais .vxm-chip { background: color-mix(in srgb, var(--a) 10%, #fff); border-color: transparent; }
.vxs-frais .vxm-chip.on { background: var(--a); border-color: var(--a); }
.vxs-frais .vxm-item { border-radius: 26px; border-color: transparent; box-shadow: 0 6px 18px color-mix(in srgb, var(--a) 10%, transparent); }
.vxs-frais .vxm-item-img { border-radius: 20px; }
.vxs-frais .vxm-al span { background: color-mix(in srgb, var(--a) 12%, #fff); color: var(--ink); }

/* ---------- ORIENTAL / DU MONDE : doré, chaleureux, ornements ---------- */
.vxm.vxs-oriental { --ink: #2A1C10; --mut: #806A50; --line: #EBDCC0; --card: #FFFDF7; --bg: #FAF3E6; }
.vxs-oriental .vxm-title, .vxs-oriental .vxm-sec-h h2, .vxs-oriental .vxm-item h4, .vxs-oriental .vxm-d-body h3, .vxs-oriental .vxm-hours h2 { font-family: 'El Messiri', Georgia, serif; font-weight: 600; letter-spacing: 0; }
.vxs-oriental .vxm-title { font-size: 34px; }
.vxs-oriental .vxm-hero::after { inset: auto 0 0 0; width: auto; height: 14px; border-radius: 0; background: repeating-linear-gradient(135deg, rgba(255,255,255,.35) 0 6px, transparent 6px 14px); }
.vxs-oriental .vxm-hero:not(.has-cover) { background: radial-gradient(120% 90% at 50% 0%, color-mix(in srgb, var(--a) 85%, #F5C76B) 0%, var(--a) 50%, color-mix(in srgb, var(--a) 60%, #2A1C10) 100%); }
.vxs-oriental .vxm-sec-h { justify-content: center; }
.vxs-oriental .vxm-sec-h h2::before, .vxs-oriental .vxm-sec-h h2::after { content: '◆'; color: var(--a); font-size: 11px; vertical-align: middle; margin: 0 10px; }
.vxs-oriental .vxm-item { border-color: var(--line); border-radius: 14px 14px 14px 2px; }
.vxs-oriental .vxm-item-img { border-radius: 50% 50% 14px 14px; }
.vxs-oriental .vxm-chip { border-color: var(--line); }
.vxs-oriental .vxm-price { font-family: 'El Messiri', Georgia, serif; }
