.cg-guest{--cg-paper:#f5f2eb;--cg-surface:#fffefa;--cg-ink:#293025;--cg-muted:#606756;--cg-line:#d1c5ad;--cg-action:#38482f;background:var(--cg-paper);color:var(--cg-ink);font-family:var(--font-be-vietnam-pro);min-height:100dvh;padding-bottom:112px;font-size:14px;line-height:1.5}.cg-guest *{box-sizing:border-box}.cg-guest button,.cg-guest input,.cg-guest textarea{font:inherit}.cg-guest button{cursor:pointer;border:1px solid var(--cg-line);background:var(--cg-surface);border-radius:8px;min-height:48px;padding:10px 16px;font-weight:600}.cg-guest button:disabled{opacity:.55;cursor:not-allowed}.cg-guest button:focus-visible,.cg-guest input:focus-visible,.cg-guest textarea:focus-visible{outline-offset:3px;outline:3px solid #76510b}.cg-guest .cg-primary{background:var(--cg-action);color:#fff;border-color:var(--cg-action)}.cg-guest h1,.cg-guest h2,.cg-guest h3,.cg-guest p{margin:0}.cg-guest h2{font-size:20px}.cg-guest h3{font-size:16px}.cg-guest p{color:var(--cg-muted);margin:8px 0}.cg-header{border-bottom:1px solid var(--cg-line);background:var(--cg-surface);justify-content:space-between;align-items:center;gap:16px;padding:16px 24px;display:flex}.cg-brand{flex-direction:column;display:flex}.cg-wordmark{font:26px var(--font-be-vietnam-pro);color:#4a5543}.cg-brand small{color:var(--cg-muted);font-size:10px}.cg-table{white-space:nowrap;font-size:20px}.cg-hero{border:1px solid var(--cg-line);background:#e9e8df;border-radius:12px;max-width:968px;margin:24px auto;padding:28px 24px}.cg-hero h1{font:32px/1.2 var(--font-be-vietnam-pro);color:#4a5543}.cg-content{max-width:1000px;margin:auto;padding:0 24px}.cg-tabs,.cg-categories{gap:8px;max-width:100%;padding:8px 0;display:flex;overflow:auto}.cg-tabs button,.cg-categories button{white-space:nowrap;flex-shrink:0}.cg-guest button[aria-pressed=true]{color:#fff;background:#4a5543}.cg-categories button{border-radius:8px;font-size:13px}.cg-menu-row{border-bottom:1px solid var(--cg-line);justify-content:space-between;align-items:center;gap:20px;padding:20px 0;display:flex}.cg-menu-row>div{min-width:0}.cg-menu-row h2{font-size:16px}.cg-menu-row p{font-size:13px}.cg-menu-row>button{flex-shrink:0;width:48px;padding:4px;font-size:24px}.cg-chip{background:#e9e8df;border-radius:6px;margin-left:8px;padding:4px 8px;font-size:12px;font-weight:500;display:inline-block}.cg-status:empty{display:none}.cg-status{text-align:center;color:#34492e;padding:8px 16px}.cg-notice{border:1px solid var(--cg-line);background:var(--cg-surface);border-radius:8px;max-width:952px;margin:16px auto;padding:16px}.cg-guest .cg-warning{color:#76510b;background:#fff0ce}.cg-guest .cg-danger{color:#a3362c;background:#fae7e2}.cg-notice p{color:inherit}.cg-panel{background:var(--cg-surface);border:1px solid var(--cg-line);border-radius:12px;margin:16px 0;padding:20px}.cg-panel dl{margin:16px 0}.cg-panel dl>div{justify-content:space-between;gap:16px;padding:6px 0;display:flex}.cg-panel dd{font-variant-numeric:tabular-nums;margin:0;font-weight:600}.cg-actions{flex-wrap:wrap;align-items:center;gap:12px;margin:16px 0;display:flex}.cg-actions>*{max-width:100%}.cg-guest .cg-link{background:0 0;border:0;padding-left:0;text-decoration:underline}.cg-cart-dock{z-index:20;background:var(--cg-surface);border-top:1px solid var(--cg-line);padding:16px max(24px,calc((100vw - 952px)/2)) calc(16px + env(safe-area-inset-bottom));justify-content:space-between;align-items:center;gap:16px;display:flex;position:fixed;bottom:0;left:0;right:0}.cg-cart-dock>div{flex-direction:column;display:flex}.cg-cart-dock span{color:var(--cg-muted);font-size:12px}.cg-cart-dock strong{font-variant-numeric:tabular-nums;font-size:18px}.cg-sheet{border:1px solid var(--cg-line);width:min(560px,100% - 32px);max-height:calc(100dvh - 32px);color:var(--cg-ink);background:var(--cg-surface);border-radius:16px;margin:auto;padding:0;position:fixed;inset:0;box-shadow:0 12px 40px #29302526}.cg-sheet::backdrop{background:#29302580}.cg-sheet header,.cg-sheet footer{border-bottom:1px solid var(--cg-line);justify-content:space-between;align-items:center;gap:16px;padding:20px;display:flex}.cg-sheet footer{border-bottom:0;border-top:1px solid var(--cg-line);background:var(--cg-surface);position:sticky;bottom:0}.cg-sheet header h2{font-size:20px}.cg-sheet-body{padding:20px}.cg-sheet label{flex-direction:column;gap:8px;margin:16px 0;font-weight:600;display:flex}.cg-sheet input[type=number],.cg-sheet textarea{border:1px solid var(--cg-line);background:#fff;border-radius:8px;width:100%;max-width:100%;padding:12px}.cg-sheet .cg-check{flex-direction:row;align-items:center;gap:12px;min-height:48px}.cg-check input{accent-color:#38482f;flex-shrink:0;width:22px;height:22px}.cg-cart-line{border-bottom:1px solid var(--cg-line);padding:16px 0}.cg-cart-line label{max-width:90px;margin:0}.cg-cart-line .cg-actions{justify-content:space-between}.cg-sheet footer button{max-width:100%}@media (max-width:760px){.cg-header{min-height:76px;padding:12px 16px}.cg-wordmark{font-size:21px}.cg-table{font-size:18px}.cg-hero{margin:16px;padding:20px 16px}.cg-hero h1{font-size:26px}.cg-content{padding:0 16px}.cg-notice{margin:16px}.cg-menu-row{gap:12px;padding:18px 0}.cg-cart-dock{padding:12px 16px calc(12px + env(safe-area-inset-bottom));gap:8px}.cg-cart-dock strong{font-size:16px}.cg-sheet{width:calc(100% - 24px);max-height:calc(100dvh - 24px)}.cg-sheet header,.cg-sheet footer,.cg-sheet-body{padding:16px}.cg-sheet footer{gap:8px}.cg-guest .cg-cart-dock button{padding:10px 12px}}@media (prefers-reduced-motion:reduce){.cg-guest *{scroll-behavior:auto!important;transition:none!important}}.cg-wordmark,.cg-hero h1{font-family:var(--font-be-vietnam-pro)}.cg-hero{grid-template-columns:minmax(0,1fr) 224px;gap:20px;padding:0;display:grid;overflow:hidden}.cg-hero>div{padding:28px 24px}.cg-hero img{object-fit:cover;width:100%;height:100%;max-height:240px}@media (max-width:760px){.cg-hero{grid-template-columns:minmax(0,1fr) 112px;gap:0;padding:0}.cg-hero>div{padding:20px 16px}.cg-hero h1{font-size:24px}.cg-hero p{font-size:11px}.cg-hero img{max-height:190px}}@media (max-width:350px){.cg-hero{grid-template-columns:minmax(0,1fr) 88px}.cg-hero>div{padding:16px 12px}.cg-hero h1{font-size:22px}}
