.self-page{margin:0;background:#faf9f6;color:#171717;font:15px/1.5 system-ui,sans-serif}.self-page *{box-sizing:border-box}.self-header{display:flex;align-items:center;gap:24px;padding:14px max(5vw,20px);position:sticky;top:0;z-index:15;background:#fff;border-bottom:1px solid #e8e3df}.self-header .mekuru-official-logo{width:118px!important;height:auto!important;max-height:80px;object-fit:contain}.self-header .mekuru-identity{background:transparent;padding:0}.self-header a{text-decoration:none;color:inherit}.self-header small{display:block;font-size:10px;letter-spacing:.12em;color:#666}.self-header #outletSummary{background:none;color:#171717;border:0;text-align:left;font-weight:700}.staff-link{margin-left:auto;border:1px solid #ddd;padding:9px 15px;border-radius:25px}.self-main{max-width:1400px;margin:auto;padding:0 5vw 70px}.self-hero{padding:54px 0 30px}.self-hero small,.self-cart>small,.self-review>small{font-size:11px;letter-spacing:.14em;color:#c42127;font-weight:800}.self-hero h1{font:600 clamp(42px,6vw,70px)/1.04 Georgia,serif;letter-spacing:-.03em;margin:18px 0}.self-hero p{color:#575757;font-size:16px}.self-categories{display:flex;gap:8px;overflow-x:auto;padding:14px 0 26px}.self-page button{cursor:pointer;min-height:44px;font:inherit;border-radius:24px;border:1px solid #ddd;padding:10px 18px;background:#fff;color:#171717}.self-page button:disabled{opacity:.5;cursor:not-allowed}.self-page button:focus-visible,.self-page a:focus-visible,.self-page input:focus-visible,.self-page select:focus-visible{outline:3px solid #171717;outline-offset:3px}.self-categories button{white-space:nowrap}.self-page button.active,.self-page #chooseMenu,.self-page .review-button,.self-page #submitCustomerOrder,.mobile-cart-bar button{background:#c42127;color:white;border-color:#c42127}.self-layout{display:grid;grid-template-columns:minmax(0,1fr) 345px;gap:30px;align-items:start}.self-cart{position:sticky;top:124px;background:#fff;border:1px solid #e5dfd9;border-radius:22px;padding:24px}.self-cart h2{font:500 27px/1.1 Georgia,serif;margin:9px 0 22px}.cart-order-type{display:flex;gap:8px}.cart-order-type button{flex:1}.queue-note{font-size:12px;color:#666;border-bottom:1px solid #eee;padding-bottom:18px}.self-cart label{display:block;font-size:12px;margin:18px 0}.self-page textarea,.self-page select{width:100%;padding:12px;border:1px solid #ccc;border-radius:10px;color:#171717;background:white;font:inherit}.cart-total{display:flex;justify-content:space-between;margin:12px 0}.cart-total.grand{border-top:1px solid #eee;padding-top:14px;font-size:20px}.review-button{width:100%}.menu-section{margin-bottom:38px}.menu-section>small{font-size:11px;letter-spacing:.14em;color:#777}.menu-section h2{font:500 32px/1.2 Georgia,serif;margin:6px 0 18px}.menu-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.self-product{background:white;border:1px solid #e9e3de;border-radius:18px;overflow:hidden;display:flex;flex-direction:column}.self-photo{aspect-ratio:4/3;background:#f0eeeb;display:flex;align-items:center;justify-content:center;color:#6b6660;font-size:13px}.self-photo img{width:100%;height:100%;aspect-ratio:4/3;object-fit:cover}.self-product-info{padding:18px}.self-product-info small{color:#666;font-size:10px;letter-spacing:.1em;text-transform:uppercase}.self-product-info h3{font:500 25px/1.15 Georgia,serif;margin:8px 0 12px}.self-product-price{font-size:16px;font-weight:700}.self-quantity{display:flex;margin:0 16px 16px;border:1px solid #ddd;border-radius:26px;align-items:center;margin-top:auto}.self-quantity button{border:0;min-width:44px;padding:8px 12px;background:transparent}.self-quantity .quantity-label{flex:1;text-align:center;font-size:12px}.self-quantity .plus{background:#c42127;color:#fff}.cart-line{border-bottom:1px solid #eee;padding:14px 0}.cart-line>strong{display:block;font-size:14px}.cart-line-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:7px}.cart-line button{min-width:36px;min-height:36px;padding:4px 10px}.outlet-picker{padding:22px;background:#fff;border:1px solid #ddd;border-radius:18px;max-width:650px;margin:0 0 25px}.outlet-picker label{display:block;margin:12px 0}.outlet-picker h2{font:500 27px Georgia,serif}.self-review{position:fixed;z-index:32;inset:10vh max(15px,calc((100vw - 620px)/2)) auto;background:#fff;padding:30px;max-height:82vh;overflow:auto;border-radius:20px;box-shadow:0 0 0 100vmax #0008}.review-close{float:right}.self-review h2{font:500 30px Georgia,serif}.self-review label{display:block;margin:15px 0}.self-review [hidden],.self-page [hidden]{display:none!important}#customerReview p{border-bottom:1px solid #eee;padding:8px 0}.self-footer{background:#171717;color:#fff;padding:32px 5vw}.mobile-only,.mobile-cart-bar{display:none}#customerMessage{color:#a21b20;min-height:26px}#recentCustomerOrders a{display:block;font-size:11px;overflow-wrap:anywhere;margin-top:12px;color:#8f171b}.self-backdrop{position:fixed;inset:0;z-index:21;background:#0007!important;border-radius:0!important}.self-review #providerNotice{padding:14px;background:#f8eee9;border-radius:12px;margin:18px 0}@media(max-width:1000px){.self-layout{grid-template-columns:minmax(0,1fr) 300px;gap:18px}.self-main{padding-left:22px;padding-right:22px}.self-product-info h3{font-size:22px}}@media(max-width:760px){.self-header{gap:12px;padding:10px 16px}.self-header .mekuru-official-logo{width:88px!important;max-height:60px}.staff-link{font-size:12px;padding:8px}.self-hero{padding-top:28px}.self-hero h1{font-size:48px}.self-layout{display:block}.menu-grid{gap:12px}.self-product-info{padding:13px}.self-product-info h3{font-size:21px}.self-cart{display:none}.cart-open .self-cart{display:block;position:fixed;z-index:25;inset:12vh 0 0;overflow:auto;border-radius:20px 20px 0 0;padding:24px 22px 95px}.mobile-only{display:block;float:right}.mobile-cart-bar{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:20;justify-content:space-between;align-items:center;background:#fff;border-top:1px solid #ddd;padding:12px 18px;padding-bottom:max(12px,env(safe-area-inset-bottom))}.mobile-cart-bar small{display:block}.self-footer{padding-bottom:110px}.self-main{padding-bottom:30px}.self-review{padding:22px;top:5vh;max-height:90vh}.self-product-price{font-size:14px}.self-quantity{margin-left:10px;margin-right:10px}.self-quantity .quantity-label{font-size:10px}}@media(max-width:360px){.menu-grid{grid-template-columns:1fr}.self-header .staff-link{display:none}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

.self-banner{display:block;width:100%;max-width:100%;height:auto;margin-top:24px;border-radius:18px}
