.mobile-app-nav{display:none}
@media(max-width:800px){html{scroll-padding:64px 0 76px}body[data-restaurant-profile=petit-dakar]{padding-bottom:64px;background:#fff}body[data-restaurant-profile=petit-dakar] header{height:64px!important;padding:0 14px!important;border-bottom:1px solid #efdce0!important;box-shadow:0 5px 18px #4b101d0f!important}body[data-restaurant-profile=petit-dakar] .brand{gap:8px}body[data-restaurant-profile=petit-dakar] .brand img{width:42px!important;height:42px!important}body[data-restaurant-profile=petit-dakar] .brand b{font-size:1rem!important}body[data-restaurant-profile=petit-dakar] #menuToggle,body[data-restaurant-profile=petit-dakar] .menu-toggle,body[data-restaurant-profile=petit-dakar] #mainNav,body[data-restaurant-profile=petit-dakar] header .live{display:none!important}body[data-restaurant-profile=petit-dakar] .public-hero{min-height:calc(100svh - 128px)!important;display:flex!important;flex-direction:column!important;gap:6px!important;padding:14px 12px 10px!important;border:0!important;background-image:linear-gradient(180deg,#ffffff24,#ffffff45),url('/assets/petit-dakar-restaurant-interior.jpg')!important;background-position:center!important;background-size:cover!important}body[data-restaurant-profile=petit-dakar] .public-hero:after{display:none!important}body[data-restaurant-profile=petit-dakar] .hero-copy{display:grid!important;justify-items:center!important;width:100%!important;max-width:520px!important;margin:0 auto!important;text-align:center!important}body[data-restaurant-profile=petit-dakar] .hero-copy .eyebrow{margin:0 0 3px!important;color:#fff!important;font-size:9px!important;letter-spacing:.15em!important}body[data-restaurant-profile=petit-dakar] .hero-copy h1{margin:0!important;color:#fff!important;text-shadow:0 2px 12px #25030cbf;font-size:clamp(26px,8vw,37px)!important;line-height:1.03!important}body[data-restaurant-profile=petit-dakar] .hero-copy>p:not(.eyebrow){max-width:36ch!important;margin:6px auto 8px!important;color:#fff!important;text-shadow:0 1px 8px #25030ccc;font-size:clamp(12px,3.5vw,15px)!important;line-height:1.35!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}body[data-restaurant-profile=petit-dakar] .hero-copy .cta{margin:1px 0 5px!important;padding:8px 14px!important;border:0!important;border-radius:9px!important;box-shadow:none!important;font-size:12px!important}body[data-restaurant-profile=petit-dakar] .hero-highlights{display:none!important}body[data-restaurant-profile=petit-dakar] .food-carousel{order:-1!important;width:100%!important;height:clamp(250px,42vh,350px)!important;margin:0 auto 5px!important;transform:none!important;border-radius:22px!important;background:#ffffff1a!important;box-shadow:0 16px 45px #4a131f1a!important;overflow:hidden!important}body[data-restaurant-profile=petit-dakar] .food-carousel:before{width:210px!important;height:210px!important;border-color:#c8102e2e!important}body[data-restaurant-profile=petit-dakar] .food-carousel:after{width:130px!important;height:130px!important;border-color:#c8102e40!important}body[data-restaurant-profile=petit-dakar] .dakar-stage-copy{width:108px!important;height:108px!important;background:#fffffff0!important;border:1px solid #e8b9c2!important;color:#6e1d2e!important;box-shadow:0 10px 25px #4a131f1f!important}body[data-restaurant-profile=petit-dakar] .dakar-stage-copy small{font-size:8px!important}body[data-restaurant-profile=petit-dakar] .dakar-stage-copy b{font-size:15px!important}body[data-restaurant-profile=petit-dakar] .dakar-plate{width:clamp(72px,23vw,100px)!important;height:clamp(72px,23vw,100px)!important;border-width:3px!important;box-shadow:0 9px 22px #3f0c1833!important}body[data-restaurant-profile=petit-dakar] .dakar-plate--1{left:3%!important;top:7%!important}body[data-restaurant-profile=petit-dakar] .dakar-plate--2{left:40%!important;top:6%!important;width:19vw!important;height:19vw!important}body[data-restaurant-profile=petit-dakar] .dakar-plate--3{right:3%!important;top:9%!important}body[data-restaurant-profile=petit-dakar] .dakar-plate--4{right:4%!important;bottom:5%!important;width:19vw!important;height:19vw!important}body[data-restaurant-profile=petit-dakar] .dakar-plate--5{left:40%!important;bottom:6%!important;width:19vw!important;height:19vw!important}body[data-restaurant-profile=petit-dakar] .dakar-plate--6{left:4%!important;bottom:5%!important;width:19vw!important;height:19vw!important}body[data-restaurant-profile=petit-dakar] .dakar-plate--7{display:none!important}.mobile-app-nav{position:fixed;left:0;right:0;bottom:0;z-index:90;display:grid;grid-template-columns:repeat(5,1fr);height:calc(64px + env(safe-area-inset-bottom));padding:5px 3px env(safe-area-inset-bottom);border-top:1px solid #ecd7dc;background:#fffffff5;box-shadow:0 -8px 28px #48121e17;backdrop-filter:blur(14px)}.mobile-app-nav a,.mobile-app-nav button{display:grid;place-items:center;align-content:center;gap:2px;min-width:0;margin:2px;border:1px solid transparent;border-radius:11px;background:transparent;color:#6d3944;text-decoration:none;font:inherit;transition:background .2s,color .2s,border-color .2s}.mobile-app-nav a:active,.mobile-app-nav button:active{background:#f9e9ed;border-color:#e9bbc5}.mobile-app-nav a:focus-visible,.mobile-app-nav button:focus-visible{outline:2px solid #c8102e;outline-offset:-2px}.mobile-app-nav svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.mobile-app-nav b{font-size:9px;line-height:1.1;white-space:nowrap}.mobile-app-nav a[href='#menu']{color:#fff;background:#c8102e;border-color:#c8102e}body[data-restaurant-profile=petit-dakar] .cart-fab{right:12px!important;bottom:76px!important;width:46px!important;height:46px!important;font-size:18px!important}}
@media(max-width:360px){body[data-restaurant-profile=petit-dakar] .public-hero{padding-inline:8px!important}body[data-restaurant-profile=petit-dakar] .food-carousel{height:238px!important}.mobile-app-nav b{font-size:8px}}
@media(max-width:280px){body[data-restaurant-profile=petit-dakar] .brand img{width:35px!important;height:35px!important}body[data-restaurant-profile=petit-dakar] .brand b{font-size:.76rem!important}body[data-restaurant-profile=petit-dakar] .hero-copy h1{font-size:23px!important}body[data-restaurant-profile=petit-dakar] .hero-copy>p:not(.eyebrow){font-size:11px!important}body[data-restaurant-profile=petit-dakar] .food-carousel{height:210px!important}body[data-restaurant-profile=petit-dakar] .dakar-plate{width:60px!important;height:60px!important}.mobile-app-nav svg{width:18px;height:18px}.mobile-app-nav b{font-size:7px}}
@media(max-width:800px){
 body[data-restaurant-profile=petit-dakar] .cart-dialog[open]{display:flex!important;align-items:center!important;justify-content:center!important;width:100vw!important;height:100dvh!important;padding:12px!important}
 body[data-restaurant-profile=petit-dakar] .cart-sheet{width:min(420px,94vw)!important;height:auto!important;min-height:0!important;max-height:72dvh!important;padding:15px!important;border-radius:18px!important;overflow:auto!important}
 body[data-restaurant-profile=petit-dakar] .cart-sheet .dialog-head{margin-bottom:8px!important}
 body[data-restaurant-profile=petit-dakar] .cart-sheet .eyebrow{font-size:8px!important;letter-spacing:.14em!important}
 body[data-restaurant-profile=petit-dakar] .cart-sheet h2{font-size:27px!important;line-height:1!important;margin:1px 0!important}
 body[data-restaurant-profile=petit-dakar] .cart-sheet .dialog-close{width:34px!important;height:34px!important;font-size:20px!important}
 body[data-restaurant-profile=petit-dakar] .cart-empty{padding:24px 8px!important;font-size:14px!important}
 body[data-restaurant-profile=petit-dakar] .cart-empty small{font-size:12px!important}
 body[data-restaurant-profile=petit-dakar] .cart-total{margin-top:9px!important;padding-top:9px!important;font-size:16px!important}
 body[data-restaurant-profile=petit-dakar] .cart-total strong{font-size:17px!important}
 body[data-restaurant-profile=petit-dakar] .cart-actions{gap:8px!important;margin-top:10px!important}
 body[data-restaurant-profile=petit-dakar] .cart-actions button{min-height:40px!important;padding:7px 9px!important;border-radius:10px!important;font-size:12px!important;line-height:1.2!important;box-shadow:none!important}
}
@media(max-width:360px){body[data-restaurant-profile=petit-dakar] .cart-sheet{width:94vw!important;padding:12px!important}body[data-restaurant-profile=petit-dakar] .cart-sheet h2{font-size:24px!important}}
/* Fenêtres mobiles compactes — règle commune v24. */
@media(max-width:800px){
 body[data-restaurant-profile=petit-dakar] dialog:not(.cart-dialog):not(.options-dialog)[open]{max-width:min(420px,94vw)!important;max-height:78dvh!important;margin:auto!important;border-radius:18px!important}
 body[data-restaurant-profile=petit-dakar] .options-dialog[open]{display:flex!important;align-items:center!important;justify-content:center!important;width:100vw!important;height:100dvh!important;padding:12px!important}
 body[data-restaurant-profile=petit-dakar] .options-sheet,
 body[data-restaurant-profile=petit-dakar] dialog form,
 body[data-restaurant-profile=petit-dakar] .customer-portal-dialog>div,
 body[data-restaurant-profile=petit-dakar] .success{width:min(420px,94vw)!important;height:auto!important;min-height:0!important;max-height:76dvh!important;padding:15px!important;border-radius:18px!important;overflow:auto!important}
 body[data-restaurant-profile=petit-dakar] dialog .dialog-head{margin-bottom:9px!important;gap:8px!important}
 body[data-restaurant-profile=petit-dakar] dialog .eyebrow{font-size:8px!important;letter-spacing:.13em!important;margin-bottom:2px!important}
 body[data-restaurant-profile=petit-dakar] dialog h2{font-size:clamp(23px,7vw,28px)!important;line-height:1.05!important;margin:2px 0 10px!important}
 body[data-restaurant-profile=petit-dakar] dialog h3{font-size:16px!important;margin:7px 0!important}
 body[data-restaurant-profile=petit-dakar] dialog p,body[data-restaurant-profile=petit-dakar] dialog small{font-size:12px!important;line-height:1.35!important}
 body[data-restaurant-profile=petit-dakar] dialog label{gap:3px!important;font-size:10px!important}
 body[data-restaurant-profile=petit-dakar] dialog input,body[data-restaurant-profile=petit-dakar] dialog select,body[data-restaurant-profile=petit-dakar] dialog textarea{min-height:38px!important;padding:7px 9px!important;border-radius:8px!important;font-size:12px!important}
 body[data-restaurant-profile=petit-dakar] dialog textarea{min-height:64px!important}
 body[data-restaurant-profile=petit-dakar] dialog .form-grid{gap:8px!important;margin-bottom:8px!important}
 body[data-restaurant-profile=petit-dakar] dialog fieldset{margin:6px 0 10px!important;padding:5px 0!important}
 body[data-restaurant-profile=petit-dakar] dialog .radio{padding:8px!important;margin:5px 0!important;border-radius:9px!important}
 body[data-restaurant-profile=petit-dakar] dialog .primary,body[data-restaurant-profile=petit-dakar] dialog .secondary,body[data-restaurant-profile=petit-dakar] dialog .text-button{width:auto!important;min-width:120px!important;min-height:38px!important;padding:7px 12px!important;border-radius:9px!important;font-size:12px!important;line-height:1.2!important;box-shadow:none!important;justify-self:center!important}
 body[data-restaurant-profile=petit-dakar] dialog .dialog-close,body[data-restaurant-profile=petit-dakar] dialog .close,body[data-restaurant-profile=petit-dakar] dialog .close-track,body[data-restaurant-profile=petit-dakar] dialog .close-reservation{width:34px!important;height:34px!important;padding:0!important;border-radius:50%!important;font-size:20px!important}
 body[data-restaurant-profile=petit-dakar] .portal-tabs{gap:6px!important}
 body[data-restaurant-profile=petit-dakar] .portal-tabs button{padding:7px 10px!important;font-size:11px!important}
 body[data-restaurant-profile=petit-dakar] .welcome-dialog>div{padding:15px!important}
 body[data-restaurant-profile=petit-dakar] .welcome-dialog img{width:52px!important;height:52px!important}
 body[data-restaurant-profile=petit-dakar] .check{width:48px!important;height:48px!important;font-size:25px!important}
}
@media(max-width:360px){body[data-restaurant-profile=petit-dakar] dialog:not(.cart-dialog):not(.options-dialog)[open],body[data-restaurant-profile=petit-dakar] .options-sheet,body[data-restaurant-profile=petit-dakar] dialog form{max-width:94vw!important;padding:12px!important}body[data-restaurant-profile=petit-dakar] dialog h2{font-size:22px!important}}
/* Configuration ultra-étroite 240–300 px v25. */
@media(max-width:300px){
 html,body{width:100%!important;max-width:100%!important;overflow-x:hidden!important}
 body[data-restaurant-profile=petit-dakar] header{width:100%!important;padding:0 7px!important}
 body[data-restaurant-profile=petit-dakar] .brand{min-width:0!important;gap:5px!important}
 body[data-restaurant-profile=petit-dakar] .brand img{width:34px!important;height:34px!important;flex:none!important}
 body[data-restaurant-profile=petit-dakar] .brand b{min-width:0!important;font-size:11px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
 body[data-restaurant-profile=petit-dakar] .public-hero{width:100%!important;max-width:100%!important;min-height:calc(100svh - 128px)!important;padding:8px 5px!important;gap:4px!important;overflow:hidden!important}
 body[data-restaurant-profile=petit-dakar] .food-carousel{order:-1!important;width:100%!important;max-width:100%!important;height:176px!important;margin:0!important;border-radius:14px!important;overflow:hidden!important}
 body[data-restaurant-profile=petit-dakar] .food-carousel:before,body[data-restaurant-profile=petit-dakar] .food-carousel:after,body[data-restaurant-profile=petit-dakar] .dakar-stage-copy{display:none!important}
 body[data-restaurant-profile=petit-dakar] .dakar-plate{animation:none!important;transform:none!important;width:72px!important;height:72px!important;top:48px!important;bottom:auto!important;border-width:2px!important}
 body[data-restaurant-profile=petit-dakar] .dakar-plate.is-active{transform:scale(1.06)!important}
 body[data-restaurant-profile=petit-dakar] .dakar-plate--1{display:block!important;left:4px!important;right:auto!important}
 body[data-restaurant-profile=petit-dakar] .dakar-plate--2{display:block!important;left:50%!important;right:auto!important;translate:-50% 0!important;top:15px!important}
 body[data-restaurant-profile=petit-dakar] .dakar-plate--3{display:block!important;left:auto!important;right:4px!important}
 body[data-restaurant-profile=petit-dakar] .dakar-plate--4,body[data-restaurant-profile=petit-dakar] .dakar-plate--5,body[data-restaurant-profile=petit-dakar] .dakar-plate--6,body[data-restaurant-profile=petit-dakar] .dakar-plate--7{display:none!important}
 body[data-restaurant-profile=petit-dakar] .dakar-plate span{left:2px!important;right:2px!important;bottom:2px!important;padding:2px!important;font-size:7px!important}
 body[data-restaurant-profile=petit-dakar] .hero-copy{width:100%!important;max-width:100%!important;padding:0 3px!important;overflow:hidden!important}
 body[data-restaurant-profile=petit-dakar] .hero-copy .eyebrow{max-width:100%!important;font-size:7px!important;line-height:1.2!important;letter-spacing:.08em!important;white-space:normal!important}
 body[data-restaurant-profile=petit-dakar] .hero-copy h1{width:100%!important;max-width:100%!important;font-size:21px!important;line-height:1.02!important;overflow-wrap:anywhere!important;word-break:normal!important}
 body[data-restaurant-profile=petit-dakar] .hero-copy>p:not(.eyebrow){width:100%!important;max-width:26ch!important;font-size:10px!important;line-height:1.25!important;margin:4px auto 6px!important}
 body[data-restaurant-profile=petit-dakar] .hero-copy .cta{padding:7px 10px!important;font-size:10px!important}
 .mobile-app-nav{grid-template-columns:repeat(5,minmax(0,1fr))!important;height:58px!important;padding:3px 1px!important;overflow:hidden!important}
 .mobile-app-nav a,.mobile-app-nav button{margin:1px!important;padding:1px!important;border-radius:7px!important;overflow:hidden!important}
 .mobile-app-nav svg{width:14px!important;height:14px!important}.mobile-app-nav b{max-width:100%!important;font-size:6px!important;overflow:hidden!important;text-overflow:ellipsis!important}
 body[data-restaurant-profile=petit-dakar] .cart-fab{width:40px!important;height:40px!important;bottom:66px!important}
}
/* Composition mobile sans chevauchement v26. */
@media(max-width:800px){
 body[data-restaurant-profile=petit-dakar] .dakar-stage-copy{display:none!important}
 body[data-restaurant-profile=petit-dakar] .food-carousel:before{width:72%!important;height:72%!important}
 body[data-restaurant-profile=petit-dakar] .food-carousel:after{width:44%!important;height:44%!important}
 body[data-restaurant-profile=petit-dakar] .dakar-plate{width:clamp(68px,22vw,94px)!important;height:clamp(68px,22vw,94px)!important;transform:none!important;translate:none!important}
 body[data-restaurant-profile=petit-dakar] .dakar-plate.is-active{transform:scale(1.06)!important}
 body[data-restaurant-profile=petit-dakar] .dakar-plate--1{left:3%!important;right:auto!important;top:8%!important;bottom:auto!important}
 body[data-restaurant-profile=petit-dakar] .dakar-plate--2{left:50%!important;right:auto!important;top:4%!important;bottom:auto!important;translate:-50% 0!important}
 body[data-restaurant-profile=petit-dakar] .dakar-plate--3{left:auto!important;right:3%!important;top:8%!important;bottom:auto!important}
 body[data-restaurant-profile=petit-dakar] .dakar-plate--4{left:auto!important;right:3%!important;top:auto!important;bottom:8%!important}
 body[data-restaurant-profile=petit-dakar] .dakar-plate--5{left:50%!important;right:auto!important;top:auto!important;bottom:4%!important;translate:-50% 0!important}
 body[data-restaurant-profile=petit-dakar] .dakar-plate--6{left:3%!important;right:auto!important;top:auto!important;bottom:8%!important}
}
/* Menu mobile compact v27 : plusieurs plats visibles et actions au-dessus de la barre fixe. */
@media(max-width:800px){
 body[data-restaurant-profile=petit-dakar] .public-menu{padding:24px 10px 84px!important}
 body[data-restaurant-profile=petit-dakar] .product-track{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important;overflow:visible!important;padding:0 0 12px!important}
 body[data-restaurant-profile=petit-dakar] .product-track .dish-card{width:100%!important;min-width:0!important;border-radius:14px!important}
 body[data-restaurant-profile=petit-dakar] .dish-card .dish-media{height:128px!important}
 body[data-restaurant-profile=petit-dakar] .dish-card .dish-body{padding:9px!important}
 body[data-restaurant-profile=petit-dakar] .dish-card .dish-meta{font-size:10px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
 body[data-restaurant-profile=petit-dakar] .dish-card .dish-body h3{margin:4px 0!important;font-size:14px!important;line-height:1.12!important}
 body[data-restaurant-profile=petit-dakar] .dish-card .dish-body p{margin:0 0 7px!important;font-size:11px!important;line-height:1.25!important;-webkit-line-clamp:2!important}
 body[data-restaurant-profile=petit-dakar] .dish-card .dish-bottom{gap:5px!important}
 body[data-restaurant-profile=petit-dakar] .dish-card .dish-bottom strong{font-size:12px!important}
 body[data-restaurant-profile=petit-dakar] .dish-card .primary{padding:7px 8px!important;font-size:11px!important;border-radius:8px!important}
}
@media(max-width:300px){
 body[data-restaurant-profile=petit-dakar] .product-track{grid-template-columns:1fr!important}
 body[data-restaurant-profile=petit-dakar] .dish-card .dish-media{height:120px!important}
}
/* Navigation mobile fonctionnelle v28. */
@media(max-width:800px){
 .mobile-app-nav a[href='#menu']{color:#6d3944!important;background:transparent!important;border-color:transparent!important}
 .mobile-app-nav a.is-active,.mobile-app-nav button.is-active{color:#fff!important;background:#c8102e!important;border-color:#c8102e!important}
 .mobile-app-nav b{max-width:100%!important;padding:0 2px!important;font-size:8px!important;line-height:1.05!important;white-space:normal!important;overflow-wrap:anywhere!important;text-align:center!important}
 .mobile-app-nav a,.mobile-app-nav button{overflow:hidden!important}
}