/* Pandora Style Search Overlay CSS */
        .ts-search-overlay {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 0; /* Hidden by default */
            background-color: #fff;
            z-index: 10000;
            overflow: hidden;
            transition: height 0.3s ease-in-out, opacity 0.3s ease;
            opacity: 0;
            visibility: hidden;
        }

        .ts-search-overlay .container {
            padding-top: 110px;
        }

        .ts-search-overlay.open {
            height: 440px; /* Pandora style drops down */
            opacity: 1;
            visibility: visible;
            box-shadow: 0 10px 30px rgba(0,0,0,0.1);
        }

        /* 电脑版：关闭按钮也在搜索按钮右侧，样式一致 */
        .ts-search-close {
            background: none;
            border: none;
            border-bottom: 2px solid #e5e5e5 !important;
            border-radius: 0;
            cursor: pointer;
            padding: 0 15px;
            color: #000;
            transition: transform 0.3s, border-color 0.2s;
            height: 100%;
            display: inline-flex;
            align-items: center;
            justify-content: center;
        }
        
        .ts-search-close:hover {
            transform: rotate(90deg);
        }

        .ts-search-input:focus ~ .input-group-append .ts-search-close,
        .ts-search-form:focus-within .ts-search-close {
            border-bottom-color: #000 !important;
        }

        .ts-search-input {
            border: none;
            border-bottom: 2px solid #e5e5e5 !important;
            border-radius: 0;
            font-size: 24px;
            padding: 15px 0;
            background: transparent;
            box-shadow: none !important;
            font-weight: 300;
            color: #000;
        }

        .ts-search-form {
            margin-top: 10px;
        }

        .ts-search-input::placeholder {
            color: #999;
        }

        .ts-search-input:focus {
            border-bottom-color: #000 !important;
        }

        .ts-search-submit {
            background: none;
            border: none;
            border-bottom: 2px solid #e5e5e5 !important;
            color: #000;
            padding: 0 15px;
            border-radius: 0;
            transition: border-color 0.2s, background-color 0.2s;
            outline: none;
            box-shadow: none;
        }

        .ts-search-group {
            align-items: stretch;
        }

        .ts-search-group .input-group-append {
            background: transparent;
            display: flex;
        }

        .ts-search-submit {
            height: 100%;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            box-shadow: none;
        }

        .ts-search-input:focus ~ .input-group-append .ts-search-submit,
        .ts-search-form:focus-within .ts-search-submit {
             border-bottom-color: #000 !important;
        }

        .ts-search-submit:hover {
            color: #555;
        }

        .ts-search-tag {
            display: inline-block;
            margin: 0 10px;
            color: #000;
            text-decoration: none;
            font-size: 14px;
            border-bottom: 1px solid transparent;
            transition: border-color 0.2s;
        }

        .ts-search-tag:hover {
            border-bottom-color: #000;
            text-decoration: none;
            color: #000;
        }
        
        /* Backdrop */
        .ts-search-backdrop {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: rgba(0,0,0,0.4);
            z-index: 9999;
            opacity: 0;
            visibility: hidden;
            transition: opacity 0.3s;
        }
        .ts-search-backdrop.open {
            opacity: 1;
            visibility: visible;
        }

        /* ── 深色模式搜索覆层 ── */
        [data-theme="dark"] .ts-search-overlay,
        .theme-dark .ts-search-overlay {
            background-color: #1a1a1a;
        }
        [data-theme="dark"] .ts-search-input,
        .theme-dark .ts-search-input {
            color: #fff;
            border-bottom-color: #555 !important;
        }
        [data-theme="dark"] .ts-search-input::placeholder,
        .theme-dark .ts-search-input::placeholder {
            color: #888;
        }
        [data-theme="dark"] .ts-search-input:focus,
        .theme-dark .ts-search-input:focus {
            border-bottom-color: #fff !important;
        }
        [data-theme="dark"] .ts-search-submit,
        .theme-dark .ts-search-submit {
            color: #fff;
            border-bottom-color: #555 !important;
            outline: none;
            box-shadow: none;
        }
        [data-theme="dark"] .ts-search-submit:focus,
        [data-theme="dark"] .ts-search-submit:focus-visible,
        .theme-dark .ts-search-submit:focus,
        .theme-dark .ts-search-submit:focus-visible {
            outline: none !important;
            box-shadow: none !important;
        }
        [data-theme="dark"] .ts-search-form:focus-within .ts-search-submit,
        .theme-dark .ts-search-form:focus-within .ts-search-submit {
            border-bottom-color: #fff !important;
        }
        [data-theme="dark"] .ts-search-close,
        .theme-dark .ts-search-close {
            color: #fff;
            border-bottom-color: #555 !important;
        }
        [data-theme="dark"] .ts-search-close:focus,
        [data-theme="dark"] .ts-search-close:focus-visible,
        .theme-dark .ts-search-close:focus,
        .theme-dark .ts-search-close:focus-visible {
            outline: none !important;
            box-shadow: none !important;
        }
        [data-theme="dark"] .ts-search-form:focus-within .ts-search-close,
        .theme-dark .ts-search-form:focus-within .ts-search-close {
            border-bottom-color: #fff !important;
        }
        [data-theme="dark"] .ts-search-tag,
        .theme-dark .ts-search-tag {
            color: #bbb;
        }
        [data-theme="dark"] .ts-search-tag:hover,
        .theme-dark .ts-search-tag:hover {
            color: #fff;
            border-bottom-color: #fff;
        }
        [data-theme="dark"] .ts-popular-searches .text-muted,
        .theme-dark .ts-popular-searches .text-muted {
            color: #888 !important;
        }