*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--serif);background:var(--backdrop);color:var(--ink);min-height:100vh;font-size:17px;line-height:1.35}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit}:focus-visible{outline:3px solid var(--highlight);outline-offset:2px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.shell{background:var(--cream);max-width:480px;min-height:100vh;margin:0 auto;padding-bottom:120px;position:relative;box-shadow:0 0 50px #1416171f}.modebar{z-index:40;background:var(--ink);color:var(--cream);font:500 11px/1.4 var(--wide);letter-spacing:.04em;text-align:center;padding:8px 14px;position:sticky;top:0}.modebar b{color:var(--highlight);font-weight:700}.hdr{text-align:center;padding:24px 18px 4px}.word{font-family:var(--head);color:var(--caramel2);letter-spacing:.12em;margin-right:-.12em;font-size:50px;line-height:1}.tag{color:var(--caramel2);margin-top:6px;font-size:17px;font-style:italic}.where{font:600 10.5px var(--wide);letter-spacing:.14em;text-transform:uppercase;color:var(--ink);opacity:.75;margin-top:10px;text-decoration:none;display:inline-block}.openline{background:var(--cream2);font:600 11px/1.4 var(--wide);letter-spacing:.06em;text-transform:uppercase;text-align:center;border-radius:14px;justify-content:center;align-items:center;gap:8px;margin:14px 18px 0;padding:11px 12px;display:flex}.openline i{background:var(--latte);border-radius:50%;flex:none;width:9px;height:9px}.openline.on i{background:var(--green);box-shadow:0 0 0 4px #3e5a3a2e}.eta{text-align:center;color:var(--body);margin-top:9px;font-size:15.5px}.tabs{top:var(--barH,0px);z-index:20;background:var(--cream);border-bottom:1.5px solid var(--cream2);scrollbar-width:none;gap:7px;margin-top:16px;padding:14px 18px 12px;display:flex;position:sticky;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tabs a{color:var(--ink);font:600 11px var(--wide);letter-spacing:.1em;text-transform:uppercase;border:1.5px solid var(--caramel2);border-radius:99px;flex:none;padding:9px 13px;text-decoration:none}.tabs a.on{background:var(--ink);border-color:var(--ink);color:var(--cream)}.board{background:var(--caramel);color:var(--ink);border-radius:20px;margin:16px 12px 0;padding:6px 16px 18px}.cat{scroll-margin-top:calc(var(--barH,0px) + 72px);padding-top:20px}.cat h2{font:400 38px var(--head);letter-spacing:.12em;text-transform:uppercase;line-height:1}.cat .note{font:600 9.5px var(--wide);letter-spacing:.13em;text-transform:uppercase;color:var(--tan);margin-top:6px}.item{text-align:left;background:0 0;border:0;border-bottom:1px solid #14161729;align-items:flex-start;gap:10px;width:100%;padding:13px 0;display:flex}.item:last-child{border-bottom:0}.item .t{flex:1;min-width:0}.item b{font:700 13px var(--wide);letter-spacing:.09em;text-transform:uppercase;display:block}.item b .v{color:var(--tan);margin-left:6px}.item p{font:600 9.5px/1.55 var(--wide);letter-spacing:.1em;text-transform:uppercase;opacity:.82;margin-top:4px}.item .pr{font:700 13px var(--wide);letter-spacing:.04em;white-space:nowrap}.item .add{background:var(--cream);width:30px;height:30px;color:var(--caramel);font:700 18px/30px var(--wide);text-align:center;border-radius:50%;flex:none;margin-top:-4px}.item.out{opacity:.5}.item.out .add{visibility:hidden}.flag{font:700 9px var(--wide);letter-spacing:.12em;text-transform:uppercase;background:var(--ink);color:var(--cream);border-radius:6px;margin-top:6px;padding:4px 7px;display:inline-block}.flag.low{background:var(--highlight);color:var(--ink)}.roots{padding:26px 2px 6px}.roots h2{font:400 30px var(--head);letter-spacing:.12em;color:var(--tan)}.roots p{font-family:var(--ital);color:var(--tan);margin-top:10px;font-size:16px;font-style:italic;line-height:1.45}.cater{text-align:center;border:2px solid var(--ink);width:100%;font:400 17px var(--head);letter-spacing:.1em;color:var(--ink);background:0 0;border-radius:14px;margin-top:16px;padding:14px;text-decoration:none;display:block}.empty{background:var(--paper);text-align:center;color:var(--body);border-radius:18px;margin:30px 18px;padding:22px}.foot{font:500 10.5px/1.7 var(--wide);letter-spacing:.06em;color:#6b5641;text-align:center;padding:26px 18px 10px}.foot a{text-decoration:none}.foot .hours{text-align:left;grid-template-columns:auto auto;justify-content:center;gap:2px 14px;margin:10px auto 12px;display:grid}.foot .hours .today{color:var(--ink);font-weight:700}.foot .pw{opacity:.7;margin-top:12px}.linkish{font:inherit;color:inherit;letter-spacing:inherit;background:0 0;border:0;text-decoration:underline}.cartbar{left:50%;bottom:calc(14px + env(safe-area-inset-bottom));z-index:25;background:var(--ink);width:calc(100% - 28px);max-width:452px;color:var(--cream);font:700 12.5px var(--wide);letter-spacing:.08em;text-transform:uppercase;border:0;border-radius:16px;justify-content:space-between;padding:17px 18px;text-decoration:none;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 14px 30px #1416174d}.scrim{z-index:50;background:#14161780;position:fixed;inset:0}.sheet{background:var(--cream);z-index:51;width:100%;max-width:480px;max-height:92vh;padding-bottom:calc(110px + env(safe-area-inset-bottom));border-radius:24px 24px 0 0;animation:.24s up;position:fixed;bottom:0;left:50%;overflow:auto;transform:translate(-50%)}@keyframes up{0%{transform:translate(-50%,100%)}}@media (prefers-reduced-motion:reduce){.sheet{animation:none}html{scroll-behavior:auto}}.grab{background:var(--latte);border-radius:9px;width:44px;height:5px;margin:10px auto}.x{background:var(--cream2);width:38px;height:38px;font:700 16px var(--wide);border:0;border-radius:50%;position:absolute;top:12px;right:12px}.sh{padding:6px 60px 12px 20px}.sh h2{font:400 27px var(--head);letter-spacing:.08em;text-transform:uppercase;line-height:1.05}.sh h2 .v{color:var(--caramel2);font-size:18px}.sh p{color:var(--body);margin-top:6px;font-size:16px}.grp{border-top:7px solid var(--cream2);padding:14px 20px}.grp h3{font:700 11px var(--wide);letter-spacing:.12em;text-transform:uppercase;justify-content:space-between;align-items:baseline;display:flex}.grp h3 small{font:500 10px var(--wide);color:var(--caramel2)}.grp h3 small.need{color:#9a3b1e}.opt{border-bottom:1px solid var(--cream2);cursor:pointer;align-items:center;gap:11px;padding:12px 0;font-size:17px;display:flex}.opt:last-child{border-bottom:0}.opt input{width:21px;height:21px;accent-color:var(--caramel);flex:none}.opt span{flex:1}.opt em{color:#6b5641;font-size:15px;font-style:normal}.opt.dis{opacity:.45;cursor:not-allowed}.field{padding:6px 20px}.field label{font:700 10px var(--wide);letter-spacing:.12em;text-transform:uppercase;margin-bottom:5px;display:block}.field label small{color:var(--caramel2);letter-spacing:.08em;font-weight:500}.field input,.field textarea,.field select{border:1.5px solid var(--latte);background:var(--paper);width:100%;font:inherit;color:var(--ink);border-radius:11px;padding:12px;font-size:16px}.field .hint{color:#6b5641;margin-top:5px;font-size:14px}.ftr{width:100%;max-width:480px;padding:12px 16px calc(14px + env(safe-area-inset-bottom));background:var(--cream);border-top:1.5px solid var(--cream2);z-index:52;align-items:center;gap:12px;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.cta{background:var(--ink);color:var(--cream);font:700 12.5px var(--wide);letter-spacing:.08em;text-transform:uppercase;text-align:center;border:0;border-radius:14px;flex:1;padding:16px;text-decoration:none;display:block}.cta:disabled{opacity:.45}.cta.ghost{color:var(--ink);border:2px solid var(--ink);background:0 0}.qty{align-items:center;gap:12px;display:flex}.qty button{border:1.5px solid var(--latte);background:var(--paper);width:40px;height:40px;font:700 18px var(--wide);border-radius:50%}.qty b{font:700 14px var(--wide);text-align:center;min-width:16px}.page{padding:18px 0 0}.back{font:700 11px var(--wide);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:6px;margin:0 18px;text-decoration:none;display:inline-flex}.ptitle{font:400 34px var(--head);letter-spacing:.08em;padding:12px 20px 4px}.sec{border-top:7px solid var(--cream2);margin-top:16px;padding-top:6px}.sec>h2{font:700 11px var(--wide);letter-spacing:.12em;text-transform:uppercase;padding:12px 20px 4px}.ci{border-bottom:1px solid var(--cream2);align-items:flex-start;gap:10px;padding:13px 20px;display:flex}.ci:last-child{border-bottom:0}.ci .n{flex:1;min-width:0}.ci .n b{font:700 11.5px var(--wide);letter-spacing:.08em;text-transform:uppercase}.ci .n small{color:#6b5641;margin-top:2px;font-size:14.5px;display:block}.ci .r{text-align:right;font:700 12px var(--wide)}.mini{align-items:center;gap:8px;margin-top:8px;display:flex}.mini button{border:1.5px solid var(--latte);background:var(--paper);width:30px;height:30px;font:700 14px var(--wide);border-radius:50%}.mini b{font:700 12px var(--wide);text-align:center;min-width:14px}.mini .rm{width:auto;height:auto;font:500 14px var(--serif);color:#6b5641;background:0 0;border:0;margin-left:6px;text-decoration:underline}.line{justify-content:space-between;padding:7px 20px;font-size:16.5px;display:flex}.line.tot{font:700 14px var(--wide);letter-spacing:.06em;border-top:1.5px solid var(--cream2);margin-top:6px;padding-top:14px}.line small{color:#6b5641;font-size:13.5px}.choices{grid-template-columns:1fr 1fr;gap:8px;padding:8px 20px 4px;display:grid}.choices button{border:1.5px solid var(--latte);background:var(--paper);font:700 11px var(--wide);letter-spacing:.06em;text-transform:uppercase;border-radius:12px;padding:12px 8px}.choices button.on{background:var(--ink);border-color:var(--ink);color:var(--cream)}.choices button small{font:500 13px var(--serif);text-transform:none;letter-spacing:0;opacity:.85;margin-top:3px;display:block}.alert{color:#6b2412;background:#f6dccd;border:1.5px solid #e4b39b;border-radius:12px;margin:12px 20px 0;padding:12px 14px;font-size:15.5px}.alert ul{margin:6px 0 0 18px}.notice{border:1.5px dashed var(--caramel2);color:var(--body);border-radius:12px;margin:12px 20px 0;padding:12px 14px;font-size:15px}.notice b{font:700 10.5px var(--wide);letter-spacing:.1em;text-transform:uppercase;color:var(--caramel);margin-bottom:4px;display:block}.pay{padding:10px 20px 0}.paybox{border:1.5px solid var(--latte);background:#fff;border-radius:14px;min-height:60px;padding:12px}.wallets{gap:8px;margin-bottom:10px;display:grid}.applepay{-webkit-appearance:-apple-pay-button;-apple-pay-button-type:order;-apple-pay-button-style:black;border:0;border-radius:12px;width:100%;height:48px;display:block}.or{font:600 10px var(--wide);letter-spacing:.12em;text-transform:uppercase;color:#6b5641;align-items:center;gap:10px;margin:4px 0 10px;display:flex}.or:before,.or:after{content:"";background:var(--cream2);flex:1;height:1px}.small{color:#6b5641;padding:10px 20px 0;font-size:14px}.status{padding:24px 18px}.ok{font:700 11px var(--wide);letter-spacing:.12em;color:var(--green);text-transform:uppercase}.ok.bad{color:#9a3b1e}.big{font:400 30px/1.05 var(--head);letter-spacing:.06em;text-transform:uppercase;margin-top:6px}.when{color:var(--body);margin-top:6px;font-size:17px}.stepper{margin:20px 0;list-style:none}.st{color:#7a6650;align-items:center;gap:12px;padding:10px 0;font-size:17px;display:flex}.st i{border:2px solid var(--latte);width:28px;height:28px;font:700 11px var(--wide);background:var(--paper);border-radius:50%;flex:none;justify-content:center;align-items:center;font-style:normal;display:flex}.st.done{color:var(--ink)}.st.done i{background:var(--green);border-color:var(--green);color:#fff}.st.now{color:var(--ink);font-weight:500}.st.now i{border-color:var(--caramel);animation:1.2s infinite pulse}@keyframes pulse{50%{box-shadow:0 0 0 7px #8c663e2e}}.card{background:var(--paper);border:1.5px solid var(--cream2);border-radius:16px;margin-top:12px;padding:14px}.card h3{font:700 11px var(--wide);letter-spacing:.1em;text-transform:uppercase}.card p{color:var(--body);margin-top:4px;font-size:16px}.card .cta{margin-top:12px}.card ol{color:var(--body);margin:8px 0 0 20px;font-size:16px}.olines{margin-top:6px}.olines div{border-bottom:1px solid var(--cream2);justify-content:space-between;gap:10px;padding:6px 0;font-size:16px;display:flex}.olines div:last-child{border-bottom:0}.olines small{color:#6b5641;font-size:14px;display:block}.toast{top:calc(var(--barH,0px) + 10px);background:var(--ink);color:var(--cream);font:600 11.5px var(--wide);letter-spacing:.05em;z-index:60;text-align:center;border-radius:12px;max-width:90%;padding:11px 16px;animation:.2s fade;position:fixed;left:50%;transform:translate(-50%)}@keyframes fade{0%{opacity:0;transform:translate(-50%,-8px)}}
