@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap";@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap";:root{--primary:#e8650a;--primary-hover:#c35200;--primary-light:#e8650a1a;--accent:#1e3a8a;--accent-hover:#466bcf;--accent-light:#50613c1a;--background:#fff8f3;--surface:#fff;--text-main:#1e1b17;--text-muted:#584237;--border:#e9e1da;--header-bg:#1e3a8a;--radius-sm:8px;--radius-md:16px;--radius-lg:24px;--radius-full:999px;--shadow-sm:0 2px 4px #0000000a, 0 1px 2px #00000005;--shadow-md:0 8px 16px #0000000f, 0 2px 6px #0000000a;--shadow-lg:0 20px 40px #e8650a33, 0 8px 16px #e8650a1a}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--background);color:var(--text-main);-webkit-font-smoothing:antialiased;font-family:Plus Jakarta Sans,sans-serif}.app-container{background:var(--surface);max-width:600px;min-height:100vh;box-shadow:var(--shadow-sm);margin:0 auto;position:relative}.merchant-header{background:var(--header-bg);text-align:center;border-bottom:4px solid var(--primary);z-index:10;border-bottom-right-radius:24px;border-bottom-left-radius:24px;padding:32px 24px;position:relative;box-shadow:0 8px 32px #1e3a8a26}.merchant-name{color:#fff;margin-bottom:8px;font-size:24px;font-weight:700}.table-badge{background:var(--accent-light);color:var(--accent);border-radius:var(--radius-full);align-items:center;padding:6px 12px;font-size:13px;font-weight:600;display:inline-flex}.product-list{gap:20px;padding:24px 24px 100px;display:grid}.product-card{border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-sm);border:1px solid #00000008;gap:16px;padding:16px;transition:all .3s cubic-bezier(.16,1,.3,1);display:flex}.product-card:hover{box-shadow:var(--shadow-md);border-color:#0000000d;transform:translateY(-4px)}.product-image{border-radius:var(--radius-sm);object-fit:cover;background:var(--background);width:90px;height:90px;box-shadow:inset 0 0 0 1px #0000000d}.product-info{flex-direction:column;flex:1;display:flex}.product-title{margin-bottom:4px;font-size:16px;font-weight:700;line-height:1.3}.product-desc{color:var(--text-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:12px;font-size:13px;line-height:1.4;display:-webkit-box;overflow:hidden}.product-footer{justify-content:space-between;align-items:center;margin-top:auto;display:flex}.product-price{color:var(--accent);font-size:15px;font-weight:700}.add-btn{background:var(--primary);color:#fff;border-radius:var(--radius-full);cursor:pointer;border:none;justify-content:center;align-items:center;width:32px;height:32px;font-size:20px;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex;box-shadow:0 4px 12px #e8650a40}.add-btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #e8650a59}.add-btn:active{transform:scale(.9)translateY(0);box-shadow:0 2px 8px #e8650a33}.floating-cart{background:var(--primary);color:#fff;border-radius:var(--radius-full);cursor:pointer;justify-content:space-between;align-items:center;width:calc(100% - 48px);max-width:552px;padding:16px 24px;animation:.3s cubic-bezier(.16,1,.3,1) slideUp;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 16px 32px #e8650a4d}.cart-info{align-items:center;gap:12px;display:flex}.cart-count{background:var(--accent);border-radius:var(--radius-full);justify-content:center;align-items:center;width:28px;height:28px;font-size:13px;font-weight:700;display:flex}.cart-total,.checkout-text{font-size:15px;font-weight:600}@keyframes slideUp{0%{opacity:0;transform:translate(-50%,100%)}to{opacity:1;transform:translate(-50%)}}.skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%) 0 0/200% 100%;border-radius:4px;animation:1.5s infinite loading}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}.modal-overlay{z-index:100;background:#1e1b1780;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.modal-content{background:var(--surface);border-radius:24px 24px 0 0;width:100%;max-width:600px;max-height:85vh;padding:24px;animation:.3s cubic-bezier(.16,1,.3,1) slideUp;overflow-y:auto}.payment-method-card{border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;justify-content:space-between;align-items:center;margin-bottom:12px;padding:16px;transition:all .2s;display:flex}.payment-method-card.active{border-color:var(--primary);background:var(--primary-light)}.payment-method-card:hover{border-color:var(--primary)}.pd-overlay{z-index:1000;background:#00000080;align-items:flex-end;animation:.2s ease-out pdFadeIn;display:flex;position:fixed;inset:0}@keyframes pdFadeIn{0%{opacity:0}to{opacity:1}}.pd-content{background:#fff;border-radius:24px 24px 0 0;flex-direction:column;width:100%;max-height:90vh;animation:.3s ease-out pdSlideUp;display:flex}@keyframes pdSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.pd-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:20px 24px 16px;display:flex}.pd-header h2{color:var(--text-main);margin:0;font-size:18px;font-weight:700}.pd-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:0;font-size:28px;line-height:1}.pd-body{flex:1;padding:20px 24px;overflow-y:auto}.pd-desc{color:var(--text-muted);margin-bottom:12px;font-size:14px;line-height:1.5}.pd-base-price{color:var(--primary);margin-bottom:24px;font-size:18px;font-weight:700}.pd-section{margin-bottom:24px}.pd-group{border:1px solid var(--border);background:#f8fafc;border-radius:12px;margin-bottom:16px;padding:16px}.pd-group-title{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.pd-group-title h4{color:var(--text-main);margin:0;font-size:15px}.pd-req{color:#e11d48;text-transform:uppercase;background:#ffe4e6;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:700}.pd-options{flex-direction:column;gap:12px;display:flex}.pd-radio{color:var(--text-main);cursor:pointer;align-items:center;gap:12px;font-size:14px;display:flex}.pd-radio input[type=radio]{width:18px;height:18px;accent-color:var(--primary)}.pd-mod-list{flex-direction:column;gap:12px;display:flex}.pd-mod-item{justify-content:space-between;align-items:center;display:flex}.pd-mod-info{flex-direction:column;display:flex}.pd-mod-info span{color:var(--text-main);font-size:14px}.pd-mod-price{color:var(--text-muted);margin-top:2px;font-size:12px}.pd-mod-controls{align-items:center;gap:12px;display:flex}.pd-mod-btn{width:28px;height:28px;color:var(--text-main);cursor:pointer;background:#e2e8f0;border:none;border-radius:14px;justify-content:center;align-items:center;font-size:16px;font-weight:700;display:flex}.pd-mod-qty{text-align:center;min-width:12px;font-size:15px;font-weight:600}.pd-mod-add-btn{border:1px solid var(--primary);color:var(--primary);cursor:pointer;background:0 0;border-radius:999px;padding:6px 12px;font-size:13px;font-weight:600}.pd-textarea{border:1px solid var(--border);resize:none;border-radius:12px;width:100%;min-height:80px;padding:12px;font-family:inherit;font-size:14px}.pd-textarea:focus{border-color:var(--primary);outline:none}.pd-qty-section{border-top:1px dashed var(--border);justify-content:space-between;align-items:center;margin-top:8px;padding:20px 0;display:flex}.pd-qty-controls{background:#f1f5f9;border-radius:999px;align-items:center;gap:16px;padding:4px 6px;display:flex}.pd-qty-btn{width:32px;height:32px;color:var(--text-main);cursor:pointer;background:#fff;border:none;border-radius:16px;font-size:18px;font-weight:700;box-shadow:0 2px 4px #0000000d}.pd-qty-val{font-size:16px;font-weight:700}.pd-footer{border-top:1px solid var(--border);background:#fff;padding:16px 24px}.pd-submit-btn{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:999px;width:100%;padding:16px;font-size:16px;font-weight:700;box-shadow:0 4px 12px #0a254033}@media (width>=600px){.pd-overlay{justify-content:center;align-items:center}.pd-content{border-radius:24px;width:480px}}.landing-container{text-align:center;background:linear-gradient(160deg,#fff8f3 0%,#fff0e6 60%,#f5eeff 100%);flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:48px 24px 40px;font-family:Plus Jakarta Sans,sans-serif;display:flex;position:relative;overflow:hidden}.landing-bg-circle-1{filter:blur(72px);z-index:0;pointer-events:none;background:#e8650a1f;border-radius:50%;width:360px;height:360px;position:absolute;top:-12%;left:-18%}.landing-bg-circle-2{filter:blur(60px);z-index:0;pointer-events:none;background:#1e3a8a17;border-radius:50%;width:280px;height:280px;position:absolute;bottom:-8%;right:-14%}.landing-content{z-index:1;flex-direction:column;align-items:center;width:100%;max-width:400px;animation:.7s cubic-bezier(.16,1,.3,1) forwards fadeUp;display:flex;position:relative}.mascot-container{margin-bottom:28px;animation:4.5s ease-in-out infinite float;position:relative}.mascot-image{object-fit:contain;filter:drop-shadow(0 16px 28px #e8650a38);width:160px;height:160px}.mascot-glow{background:var(--primary,#e8650a);filter:blur(44px);opacity:.28;z-index:-1;pointer-events:none;border-radius:50%;width:120px;height:120px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.landing-title{color:#1e1b17;letter-spacing:-.4px;margin-bottom:12px;font-size:30px;font-weight:800;line-height:1.25}.landing-title span{background:linear-gradient(135deg,#e8650a 0%,#ff8c42 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.landing-subtitle{color:#584237;opacity:.88;max-width:320px;margin-bottom:36px;font-size:14.5px;line-height:1.65}.steps-card{-webkit-backdrop-filter:blur(24px);text-align:left;background:#ffffffb8;border:1px solid #ffffff8c;border-radius:24px;width:100%;margin-bottom:28px;padding:28px 24px;animation:.7s cubic-bezier(.16,1,.3,1) .15s both fadeUp;box-shadow:0 20px 40px #0000000a,inset 0 0 0 1px #fffc}.steps-heading{letter-spacing:1.2px;text-transform:uppercase;color:#a89f9a;margin-bottom:20px;font-size:11px;font-weight:700}.steps-list{flex-direction:column;gap:0;display:flex}.step-item{align-items:flex-start;gap:16px;display:flex;position:relative}.step-icon-wrap{color:#e8650a;background:linear-gradient(135deg,#e8650a1f 0%,#e8650a0f 100%);border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.step-body{flex:1;padding-top:2px}.step-title{color:#1e1b17;margin-bottom:3px;font-size:14px;font-weight:700}.step-desc{color:#584237;font-size:13px;line-height:1.5}.step-divider{background:linear-gradient(#e8650a33,#0000);width:1px;height:24px;position:absolute;top:44px;left:22px}.steps-list .step-item+.step-item{margin-top:24px}.scan-hint{color:#1e3a8a;background:#1e3a8a12;border:1px solid #1e3a8a1f;border-radius:999px;justify-content:center;align-items:center;gap:8px;margin-bottom:24px;padding:10px 20px;font-size:13px;font-weight:600;animation:.7s cubic-bezier(.16,1,.3,1) .3s both fadeUp;display:flex}.scan-hint p{margin:0}.landing-footer{color:#a89f9a;font-size:12px;animation:.7s cubic-bezier(.16,1,.3,1) .4s both fadeUp}.landing-footer strong{color:#584237}@keyframes fadeUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}
