/* 选择区样式 —— 中文注释：食物候选“筹码”样式 */
.meal-draw { max-width: 880px; margin: 0 auto; padding: 24px 16px; }
.meal-draw h1 { font-size: 1.5rem; margin: 8px 0; }
.meal-draw .subtitle { color: #666; margin-bottom: 16px; }

.chips { display: flex; flex-wrap: wrap; gap: 10px; margin: 12px 0 18px; }
.chip { display: inline-flex; align-items: center; gap: 8px; padding: 10px 14px; border: 1px solid #ddd; border-radius: 999px; cursor: pointer; user-select: none; transition: transform .06s ease; background: #fff; }
/* 小图标 —— 中文：统一尺寸与对齐 */
.chip .ico { width: 18px; height: 18px; display: inline-flex; align-items: center; justify-content: center; font-size: 16px; line-height: 1; }
.chip:hover { transform: translateY(-1px); }
.chip[aria-pressed="true"] { background: #f0f7ff; border-color: #6aa6ff; }

.actions { display: flex; gap: 12px; margin: 8px 0 20px; }
.btn { padding: 12px 16px; border-radius: 10px; border: 1px solid #ddd; background: #fff; cursor: pointer; }
.btn.primary { background: #2b7cff; color: #fff; border-color: transparent; }
.btn:disabled { opacity: .5; cursor: not-allowed; }

/* 结果区 */
.result { margin-top: 18px; min-height: 120px; }
.result-card { border: 1px solid #eee; border-radius: 14px; padding: 16px; box-shadow: 0 2px 6px rgba(0,0,0,.05); background:#fff; }
.result-title { font-size: 1.1rem; margin-bottom: 8px; }

/* 老虎机风格滚动动画容器 */
.roller { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 8px; height: 48px; overflow: hidden; border-radius: 10px; border: 1px solid #eee; background: #fafafa; }
.reel { position: relative; height: 48px; overflow: hidden; }
.reel-inner { position: absolute; width: 100%; }
.reel-item { height: 48px; display: flex; align-items: center; justify-content: center; }

/* 动画关键帧：向下滚动 */
@keyframes reel-roll {
    0% { transform: translateY(0); }
    100% { transform: translateY(-100%); }
}
.rolling .reel-inner { animation: reel-roll 0.7s linear infinite; }

/* 减少动态支持：用户系统偏好少动效时，直接隐藏滚动动画 */
@media (prefers-reduced-motion: reduce) {
    .rolling .reel-inner { animation: none; }
}

/* 小屏优化 */
@media (max-width: 480px) {
    .meal-draw h1 { font-size: 1.25rem; }
    .chip { padding: 8px 12px; }
}

/* 筛选区样式（中文注释） */
.filters { margin: 10px 0 14px; display: grid; gap: 8px; }
.filter-group { display: grid; gap: 6px; }
.filter-title { font-size: .95rem; color: #444; }
.filter-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.diet-radios { display: flex; gap: 14px; align-items: center; }
.radio { display: inline-flex; align-items: center; gap: 6px; font-size: .95rem; }
/* 访问计数行 —— 中文：弱化颜色，小字号 */
.pv-line { margin: 8px 0 14px; color: #555; font-size: .95rem; }
.pv-line strong { color: #222; padding: 0 4px; }