.order-hero{padding:clamp(40px,6vw,64px) 0 28px;background:radial-gradient(ellipse at 80% 0%,rgba(235,194,99,.1),transparent 55%),var(--green-900)}.order-hero h1{font-size:clamp(2.4rem,5vw,3.4rem);margin-top:6px}.order-meta{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:12px;color:var(--cream-muted);font-size:.92rem}.order-meta span{display:inline-flex;align-items:center;gap:7px}.order-meta svg{color:var(--gold)}.order-rules{list-style:none;padding:0;margin:24px 0 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;max-width:980px}.order-rules li{display:grid;grid-template-columns:20px 1fr;gap:12px;align-items:start;padding:16px 18px;border:1px solid rgba(235,194,99,.3);background:#ebc2630f;border-radius:var(--radius-sm)}.order-rules svg{color:var(--gold);margin-top:2px}.order-rules strong{display:block;font-size:1rem;color:var(--cream)}.order-rules span{display:block;margin-top:4px;font-size:.88rem;line-height:1.45;color:var(--cream-muted)}@media(max-width:900px){.order-rules{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:420px){.order-rules{grid-template-columns:1fr;gap:8px}.order-rules li{padding:12px 14px}}.notice{display:flex;gap:10px;align-items:flex-start;margin-top:22px;padding:14px 16px;max-width:680px;border:1px solid rgba(235,194,99,.35);background:#ebc26314;border-radius:var(--radius-sm);font-size:.94rem}.notice svg{color:var(--gold);flex:none;margin-top:3px}.cat-tabs{position:sticky;top:var(--header-h);z-index:40;background:var(--green-900);border-bottom:1px solid var(--line)}.cat-tabs-inner{position:relative;display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding:10px 0}.cat-tabs-inner::-webkit-scrollbar{display:none}.cat-tabs a{flex:none;padding:8px 14px;border-radius:999px;text-decoration:none;font-size:.9rem;font-weight:500;color:var(--cream-muted);border:1px solid transparent;white-space:nowrap}.cat-tabs a:hover{color:var(--cream)}.cat-tabs a[aria-current=true]{color:var(--green-950);background:var(--gold)}.paper{background:var(--paper);color:var(--ink);color-scheme:light;min-height:60vh}.menu-wrap{padding:28px 0 120px}.demo-banner{background:#fff4d6;border:1px dashed var(--gold-deep);color:#5a4512;padding:10px 14px;border-radius:var(--radius-sm);font-size:.9rem;margin-bottom:20px}.menu-cat{padding-top:26px;scroll-margin-top:calc(var(--header-h) + 64px)}.menu-cat+.menu-cat{margin-top:18px}.cat-head{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 14px;margin-bottom:16px}.cat-head h2{font-size:clamp(1.9rem,3.6vw,2.4rem);color:var(--green-800)}.promo{font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--green-800);background:var(--gold);padding:4px 10px;border-radius:999px}.items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}@media(max-width:760px){.items{grid-template-columns:1fr}}.card{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:stretch;text-align:left;width:100%;padding:16px;border-radius:var(--radius);border:1px solid #e6ddc6;background:#fff;box-shadow:var(--shadow);cursor:pointer;color:var(--ink);transition:border-color .15s,transform .15s,box-shadow .15s}.card:hover{border-color:var(--gold-deep);transform:translateY(-1px)}.card[disabled]{cursor:not-allowed;opacity:.6;transform:none}.card-text{display:grid;gap:6px;align-content:start;min-width:0}.card-name{font-weight:600;font-size:1.02rem;line-height:1.3}.card-desc{color:var(--ink-muted);font-size:.88rem;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card-price{font-weight:600;font-size:.94rem;color:var(--green-800);margin-top:auto}.card-img{width:104px;height:104px;border-radius:10px;object-fit:cover;background:#efe7d2}.card-img.ph{display:grid;place-items:center}.card-img.ph img{width:54px;height:54px;opacity:.55}.tag{display:inline-block;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:2px 8px;border-radius:999px;background:#f1e3e1;color:var(--danger)}.menu-loading{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;padding-top:20px}.skel{height:136px;border-radius:var(--radius);background:linear-gradient(90deg,#ece4cf,#f6f0e0,#ece4cf);background-size:200% 100%;animation:shimmer 1.2s infinite linear}@keyframes shimmer{to{background-position:-200% 0}}.menu-error{padding:20px;border-radius:var(--radius);background:#fff;border:1px solid #e6ddc6}.cart-fab{position:fixed;z-index:45;right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));display:inline-flex;align-items:center;gap:10px;min-height:54px;padding:0 22px;border:0;border-radius:999px;background:var(--green-800);color:var(--cream);font-weight:600;cursor:pointer;box-shadow:0 10px 30px #001a0d59}.cart-fab[hidden]{display:none}.cart-fab [data-fab-total]{color:var(--gold)}@media(max-width:560px){.cart-fab{left:16px;right:16px;justify-content:center}}.sheet{padding:0;border:0;background:transparent;max-width:none;max-height:none;color:var(--ink);color-scheme:light}.sheet::backdrop{background:#0014088c;backdrop-filter:blur(2px)}.sheet-inner{position:relative;background:#fff;display:flex;flex-direction:column;overflow:hidden}.sheet-body{padding:22px 22px 10px;overflow-y:auto}.sheet-body h2{font-size:2rem;color:var(--green-800);padding-right:40px}.sheet-close{position:absolute;top:12px;right:12px;z-index:2;width:40px;height:40px;border-radius:50%;border:0;background:#ffffffeb;color:var(--ink);display:grid;place-items:center;cursor:pointer;box-shadow:0 2px 10px #0000001f}.sheet-foot{display:flex;gap:12px;align-items:center;padding:14px 22px calc(14px + env(safe-area-inset-bottom));border-top:1px solid #eee5cf;background:#fff}.item-sheet{margin:auto;width:min(560px,100vw - 24px)}.item-sheet .sheet-inner{border-radius:18px;max-height:min(88vh,860px)}.item-media img{width:100%;aspect-ratio:16 / 9;object-fit:cover}.item-desc{color:var(--ink-muted);margin-top:8px;font-size:.95rem}@media(max-width:560px){.item-sheet{margin:auto 0 0;width:100vw}.item-sheet .sheet-inner{border-radius:18px 18px 0 0;max-height:92vh}}.cart-sheet{margin:0 0 0 auto;height:100%;width:min(460px,100vw)}.cart-sheet .sheet-inner{height:100dvh}.cart-sheet .sheet-body{flex:1;padding-bottom:28px}.opt-group{border:0;padding:0;margin:22px 0 0}.opt-group legend{display:flex;justify-content:space-between;align-items:baseline;width:100%;font-weight:600;padding:0;margin-bottom:8px}.opt-group legend small{font-weight:500;font-size:.78rem;color:var(--ink-muted)}.opt-group legend small.req{color:var(--green-800);background:#f3ebcf;padding:2px 8px;border-radius:999px}.opt{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid #e6ddc6;border-radius:10px;cursor:pointer}.opt+.opt{margin-top:8px}.opt:has(input:checked){border-color:var(--green-800);background:#f6f3e8}.opt input{accent-color:var(--green-800);width:18px;height:18px;margin:0}.opt .opt-name{flex:1}.opt .opt-price{color:var(--ink-muted);font-size:.9rem}.opt.is-out{opacity:.5;cursor:not-allowed}.field{display:grid;gap:6px;margin-top:16px;font-size:.92rem}.field>span{font-weight:600}.field em{font-weight:400;font-style:normal;color:var(--ink-muted)}.field input,.field select,.field textarea{width:100%;padding:12px 14px;border-radius:10px;border:1px solid #d9cfb4;background:#fff;color:var(--ink);font-size:1rem}.field textarea{resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--green-800);outline-offset:0;border-color:transparent}.form-error{color:var(--danger);font-size:.9rem;margin-top:12px;min-height:1.2em}.form-error:empty{margin:0;min-height:0}.qty{display:inline-flex;align-items:center;border:1px solid #d9cfb4;border-radius:999px}.qty button{width:40px;height:44px;border:0;background:transparent;font-size:1.3rem;cursor:pointer;color:var(--green-800)}.qty output{min-width:26px;text-align:center;font-weight:600}.add-btn{flex:1;min-height:50px}.cart-empty{color:var(--ink-muted);padding:24px 0}.cart-empty a{color:var(--green-800);font-weight:600}.line{display:grid;grid-template-columns:1fr auto;gap:6px 12px;padding:16px 0;border-bottom:1px solid #eee5cf}.line-name{font-weight:600}.line-mods,.line-note{grid-column:1;color:var(--ink-muted);font-size:.86rem}.line-price{font-weight:600;text-align:right}.line-actions{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;margin-top:4px}.line-actions .qty button{height:34px;width:34px;font-size:1.1rem}.link-btn{border:0;background:none;color:var(--danger);font-size:.86rem;cursor:pointer;padding:6px;text-decoration:underline;text-underline-offset:3px}.checkout{margin-top:18px}.checkout fieldset{border:0;padding:0;margin:18px 0 0}.checkout legend{font-weight:600;font-size:.92rem;padding:0;margin-bottom:8px}.who legend{font-family:var(--serif);font-size:1.5rem;font-weight:500;color:var(--green-800);margin-top:10px}.day-chips{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px;scrollbar-width:thin}.day-chip{flex:none;display:grid;text-align:center;padding:10px 12px;min-width:76px;border-radius:12px;border:1px solid #d9cfb4;background:#fff;cursor:pointer;line-height:1.25;font-size:.86rem}.day-chip strong{font-size:1rem}.day-chip[aria-pressed=true]{background:var(--green-800);color:var(--cream);border-color:var(--green-800)}.totals{margin-top:22px;padding:16px;background:var(--paper);border-radius:12px}.totals div{display:flex;justify-content:space-between;font-size:1.05rem}.fine-print{font-size:.8rem;color:var(--ink-muted);margin-top:6px}.secure{text-align:center;margin-top:10px}.checkout-btn{width:100%;min-height:54px;margin-top:14px;font-size:1rem}.foot-error{padding:0 22px;margin:0;background:#fff}.foot-error:not(:empty){padding:10px 22px 6px;border-top:1px solid #eee5cf}.opt-group.missing legend{color:var(--danger)}.opt-group.missing .opt{border-color:#e7b3ad}.acct-note{margin-top:4px;padding:12px 14px;border-radius:10px;background:#f3efe2;font-size:.88rem;color:var(--ink)}.acct-note a{color:var(--green-800);font-weight:600}.rewards-opt{display:flex;gap:10px;align-items:flex-start;margin-top:14px;padding:12px 14px;border-radius:10px;background:#f3efe2;border:1px solid #e3d9bd;font-size:.88rem;line-height:1.45;color:var(--ink-muted)}.rewards-opt input{width:18px;height:18px;margin-top:1px;accent-color:var(--green-800);flex:none}.rewards-opt strong{color:var(--ink)}.rewards-opt a{color:var(--green-800)}.order-layout{display:flex;flex-direction:column}.order-layout>.paper{flex-grow:1}
