 /* 全局样式 - 适配TikTok手机端 */
        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
            font-family: "Microsoft JhengHei", sans-serif;
        }
        /* 外层body：电脑浏览器背景，页面居中 */
        body {
            background-color: #f5f5f5; /* 浏览器两侧背景色 */
            color: #333;
            margin: 0;
            padding: 20px 0; /* 上下留空，更像手机展示 */
            overflow-x: hidden;
            display: flex;
            justify-content: center; /* 让内容居中 */
        }
        /* 核心：TikTok窄屏容器（固定390px，模拟手机） */
        .wrapper {
            width: 390px; /* TikTok常用手机宽度（iPhone 14/15尺寸） */
            min-height: 100vh;
            background-color: #fff; /* 手机屏幕背景 */
            box-shadow: 0 0 15px rgba(0,0,0,0.1); /* 加阴影更像手机 */
            position: relative;
            overflow-x: hidden;
        }
        /* 顶部导航栏 - 手机端像素适配 */
        .header {
            width: 100%;
            background-color: #fff;
            padding: 8px 12px;
            display: flex;
            justify-content: space-between;
            align-items: center; /* 恢复垂直居中，适配预留位 */
            position: sticky;
            top: 0;
            z-index: 10;
            box-shadow: 0 2px 5px rgba(0,0,0,0.1);
        }
        .header-logo {
            width: 100px !important;
            height: 30px !important;
            flex: none; /* 防止预留位被挤压 */
        }
        .header-icons {
            display: flex;
            gap: 12px;
            align-items: center; /* 图标垂直居中 */
        }
        /* 图标hover效果（可选） */
        .icon-user:hover, .icon-menu:hover {
            opacity: 0.8;
            cursor: pointer;
        }

        /* 顶部横幅图 - TikTok手机端高度适配 */
        .banner {
            width: 100%;
            height: 180px; /* 适配TikTok手机端横幅高度 */
            overflow: hidden;
            position: relative;
        }
        .banner-img {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }
        .banner-title {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            width: 150px; /* 手机端标题尺寸 */
        }

        /* 导航标签栏 - 手机端适配 */
        .tab-bar {
            width: 100%;
            background-color: #005bac;
            display: flex;
            overflow-x: auto;
            padding: 6px 0;
        }
        .tab-bar a {
            color: #fff;
            text-decoration: none;
            padding: 6px 12px;
            font-size: 13px;
            white-space: nowrap;
        }
        .tab-bar a.active {
            background-color: #fff;
            color: #005bac;
            border-radius: 3px;
        }

        /* 子分类标签 - 手机端适配 */
        .sub-tab {
            width: 100%;
            background-color: #8b4513;
            display: flex;
            padding: 8px 12px; /* 增大内边距 */
            gap: 15px;
            justify-content: flex-start; /* 标签居中 */
            box-shadow: 0 2px 5px rgba(0,0,0,0.1); /* 加阴影 */
        }
        .sub-tab a {
            color: #fff;
            text-decoration: none;
            font-size: 14px; /* 放大字体 */
            padding: 4px 8px; /* 增大点击区域 */
            border-radius: 3px; /* 圆角 */
            transition: color 0.2s; /* 过渡效果 */
        }
        .sub-tab a.active {
            color: #ffd700;
            font-weight: bold;
        }

        /* 核心：专属渐变背景容器 - 仅作用于花种标题+出发地+行程列表 */
        .gradient-bg-container {
            background: linear-gradient(
                to bottom, 
                #ffffff,    /* 顶部：纯白色 */
                #e8f4ff,    /* 上中：极浅蓝 */
                #cce5ff,    /* 正中间：中度浅蓝 */
                #e8f4ff,    /* 下中：极浅蓝 */
                #e8f4ff     /* 底部：极浅蓝，消除色差 */
            );
            width: 100%;
            min-height: calc(100vh - 250px); /* 增加高度，覆盖更多区域 */
            padding-bottom: 0;
            margin-bottom: 0;
        }
        .gradient-bg-container.sakura {
            background: linear-gradient(
                to bottom, 
                #ffffff,
                #ffe8f0,
                #ffd8e8,
                #ffe8f0,
                #ffe8f0
            );
        }
        .gradient-bg-container.all-flower {
            background: linear-gradient(
                to bottom, 
                #ffffff,    /* 顶部：纯白色，和导航/横幅衔接自然 */
                #f5fcf0,    /* 上中：极浅青柠绿，贴近花瓣嫩感 */
                #e6f7e0,    /* 正中间：柔和豆绿色，百花主题核心色调 */
                #f0faf5,    /* 下中：浅薄荷绿，过渡更丝滑 */
                #f5fcf0     /* 底部：极浅青柠绿，消除色差无断层 */
            );
           
        }
        /* 花种主标题 - 手机端适配 */
        .flower-title {
            width: 100%;
            text-align: center;
            padding: 15px 0;
        }
        .flower-title-img {
            width: 100px; /* 手机端图标尺寸 */
        }

        /* 出发地标签 - 手机端适配 */
        .depart-tab {
            width: 100%;
            display: flex;
            justify-content: center;
            gap: 8px;
            padding-bottom: 12px;
        }
        .depart-tab a {
            border: 1px solid #005bac;
            color: #005bac;
            text-decoration: none;
            padding: 4px 10px;
            border-radius: 20px;
            font-size: 12px;
        }
        .depart-tab a.active {
            background-color: #005bac;
            color: #fff;
        }

        /* 行程卡片区域 - 可下滑核心，手机端适配 */
        .trip-list {
            width: calc(100% - 80px); /* 总宽度 = 100% - 左右各30px */
            margin: 0 auto 0 auto; /* 上下0，左右auto实现居中 */
            padding: 0 0 70px 0; /* 移除左右内边距，保留底部70px内边距 */
            margin-bottom: 0; 
            display: flex;
            flex-direction: column;
            gap: 15px;
            overflow-y: auto;
        }
        .trip-list-horizontal {
            width: calc(100% - 80px);
            margin: 0 auto;
            padding: 0 0 70px 0;
            margin-bottom: 0; 
            display: flex;
            flex-direction: row;
            flex-wrap: nowrap;
            gap: 15px;
            overflow-x: scroll;
            overflow-y: hidden;
            -webkit-overflow-scrolling: touch;
            padding-bottom: 10px; /* 给滚动条预留空间 */
        }
        .trip-list-horizontal::-webkit-scrollbar {
            height: 6px;
        }
        .trip-list-horizontal::-webkit-scrollbar-track {
            background: #fff4f8;
            border-radius: 3px;
        }
        .trip-list-horizontal::-webkit-scrollbar-thumb {
            background: rgba(0,0,0,0.1);
            border-radius: 3px;
        }

        /* 3. 横向列表的卡片样式（规范尺寸，无需行内样式） */
        .trip-list-horizontal .trip-card {
            width: 320px !important; /* 固定宽度 */
            flex-shrink: 0 !important; /* 禁止压缩（必加） */
            background-color: #fff;
            border-radius: 12px; 
            overflow: hidden;
            box-shadow: 0 2px 8px rgba(0,0,0,0.1);
            position: relative;
            padding-top: 5px;
        }
        .trip-card {
            background-color: #fff;
            border-radius: 8px;
            overflow: hidden;
            box-shadow: 0 2px 6px rgba(0,0,0,0.1);
        }
        .card-location {
            background-color: #005bac;
            color: #fff;
            font-size: 11px;
            padding: 2px 6px;
            display: inline-block;
            margin: 8px 0 0 8px;
            border-radius: 3px;
        }
        .card-img {
            width: 100%;
            height: 160px; /* TikTok手机端卡片图片高度 */
            object-fit: cover;
        }
        .card-title {
            padding: 8px 12px;
            font-size: 14px;
            font-weight: bold;
            color: #8b4513;
        }
        .card-desc {
            padding: 0 12px 8px;
            font-size: 12px;
            line-height: 1.5;
            color: #666;
        }
        .card-price {
            padding: 8px 12px;
            text-align: right;
            font-size: 15px;
            color: #005bac;
            font-weight: bold;
        }

        /* 底部LINE跳转区 - TikTok手机端固定底部（仅在窄屏内） */
        .line-section {
            width: 100%;
            height: 55px;
            background-color: #00c300;
            position: fixed;
            bottom: 20px; /* 对应body的padding-top，不贴浏览器底部 */
            left: 50%;
            transform: translateX(-50%); /* 居中 */
            width: 390px; /* 和窄屏同宽 */
            display: flex;
            align-items: center;
            justify-content: center;
            z-index: 9;
        }
        .line-btn {
            color: #fff;
            text-decoration: none;
            font-size: 16px;
            font-weight: bold;
        }

        /* 底部版权区 - 手机端适配，在下滑最底部显示 */
        .footer {
            width: 100%;
            background-color: #585555;
            color: #fff;
            padding: 12px;
            font-size: 11px;
            text-align: center;
            margin-top: 0; /* 取消顶部外边距，和渐变容器无缝衔接 */
            margin-bottom: 60px; /* 保留避开LINE栏的样式 */
        }

        /* 适配小屏手机（如iPhone SE） */
        @media (max-width: 390px) {
            .wrapper {
                width: 100%; /* 真实手机上占满屏幕 */
                padding: 0;
            }
            .gradient-bg-container {
                min-height: calc(100vh - 320px); /* 适配小屏高度 */
            }
            .line-section {
                width: 100%; /* 真实手机上LINE栏占满底部 */
                bottom: 0; /* 真实手机上贴底部 */
            }
            .banner {
                height: 150px;
            }
            .card-img {
                height: 140px;
            }
            .line-btn {
                font-size: 14px;
            }
        }
        /* 定义背景图淡入缩放动画 */
        @keyframes bannerBgFade {
            0% {
                opacity: 0;
                transform: scale(1.05); /* 初始放大 */
            }
            100% {
                opacity: 1;
                transform: scale(1); /* 恢复正常大小 */
            }
        }
        /* 定义标题图悬浮动画（淡入+上移+轻微缩放） */
        @keyframes bannerTitleFloat {
             0% {
                    opacity: 0;
                    /* 初始状态：居中 + 轻微上移（仅容器动，文字仍居中） */
                    transform: translate(-50%, -50%) translateY(-5px);
                }
            80% {
                    opacity: 1;
                    /* 动画中间：居中 + 轻微放大（文字仍居中） */
                    transform: translate(-50%, -50%) scale(1.05);
             }
            100% {
                    opacity: 1;
                    /* 最终状态：纯居中，无任何偏移 */
                    transform: translate(-50%, -50%) scale(1);
            }
        }
        /* 可选：标题图持续悬浮动效（TikTok常用） */
        .banner-title:hover {
            animation: bannerTitlePulse 2s ease-in-out infinite;
        }
        @keyframes bannerTitlePulse {
            0% { transform: translate(-50%, -50%) scale(1); }
            50% { transform: translate(-50%, -55%) scale(1.03); }
            100% { transform: translate(-50%, -50%) scale(1); }
        }
         @media (max-width: 390px) {
        #fixed-line-btn {
            /* 真实手机上，页面占满屏幕，直接贴右侧 */
            right: 15px !important; 
            bottom: 20px !important;
        }
        
        /* 隐藏所有浏览器的滚动条 */
        #scroll-container::-webkit-scrollbar {
            display: none !important;
        }
        /* 强制确保滑动容器不被覆盖 */
        #scroll-container {
            overflow-x: scroll !important;
            overflow-y: hidden !important;
        }
        /* 强制确保列表横向排列 */
        #card-list {
            display: flex !important;
            flex-wrap: nowrap !important;
            width: max-content !important;
        }
        /* 强制确保卡片固定宽度 */
        .trip-card {
            width: 280px !important;
            flex: 0 0 auto !important;
        }
        /* 针对外层滑动容器的滚动条（需给滑动容器加个class，比如叫custom-scroll） */
        .custom-scroll {
            overflow-x: scroll;
            overflow-y: hidden;
            padding-bottom: 8px; /* 给滚动条留空间 */
        }

        /* Chrome/Safari/Edge 滚动条轨道（背景） */
        .custom-scroll::-webkit-scrollbar {
            height: 6px; /* 滚动条高度（横向） */
        }
        .custom-scroll::-webkit-scrollbar-track {
            background: #fff4f8; /* 轨道背景：和你页面的浅粉色渐变匹配 */
            border-radius: 3px;
        }

        /* Chrome/Safari/Edge 滚动条滑块（拖动块） */
        .custom-scroll::-webkit-scrollbar-thumb {
            background: #ffccd5; /* 滑块颜色：樱花粉 */
            border-radius: 3px;
            transition: background 0.2s;
        }
        .custom-scroll::-webkit-scrollbar-thumb:hover {
            background: #ffb3c1; /* 滑块 hover 时加深 */
        }

        /* Firefox 滚动条（仅支持部分样式） */
        .custom-scroll {
            scrollbar-width: thin; /* 滑块宽度：细 */
            scrollbar-color: #ffccd5 #fff4f8; /* 滑块颜色 + 轨道颜色 */
        }
}