
:root{
  --bg:#ffffff; --fg:#111111; --muted:#5b5b5b; --card:#ffffff; --border:#e8e8e8;
  --accent:#b30015; --accent-weak:#d62b2b; --chip:#f7f7f7; --ok:#0aa84f;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;font-family:Inter,system-ui,-apple-system,sans-serif;background:var(--bg);color:var(--fg)}
.hero{background:#fff;border-bottom:2px solid var(--accent);}
.hero-inner{max-width:1100px;margin:0 auto;padding:28px 16px 18px}
.hero h1{margin:0;font-weight:800;letter-spacing:.2px}
.hero h1 span{display:block;color:var(--accent);font-weight:700}
.season{margin:.25rem 0 1rem;color:var(--muted)}
.hero-actions{display:flex;gap:12px;align-items:center}
#search{flex:1;background:#fff;border:2px solid var(--border);color:var(--fg);padding:12px 14px;border-radius:12px;outline:none}
#search:focus{border-color:var(--accent)}
.table-badge{background:#fff;color:var(--fg);padding:10px 12px;border-radius:999px;border:2px solid var(--accent);font-weight:700}
.filters{max-width:1100px;margin:10px auto 0;padding:0 16px 12px;display:flex;gap:8px;flex-wrap:wrap}
.chip{background:var(--chip);color:#222;border:2px solid var(--border);padding:8px 12px;border-radius:999px;cursor:pointer}
.chip.active{border-color:var(--accent);color:var(--accent);font-weight:700}
#menu{max-width:1100px;margin:8px auto 120px;padding:16px;display:grid;gap:18px}
.section{background:var(--card);border:2px solid var(--border);border-radius:18px;overflow:hidden}
.section-header{padding:14px 16px;border-bottom:2px solid var(--border);display:flex;justify-content:space-between;align-items:center;background:#fff}
.section-title{font-weight:800;letter-spacing:.2px}
.section-grid{display:grid;gap:12px;padding:14px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));background:#fff}
.card{background:#fff;border:2px solid var(--border);border-radius:16px;padding:14px;display:flex;flex-direction:column;gap:10px}
.card h4{margin:0}
.card p{margin:0;color:var(--muted);min-height:40px}
.price{font-weight:800}
.add{margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:10px}
.add button{background:#fff;border:2px solid var(--accent);color:var(--accent);border-radius:12px;padding:8px 10px;cursor:pointer;font-weight:700}
.add button:hover{background:var(--accent);color:#fff}
.footer{position:fixed;left:0;right:0;bottom:64px;background:#fff;border-top:2px solid var(--border);display:flex;justify-content:space-between;align-items:center;gap:14px;padding:10px 16px;color:#333}
.cart{display:flex;gap:16px;align-items:center}
.cart-total{display:flex;gap:6px;align-items:baseline}
#checkoutBtn{background:var(--accent);color:#fff;border:2px solid var(--accent);padding:10px 14px;border-radius:12px;font-weight:800;cursor:pointer}
.bottom-nav{position:fixed;left:0;right:0;bottom:0;background:#fff;border-top:3px solid var(--accent);display:grid;grid-template-columns:repeat(4,1fr);z-index:30}
.nav-btn{appearance:none;background:#fff;border:none;padding:8px 8px 10px;display:flex;flex-direction:column;align-items:center;gap:4px;font-weight:700;color:#444;cursor:pointer}
.nav-btn .icon{width:22px;height:22px;stroke:var(--accent);stroke-width:2}
.nav-btn.active{color:var(--accent)}
.nav-btn.active .icon{stroke:var(--accent-weak)}
.drawer{position:fixed;left:0;right:0;bottom:-100%;background:#fff;border-top:3px solid var(--accent);max-height:80vh;transition:bottom .25s ease;box-shadow:0 -10px 30px rgba(0,0,0,.1);z-index:20}
.drawer.open{bottom:64px}
.drawer-head{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border-bottom:2px solid var(--border)}
.drawer-body{padding:10px 16px 16px;display:flex;flex-direction:column;gap:14px}
.close-btn{background:#fff;border:2px solid var(--border);border-radius:10px;padding:6px 10px;font-weight:800;cursor:pointer}
.pay-list{display:flex;flex-direction:column;gap:10px}
.pay-item{display:flex;align-items:center;justify-content:space-between;border:2px solid var(--border);padding:10px;border-radius:12px}
.pay-item-left{display:flex;align-items:center;gap:10px}
.pay-summary{display:flex;justify-content:space-between;gap:10px;font-weight:700}
.pay-actions{display:flex;gap:10px}
.btn{padding:10px 12px;border-radius:12px;font-weight:800;cursor:pointer}
.btn.primary{background:var(--accent);border:2px solid var(--accent);color:#fff}
.btn.outline{background:#fff;border:2px solid var(--accent);color:var(--accent)}
.modal{position:fixed;inset:0;background:rgba(0,0,0,.35);display:none;align-items:center;justify-content:center;padding:20px;z-index:40}
.modal.show{display:flex}
.modal-card{background:#fff;border:2px solid var(--border);max-width:600px;width:100%;border-radius:16px;overflow:hidden}
.modal-head{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-bottom:2px solid var(--border)}
.modal-body{padding:14px}
@media (max-width:700px){ .footer{flex-direction:column;align-items:flex-start} }
