/* ===== 宠物禁食清单 — 马卡龙暖色系 (与 pet-feeding 一致) ===== */

html, body { background: #f5f5f5; }
.tab-bar { position: relative; top: auto; left: auto; right: auto; display: flex; align-items: center; }
.tab-bar .tab-btn.active::after { background: rgb(108, 168, 232); opacity: 0.75; }
.tab-back {
    position: absolute; left: 0.16rem; top: 50%; transform: translateY(-50%);
    border: 0; background: transparent; color: #666;
    padding: 0.16rem 0.1rem; cursor: pointer; line-height: 1;
    display: flex; align-items: center; text-decoration: none;
    -webkit-tap-highlight-color: transparent;
}
.tab-back svg { width: 0.52rem; height: 0.52rem; }
body {
    margin: 0;
    padding-bottom: 0.5rem; box-sizing: border-box;
}
#scroll-root {
    display: block;
    overflow-y: visible; background: #f5f5f5;
    padding-bottom: 0; height: auto;
}
#scroll-root::-webkit-scrollbar { display: none; }
.container {
    max-width: 23.52rem; width: 100%; margin: 0 auto;
    padding: 0.21rem 0.42rem 1.2rem 0.42rem; box-sizing: border-box;
}
.card {
    background: #fff; border-radius: 0.47rem;
    padding: 0.31rem; margin-bottom: 0.42rem;
}

/* 简介卡片 */
.intro-card {
    display: flex; align-items: center; gap: 0.31rem;
    background: linear-gradient(135deg, #E7F2FB, #F0F7FD);
    border: 0.02rem solid #B8D9F5;
    border-radius: 0.47rem; padding: 0.31rem;
}
.intro-text h2 { margin: 0 0 0.1rem; font-size: 0.42rem; color: #3A76C4; }
.intro-text p { margin: 0; font-size: 0.29rem; color: #666; line-height: 1.6; }
.intro-disclaimer { margin-top: 0.16rem !important; font-size: 0.28rem !important; color: #9E9E9E !important; word-break: break-all; }
.intro-text .intro-brand { margin: 0.31rem 0 0; font-size: 0.28rem; color: #3A76C4; text-align: right; }

/* 宠物类型切换 */
.pet-type-tabs {
    display: flex; gap: 0.16rem; overflow-x: auto;
    padding: 0.08rem 0; scrollbar-width: none;
}
.pet-type-tabs::-webkit-scrollbar { display: none; }
.pet-type-tab {
    flex: 1 1 0; cursor: pointer; padding: 0.21rem 0.16rem;
    border-radius: 9999px; border: 0.02rem solid #e8e8e8;
    background: #fff; font-size: 0.3rem; font-family: inherit;
    text-align: center; transition: all 0.2s; color: #888;
    white-space: nowrap; user-select: none;
    -webkit-tap-highlight-color: transparent;
}
.pet-type-tab.active {
    background: #6CA8E8;
    border-color: #B8D9F5; color: #fff; font-weight: 600;
}

/* 搜索框 */
.search-row {
    padding: 0 0.16rem 0.21rem 0.16rem;
}
.search-input {
    width: 100%; padding: 0.24rem 0.31rem;
    border: 0.02rem solid #e0e0e0; border-radius: 999px;
    font-size: 0.3rem; color: #333; background: #fafafa;
    outline: none; font-family: inherit;
    box-sizing: border-box;
    -webkit-appearance: none;
}
.search-input:focus { border-color: #B8D9F5; background: #fff; }
.search-input::placeholder { color: #aaa; }

/* 食物列表项 */
.food-item {
    display: flex; align-items: flex-start; gap: 0.21rem;
    padding: 0.26rem 0.21rem;
    margin-bottom: 0.16rem;
    border-radius: 0.21rem;
    transition: background 0.15s;
}
.food-item:last-child { margin-bottom: 0; }
.food-item:active { background: #F0F7FD; }

.food-icon {
    font-size: 0.52rem; min-width: 0.73rem; text-align: center;
    line-height: 1.2; flex-shrink: 0;
}
.food-info { flex: 1; min-width: 0; }
.food-name-row {
    display: flex; align-items: center; gap: 0.16rem;
    margin-bottom: 0.06rem;
}
.food-name {
    font-size: 0.31rem; font-weight: 600; color: #333;
}
.food-eng {
    font-size: 0.24rem; color: #bbb; margin-left: 0.08rem;
    white-space: nowrap;
}
.food-badge {
    font-size: 0.24rem; padding: 0.04rem 0.13rem;
    border-radius: 999px; font-weight: 600; white-space: nowrap;
    flex-shrink: 0;
}
.badge-danger { background: #FFE0E0; color: #C62828; }
.badge-warning { background: #FFF3E0; color: #E65100; }
.badge-caution { background: #FFF8E1; color: #F57F17; }

.food-symptoms {
    font-size: 0.26rem; color: #888; line-height: 1.5;
    margin-bottom: 0.04rem;
}
.food-why {
    font-size: 0.24rem; color: #bbb; line-height: 1.4;
    margin-top: 0.04rem;
}
.food-why b { color: #999; font-weight: 500; }

/* 分类标题 */
.food-category-title {
    padding: 0.31rem 0.21rem 0.16rem 0.21rem;
    font-size: 0.31rem; font-weight: 700;
    color: #3A76C4;
    display: flex; align-items: center; gap: 0.13rem;
}
.food-category-title::before {
    content: ''; width: 0.08rem; height: 0.37rem;
    border-radius: 999px; background: #6CA8E8;
}

/* 毒性等级图例 */
.legend-row {
    display: flex; gap: 0.16rem; flex-wrap: wrap;
    padding: 0.16rem 0.21rem;
    font-size: 0.24rem; color: #999;
}
.legend-item {
    display: flex; align-items: center; gap: 0.08rem;
}
.legend-dot {
    width: 0.21rem; height: 0.21rem; border-radius: 50%;
}
.legend-dot.ld-danger { background: #E57373; }
.legend-dot.ld-warning { background: #FFB74D; }
.legend-dot.ld-caution { background: #FFD54F; }

/* 知识卡片 */
.knowledge-card {
    background: linear-gradient(135deg, #E7F2FB, #F0F7FD);
    border: 0.02rem solid #B8D9F5;
    border-radius: 0.47rem; padding: 0.31rem;
}
.knowledge-card .card-title {
    font-size: 0.34rem; font-weight: 600; color: #3A76C4;
    margin-bottom: 0.21rem;
}
.knowledge-card p {
    margin: 0 0 0.1rem; font-size: 0.28rem; color: #666; line-height: 1.7;
}
.knowledge-card p a {
    color: #3A76C4; text-decoration: none;
}

/* 参考来源 */
.ref-card {
    background: #fff; border-radius: 0.47rem;
    padding: 0.31rem; margin-bottom: 0.42rem;
    border: 0.02rem solid #f0f0f0;
}
.ref-card .card-title {
    font-size: 0.32rem; font-weight: 600; color: #333;
    margin-bottom: 0.21rem;
}
.ref-item {
    display: flex; gap: 0.13rem; margin-bottom: 0.13rem;
    font-size: 0.26rem; color: #888; line-height: 1.5;
}
.ref-item .ref-tag {
    background: #f5f5f5; color: #999; font-size: 0.24rem;
    padding: 0.02rem 0.13rem; border-radius: 999px;
    flex-shrink: 0; margin-top: 0.02rem;
}
.ref-item a { color: #1976d2; text-decoration: none; }

/* 空结果 */
.empty-state {
    text-align: center; padding: 0.63rem 0.31rem;
    color: #ccc; font-size: 0.29rem;
}
.empty-state .empty-icon { font-size: 0.63rem; margin-bottom: 0.16rem; }
