    /* Food cards */
    .fg{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;margin-bottom:16px}
    .fc{background:var(--surface);backdrop-filter:blur(8px);border-radius:var(--radius);
      padding:12px;border:1px solid rgba(255,255,255,0.06);cursor:pointer;transition:all .2s;position:relative}
    .fc:hover{border-color:rgba(251,191,36,0.25);transform:translateY(-2px)}
    .fc.sel{border-color:var(--green);box-shadow:0 0 14px rgba(52,211,153,0.12)}
    .fc .pb{position:absolute;top:8px;right:8px;font-size:9px;padding:2px 7px;border-radius:8px;
      background:rgba(251,191,36,0.15);color:var(--gold);font-weight:600}
    .fc .fn{font-size:13px;font-weight:700;margin-bottom:2px}
    .fc .fg2{font-size:11px;color:var(--accent);margin-bottom:4px}
    .fc .fi{font-size:12px;color:var(--text-dim);line-height:1.6}
    .fc .fp{margin-top:4px;font-size:12px;color:var(--gold);font-weight:700}
    .fc .sb{margin-top:6px;width:100%;padding:5px;font-family:var(--font);
      border:1px solid rgba(255,255,255,0.08);background:transparent;
      color:var(--text-dim);border-radius:6px;cursor:pointer;font-size:12px;transition:all .2s}
    .fc .sb:hover{border-color:var(--green);color:var(--green)}
    .fc.sel .sb{background:var(--green);color:#000;border-color:var(--green)}
    .fexp{display:none;margin-top:6px;padding-top:6px;border-top:1px solid rgba(255,255,255,0.05);font-size:12px;color:var(--text-dim);line-height:1.7}
    .fc.expanded .fexp{display:block}

    /* Detailed food cards for food page */
    .fd-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px}
    .fd-card{background:var(--surface);backdrop-filter:blur(8px);border-radius:var(--radius);
      border:1px solid rgba(255,255,255,0.06);overflow:hidden;transition:all .25s;cursor:pointer}
    .fd-card:hover{border-color:rgba(251,191,36,0.25);transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,0,0,0.2)}
    .fd-img{height:140px;background-size:cover;background-position:center;position:relative}
    .fd-img::after{content:'';position:absolute;bottom:0;left:0;right:0;height:50%;background:linear-gradient(transparent,rgba(18,18,32,0.8))}
    .fd-badge{position:absolute;top:8px;right:8px;font-size:9px;padding:3px 8px;border-radius:8px;
      background:rgba(251,191,36,0.9);color:#000;font-weight:700;z-index:1}
    .fd-rating{position:absolute;top:8px;left:8px;font-size:10px;padding:2px 7px;border-radius:6px;
      background:rgba(52,211,153,0.9);color:#000;font-weight:700;z-index:1}
    /* 分類 icon — 與地圖 marker 同款（由 js/food.js 依分類注入），點擊在地圖標記與美食卡片之間連動辨識 */
    .fd-cat-ico{position:absolute;bottom:8px;left:8px;width:28px;height:28px;border-radius:8px;
      background:var(--gold);border:2px solid rgba(255,255,255,0.85);display:flex;align-items:center;justify-content:center;
      box-shadow:0 2px 8px rgba(0,0,0,0.4),0 0 12px rgba(251,191,36,0.25);z-index:2}
    .fd-cat-ico svg{width:16px;height:16px}
    .fd-body{padding:14px}
    .fd-name{font-size:15px;font-weight:700;margin-bottom:2px}
    .fd-sub{font-size:11px;color:var(--accent);margin-bottom:8px}
    .fd-desc{font-size:12px;color:var(--text-dim);line-height:1.6;margin-bottom:10px}
    .fd-info{display:grid;grid-template-columns:auto 1fr;gap:4px 10px;font-size:12px}
    .fd-info .fd-label{color:var(--text);font-weight:600;white-space:nowrap}
    .fd-info .fd-val{color:var(--text-dim)}
    .fd-price{margin-top:10px;padding-top:8px;border-top:1px solid rgba(255,255,255,0.06);
      font-size:14px;color:var(--gold);font-weight:700}
    .fd-dishes{margin-top:8px;font-size:12px;color:var(--text-dim);line-height:1.7}
    .fd-dishes b{color:var(--text);font-weight:600}
