:root{--bg: #ffeee2;--surface: #ffffff;--text: #271610;--text-soft: #6d5851;--coral: #f44c2b;--coral-dark: #970000;--coral-tint: #ffdbd1;--sage: #009c50;--sage-dark: #004b1b;--sage-tint: #cbefd6;--yellow: #e9a200;--yellow-dark: #613800;--yellow-tint: #ffe8be;--blue-dark: #004495;--blue-tint: #d4eaff;--border: #e4d4c7;--shadow: 0 1px 3px rgba(70, 45, 20, .08)}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:Nunito,ui-rounded,Segoe UI,Roboto,sans-serif}h1,h2,h3,.heading{font-family:"Baloo 2",ui-rounded,sans-serif;font-weight:800;margin:0}a{color:var(--coral-dark);text-decoration:none}a:hover{color:var(--coral)}button{font-family:inherit;cursor:pointer}.app-shell{max-width:480px;min-height:100vh;margin:0 auto;background:var(--bg);display:flex;flex-direction:column;position:relative}.page{flex:1;display:flex;flex-direction:column;padding-bottom:90px}.top-bar{display:flex;align-items:center;gap:14px;padding:22px 20px 6px}.icon-btn{width:36px;height:36px;border-radius:50%;background:var(--surface);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;color:var(--text);flex:0 0 auto}.btn{display:flex;align-items:center;justify-content:center;gap:8px;border-radius:16px;padding:15px;font-size:14.5px;font-weight:800;border:none;width:100%}.btn-primary{background:var(--coral);color:#fff}.btn-primary:disabled{opacity:.45;cursor:not-allowed}.btn-outline{background:transparent;border:1.5px solid var(--border);color:var(--text)}.btn-text{background:transparent;color:var(--text-soft);font-weight:700}.card{background:var(--surface);border-radius:18px;box-shadow:var(--shadow)}.chip{display:flex;align-items:center;gap:6px;padding:9px 14px;border-radius:999px;white-space:nowrap;font-size:13px;font-weight:700;flex:0 0 auto;background:var(--surface);border:1px solid var(--border);color:var(--text-soft)}.chip.active{background:var(--coral);border-color:var(--coral);color:#fff}.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.prod-card{background:var(--surface);border-radius:18px;padding:10px;display:flex;flex-direction:column;gap:8px;box-shadow:var(--shadow);border:none;text-align:left;color:inherit}.prod-card .thumb{position:relative;aspect-ratio:1/1;border-radius:14px;display:flex;align-items:center;justify-content:center}.prod-card .add-btn{position:absolute;bottom:6px;right:6px;width:26px;height:26px;border-radius:50%;background:var(--coral);color:#fff;display:flex;align-items:center;justify-content:center;border:none}.prod-card .name{font-size:13px;font-weight:700;line-height:1.3}.prod-card .price-row{display:flex;align-items:center;gap:5px}.prod-card .price-original{font-size:11px;color:var(--text-soft);text-decoration:line-through}.prod-card .price-badge{font-size:10px;font-weight:800;color:var(--sage-dark);background:var(--sage-tint);border-radius:6px;padding:1px 5px}.prod-card .price-final{font-size:13px;font-weight:800;color:var(--coral-dark)}.bottom-nav{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:480px;display:flex;justify-content:space-around;align-items:center;padding:10px 6px 16px;background:var(--surface);border-top:1px solid var(--border)}.nav-item{display:flex;flex-direction:column;align-items:center;gap:3px;font-size:11px;font-weight:700;color:var(--text-soft);background:none;border:none}.nav-item.active{color:var(--coral-dark)}.sticky-bottom{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:480px;box-sizing:border-box;background:var(--surface);border-top:1px solid var(--border);padding:14px 20px 20px;display:flex;flex-direction:column;gap:8px}.tint-coral{background:var(--coral-tint);color:var(--coral-dark)}.tint-sage{background:var(--sage-tint);color:var(--sage-dark)}.tint-yellow{background:var(--yellow-tint);color:var(--yellow-dark)}.tint-blue{background:var(--blue-tint);color:var(--blue-dark)}@media (max-width: 400px){.app-shell{max-width:100%}}.btn-primary,.icon-btn,.add-btn{transition:transform .12s ease}.btn-primary:active:not(:disabled),.icon-btn:active,.add-btn:active{transform:scale(.93)}@keyframes pop-bounce{0%{transform:scale(1) rotate(0)}35%{transform:scale(1.3) rotate(-10deg)}65%{transform:scale(.88) rotate(6deg)}to{transform:scale(1) rotate(0)}}.add-btn.just-added{background:var(--sage)!important;animation:pop-bounce .5s ease}@keyframes float-up-fade{0%{transform:translateY(0) scale(1);opacity:1}to{transform:translateY(-34px) scale(1.15);opacity:0}}.fly-plus-one{position:absolute;top:-6px;right:-2px;font-size:12px;font-weight:800;color:var(--sage-dark);pointer-events:none;animation:float-up-fade .7s ease forwards}@keyframes checkout-pulse{0%,to{transform:scale(1)}50%{transform:scale(.95)}}.btn-checking{animation:checkout-pulse .45s ease infinite}@keyframes badge-pop-in{0%{transform:scale(.4);opacity:0}60%{transform:scale(1.1);opacity:1}to{transform:scale(1)}}.badge-pop{animation:badge-pop-in .55s cubic-bezier(.34,1.56,.64,1)}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:spin .8s linear infinite}@keyframes spin-slow{to{transform:rotate(360deg)}}.sunburst-spin{animation:spin-slow 18s linear infinite}@keyframes badge-glow-pulse{0%,to{box-shadow:0 0 #6fb88066,0 6px 16px #3c28141a}50%{box-shadow:0 0 0 16px #6fb88000,0 6px 16px #3c28141a}}.badge-glow{animation:badge-glow-pulse 2.4s ease-out infinite}@keyframes confetti-fall{0%{transform:translateY(-24px) translate(0) rotate(0);opacity:0}12%{opacity:1}85%{opacity:1}to{transform:translateY(360px) translate(var(--drift, 14px)) rotate(300deg);opacity:0}}.confetti-piece{position:absolute;animation-name:confetti-fall;animation-timing-function:ease-in;animation-iteration-count:infinite}@keyframes twinkle-fade{0%,to{opacity:0;transform:scale(.5) rotate(0)}50%{opacity:1;transform:scale(1) rotate(20deg)}}.sparkle-twinkle{position:absolute;animation-name:twinkle-fade;animation-timing-function:ease-in-out;animation-iteration-count:infinite}
