:root{--cream: #ece8cb;--cream-deep: #e3deba;--paper: #fcfbf3;--green: #93b85c;--green-2: #84aa4c;--green-dark: #2e5733;--green-darker: #234127;--orange: #ff6b00;--orange-2: #ec5f00;--ink: #17150a;--muted: #6f6b52;--line: #e6e1c4;--shadow: 0 6px 20px rgba(35, 65, 39, .1);--shadow-lg: 0 -10px 40px rgba(23, 21, 10, .18);--font-body: "Figtree", system-ui, -apple-system, sans-serif;--font-head: "Archivo", system-ui, sans-serif;--font-logo: "Playfair Display", Georgia, serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;padding:0}body{font-family:var(--font-body);background:var(--cream);color:var(--ink);-webkit-font-smoothing:antialiased;overscroll-behavior-y:none}#root{max-width:520px;margin:0 auto;min-height:100vh;position:relative}button{font-family:inherit;cursor:pointer;border:none;background:none}.app-header{position:sticky;top:0;z-index:40;background:var(--cream);padding:14px 18px 10px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px}.brand-mark{font-family:var(--font-logo);font-style:italic;font-weight:800;font-size:30px;line-height:.9;color:var(--green-dark);letter-spacing:-.5px}.brand-on{display:inline-grid;place-items:center;background:var(--orange);color:#fff;font-family:var(--font-head);font-weight:800;font-size:14px;letter-spacing:1px;padding:3px 9px;border-radius:7px;transform:rotate(-7deg);box-shadow:0 3px 0 var(--orange-2)}.brand-sub{margin:3px 0 0 2px;font-size:12.5px;color:var(--muted);font-weight:500}.nav{position:sticky;top:0;z-index:30;display:flex;gap:8px;padding:12px 18px;background:var(--cream);overflow-x:auto;scrollbar-width:none;border-bottom:1px solid var(--line)}.nav::-webkit-scrollbar{display:none}.pill{flex:0 0 auto;font-family:var(--font-head);font-weight:700;font-size:14px;padding:9px 16px;border-radius:999px;background:#fff;color:var(--green-dark);border:1.5px solid var(--line);transition:transform .12s ease,background .15s ease,color .15s ease}.pill:active{transform:scale(.95)}.pill.active{background:var(--green-dark);color:#fff;border-color:var(--green-dark)}.menu{padding:8px 14px 150px}.section{scroll-margin-top:120px;margin-top:18px}.cat-head{position:relative;overflow:hidden;border-radius:22px;padding:20px 22px;margin-bottom:14px;color:#fff}.cat-head h2{margin:0;font-family:var(--font-head);font-weight:800;text-transform:uppercase;letter-spacing:1px;font-size:30px;line-height:1}.cat-head p{margin:6px 0 0;font-size:13px;font-weight:600;opacity:.85}.cat-head .blob{position:absolute;right:-30px;top:-30px;width:130px;height:130px;border-radius:50%;background:#ffffff1f}.theme-verde-escuro{background:var(--green-dark)}.theme-laranja{background:var(--orange)}.theme-laranja .blob{background:#ffffff2e}.theme-verde-claro{background:var(--green);color:var(--green-darker)}.theme-verde-claro p{opacity:.7}.theme-verde-claro .blob{background:#2341271a}.items{display:flex;flex-direction:column;gap:10px}.item{display:flex;align-items:center;gap:12px;background:var(--paper);border-radius:18px;padding:13px 14px;box-shadow:var(--shadow);transition:transform .12s ease}.item.bump{animation:bump .32s ease}@keyframes bump{0%{transform:scale(1)}40%{transform:scale(1.025)}to{transform:scale(1)}}.item-info{flex:1;min-width:0}.item-name{font-weight:700;font-size:16px;line-height:1.2}.item-desc{font-size:12.5px;color:var(--muted);margin-top:2px}.item-price{font-family:var(--font-head);font-weight:800;font-size:15px;color:var(--green-dark);margin-top:5px}.items.theme-laranja .item-price{color:var(--orange-2)}.item.soldout{opacity:.55}.item.soldout .item-name{text-decoration:line-through}.soldout-badge{flex:0 0 auto;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:#a02012;background:#fbe9e7;border-radius:999px;padding:6px 10px}.add-btn{flex:0 0 auto;width:42px;height:42px;border-radius:14px;background:var(--orange);color:#fff;font-size:26px;font-weight:400;display:grid;place-items:center;box-shadow:0 4px 0 var(--orange-2);transition:transform .1s ease}.add-btn:active{transform:translateY(2px);box-shadow:0 2px 0 var(--orange-2)}.stepper{flex:0 0 auto;display:flex;align-items:center;gap:2px;background:var(--green-dark);border-radius:14px;padding:4px;box-shadow:0 4px 0 var(--green-darker)}.stepper button{width:34px;height:34px;border-radius:10px;color:#fff;font-size:22px;font-weight:600;display:grid;place-items:center;transition:background .12s ease}.stepper button:active{background:#ffffff29}.stepper .count{min-width:26px;text-align:center;color:#fff;font-family:var(--font-head);font-weight:800;font-size:16px}.cart-bar{position:fixed;left:0;right:0;bottom:0;z-index:50;max-width:520px;margin:0 auto;padding:12px 16px calc(12px + env(safe-area-inset-bottom));transform:translateY(120%);transition:transform .32s cubic-bezier(.2,.9,.3,1.2)}.cart-bar.show{transform:translateY(0)}.cart-bar-inner{display:flex;align-items:center;gap:14px;background:var(--orange);color:#fff;border-radius:18px;padding:14px 18px;box-shadow:0 10px 30px #ff6b0066}.cart-count{display:grid;place-items:center;width:34px;height:34px;background:#fff;color:var(--orange);border-radius:11px;font-family:var(--font-head);font-weight:800;font-size:17px}.cart-bar-label{flex:1;display:flex;flex-direction:column;text-align:left}.cart-bar-label .l1{display:block;font-size:12px;opacity:.85;font-weight:600}.cart-bar-label .l2{display:block;font-family:var(--font-head);font-weight:800;font-size:20px;line-height:1.1;white-space:nowrap}.cart-bar-go{font-family:var(--font-head);font-weight:800;font-size:15px;display:flex;align-items:center;gap:6px}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#17150a80;display:flex;align-items:flex-end;justify-content:center;opacity:0;pointer-events:none;transition:opacity .25s ease}.overlay.show{opacity:1;pointer-events:auto}.sheet{width:100%;max-width:520px;max-height:90vh;overflow-y:auto;background:var(--cream);border-radius:26px 26px 0 0;padding:10px 18px calc(20px + env(safe-area-inset-bottom));transform:translateY(100%);transition:transform .32s cubic-bezier(.2,.9,.3,1.05)}.overlay.show .sheet{transform:translateY(0)}.sheet-handle{width:44px;height:5px;border-radius:3px;background:var(--cream-deep);margin:6px auto 14px}.sheet-title{font-family:var(--font-head);font-weight:800;text-transform:uppercase;letter-spacing:.5px;font-size:22px;margin:0 0 14px}.cart-line{display:flex;align-items:center;gap:12px;background:var(--paper);border-radius:16px;padding:12px;margin-bottom:10px;box-shadow:var(--shadow)}.cart-line .ci{flex:1;min-width:0}.cart-line .cn{font-weight:700;font-size:15px}.cart-line .cp{font-size:13px;color:var(--muted);margin-top:2px}.cart-line .csub{font-family:var(--font-head);font-weight:800;color:var(--green-dark);min-width:64px;text-align:right;white-space:nowrap}.mini-step{display:flex;align-items:center;gap:0;background:var(--cream-deep);border-radius:11px}.mini-step button{width:30px;height:30px;border-radius:9px;font-size:19px;font-weight:700;color:var(--green-dark);display:grid;place-items:center}.mini-step .c{min-width:22px;text-align:center;font-family:var(--font-head);font-weight:800;font-size:15px}.total-row{display:flex;justify-content:space-between;align-items:baseline;margin:18px 4px 14px;padding-top:14px;border-top:2px dashed var(--cream-deep)}.total-row .tl{font-family:var(--font-head);font-weight:800;text-transform:uppercase;font-size:16px;letter-spacing:.5px}.total-row .tv{font-family:var(--font-head);font-weight:800;font-size:30px;color:var(--orange-2);white-space:nowrap}.field{margin:4px 4px 14px}.form-intro{margin:6px 4px 12px;font-weight:700;font-size:14px;color:var(--green-dark)}.field label{display:block;font-size:13px;font-weight:700;color:var(--muted);margin-bottom:6px}.field input{width:100%;font-family:inherit;font-size:16px;padding:13px 14px;border:1.5px solid var(--line);border-radius:14px;background:#fff;color:var(--ink)}.field input:focus{outline:none;border-color:var(--green)}.field input.invalid{border-color:var(--danger, #c0392b);background:#fdf0ee}.field-err{display:block;margin-top:5px;font-size:12px;font-weight:700;color:#c0392b}.btn-primary{width:100%;background:var(--green-dark);color:#fff;font-family:var(--font-head);font-weight:800;font-size:17px;letter-spacing:.5px;padding:17px;border-radius:16px;box-shadow:0 5px 0 var(--green-darker);transition:transform .1s ease}.btn-primary:active{transform:translateY(2px);box-shadow:0 3px 0 var(--green-darker)}.btn-primary:disabled{opacity:.45;box-shadow:0 5px 0 var(--green-darker)}.btn-ghost{width:100%;background:none;color:var(--muted);font-weight:700;font-size:14px;padding:14px;margin-top:8px}.empty-cart{text-align:center;padding:40px 20px 50px;color:var(--muted)}.empty-cart .e-emoji{font-size:40px}.empty-cart p{font-weight:600;margin-top:10px}.state-msg{text-align:center;padding:60px 24px;color:var(--muted);font-weight:600;font-size:15px;line-height:1.5}.state-msg .e-emoji{font-size:40px;display:block;margin-bottom:10px}.confirm{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;background:var(--green-dark);color:#fff;display:flex;flex-direction:column;max-width:520px;margin:0 auto;overflow-y:auto;opacity:0;pointer-events:none;transition:opacity .3s ease}.confirm.show{opacity:1;pointer-events:auto}.confirm-top{padding:30px 24px 16px;text-align:center}.confirm-check{width:64px;height:64px;border-radius:50%;background:var(--orange);display:grid;place-items:center;margin:0 auto 14px;font-size:34px;animation:pop .4s cubic-bezier(.2,.9,.3,1.4)}@keyframes pop{0%{transform:scale(0)}to{transform:scale(1)}}.confirm-top h2{font-family:var(--font-head);font-weight:800;font-size:22px;margin:0;text-transform:uppercase}.confirm-top p{opacity:.8;margin:6px 0 0;font-size:14px}.order-card{margin:4px 18px 0;background:var(--cream);color:var(--ink);border-radius:22px;padding:22px;box-shadow:0 12px 40px #0000004d}.order-num-label{font-size:13px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:1px}.order-num{font-family:var(--font-head);font-weight:800;font-size:52px;color:var(--green-dark);line-height:1;margin-top:2px}.order-name{font-weight:700;font-size:17px;margin-top:6px}.order-contact{font-size:13px;color:var(--muted);margin-top:3px;font-weight:500}.order-items{margin:16px 0 0;border-top:1.5px solid var(--line);padding-top:14px}.order-items .oi{display:flex;justify-content:space-between;gap:10px;padding:5px 0;font-size:14.5px}.order-items .oi .oq{font-weight:800;color:var(--green-dark);margin-right:8px}.order-items .oi .on{flex:1}.order-items .oi .ov{font-weight:700;white-space:nowrap}.order-total{display:flex;justify-content:space-between;align-items:baseline;margin-top:14px;padding-top:14px;border-top:2px dashed var(--cream-deep)}.order-total .l{font-family:var(--font-head);font-weight:800;text-transform:uppercase}.order-total .v{font-family:var(--font-head);font-weight:800;font-size:30px;color:var(--orange-2);white-space:nowrap}.confirm-hint{text-align:center;padding:18px 30px 8px;font-size:14px;opacity:.85;font-weight:600}.confirm-actions{margin-top:auto;padding:16px 18px calc(20px + env(safe-area-inset-bottom))}.btn-orange{width:100%;background:var(--orange);color:#fff;font-family:var(--font-head);font-weight:800;font-size:16px;padding:16px;border-radius:16px;box-shadow:0 5px 0 var(--orange-2)}.btn-orange:active{transform:translateY(2px);box-shadow:0 3px 0 var(--orange-2)}.admin-link{display:block;text-align:center;padding:20px;color:var(--muted);font-size:12px;font-weight:600;text-decoration:none;opacity:.6}
