:root{color-scheme:dark;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5;--green: #22c55e;--green-dark: #16a34a;--green-light: rgba(34, 197, 94, .12);--red: #ef4444;--bg: #0a0a0a;--bg-card: rgba(255, 255, 255, .04);--bg-hover: rgba(255, 255, 255, .07);--border: rgba(255, 255, 255, .1);--text: #fafafa;--text-muted: rgba(255, 255, 255, .55);--text-secondary: rgba(255, 255, 255, .75)}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{min-height:100vh;background:var(--bg);color:var(--text)}.app{display:flex;flex-direction:column;min-height:100vh}.header{display:flex;align-items:center;justify-content:space-between;padding:1rem 2rem;border-bottom:1px solid var(--border);background:#0a0a0ae6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);position:sticky;top:0;z-index:100}.logo{display:flex;align-items:center;gap:.5rem;font-size:1.25rem;font-weight:700;letter-spacing:-.02em}.logo-icon{font-size:1.5rem}.cart-toggle{position:relative;background:none;border:1px solid var(--border);color:var(--text);padding:.5rem 1rem;border-radius:.5rem;cursor:pointer;font-size:.95rem;display:flex;align-items:center;gap:.5rem;transition:background .15s}.cart-toggle:hover{background:var(--bg-hover)}.cart-badge{background:var(--green);color:#000;font-size:.7rem;font-weight:700;padding:.1rem .4rem;border-radius:9999px;min-width:1.2rem;text-align:center}.main{flex:1;display:flex;max-width:1400px;width:100%;margin:0 auto;padding:1.5rem 2rem;gap:2rem}.store-area{flex:1;min-width:0}.search-bar{display:flex;gap:.75rem;margin-bottom:1.5rem;flex-wrap:wrap}.search-input{flex:1;min-width:200px;padding:.6rem 1rem;border:1px solid var(--border);border-radius:.5rem;background:var(--bg-card);color:var(--text);font-size:.9rem;outline:none;transition:border-color .15s}.search-input:focus{border-color:var(--green)}.search-input::placeholder{color:var(--text-muted)}.categories{display:flex;gap:.5rem;flex-wrap:wrap}.cat-btn{padding:.4rem .85rem;border:1px solid var(--border);border-radius:9999px;background:none;color:var(--text-secondary);font-size:.8rem;cursor:pointer;transition:all .15s;white-space:nowrap}.cat-btn:hover{background:var(--bg-hover);color:var(--text)}.cat-btn.active{background:var(--green-light);border-color:var(--green);color:var(--green)}.products-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.product-card{border:1px solid var(--border);border-radius:.75rem;overflow:hidden;background:var(--bg-card);transition:transform .15s,border-color .15s;display:flex;flex-direction:column}.product-card:hover{transform:translateY(-2px);border-color:#fff3}.product-emoji{font-size:3rem;text-align:center;padding:1.5rem 1rem .75rem;background:#ffffff05}.product-info{padding:0 1rem 1rem;flex:1;display:flex;flex-direction:column}.product-name{font-size:.95rem;font-weight:600;margin-bottom:.15rem}.product-unit{font-size:.75rem;color:var(--text-muted);margin-bottom:.75rem}.product-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:auto}.product-price{font-size:1.1rem;font-weight:700;color:var(--green)}.add-btn{width:2rem;height:2rem;border:none;border-radius:50%;background:var(--green);color:#000;font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,transform .1s;font-weight:700;line-height:1}.add-btn:hover{background:var(--green-dark);transform:scale(1.1)}.cart-sidebar{width:360px;flex-shrink:0;border:1px solid var(--border);border-radius:.75rem;background:var(--bg-card);display:flex;flex-direction:column;max-height:calc(100vh - 8rem);position:sticky;top:5rem}.cart-header{padding:1.25rem;border-bottom:1px solid var(--border);font-weight:700;font-size:1.05rem;display:flex;align-items:center;gap:.5rem}.cart-items{flex:1;overflow-y:auto;padding:.75rem}.cart-empty{text-align:center;padding:3rem 1rem;color:var(--text-muted);font-size:.9rem}.cart-item{display:flex;align-items:center;gap:.75rem;padding:.6rem;border-radius:.5rem;transition:background .15s}.cart-item:hover{background:var(--bg-hover)}.cart-item-emoji{font-size:1.5rem;flex-shrink:0}.cart-item-details{flex:1;min-width:0}.cart-item-name{font-size:.85rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cart-item-price{font-size:.75rem;color:var(--text-muted)}.qty-controls{display:flex;align-items:center;gap:.35rem;flex-shrink:0}.qty-btn{width:1.6rem;height:1.6rem;border:1px solid var(--border);border-radius:.25rem;background:none;color:var(--text);font-size:.85rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}.qty-btn:hover{background:var(--bg-hover)}.qty-btn.remove:hover{border-color:var(--red);color:var(--red)}.qty-num{font-size:.85rem;font-weight:600;min-width:1.2rem;text-align:center}.cart-footer{padding:1rem 1.25rem;border-top:1px solid var(--border)}.cart-subtotal{display:flex;justify-content:space-between;font-size:.9rem;color:var(--text-secondary);margin-bottom:.35rem}.cart-total{display:flex;justify-content:space-between;font-size:1.1rem;font-weight:700;margin-bottom:1rem}.checkout-btn{width:100%;padding:.75rem;border:none;border-radius:.5rem;background:var(--green);color:#000;font-size:.95rem;font-weight:700;cursor:pointer;transition:background .15s}.checkout-btn:hover{background:var(--green-dark)}.checkout-btn:disabled{opacity:.4;cursor:not-allowed}.clear-btn{width:100%;padding:.5rem;border:1px solid var(--border);border-radius:.5rem;background:none;color:var(--text-muted);font-size:.8rem;cursor:pointer;margin-top:.5rem;transition:all .15s}.clear-btn:hover{border-color:var(--red);color:var(--red)}.toast{position:fixed;bottom:2rem;left:50%;transform:translate(-50%);background:var(--green);color:#000;padding:.75rem 1.5rem;border-radius:.5rem;font-weight:600;font-size:.9rem;z-index:200;animation:toast-in .3s ease,toast-out .3s ease 1.5s forwards}@keyframes toast-in{0%{opacity:0;transform:translate(-50%) translateY(1rem)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes toast-out{0%{opacity:1;transform:translate(-50%) translateY(0)}to{opacity:0;transform:translate(-50%) translateY(1rem)}}@media(max-width:900px){.main{flex-direction:column;padding:1rem}.cart-sidebar{width:100%;position:static;max-height:none}.header{padding:1rem}.products-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}}
