.goods-container[data-v-312006a8]{background:#e8f4ff;min-height:100vh;padding-bottom:80px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.header-section[data-v-312006a8]{display:flex;padding:15px;gap:10px}.location[data-v-312006a8]{display:flex;align-items:center;font-size:14px;flex:1;gap:4px}.location img[data-v-312006a8]{width:16px;height:16px}.search-wrapper[data-v-312006a8]{flex:1;display:flex;align-items:center}.category-tabs[data-v-312006a8]{padding:10px 15px}.custom-tabs[data-v-312006a8]{background:hsla(0,0%,100%,.2);border-radius:10px;padding:4px}.tabs-nav[data-v-312006a8]{display:flex;overflow-x:auto;gap:8px;scrollbar-width:none}.tabs-nav[data-v-312006a8]::-webkit-scrollbar{display:none}.tab-item[data-v-312006a8]{padding:8px 16px;color:grey;border-radius:8px;cursor:pointer;font-size:14px;white-space:nowrap;transition:all .3s ease;background:transparent}.tab-item.is-active[data-v-312006a8]{background:#fff;color:#3686ff;font-weight:600;box-shadow:0 2px 6px rgba(0,0,0,.1)}.tab-item[data-v-312006a8]:hover:not(.is-active){color:#3686ff;background:hsla(0,0%,100%,.1)}.filter-row[data-v-312006a8]{display:flex;justify-content:space-around;padding:12px 15px;border-radius:12px 12px 0 0;font-size:14px;color:#666}.filter-item[data-v-312006a8]{display:flex;align-items:center;gap:4px}.filter-item van-icon[data-v-312006a8]{font-size:12px;color:#999}.goods-list-container[data-v-312006a8]{padding:0 15px;border-radius:15px;margin-top:-10px;position:relative;z-index:1}.goods-list[data-v-312006a8]{display:flex;flex-direction:column;gap:15px;padding:10px 0;margin-bottom:70px}.goods-item[data-v-312006a8]{display:flex;align-items:flex-start;background:#fff;border-radius:12px;padding:16px;box-shadow:0 4px 12px rgba(110,65,243,.08);transition:all .2s}.avatar-container[data-v-312006a8]{margin-right:16px;flex-shrink:0}.avatar[data-v-312006a8]{width:60px;height:60px;border-radius:50%;-o-object-fit:cover;object-fit:cover;border:1px solid #eaf5fe;box-shadow:0 2px 6px rgba(0,0,0,.1)}.info-section[data-v-312006a8]{flex:1;min-width:0}.title-row[data-v-312006a8]{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.goods-title[data-v-312006a8]{font-size:16px;font-weight:600;color:#333;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.distance[data-v-312006a8]{font-size:13px;color:#999;margin-left:12px;white-space:nowrap;flex-shrink:0}.teacher-info[data-v-312006a8]{font-size:13px;color:#9d7120;background:linear-gradient(90deg,#f8d49b,#fff1d4);padding:4px 10px;display:inline-block;margin-bottom:6px}.goods-price[data-v-312006a8]{font-size:16px;font-weight:700;color:#333;margin-bottom:8px}.goods-price.free[data-v-312006a8]{color:#ff4332}.action-row[data-v-312006a8]{display:flex;align-items:center;justify-content:space-between}.appoint-count[data-v-312006a8]{position:relative;right:25%;font-size:13px;color:#666}.reserve-btn[data-v-312006a8]{background:#e4f3ff;color:#00f;border:none;border-radius:6px;font-size:13px;cursor:pointer;transition:all .2s}.reserve-btn[data-v-312006a8]:hover{opacity:.9;transform:scale(1.02)}.fixed-bottom[data-v-312006a8]{position:fixed;bottom:0;left:0;right:0;padding:15px;z-index:100;display:flex;justify-content:center}.my-appoint-btn[data-v-312006a8]{flex:1;max-width:480px;height:48px;border:none;border-radius:24px;font-size:16px;font-weight:700;color:#fff;background-color:#3686ff;box-shadow:0 4px 8px rgba(0,0,0,.2);cursor:pointer;transition:all .3s}.my-appoint-btn[data-v-312006a8]:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(54,134,255,.4)}@media (max-width:768px){.title-row[data-v-312006a8]{margin-bottom:5px}.goods-title[data-v-312006a8]{font-size:15px}.distance[data-v-312006a8]{font-size:12px}.avatar[data-v-312006a8]{width:55px;height:55px}.reserve-btn[data-v-312006a8]{font-size:12px}}@media (max-width:480px){.title-row[data-v-312006a8]{margin-bottom:4px}.goods-title[data-v-312006a8]{font-size:14px}.distance[data-v-312006a8]{font-size:12px}.avatar[data-v-312006a8]{width:50px;height:50px}.reserve-btn[data-v-312006a8]{font-size:11px}}.filter-item span[data-v-312006a8]{transition:color .3s ease}.filter-item .active-color[data-v-312006a8]{color:#409eff}