@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:400;src:url(../media/be-vietnam-pro-vietnamese-400-normal.1pwu3v5_twm1d.woff2)format("woff2"),url(../media/be-vietnam-pro-vietnamese-400-normal.0sssa-e6tuv_9.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:400;src:url(../media/be-vietnam-pro-latin-ext-400-normal.2emse1ml055ds.woff2)format("woff2"),url(../media/be-vietnam-pro-latin-ext-400-normal.3ehsei323a8hh.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:400;src:url(../media/be-vietnam-pro-latin-400-normal.20cnwjfb-fa4e.woff2)format("woff2"),url(../media/be-vietnam-pro-latin-400-normal.31tzb8zv1crmm.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:500;src:url(../media/be-vietnam-pro-vietnamese-500-normal.2he4sf8_cpynl.woff2)format("woff2"),url(../media/be-vietnam-pro-vietnamese-500-normal.2u2mzdl2dm9f3.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:500;src:url(../media/be-vietnam-pro-latin-ext-500-normal.3loba40y_pzcz.woff2)format("woff2"),url(../media/be-vietnam-pro-latin-ext-500-normal.2638m93a1w8k9.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:500;src:url(../media/be-vietnam-pro-latin-500-normal.1opmeqmrxkaxz.woff2)format("woff2"),url(../media/be-vietnam-pro-latin-500-normal.2_p68uxzutffr.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:600;src:url(../media/be-vietnam-pro-vietnamese-600-normal.2ty1g2z_v1cl1.woff2)format("woff2"),url(../media/be-vietnam-pro-vietnamese-600-normal.2_ac-vcv4r-oy.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:600;src:url(../media/be-vietnam-pro-latin-ext-600-normal.3hhkkk_gs8c-f.woff2)format("woff2"),url(../media/be-vietnam-pro-latin-ext-600-normal.0079-w66a2img.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:600;src:url(../media/be-vietnam-pro-latin-600-normal.1ki7gj-rcm5qg.woff2)format("woff2"),url(../media/be-vietnam-pro-latin-600-normal.0adpqh__9xf_o.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:700;src:url(../media/be-vietnam-pro-vietnamese-700-normal.1y0_3hqalafhh.woff2)format("woff2"),url(../media/be-vietnam-pro-vietnamese-700-normal.3yhcoo9p-j5h8.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:700;src:url(../media/be-vietnam-pro-latin-ext-700-normal.15oo2z8h14z71.woff2)format("woff2"),url(../media/be-vietnam-pro-latin-ext-700-normal.1eom1lrh39_44.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:700;src:url(../media/be-vietnam-pro-latin-700-normal.0o-vexq-1rj8v.woff2)format("woff2"),url(../media/be-vietnam-pro-latin-700-normal.3ac-im9md2i79.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--bg:#fbf6ea;--card:#fffdf7;--ink:#3d2418;--ink-soft:#7a5a48;--line:#ead9c0;--red:#c41e2e;--red-dark:#9e1724;--red-soft:#fbe5e3;--brown:#6b3b26;--gold:#b8935a;--green:#2f7d4f;--green-soft:#e3f2e8;--radius:16px;--shadow:0 6px 24px #6b3b261a;--maxw:560px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);-webkit-tap-highlight-color:transparent;margin:0;font-family:Be Vietnam Pro,system-ui,-apple-system,Segoe UI,sans-serif;font-size:15px;line-height:1.5}a{color:inherit}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}.wrap{max-width:var(--maxw);margin:0 auto;padding:0 16px}.price{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.header{align-items:center;gap:14px;padding:16px 0 8px;display:flex}.header img{border-radius:8px;flex:none;width:64px;height:auto}.header h1{color:var(--red);letter-spacing:-.01em;margin:0;font-size:22px}.header .sub{color:var(--ink-soft);margin:2px 0 0;font-size:13px}.status{border-radius:99px;align-items:center;gap:6px;margin-top:6px;padding:3px 10px;font-size:13px;font-weight:600;display:inline-flex}.status:before{content:"";background:currentColor;border-radius:50%;width:7px;height:7px}.status.open{background:var(--green-soft);color:var(--green)}.status.closed{background:var(--red-soft);color:var(--red-dark)}.promo{background:var(--red);color:#fff;border-radius:var(--radius);gap:6px;margin:8px 0 4px;padding:14px 16px;display:grid}.promo strong{font-size:17px}.promo ul{gap:3px;margin:0;padding:0;font-size:13.5px;list-style:none;display:grid}.promo li:before{content:"✓ ";color:#ffd9a8;font-weight:700}.notice{color:#6b4d00;background:#fff4d6;border:1px solid #f1dc9c;border-radius:12px;margin:10px 0 0;padding:10px 14px;font-size:13.5px}.tabs{z-index:20;background:var(--bg);border-bottom:1px solid var(--line);margin-top:12px;position:sticky;top:0}.tabs .row{scrollbar-width:none;gap:8px;padding:10px 0;display:flex;overflow-x:auto}.tabs .row::-webkit-scrollbar{display:none}.tab{border:1px solid var(--line);background:var(--card);color:var(--ink-soft);border-radius:99px;flex:none;padding:7px 14px;font-size:14px;font-weight:500;text-decoration:none}.tab.active{background:var(--brown);border-color:var(--brown);color:#fff}.section{padding-top:18px;scroll-margin-top:58px}.section-head{align-items:center;gap:12px;margin-bottom:10px;display:flex}.section-head img{object-fit:cover;width:64px;height:64px;box-shadow:var(--shadow);background:#fff;border-radius:50%;flex:none}.section-head h2{color:var(--brown);margin:0;font-size:19px}.section-head p{color:var(--ink-soft);margin:2px 0 0;font-size:13px}.list{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.item{border-top:1px solid var(--line);text-align:left;background:0 0;border-bottom:0;border-left:0;border-right:0;align-items:center;gap:12px;width:100%;padding:13px 14px;display:flex}.item:first-child{border-top:0}.item:active{background:#f7eedd}.item .info{flex:1;min-width:0}.item .name{font-weight:500}.item .meta{color:var(--ink-soft);flex-wrap:wrap;align-items:center;gap:6px;margin-top:2px;font-size:12.5px;display:flex}.badge{background:var(--red-soft);color:var(--red-dark);text-transform:uppercase;letter-spacing:.02em;border-radius:6px;padding:1px 7px;font-size:11px;font-weight:700;display:inline-block}.badge.gift{background:var(--green-soft);color:var(--green);text-transform:none}.add{background:var(--red);color:#fff;border:0;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;font-size:22px;line-height:1;display:grid}.item.sold{opacity:.45}.cartbar{z-index:30;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:linear-gradient(transparent, var(--bg) 30%);position:fixed;bottom:0;left:0;right:0}.cartbar a,.btn-primary{max-width:var(--maxw);background:var(--red);color:#fff;border:0;border-radius:14px;justify-content:space-between;align-items:center;gap:10px;width:100%;margin:0 auto;padding:14px 18px;font-size:16px;font-weight:600;text-decoration:none;display:flex;box-shadow:0 8px 20px #c41e2e4d}.btn-primary:disabled{box-shadow:none;cursor:not-allowed;background:#c9b6a8}.btn-primary.center{justify-content:center}.count{color:var(--red);background:#fff;border-radius:99px;place-items:center;min-width:24px;height:24px;margin-right:8px;padding:0 7px;font-size:13px;display:inline-grid}.spacer{height:110px}.overlay{z-index:40;background:#28140a73;justify-content:center;align-items:flex-end;animation:.15s ease-out fade;display:flex;position:fixed;inset:0}.sheet{background:var(--card);width:100%;max-width:var(--maxw);max-height:90vh;padding:8px 18px calc(16px + env(safe-area-inset-bottom));border-radius:22px 22px 0 0;animation:.2s ease-out up;overflow-y:auto}.grab{background:var(--line);border-radius:4px;width:40px;height:4px;margin:4px auto 12px}.sheet h3{margin:0;font-size:20px}.sheet .base{color:var(--ink-soft);margin:2px 0 6px}.group{margin-top:18px}.group-title{color:var(--brown);justify-content:space-between;margin-bottom:8px;font-size:14px;font-weight:600;display:flex}.group-title small{color:var(--ink-soft);font-weight:400}@keyframes fade{0%{opacity:0}}@keyframes up{0%{opacity:.4;transform:translateY(40px)}}.seg{grid-auto-columns:1fr;grid-auto-flow:column;gap:8px;display:grid}.seg button{border:1.5px solid var(--line);background:#fff;border-radius:12px;padding:11px 10px;font-weight:500}.seg button.on{border-color:var(--red);background:var(--red-soft);color:var(--red-dark);font-weight:600}.seg button small{color:var(--green);font-size:12px;font-weight:500;display:block}.opt{border-top:1px dashed var(--line);cursor:pointer;align-items:center;gap:10px;padding:10px 2px;display:flex}.opt:first-of-type{border-top:0}.opt input{width:20px;height:20px;accent-color:var(--red);flex:none}.opt span:first-of-type{flex:1}textarea,input[type=text],input[type=tel],select{border:1.5px solid var(--line);background:#fff;border-radius:12px;width:100%;padding:11px 13px;font-size:16px}textarea:focus,input:focus,select:focus{border-color:var(--brown);outline:none}textarea{resize:vertical;min-height:64px}.stepper{border:1.5px solid var(--line);background:#fff;border-radius:12px;align-items:center;display:inline-flex}.stepper button{width:38px;height:38px;color:var(--brown);background:0 0;border:0;font-size:20px}.stepper span{text-align:center;min-width:26px;font-weight:600}.stepper.sm button{width:32px;height:32px;font-size:18px}.sheet-foot{align-items:center;gap:12px;margin-top:20px;display:flex}.sheet-foot .btn-primary{flex:1}.topbar{align-items:center;gap:10px;padding:14px 0;display:flex}.topbar a{background:var(--card);border:1px solid var(--line);border-radius:50%;place-items:center;width:36px;height:36px;font-size:22px;text-decoration:none;display:grid}.topbar h1{margin:0;font-size:20px}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:14px;padding:14px 16px}.card h2{color:var(--brown);margin:0 0 10px;font-size:16px}.line{border-top:1px dashed var(--line);align-items:flex-start;gap:10px;padding:10px 0;display:flex}.line:first-of-type{border-top:0;padding-top:0}.line .info{flex:1;min-width:0}.line .desc{color:var(--ink-soft);font-size:12.5px}.line .right{justify-items:end;gap:6px;display:grid}.field{gap:5px;margin-bottom:12px;display:grid}.field label{font-size:13.5px;font-weight:500}.field .err{color:var(--red-dark);font-size:12.5px}.radio{border:1.5px solid var(--line);cursor:pointer;background:#fff;border-radius:12px;align-items:flex-start;gap:10px;margin-bottom:8px;padding:10px 12px;display:flex}.radio.on{border-color:var(--red);background:var(--red-soft)}.radio input{accent-color:var(--red);width:18px;height:18px;margin-top:2px}.radio small{color:var(--ink-soft);font-size:12.5px;display:block}.sum{justify-content:space-between;padding:4px 0;display:flex}.sum.total{border-top:1px solid var(--line);margin-top:6px;padding-top:10px;font-size:18px;font-weight:700}.sum .green{color:var(--green)}.muted{color:var(--ink-soft);font-size:13px}.gift-row{align-items:center;gap:10px;margin-bottom:8px;display:flex}.gift-row span{color:var(--ink-soft);flex:none;width:62px;font-size:13px}.empty{text-align:center;color:var(--ink-soft);padding:40px 0}.empty a{color:var(--red);font-weight:600}.done{text-align:center;padding:24px 0 8px}.done .tick{background:var(--green-soft);width:64px;height:64px;color:var(--green);border-radius:50%;place-items:center;margin:0 auto 10px;font-size:34px;display:grid}.done h1{margin:0;font-size:22px}.code{letter-spacing:.04em;background:var(--card);border:1px dashed var(--gold);border-radius:8px;margin-top:8px;padding:4px 12px;font-weight:700;display:inline-block}.btn-secondary{border:1.5px solid var(--brown);width:100%;color:var(--brown);background:0 0;border-radius:14px;justify-content:center;align-items:center;gap:8px;margin-top:10px;padding:13px;font-weight:600;text-decoration:none;display:flex}.toast{background:var(--ink);color:#fff;z-index:50;white-space:nowrap;border-radius:99px;padding:9px 16px;font-size:14px;animation:.15s fade;position:fixed;bottom:96px;left:50%;transform:translate(-50%)}.footer{text-align:center;color:var(--ink-soft);padding:24px 0 8px;font-size:12.5px}
