:root{--page-bg:#1f1f1f;--card-bg:#000;--red:red;--red-soft:#ff0000b8;--card-width:390px;--card-height:620px;--font-main:Arial, Helvetica, sans-serif}*{box-sizing:border-box}html,body,#root{width:100%;min-height:100%;margin:0}body{background:var(--card-bg);font-family:var(--font-main);overflow:hidden}.menu-page{background:var(--card-bg);justify-content:stretch;align-items:stretch;width:100%;height:100dvh;min-height:100dvh;margin:0;padding:0;display:flex;position:relative}.menu-page:before{content:"";border:1px solid var(--red);pointer-events:none;z-index:9999;position:fixed;inset:0}.menu-card,.menu-cover{background:var(--card-bg);border:0;width:100%;height:100dvh;min-height:100dvh;position:relative;overflow:hidden}@media (width>=1025px){body{background:var(--page-bg);overflow:auto}.menu-page{background:var(--page-bg);justify-content:center;align-items:center;height:auto;min-height:100dvh;padding:20px}.menu-page:before{display:none}.menu-card,.menu-cover{width:min(var(--card-width), 100%);height:var(--card-height);min-height:var(--card-height);border:1px solid var(--red)}}.cover-title-wrap{position:absolute;top:345px;left:-8px}.cover-title{color:var(--red);letter-spacing:2px;transform-origin:0 0;margin:0;font-size:88px;font-weight:900;line-height:1;transform:rotate(-90deg)}.cover-lines{gap:18px;display:flex;position:absolute;top:60px;right:26px}.cover-lines span{background:var(--red);width:1px}.cover-lines span:first-child{height:130px}.cover-lines span:last-child{height:190px}.cover-brand-wrap{width:180px;position:absolute;bottom:86px;left:50%;transform:translate(-50%)}.cover-brand{text-align:center}.cover-logo{object-fit:cover;background:#fff;border-radius:50%;width:120px;height:120px;margin:0 auto 12px;display:block}.cover-brand h2{color:var(--red);margin:0;font-size:18px}.cover-brand p{color:var(--red-soft);margin:5px 0 0;font-size:12px}.cover-button-wrap{position:absolute;bottom:30px;left:50%;transform:translate(-50%)}.cover-button{border:1px solid var(--red);color:var(--red);cursor:pointer;background:0 0;border-radius:999px;padding:8px 24px;font-size:12px}.menu-tabs{border-bottom:1px solid var(--red);height:48px;padding:8px 12px;overflow:hidden}.menu-tabs-list{justify-content:flex-start;align-items:center;gap:8px;width:100%;height:100%;display:flex;overflow:auto hidden}.menu-tabs-list::-webkit-scrollbar{display:none}.menu-tabs button{border:1px solid var(--red);min-width:64px;height:26px;color:var(--red);cursor:pointer;white-space:nowrap;background:0 0;border-radius:999px;flex:none;justify-content:center;align-items:center;padding:0 16px;font-size:11px;line-height:1;display:inline-flex;position:relative;overflow:hidden}.menu-tabs button.active{color:#fff}.menu-tab-label{z-index:1;justify-content:center;align-items:center;line-height:1;display:inline-flex;position:relative}.menu-tab-bg{background:var(--red);pointer-events:none;border-radius:999px;inset:0;z-index:0!important;position:absolute!important}.menu-body{grid-template-columns:54px 1fr;height:calc(100% - 92px);display:grid}.menu-name{border-right:1px solid var(--red);justify-content:center;align-items:center;display:flex}.menu-name span{writing-mode:vertical-rl;text-orientation:upright;color:var(--red);letter-spacing:6px;font-size:14px;font-weight:900}.menu-content{padding:26px 34px 24px;position:relative;overflow-y:auto}.menu-content::-webkit-scrollbar{width:0}.menu-delivery{justify-content:flex-end;align-items:flex-start;gap:18px;margin-bottom:32px;display:flex}.menu-delivery p{max-width:170px;color:var(--red);text-align:right;margin:8px 0 0;font-size:12px;line-height:1.4}.delivery-icon{border:1px solid var(--red);border-top:0;width:56px;height:34px;position:relative}.delivery-icon:before{content:"";border:1px solid var(--red);border-bottom:0;border-radius:0 0 28px 28px;width:74px;height:26px;position:absolute;top:-12px;left:-10px;transform:scaleY(-1)}.delivery-icon span{background:var(--red);width:1px;height:8px;position:absolute;bottom:-8px;left:50%;transform:translate(-50%)}.menu-items{flex-direction:column;gap:28px;display:flex}.menu-item{grid-template-columns:1fr auto;align-items:start;gap:18px;display:grid}.menu-item h3{color:var(--red);margin:0 0 8px;font-size:15px;font-weight:800}.menu-item p{color:var(--red-soft);margin:0;font-size:12px;line-height:1.45}.menu-item strong{color:var(--red);white-space:nowrap;font-size:13px}.menu-footer{justify-content:center;align-items:center;height:44px;display:flex}.menu-back-button{border:0;border-top:1px solid var(--red);color:var(--red);cursor:pointer;background:0 0;width:100%;padding:12px 0;font-size:12px}.menu-sections,.menu-section-block,.menu-section-items{flex-direction:column;gap:28px;display:flex}.menu-section-image-wrapper{width:100%;overflow:hidden}.menu-section-image{object-fit:cover;border:1px solid #ff000059;width:100%;height:160px;display:block}.menu-sections,.menu-section-block,.menu-section-items{flex-direction:column;gap:28px;display:flex}.menu-section-image-wrapper{border:1px solid #ff000059;width:100%;height:170px;position:relative;overflow:hidden}.menu-section-image{object-fit:cover;width:100%;height:100%;display:block}.menu-section-image-overlay{background:#0000009c;justify-content:center;align-items:center;padding:16px;display:flex;position:absolute;inset:0}.menu-section-image-title{color:#fff;letter-spacing:2px;text-transform:uppercase;text-align:center;font-size:22px;font-weight:800}.menu-section-image-wrapper{will-change:transform, opacity}.menu-section-image{will-change:transform;transition:transform .6s}.menu-item{will-change:transform, opacity}@media (width<=1024px){.menu-tabs{height:54px;padding:10px 16px}.menu-body{grid-template-columns:58px 1fr;height:calc(100dvh - 102px)}.menu-name span{letter-spacing:6px;font-size:13px}.menu-content{padding:30px 36px 24px}.menu-footer{height:48px}.menu-section-image-wrapper{height:clamp(170px,28vh,280px)}.cover-title-wrap{top:360px;left:-8px}.cover-title{font-size:92px}.cover-brand-wrap{bottom:110px}.cover-button-wrap{bottom:46px}}@media (width<=600px){.menu-tabs{height:52px;padding:9px 12px}.menu-body{grid-template-columns:46px 1fr;height:calc(100dvh - 98px)}.menu-name span{letter-spacing:5px;font-size:12px}.menu-content{padding:24px 22px 20px}.menu-footer{height:46px}.menu-section-image-wrapper{height:165px}.cover-title-wrap{top:330px;left:-6px}.cover-title{font-size:78px}.cover-brand-wrap{bottom:96px}.cover-button-wrap{bottom:36px}}@media (width<=380px){.menu-body{grid-template-columns:42px 1fr}.menu-content{padding:22px 18px 18px}.menu-name span{letter-spacing:4px;font-size:11px}.cover-title{font-size:70px}}
