/* extracted from templates 20260924095213 */

 @media (max-width: 768px) {
 .m-tabbar-v2 {
 justify-content: space-around !important;
 padding: 6px 4px calc(6px + env(safe-area-inset-bottom)) 4px !important;
 }
 .m-tabbar-v2 .m-tab {
 flex: 1;
 padding: 4px 0 !important;
 }
 .m-tabbar-v2 .m-tab-center {
 position: relative;
 padding-top: 0 !important;
 }
 .m-tabbar-v2 .m-tab-center-btn {
 width: 48px;
 height: 48px;
 border-radius: 50%;
 background: linear-gradient(135deg, var(--ds-primary-500), var(--ds-primary-500));
 color: var(--ds-text-inverse);
 display: flex;
 align-items: center;
 justify-content: center;
 font-size: 18px;
 margin: -20px auto 4px;
 box-shadow: 0 4px 12px rgba(59, 130, 246, 0.4);
 border: 3px solid #fff;
 transition: transform 0.2s, box-shadow 0.2s;
 }
 .m-tabbar-v2 .m-tab-center:active .m-tab-center-btn {
 transform: scale(0.92);
 box-shadow: 0 2px 6px rgba(59, 130, 246, 0.3);
 }
 .m-tabbar-v2 .m-tab-center i {
 display: none;
 }
 .m-tabbar-v2 .m-tab-center .m-tab-center-btn i {
 display: inline-block;
 }
 .m-tabbar-v2 .m-tab span {
 font-size: 0.75rem !important;
 }
 /* 适配安全区域 */
 body {
 padding-bottom: calc(60px + env(safe-area-inset-bottom)) !important;
 }
 }
 
 .search-dropdown {
 position: absolute;
 top: 100%;
 left: 0;
 right: 0;
 background: var(--ds-neutral-0);
 border-radius: 0 0 12px 12px;
 box-shadow: 0 8px 24px rgba(0,0,0,0.12);
 border: 1px solid var(--ds-neutral-200);
 border-top: none;
 max-height: 480px;
 overflow-y: auto;
 z-index: 100;
 margin-top: -2px;
 }
 .sg-group { padding: 8px 0; border-bottom: 1px solid var(--ds-neutral-100); }
 .sg-group:last-of-type { border-bottom: none; }
 .sg-group-title {
 padding: 6px 16px;
 font-size: 0.75rem;
 font-weight: 600;
 color: var(--ds-neutral-400);
 display: flex;
 align-items: center;
 gap: 6px;
 }
 .sg-group-icon {
 width: 18px; height: 18px; border-radius: 4px;
 display: flex; align-items: center; justify-content: center;
 font-size: 12px;
 }
 .sg-list { display: flex; flex-direction: column; }
 .sg-item {
 display: flex;
 align-items: center;
 justify-content: space-between;
 padding: 8px 16px;
 text-decoration: none;
 color: inherit;
 transition: background 0.15s;
 font-size: 0.85rem;
 }
 .sg-item:hover { background: #f9fafb; }
 .sg-item-title { flex: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; margin-right: 12px; }
 .sg-item-price { color: var(--ds-danger-500); font-weight: 600; font-size: 0.8rem; flex-shrink: 0; }
 .sg-empty {
 padding: 32px 16px;
 text-align: center;
 }
 .sg-footer {
 padding: 10px 16px;
 border-top: 1px solid var(--ds-neutral-100);
 text-align: center;
 }
 .sg-view-all {
 color: var(--primary-color, var(--ds-primary-500));
 font-size: 0.8rem;
 text-decoration: none;
 display: inline-flex;
 align-items: center;
 gap: 4px;
 }
 .sg-view-all:hover { text-decoration: underline; }
 
 /* 搜索关键词高亮 */
 .sg-highlight {
 background: var(--ds-warning-100);
 color: var(--ds-warning-600);
 padding: 0 2px;
 border-radius: 2px;
 font-weight: 600;
 }
 body[data-theme="dark"] .sg-highlight {
 background: var(--ds-warning-700);
 color: var(--ds-warning-500);
 }
 
 /* 搜索历史 */
 .sg-history-list {
 display: flex;
 flex-direction: column;
 }
 .sg-history-item {
 display: flex;
 align-items: center;
 padding: 8px 16px;
 color: var(--text-secondary, var(--ds-neutral-500));
 font-size: 0.85rem;
 text-decoration: none;
 transition: background 0.2s;
 }
 .sg-history-item:hover {
 background: var(--light-gray, #f9fafb);
 color: var(--primary-color, var(--ds-primary-500));
 }
 
 /* 热门搜索标签 */
 .sg-hot-tags {
 display: flex;
 flex-wrap: wrap;
 gap: 8px;
 padding: 0 16px 12px;
 }
 .sg-hot-tag {
 display: inline-block;
 padding: 4px 12px;
 background: var(--light-gray, var(--ds-neutral-100));
 border-radius: 20px;
 font-size: 0.78rem;
 color: var(--text-secondary, var(--ds-neutral-500));
 text-decoration: none;
 transition: all 0.2s;
 }
 .sg-hot-tag:hover {
 background: var(--lc-primary-lighter);
 color: var(--lc-primary);
 transform: translateY(-1px);
 }
 body[data-theme="dark"] .sg-hot-tag:hover {
 background: #1e3a5f;
 color: var(--ds-primary-400);
 }
 
 /* 移动端搜索结果 */
 .m-search-results {
 padding: 12px 0;
 max-height: calc(100vh - 160px);
 overflow-y: auto;
 }
 .m-search-results .sg-group { padding: 6px 0; }
 .m-search-results .sg-group-title { padding: 6px 16px; }
 .m-search-results .sg-item { padding: 10px 16px; font-size: 0.9rem; }
 .m-search-results .sg-footer { padding: 12px 16px; }
 
 .toast {
 min-width: 280px;
 max-width: 400px;
 padding: 14px 18px 14px 44px;
 background: var(--ds-neutral-0);
 border-radius: 10px;
 box-shadow: 0 8px 30px rgba(0,0,0,0.12), 0 2px 8px rgba(0,0,0,0.08);
 font-size: 0.88rem;
 line-height: 1.5;
 position: relative;
 pointer-events: auto;
 transform: translateX(120%);
 opacity: 0;
 transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1);
 border-left: 4px solid;
 color: var(--ds-neutral-800);
 }
 .toast.show {
 transform: translateX(0);
 opacity: 1;
 }
 .toast.hide {
 transform: translateX(120%);
 opacity: 0;
 }
 .toast-success { border-left-color: var(--ds-success-500); }
 .toast-success .toast-icon { color: var(--ds-success-500); background: var(--ds-success-100); }
 .toast-error { border-left-color: var(--ds-danger-500); }
 .toast-error .toast-icon { color: var(--ds-danger-500); background: var(--ds-danger-100); }
 .toast-warning { border-left-color: var(--ds-warning-500); }
 .toast-warning .toast-icon { color: var(--ds-warning-500); background: var(--ds-warning-100); }
 .toast-info { border-left-color: var(--lc-primary); }
 .toast-info .toast-icon { color: var(--lc-primary); background: var(--lc-primary-lighter); }
 .toast-icon {
 position: absolute;
 left: 14px;
 top: 50%;
 transform: translateY(-50%);
 width: 24px;
 height: 24px;
 border-radius: 50%;
 display: flex;
 align-items: center;
 justify-content: center;
 font-size: 12px;
 }
 .toast-close {
 position: absolute;
 right: 10px;
 top: 10px;
 background: none;
 border: none;
 color: var(--ds-neutral-400);
 cursor: pointer;
 font-size: 14px;
 padding: 2px 6px;
 border-radius: 4px;
 }
 .toast-close:hover { background: var(--ds-neutral-50); color: var(--ds-neutral-700); }
 
 @media (max-width: 640px) {
 .toast { min-width: auto; max-width: calc(100vw - 40px); }
 }
 