summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--requirements-dev.txt2
-rw-r--r--requirements.txt6
-rw-r--r--searx/data/engines_languages.json313
-rw-r--r--searx/engines/9gag.py77
-rw-r--r--searx/engines/bing_videos.py2
-rw-r--r--searx/engines/duden.py7
-rw-r--r--searx/engines/qwant.py113
-rw-r--r--searx/engines/twitter.py75
-rw-r--r--searx/locales.py147
-rw-r--r--searx/plugins/limiter.py2
-rw-r--r--searx/settings.yml46
-rw-r--r--searx/static/themes/simple/css/searxng-rtl.min.css.map2
-rw-r--r--searx/static/themes/simple/css/searxng.min.css.map2
-rw-r--r--searx/static/themes/simple/src/generated/pygments.less2
-rw-r--r--searx/templates/simple/opensearch.xml27
-rw-r--r--searx/translations/af/LC_MESSAGES/messages.mobin3863 -> 9692 bytes
-rw-r--r--searx/translations/af/LC_MESSAGES/messages.po164
-rw-r--r--searx/translations/bg/LC_MESSAGES/messages.mobin18517 -> 19625 bytes
-rw-r--r--searx/translations/bg/LC_MESSAGES/messages.po25
-rw-r--r--searx/translations/es/LC_MESSAGES/messages.mobin17877 -> 17877 bytes
-rw-r--r--searx/translations/es/LC_MESSAGES/messages.po4
-rw-r--r--searx/translations/et/LC_MESSAGES/messages.mobin14415 -> 14739 bytes
-rw-r--r--searx/translations/et/LC_MESSAGES/messages.po15
-rw-r--r--searx/translations/fil/LC_MESSAGES/messages.mobin14249 -> 15597 bytes
-rw-r--r--searx/translations/fil/LC_MESSAGES/messages.po46
-rw-r--r--searx/translations/he/LC_MESSAGES/messages.mobin16746 -> 19290 bytes
-rw-r--r--searx/translations/he/LC_MESSAGES/messages.po33
-rw-r--r--searx/translations/hr/LC_MESSAGES/messages.mobin12552 -> 12729 bytes
-rw-r--r--searx/translations/hr/LC_MESSAGES/messages.po9
-rw-r--r--searx/translations/it/LC_MESSAGES/messages.mobin16749 -> 17370 bytes
-rw-r--r--searx/translations/it/LC_MESSAGES/messages.po11
-rw-r--r--searx/translations/ml/LC_MESSAGES/messages.mobin0 -> 1032 bytes
-rw-r--r--searx/translations/ml/LC_MESSAGES/messages.po1106
-rw-r--r--searx/translations/nb_NO/LC_MESSAGES/messages.mobin14833 -> 15727 bytes
-rw-r--r--searx/translations/nb_NO/LC_MESSAGES/messages.po28
-rw-r--r--searx/translations/pl/LC_MESSAGES/messages.mobin16309 -> 17754 bytes
-rw-r--r--searx/translations/pl/LC_MESSAGES/messages.po32
-rw-r--r--searx/translations/pt/LC_MESSAGES/messages.mobin15812 -> 17522 bytes
-rw-r--r--searx/translations/pt/LC_MESSAGES/messages.po26
-rw-r--r--searx/translations/sl/LC_MESSAGES/messages.mobin10355 -> 13431 bytes
-rw-r--r--searx/translations/sl/LC_MESSAGES/messages.po63
-rw-r--r--searx/translations/szl/LC_MESSAGES/messages.mobin14590 -> 15545 bytes
-rw-r--r--searx/translations/szl/LC_MESSAGES/messages.po29
-rw-r--r--searx/translations/tr/LC_MESSAGES/messages.mobin16544 -> 17382 bytes
-rw-r--r--searx/translations/tr/LC_MESSAGES/messages.po11
-rw-r--r--searx/translations/zh_Hans_CN/LC_MESSAGES/messages.mobin15534 -> 16208 bytes
-rw-r--r--searx/translations/zh_Hans_CN/LC_MESSAGES/messages.po11
-rwxr-xr-xsearx/webapp.py12
-rw-r--r--tests/unit/test_webapp.py4
49 files changed, 2014 insertions, 438 deletions
diff --git a/requirements-dev.txt b/requirements-dev.txt
index 5b629dd00..d6d0bb2ee 100644
--- a/requirements-dev.txt
+++ b/requirements-dev.txt
@@ -4,7 +4,7 @@ cov-core==1.15.0
black==22.6.0
pylint==2.14.5
splinter==0.18.1
-selenium==4.3.0
+selenium==4.4.3
twine==4.0.1
Pallets-Sphinx-Themes==2.0.2
Sphinx==5.1.1
diff --git a/requirements.txt b/requirements.txt
index a419b25a8..c14cd4f05 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1,10 +1,10 @@
certifi==2022.6.15
babel==2.10.3
flask-babel==2.0.0
-flask==2.1.3
+flask==2.2.2
jinja2==3.1.2
lxml==4.9.1
-pygments==2.12.0
+pygments==2.13.0
python-dateutil==2.8.2
pyyaml==6.0
httpx[http2]==0.21.2
@@ -12,7 +12,7 @@ Brotli==1.0.9
uvloop==0.16.0
httpx-socks[asyncio]==0.7.2
langdetect==1.0.9
-setproctitle==1.3.1
+setproctitle==1.3.2
redis==4.3.4
markdown-it-py==2.1.0
typing_extensions==4.3.0
diff --git a/searx/data/engines_languages.json b/searx/data/engines_languages.json
index 1d4d9b2e3..3ee6fad79 100644
--- a/searx/data/engines_languages.json
+++ b/searx/data/engines_languages.json
@@ -1396,170 +1396,155 @@
"sv",
"zh"
],
- "qwant": [
- "bg-BG",
- "ca-ES",
- "cs-CZ",
- "da-DK",
- "de-AT",
- "de-CH",
- "de-DE",
- "el-GR",
- "en-AU",
- "en-CA",
- "en-GB",
- "en-IE",
- "en-MY",
- "en-NZ",
- "en-US",
- "es-AR",
- "es-CL",
- "es-ES",
- "es-MX",
- "et-EE",
- "fi-FI",
- "fr-BE",
- "fr-CA",
- "fr-CH",
- "fr-FR",
- "hu-HU",
- "it-CH",
- "it-IT",
- "ko-KR",
- "nb-NO",
- "nl-BE",
- "nl-NL",
- "pl-PL",
- "pt-PT",
- "ro-RO",
- "sv-SE",
- "th-TH",
- "zh-CN",
- "zh-HK"
- ],
- "qwant images": [
- "bg-BG",
- "ca-ES",
- "cs-CZ",
- "da-DK",
- "de-AT",
- "de-CH",
- "de-DE",
- "el-GR",
- "en-AU",
- "en-CA",
- "en-GB",
- "en-IE",
- "en-MY",
- "en-NZ",
- "en-US",
- "es-AR",
- "es-CL",
- "es-ES",
- "es-MX",
- "et-EE",
- "fi-FI",
- "fr-BE",
- "fr-CA",
- "fr-CH",
- "fr-FR",
- "hu-HU",
- "it-CH",
- "it-IT",
- "ko-KR",
- "nb-NO",
- "nl-BE",
- "nl-NL",
- "pl-PL",
- "pt-PT",
- "ro-RO",
- "sv-SE",
- "th-TH",
- "zh-CN",
- "zh-HK"
- ],
- "qwant news": [
- "bg-BG",
- "ca-ES",
- "cs-CZ",
- "da-DK",
- "de-AT",
- "de-CH",
- "de-DE",
- "el-GR",
- "en-AU",
- "en-CA",
- "en-GB",
- "en-IE",
- "en-MY",
- "en-NZ",
- "en-US",
- "es-AR",
- "es-CL",
- "es-ES",
- "es-MX",
- "et-EE",
- "fi-FI",
- "fr-BE",
- "fr-CA",
- "fr-CH",
- "fr-FR",
- "hu-HU",
- "it-CH",
- "it-IT",
- "ko-KR",
- "nb-NO",
- "nl-BE",
- "nl-NL",
- "pl-PL",
- "pt-PT",
- "ro-RO",
- "sv-SE",
- "th-TH",
- "zh-CN",
- "zh-HK"
- ],
- "qwant videos": [
- "bg-BG",
- "ca-ES",
- "cs-CZ",
- "da-DK",
- "de-AT",
- "de-CH",
- "de-DE",
- "el-GR",
- "en-AU",
- "en-CA",
- "en-GB",
- "en-IE",
- "en-MY",
- "en-NZ",
- "en-US",
- "es-AR",
- "es-CL",
- "es-ES",
- "es-MX",
- "et-EE",
- "fi-FI",
- "fr-BE",
- "fr-CA",
- "fr-CH",
- "fr-FR",
- "hu-HU",
- "it-CH",
- "it-IT",
- "ko-KR",
- "nb-NO",
- "nl-BE",
- "nl-NL",
- "pl-PL",
- "pt-PT",
- "ro-RO",
- "sv-SE",
- "th-TH",
- "zh-CN",
- "zh-HK"
- ],
+ "qwant": {
+ "bg-BG": "bg_BG",
+ "ca-ES": "ca_ES",
+ "cs-CZ": "cs_CZ",
+ "da-DK": "da_DK",
+ "de-AT": "de_AT",
+ "de-CH": "de_CH",
+ "de-DE": "de_DE",
+ "el-GR": "el_GR",
+ "en-AU": "en_AU",
+ "en-CA": "en_CA",
+ "en-GB": "en_GB",
+ "en-IE": "en_IE",
+ "en-MY": "en_MY",
+ "en-NZ": "en_NZ",
+ "en-US": "en_US",
+ "es-AR": "es_AR",
+ "es-CL": "es_CL",
+ "es-ES": "es_ES",
+ "es-MX": "es_MX",
+ "et-EE": "et_EE",
+ "fi-FI": "fi_FI",
+ "fr-BE": "fr_BE",
+ "fr-CA": "fr_CA",
+ "fr-CH": "fr_CH",
+ "fr-FR": "fr_FR",
+ "hu-HU": "hu_HU",
+ "it-CH": "it_CH",
+ "it-IT": "it_IT",
+ "ko-KR": "ko_KR",
+ "nb-NO": "nb_NO",
+ "nl-BE": "nl_BE",
+ "nl-NL": "nl_NL",
+ "pl-PL": "pl_PL",
+ "pt-PT": "pt_PT",
+ "ro-RO": "ro_RO",
+ "sv-SE": "sv_SE",
+ "th-TH": "th_TH",
+ "zh-CN": "zh_CN",
+ "zh-HK": "zh_HK"
+ },
+ "qwant images": {
+ "bg-BG": "bg_BG",
+ "ca-ES": "ca_ES",
+ "cs-CZ": "cs_CZ",
+ "da-DK": "da_DK",
+ "de-AT": "de_AT",
+ "de-CH": "de_CH",
+ "de-DE": "de_DE",
+ "el-GR": "el_GR",
+ "en-AU": "en_AU",
+ "en-CA": "en_CA",
+ "en-GB": "en_GB",
+ "en-IE": "en_IE",
+ "en-MY": "en_MY",
+ "en-NZ": "en_NZ",
+ "en-US": "en_US",
+ "es-AR": "es_AR",
+ "es-CL": "es_CL",
+ "es-ES": "es_ES",
+ "es-MX": "es_MX",
+ "et-EE": "et_EE",
+ "fi-FI": "fi_FI",
+ "fr-BE": "fr_BE",
+ "fr-CA": "fr_CA",
+ "fr-CH": "fr_CH",
+ "fr-FR": "fr_FR",
+ "hu-HU": "hu_HU",
+ "it-CH": "it_CH",
+ "it-IT": "it_IT",
+ "ko-KR": "ko_KR",
+ "nb-NO": "nb_NO",
+ "nl-BE": "nl_BE",
+ "nl-NL": "nl_NL",
+ "pl-PL": "pl_PL",
+ "pt-PT": "pt_PT",
+ "ro-RO": "ro_RO",
+ "sv-SE": "sv_SE",
+ "th-TH": "th_TH",
+ "zh-CN": "zh_CN",
+ "zh-HK": "zh_HK"
+ },
+ "qwant news": {
+ "ca-ES": "ca_ES",
+ "de-AT": "de_AT",
+ "de-CH": "de_CH",
+ "de-DE": "de_DE",
+ "en-AU": "en_AU",
+ "en-CA": "en_CA",
+ "en-GB": "en_GB",
+ "en-IE": "en_IE",
+ "en-MY": "en_MY",
+ "en-NZ": "en_NZ",
+ "en-US": "en_US",
+ "es-AR": "es_AR",
+ "es-CL": "es_CL",
+ "es-ES": "es_ES",
+ "es-MX": "es_MX",
+ "fr-BE": "fr_BE",
+ "fr-CA": "fr_CA",
+ "fr-CH": "fr_CH",
+ "fr-FR": "fr_FR",
+ "it-CH": "it_CH",
+ "it-IT": "it_IT",
+ "nl-BE": "nl_BE",
+ "nl-NL": "nl_NL",
+ "pt-PT": "pt_PT"
+ },
+ "qwant videos": {
+ "bg-BG": "bg_BG",
+ "ca-ES": "ca_ES",
+ "cs-CZ": "cs_CZ",
+ "da-DK": "da_DK",
+ "de-AT": "de_AT",
+ "de-CH": "de_CH",
+ "de-DE": "de_DE",
+ "el-GR": "el_GR",
+ "en-AU": "en_AU",
+ "en-CA": "en_CA",
+ "en-GB": "en_GB",
+ "en-IE": "en_IE",
+ "en-MY": "en_MY",
+ "en-NZ": "en_NZ",
+ "en-US": "en_US",
+ "es-AR": "es_AR",
+ "es-CL": "es_CL",
+ "es-ES": "es_ES",
+ "es-MX": "es_MX",
+ "et-EE": "et_EE",
+ "fi-FI": "fi_FI",
+ "fr-BE": "fr_BE",
+ "fr-CA": "fr_CA",
+ "fr-CH": "fr_CH",
+ "fr-FR": "fr_FR",
+ "hu-HU": "hu_HU",
+ "it-CH": "it_CH",
+ "it-IT": "it_IT",
+ "ko-KR": "ko_KR",
+ "nb-NO": "nb_NO",
+ "nl-BE": "nl_BE",
+ "nl-NL": "nl_NL",
+ "pl-PL": "pl_PL",
+ "pt-PT": "pt_PT",
+ "ro-RO": "ro_RO",
+ "sv-SE": "sv_SE",
+ "th-TH": "th_TH",
+ "zh-CN": "zh_CN",
+ "zh-HK": "zh_HK"
+ },
"startpage": {
"af": {
"alias": "afrikaans"
diff --git a/searx/engines/9gag.py b/searx/engines/9gag.py
new file mode 100644
index 000000000..d1846725c
--- /dev/null
+++ b/searx/engines/9gag.py
@@ -0,0 +1,77 @@
+# SPDX-License-Identifier: AGPL-3.0-or-later
+# lint: pylint
+# pylint: disable=invalid-name
+"""9GAG (social media)"""
+
+from json import loads
+from datetime import datetime
+from urllib.parse import urlencode
+
+about = {
+ "website": 'https://9gag.com/',
+ "wikidata_id": 'Q277421',
+ "official_api_documentation": None,
+ "use_official_api": True,
+ "require_api_key": False,
+ "results": 'JSON',
+}
+
+categories = ['social media']
+paging = True
+
+search_url = "https://9gag.com/v1/search-posts?{query}"
+page_size = 10
+
+
+def request(query, params):
+ query = urlencode({'query': query, 'c': (params['pageno'] - 1) * page_size})
+
+ params['url'] = search_url.format(query=query)
+
+ return params
+
+
+def response(resp):
+ results = []
+
+ json_results = loads(resp.text)['data']
+
+ for result in json_results['posts']:
+ result_type = result['type']
+
+ # Get the not cropped version of the thumbnail when the image height is not too important
+ if result['images']['image700']['height'] > 400:
+ thumbnail = result['images']['imageFbThumbnail']['url']
+ else:
+ thumbnail = result['images']['image700']['url']
+
+ if result_type == 'Photo':
+ results.append(
+ {
+ 'template': 'images.html',
+ 'url': result['url'],
+ 'title': result['title'],
+ 'content': result['description'],
+ 'publishedDate': datetime.utcfromtimestamp(result['creationTs']),
+ 'img_src': result['images']['image700']['url'],
+ 'thumbnail_src': thumbnail,
+ }
+ )
+ elif result_type == 'Animated':
+ results.append(
+ {
+ 'template': 'videos.html',
+ 'url': result['url'],
+ 'title': result['title'],
+ 'content': result['description'],
+ 'publishedDate': datetime.utcfromtimestamp(result['creationTs']),
+ 'thumbnail': thumbnail,
+ 'iframe_src': result['images'].get('image460sv', {}).get('url'),
+ }
+ )
+
+ if 'tags' in json_results:
+ for suggestion in json_results['tags']:
+ results.append({'suggestion': suggestion['key']})
+
+ return results
diff --git a/searx/engines/bing_videos.py b/searx/engines/bing_videos.py
index 9be8eeaef..85071de21 100644
--- a/searx/engines/bing_videos.py
+++ b/searx/engines/bing_videos.py
@@ -80,7 +80,7 @@ def response(resp):
dom = html.fromstring(resp.text)
- for result in dom.xpath('//div[@class="dg_u"]'):
+ for result in dom.xpath('//div[@class="dg_u"]/div[contains(@class, "mc_vtvc")]'):
metadata = loads(result.xpath('.//div[@class="vrhdata"]/@vrhm')[0])
info = ' - '.join(result.xpath('.//div[@class="mc_vtvc_meta_block"]//span/text()')).strip()
content = '{0} - {1}'.format(metadata['du'], info)
diff --git a/searx/engines/duden.py b/searx/engines/duden.py
index da4c4f7da..dca566404 100644
--- a/searx/engines/duden.py
+++ b/searx/engines/duden.py
@@ -7,6 +7,7 @@ import re
from urllib.parse import quote, urljoin
from lxml import html
from searx.utils import extract_text, eval_xpath, eval_xpath_list, eval_xpath_getindex
+from searx.network import raise_for_httperror
# about
about = {
@@ -47,6 +48,7 @@ def request(query, params):
# after the last page of results, spelling corrections are returned after a HTTP redirect
# whatever the page number is
params['soft_max_redirects'] = 1
+ params['raise_for_httperror'] = False
return params
@@ -56,6 +58,11 @@ def response(resp):
'''
results = []
+ if resp.status_code == 404:
+ return results
+
+ raise_for_httperror(resp)
+
dom = html.fromstring(resp.text)
number_of_results_element = eval_xpath_getindex(
diff --git a/searx/engines/qwant.py b/searx/engines/qwant.py
index a1799491a..6de2176d0 100644
--- a/searx/engines/qwant.py
+++ b/searx/engines/qwant.py
@@ -9,16 +9,16 @@ https://www.qwant.com/ queries.
This implementation is used by different qwant engines in the settings.yml::
- name: qwant
- categories: general
+ qwant_categ: web
...
- name: qwant news
- categories: news
+ qwant_categ: news
...
- name: qwant images
- categories: images
+ qwant_categ: images
...
- name: qwant videos
- categories: videos
+ qwant_categ: videos
...
"""
@@ -30,11 +30,11 @@ from datetime import (
from json import loads
from urllib.parse import urlencode
from flask_babel import gettext
+import babel
-from searx.utils import match_language
from searx.exceptions import SearxEngineAPIException
from searx.network import raise_for_httperror
-
+from searx.locales import get_engine_locale
# about
about = {
@@ -50,13 +50,20 @@ about = {
categories = []
paging = True
supported_languages_url = about['website']
+qwant_categ = None # web|news|inages|videos
-category_to_keyword = {
- 'general': 'web',
- 'news': 'news',
- 'images': 'images',
- 'videos': 'videos',
-}
+safesearch = True
+safe_search_map = {0: '&safesearch=0', 1: '&safesearch=1', 2: '&safesearch=2'}
+
+# fmt: off
+qwant_news_locales = [
+ 'ca_ad', 'ca_es', 'ca_fr', 'co_fr', 'de_at', 'de_ch', 'de_de', 'en_au',
+ 'en_ca', 'en_gb', 'en_ie', 'en_my', 'en_nz', 'en_us', 'es_ad', 'es_ar',
+ 'es_cl', 'es_co', 'es_es', 'es_mx', 'es_pe', 'eu_es', 'eu_fr', 'fc_ca',
+ 'fr_ad', 'fr_be', 'fr_ca', 'fr_ch', 'fr_fr', 'it_ch', 'it_it', 'nl_be',
+ 'nl_nl', 'pt_ad', 'pt_pt',
+]
+# fmt: on
# search-url
url = 'https://api.qwant.com/v3/search/{keyword}?{query}&count={count}&offset={offset}'
@@ -64,10 +71,13 @@ url = 'https://api.qwant.com/v3/search/{keyword}?{query}&count={count}&offset={o
def request(query, params):
"""Qwant search request"""
- keyword = category_to_keyword[categories[0]]
+
+ if not query:
+ return None
+
count = 10 # web: count must be equal to 10
- if keyword == 'images':
+ if qwant_categ == 'images':
count = 50
offset = (params['pageno'] - 1) * count
# count + offset must be lower than 250
@@ -78,22 +88,18 @@ def request(query, params):
offset = min(offset, 40)
params['url'] = url.format(
- keyword=keyword,
+ keyword=qwant_categ,
query=urlencode({'q': query}),
offset=offset,
count=count,
)
- # add language tag
- if params['language'] == 'all':
- params['url'] += '&locale=en_US'
- else:
- language = match_language(
- params['language'],
- supported_languages,
- language_aliases,
- )
- params['url'] += '&locale=' + language.replace('-', '_')
+ # add quant's locale
+ q_locale = get_engine_locale(params['language'], supported_languages, default='en_US')
+ params['url'] += '&locale=' + q_locale
+
+ # add safesearch option
+ params['url'] += safe_search_map.get(params['safesearch'], '')
params['raise_for_httperror'] = False
return params
@@ -103,7 +109,6 @@ def response(resp):
"""Get response from Qwant's search request"""
# pylint: disable=too-many-locals, too-many-branches, too-many-statements
- keyword = category_to_keyword[categories[0]]
results = []
# load JSON result
@@ -125,7 +130,7 @@ def response(resp):
# raise for other errors
raise_for_httperror(resp)
- if keyword == 'web':
+ if qwant_categ == 'web':
# The WEB query contains a list named 'mainline'. This list can contain
# different result types (e.g. mainline[0]['type'] returns type of the
# result items in mainline[0]['items']
@@ -136,7 +141,7 @@ def response(resp):
# result['items'].
mainline = data.get('result', {}).get('items', [])
mainline = [
- {'type': keyword, 'items': mainline},
+ {'type': qwant_categ, 'items': mainline},
]
# return empty array if there are no results
@@ -146,7 +151,7 @@ def response(resp):
for row in mainline:
mainline_type = row.get('type', 'web')
- if mainline_type != keyword:
+ if mainline_type != qwant_categ:
continue
if mainline_type == 'ads':
@@ -238,19 +243,43 @@ def response(resp):
return results
-# get supported languages from their site
def _fetch_supported_languages(resp):
- # list of regions is embedded in page as a js object
- response_text = resp.text
- response_text = response_text[response_text.find('INITIAL_PROPS') :]
- response_text = response_text[response_text.find('{') : response_text.find('</script>')]
-
- regions_json = loads(response_text)
-
- supported_languages = []
- for country, langs in regions_json['locales'].items():
- for lang in langs['langs']:
- lang_code = "{lang}-{country}".format(lang=lang, country=country)
- supported_languages.append(lang_code)
+
+ text = resp.text
+ text = text[text.find('INITIAL_PROPS') :]
+ text = text[text.find('{') : text.find('</script>')]
+
+ q_initial_props = loads(text)
+ q_locales = q_initial_props.get('locales')
+ q_valid_locales = []
+
+ for country, v in q_locales.items():
+ for lang in v['langs']:
+ _locale = "{lang}_{country}".format(lang=lang, country=country)
+
+ if qwant_categ == 'news' and _locale.lower() not in qwant_news_locales:
+ # qwant-news does not support all locales from qwant-web:
+ continue
+
+ q_valid_locales.append(_locale)
+
+ supported_languages = {}
+
+ for q_locale in q_valid_locales:
+ try:
+ locale = babel.Locale.parse(q_locale, sep='_')
+ except babel.core.UnknownLocaleError:
+ print("ERROR: can't determine babel locale of quant's locale %s" % q_locale)
+ continue
+
+ # note: supported_languages (dict)
+ #
+ # dict's key is a string build up from a babel.Locale object / the
+ # notation 'xx-XX' (and 'xx') conforms to SearXNG's locale (and
+ # language) notation and dict's values are the locale strings used by
+ # the engine.
+
+ searxng_locale = locale.language + '-' + locale.territory # --> params['language']
+ supported_languages[searxng_locale] = q_locale
return supported_languages
diff --git a/searx/engines/twitter.py b/searx/engines/twitter.py
new file mode 100644
index 000000000..3ebe34be1
--- /dev/null
+++ b/searx/engines/twitter.py
@@ -0,0 +1,75 @@
+# SPDX-License-Identifier: AGPL-3.0-or-later
+# lint: pylint
+"""Twitter (microblogging platform)"""
+
+from json import loads
+from urllib.parse import urlencode
+from datetime import datetime
+
+about = {
+ "website": 'https://twitter.com',
+ "wikidata_id": None,
+ "official_api_documentation": 'https://developer.twitter.com/en/docs/twitter-api',
+ "use_official_api": True,
+ "require_api_key": False,
+ "results": 'JSON',
+}
+
+categories = ['social media']
+
+url = "https://api.twitter.com"
+search_url = (
+ "{url}/2/search/adaptive.json?{query}&tweet_mode=extended&query_source=typed_query&pc=1&spelling_corrections=1"
+)
+
+
+def request(query, params):
+ params['url'] = search_url.format(url=url, query=urlencode({'q': query}))
+
+ params['headers'] = {
+ # This token is used in the Twitter web interface (twitter.com). Without this header, the API doesn't work.
+ # The value of the token has never changed (or maybe once a long time ago).
+ # https://github.com/zedeus/nitter/blob/5f31e86e0e8578377fa7d5aeb9631bbb2d35ef1e/src/consts.nim#L5
+ 'Authorization': (
+ "Bearer AAAAAAAAAAAAAAAAAAAAAPYXBAAAAAAACLXUNDekMxqa8h%2F40K4moUkGsoc%3DTYfbDKb"
+ "T3jJPCEVnMYqilB28NHfOPqkca3qaAxGfsyKCs0wRbw"
+ )
+ }
+
+ return params
+
+
+def response(resp):
+ results = []
+
+ json_res = loads(resp.text)['globalObjects']
+
+ for tweet in json_res['tweets'].values():
+ text = tweet['full_text']
+ display = tweet['display_text_range']
+
+ img_src = tweet.get('extended_entities', {}).get('media', [{}])[0].get('media_url_https')
+ if img_src:
+ img_src += "?name=thumb"
+
+ results.append(
+ {
+ 'url': 'https://twitter.com/i/web/status/' + tweet['id_str'],
+ 'title': (text[:40] + '...') if len(text) > 40 else text,
+ 'content': text[display[0] : display[1]],
+ 'img_src': img_src,
+ 'publishedDate': datetime.strptime(tweet['created_at'], '%a %b %d %H:%M:%S %z %Y'),
+ }
+ )
+
+ for user in json_res['users'].values():
+ results.append(
+ {
+ 'title': user['name'],
+ 'content': user['description'],
+ 'url': 'https://twitter.com/' + user['screen_name'],
+ 'img_src': user['profile_image_url_https'],
+ }
+ )
+
+ return results
diff --git a/searx/locales.py b/searx/locales.py
index 3deff6863..0e57c91b0 100644
--- a/searx/locales.py
+++ b/searx/locales.py
@@ -10,6 +10,8 @@ import pathlib
from babel import Locale
from babel.support import Translations
+import babel.languages
+import babel.core
import flask_babel
import flask
from flask.ctx import has_request_context
@@ -150,3 +152,148 @@ def locales_initialize(directory=None):
LOCALE_NAMES[tag] = get_locale_descr(locale, dirname)
if locale.text_direction == 'rtl':
RTL_LOCALES.add(tag)
+
+
+def get_engine_locale(searxng_locale, engine_locales, default=None):
+ """Return engine's language (aka locale) string that best fits to argument
+ ``searxng_locale``.
+
+ Argument ``engine_locales`` is a python dict that maps *SearXNG locales* to
+ corresponding *engine locales*:
+
+ <engine>: {
+ # SearXNG string : engine-string
+ 'ca-ES' : 'ca_ES',
+ 'fr-BE' : 'fr_BE',
+ 'fr-CA' : 'fr_CA',
+ 'fr-CH' : 'fr_CH',
+ 'fr' : 'fr_FR',
+ ...
+ 'pl-PL' : 'pl_PL',
+ 'pt-PT' : 'pt_PT'
+ }
+
+ .. hint::
+
+ The *SearXNG locale* string has to be known by babel!
+
+ If there is no direct 1:1 mapping, this functions tries to narrow down
+ engine's language (locale). If no value can be determined by these
+ approximation attempts the ``default`` value is returned.
+
+ Assumptions:
+
+ A. When user select a language the results should be optimized according to
+ the selected language.
+
+ B. When user select a language and a territory the results should be
+ optimized with first priority on terrirtory and second on language.
+
+ First approximation rule (*by territory*):
+
+ When the user selects a locale with terrirtory (and a language), the
+ territory has priority over the language. If any of the offical languages
+ in the terrirtory is supported by the engine (``engine_locales``) it will
+ be used.
+
+ Second approximation rule (*by language*):
+
+ If "First approximation rule" brings no result or the user selects only a
+ language without a terrirtory. Check in which territories the language
+ has an offical status and if one of these territories is supported by the
+ engine.
+
+ """
+ # pylint: disable=too-many-branches
+
+ engine_locale = engine_locales.get(searxng_locale)
+
+ if engine_locale is not None:
+ # There was a 1:1 mapping (e.g. "fr-BE --> fr_BE" or "fr --> fr_FR"), no
+ # need to narrow language nor territory.
+ return engine_locale
+
+ try:
+ locale = babel.Locale.parse(searxng_locale, sep='-')
+ except babel.core.UnknownLocaleError:
+ try:
+ locale = babel.Locale.parse(searxng_locale.split('-')[0])
+ except babel.core.UnknownLocaleError:
+ return default
+
+ # SearXNG's selected locale is not supported by the engine ..
+
+ if locale.territory:
+ # Try to narrow by *offical* languages in the territory (??-XX).
+
+ for official_language in babel.languages.get_official_languages(locale.territory, de_facto=True):
+ searxng_locale = official_language + '-' + locale.territory
+ engine_locale = engine_locales.get(searxng_locale)
+ if engine_locale is not None:
+ return engine_locale
+
+ # Engine does not support one of the offical languages in the territory or
+ # there is only a language selected without a territory.
+
+ # Now lets have a look if the searxng_lang (the language selected by the
+ # user) is a offical language in other territories. If so, check if
+ # engine does support the searxng_lang in this other territory.
+
+ if locale.language:
+
+ searxng_lang = locale.language
+ if locale.script:
+ searxng_lang += '_' + locale.script
+
+ terr_lang_dict = {}
+ for territory, langs in babel.core.get_global("territory_languages").items():
+ if not langs.get(searxng_lang, {}).get('official_status'):
+ continue
+ terr_lang_dict[territory] = langs.get(searxng_lang)
+
+ # first: check fr-FR, de-DE .. is supported by the engine
+ # exception: 'en' --> 'en-US'
+
+ territory = locale.language.upper()
+ if territory == 'EN':
+ territory = 'US'
+
+ if terr_lang_dict.get(territory):
+ searxng_locale = locale.language + '-' + territory
+ engine_locale = engine_locales.get(searxng_locale)
+ if engine_locale is not None:
+ return engine_locale
+
+ # second: sort by population_percent and take first match
+
+ # drawback of "population percent": if there is a terrirtory with a
+ # small number of people (e.g 100) but the majority speaks the
+ # language, then the percentage migth be 100% (--> 100 people) but in
+ # a different terrirtory with more people (e.g. 10.000) where only 10%
+ # speak the language the total amount of speaker is higher (--> 200
+ # people).
+ #
+ # By example: The population of Saint-Martin is 33.000, of which 100%
+ # speak French, but this is less than the 30% of the approximately 2.5
+ # million Belgian citizens
+ #
+ # - 'fr-MF', 'population_percent': 100.0, 'official_status': 'official'
+ # - 'fr-BE', 'population_percent': 38.0, 'official_status': 'official'
+
+ terr_lang_list = []
+ for k, v in terr_lang_dict.items():
+ terr_lang_list.append((k, v))
+
+ for territory, _lang in sorted(terr_lang_list, key=lambda item: item[1]['population_percent'], reverse=True):
+ searxng_locale = locale.language + '-' + territory
+ engine_locale = engine_locales.get(searxng_locale)
+ if engine_locale is not None:
+ return engine_locale
+
+ # No luck: narrow by "language from territory" and "territory from language"
+ # does not fit to a locale supported by the engine.
+
+ if engine_locale is None:
+ engine_locale = default
+
+ return default
diff --git a/searx/plugins/limiter.py b/searx/plugins/limiter.py
index c9aa36265..c6f5d6a0f 100644
--- a/searx/plugins/limiter.py
+++ b/searx/plugins/limiter.py
@@ -67,7 +67,7 @@ def is_accepted_request() -> bool:
return False
accept_encoding_list = [l.strip() for l in request.headers.get('Accept-Encoding', '').split(',')]
- if 'gzip' not in accept_encoding_list or 'deflate' not in accept_encoding_list:
+ if 'gzip' not in accept_encoding_list and 'deflate' not in accept_encoding_list:
logger.debug("suspicious Accept-Encoding") # pylint: disable=undefined-variable
return False
diff --git a/searx/settings.yml b/searx/settings.yml
index 668a92689..b3949777e 100644
--- a/searx/settings.yml
+++ b/searx/settings.yml
@@ -262,6 +262,11 @@ categories_as_tabs:
social media:
engines:
+ - name: 9gag
+ engine: 9gag
+ shortcut: 9g
+ disabled: true
+
- name: apk mirror
engine: apkmirror
timeout: 4.0
@@ -966,6 +971,38 @@ engines:
# collection: 'reviews' # name of the db collection
# key: 'name' # key in the collection to search for
+ - name: neeva
+ engine: xpath
+ shortcut: nv
+ time_range_support: true
+ time_range_url: '&alf%5Bfreshness%5D={time_range_val}'
+ time_range_map:
+ day: 'Day'
+ week: 'Week'
+ month: 'Month'
+ year: 'Year'
+ search_url: https://neeva.com/search?q={query}&c=All&src=Pagination&page={pageno}{time_range}
+ results_xpath: //div[@class="web-index__component-2rKiM"] | //li[@class="web-rich-deep-links__deepLink-SIbD4"]
+ url_xpath: .//a[@class="lib-doc-title__link-1b9rC"]/@href | ./h2/a/@href
+ title_xpath: .//a[@class="lib-doc-title__link-1b9rC"] | ./h2/a
+ content_xpath: >
+ .//div[@class="lib-doc-snippet__component-3ewW6"]/text() |
+ .//div[@class="lib-doc-snippet__component-3ewW6"]/*[not(self::a)] |
+ ./p
+ content_html_to_text: true
+ suggestion_xpath: //span[@class="result-related-searches__link-2ho_u"]
+ paging: true
+ disabled: true
+ categories: [general, web]
+ timeout: 5.0
+ soft_max_redirects: 2
+ about:
+ website: https://neeva.com
+ official_api_documentation:
+ use_official_api: false
+ require_api_key: false
+ results: HTML
+
- name: npm
engine: json_engine
paging: true
@@ -1172,6 +1209,7 @@ engines:
results: HTML
- name: qwant
+ qwant_categ: web
engine: qwant
shortcut: qw
categories: [general, web]
@@ -1180,6 +1218,7 @@ engines:
rosebud: *test_rosebud
- name: qwant news
+ qwant_categ: news
engine: qwant
shortcut: qwn
categories: news
@@ -1187,6 +1226,7 @@ engines:
network: qwant
- name: qwant images
+ qwant_categ: images
engine: qwant
shortcut: qwi
categories: [images, web]
@@ -1194,6 +1234,7 @@ engines:
network: qwant
- name: qwant videos
+ qwant_categ: videos
engine: qwant
shortcut: qwv
categories: [videos, web]
@@ -1395,6 +1436,11 @@ engines:
# - 2000
# - 5000
+ - name: twitter
+ shortcut: tw
+ engine: twitter
+ disabled: true
+
# maybe in a fun category
# - name: uncyclopedia
# engine: mediawiki
diff --git a/searx/static/themes/simple/css/searxng-rtl.min.css.map b/searx/static/themes/simple/css/searxng-rtl.min.css.map
index 886eaffc1..21923a32c 100644
--- a/searx/static/themes/simple/css/searxng-rtl.min.css.map
+++ b/searx/static/themes/simple/css/searxng-rtl.min.css.map
@@ -1 +1 @@
-{"version":3,"sources":["node_modules/normalize.css/normalize.css","src/less/definitions.less","src/less/code.less","src/generated/pygments.less","src/less/toolkit.less","src/less/mixins.less","src/less/style-rtl.less","src/less/autocomplete.less","src/less/detail.less","src/less/animations.less","src/less/embedded.less","src/less/info.less","src/less/new_issue.less","src/less/stats.less","src/less/result_templates.less","src/less/index.less","src/less/preferences.less","src/less/search.less","src/less/style-center.less","src/less/style.less"],"names":[],"mappings":"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,aAGF,eACE,OAAA,IAAA,MAAA,QACA,OAAA,IAAA,EAGF,kBACE,OAAA,IAAA,MAAA,QACA,OAAA,IAAA,EACA,MAAA,KAGF,kBACE,OAAA,IAAA,MAAA,QACA,OAAA,IAAA,EACA,MAAA,KAGF,MACE,MAAA,EACA,OAAA,EV/FD,MUsGG,MAAA,GVtGH,MUsGG,MAAA,GVtGH,MUsGG,MAAA,GVtGH,MUsGG,MAAA,GVtGH,MUsGG,MAAA,GVtGH,MUsGG,MAAA,GVtGH,MUsGG,MAAA,GVtGH,MUsGG,MAAA,GVtGH,MUsGG,MAAA,GVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,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","sourcesContent":["/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n\n/* Document\n ========================================================================== */\n\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\n\nhtml {\n line-height: 1.15; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n\n/**\n * Remove the margin in all browsers.\n */\n\nbody {\n margin: 0;\n}\n\n/**\n * Render the `main` element consistently in IE.\n */\n\nmain {\n display: block;\n}\n\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\n\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n/* Grouping content\n ========================================================================== */\n\n/**\n * 1. Add the correct box sizing in Firefox.\n * 2. Show the overflow in Edge and IE.\n */\n\nhr {\n box-sizing: content-box; /* 1 */\n height: 0; /* 1 */\n overflow: visible; /* 2 */\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\npre {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n\n/**\n * Remove the gray background on active links in IE 10.\n */\n\na {\n background-color: transparent;\n}\n\n/**\n * 1. Remove the bottom border in Chrome 57-\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n */\n\nabbr[title] {\n border-bottom: none; /* 1 */\n text-decoration: underline; /* 2 */\n text-decoration: underline dotted; /* 2 */\n}\n\n/**\n * Add the correct font weight in Chrome, Edge, and Safari.\n */\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\ncode,\nkbd,\nsamp {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/**\n * Add the correct font size in all browsers.\n */\n\nsmall {\n font-size: 80%;\n}\n\n/**\n * Prevent `sub` and `sup` elements from affecting the line height in\n * all browsers.\n */\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/* Embedded content\n ========================================================================== */\n\n/**\n * Remove the border on images inside links in IE 10.\n */\n\nimg {\n border-style: none;\n}\n\n/* Forms\n ========================================================================== */\n\n/**\n * 1. Change the font styles in all browsers.\n * 2. Remove the margin in Firefox and Safari.\n */\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n margin: 0; /* 2 */\n}\n\n/**\n * Show the overflow in IE.\n * 1. Show the overflow in Edge.\n */\n\nbutton,\ninput { /* 1 */\n overflow: visible;\n}\n\n/**\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\n * 1. Remove the inheritance of text transform in Firefox.\n */\n\nbutton,\nselect { /* 1 */\n text-transform: none;\n}\n\n/**\n * Correct the inability to style clickable types in iOS and Safari.\n */\n\nbutton,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button;\n}\n\n/**\n * Remove the inner border and padding in Firefox.\n */\n\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n}\n\n/**\n * Restore the focus styles unset by the previous rule.\n */\n\nbutton:-moz-focusring,\n[type=\"button\"]:-moz-focusring,\n[type=\"reset\"]:-moz-focusring,\n[type=\"submit\"]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n * Correct the padding in Firefox.\n */\n\nfieldset {\n padding: 0.35em 0.75em 0.625em;\n}\n\n/**\n * 1. Correct the text wrapping in Edge and IE.\n * 2. Correct the color inheritance from `fieldset` elements in IE.\n * 3. Remove the padding so developers are not caught out when they zero out\n * `fieldset` elements in all browsers.\n */\n\nlegend {\n box-sizing: border-box; /* 1 */\n color: inherit; /* 2 */\n display: table; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n white-space: normal; /* 1 */\n}\n\n/**\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\n */\n\nprogress {\n vertical-align: baseline;\n}\n\n/**\n * Remove the default vertical scrollbar in IE 10+.\n */\n\ntextarea {\n overflow: auto;\n}\n\n/**\n * 1. Add the correct box sizing in IE 10.\n * 2. Remove the padding in IE 10.\n */\n\n[type=\"checkbox\"],\n[type=\"radio\"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n * Correct the cursor style of increment and decrement buttons in Chrome.\n */\n\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n * 1. Correct the odd appearance in Chrome and Safari.\n * 2. Correct the outline style in Safari.\n */\n\n[type=\"search\"] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/**\n * Remove the inner padding in Chrome and Safari on macOS.\n */\n\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n * 1. Correct the inability to style clickable types in iOS and Safari.\n * 2. Change font properties to `inherit` in Safari.\n */\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/* Interactive\n ========================================================================== */\n\n/*\n * Add the correct display in Edge, IE 10+, and Firefox.\n */\n\ndetails {\n display: block;\n}\n\n/*\n * Add the correct display in all browsers.\n */\n\nsummary {\n display: list-item;\n}\n\n/* Misc\n ========================================================================== */\n\n/**\n * Add the correct display in IE 10+.\n */\n\ntemplate {\n display: none;\n}\n\n/**\n * Add the correct display in IE 10.\n */\n\n[hidden] {\n display: none;\n}\n","/*\n * SearXNG, A privacy-respecting, hackable metasearch engine\n *\n * To change the colors of the site, simple edit this variables\n */\n\n/// Light Theme\n:root {\n /// Base Colors\n --color-base-font: #444;\n --color-base-font-rgb: 68, 68, 68;\n --color-base-background: #fff;\n --color-base-background-mobile: #f2f5f8;\n --color-url-font: #334999;\n --color-url-visited-font: #9822c3;\n /// Header Colors\n --color-header-background: #fdfbff;\n --color-header-border: #ddd;\n /// Footer Colors\n --color-footer-background: #fdfbff;\n --color-footer-border: #ddd;\n /// Sidebar Colors\n --color-sidebar-border: #ddd;\n --color-sidebar-font: #000;\n --color-sidebar-background: #fff;\n /// BackToTop Colors\n --color-backtotop-font: #444;\n --color-backtotop-border: #ddd;\n --color-backtotop-background: #fff;\n /// Button Colors\n --color-btn-background: #3050ff;\n --color-btn-font: #fff;\n --color-show-btn-background: #bbb;\n --color-show-btn-font: #000;\n /// Search Input Colors\n --color-search-border: #bbb;\n --color-search-shadow: 0 2px 8px rgb(34 38 46 / 25%);\n --color-search-background: #fff;\n --color-search-font: #222;\n --color-search-background-hover: #3050ff;\n /// Modal Colors\n --color-error: #db3434;\n --color-error-background: lighten(#db3434, 40%);\n --color-warning: #dbba34;\n --color-warning-background: lighten(#dbba34, 40%);\n --color-success: #42db34;\n --color-success-background: lighten(#42db34, 40%);\n /// Categories Colors\n --color-categories-item-selected-font: #3050ff;\n --color-categories-item-border-selected: #3050ff;\n /// Autocomplete Colors\n --color-autocomplete-font: #000;\n --color-autocomplete-border: #bbb;\n --color-autocomplete-shadow: 0 2px 8px rgb(34 38 46 / 25%);\n --color-autocomplete-background: #fff;\n --color-autocomplete-background-hover: #e3e3e3;\n /// Answer Colors\n --color-answer-font: #444; // same as --color-base-font\n --color-answer-background: #fff;\n /// Results Colors\n --color-result-background: #fff;\n --color-result-border: #ddd;\n --color-result-url-font: #000;\n --color-result-vim-selected: #f7f7f7;\n --color-result-vim-arrow: #000bbb;\n --color-result-description-highlight-font: #000;\n --color-result-link-font: #000bbb;\n --color-result-link-font-highlight: #000bbb;\n --color-result-link-visited-font: #9822c3;\n --color-result-publishdate-font: #777;\n --color-result-engines-font: #545454;\n --color-result-search-url-border: #ddd;\n --color-result-search-url-font: #000;\n // Images Colors\n --color-result-image-span-font: #444;\n --color-result-image-span-font-selected: #fff;\n --color-result-image-background: #fff;\n /// Settings Colors\n --color-settings-tr-hover: #ebebeb;\n --color-settings-engine-description-font: #545454;\n --color-settings-engine-group-background: #0001;\n /// Detail modal\n --color-result-detail-font: #fff;\n --color-result-detail-label-font: lightgray;\n --color-result-detail-background: #242424;\n --color-result-detail-hr: #555;\n --color-result-detail-link: #8af;\n --color-result-detail-loader-border: rgba(255, 255, 255, 0.2);\n --color-result-detail-loader-borderleft: rgba(0, 0, 0, 0);\n /// Toolkit Colors\n --color-toolkit-badge-font: #fff;\n --color-toolkit-badge-background: #545454;\n --color-toolkit-kbd-font: #fff;\n --color-toolkit-kbd-background: #000;\n --color-toolkit-dialog-border: #ddd;\n --color-toolkit-dialog-background: #fff;\n --color-toolkit-tabs-label-border: #fff;\n --color-toolkit-tabs-section-border: #ddd;\n --color-toolkit-select-background: #e1e1e1;\n --color-toolkit-select-border: #ddd;\n --color-toolkit-select-background-hover: #bbb;\n --color-toolkit-input-text-font: #222;\n --color-toolkit-checkbox-onoff-off-background: #ddd;\n --color-toolkit-checkbox-onoff-on-background: #ddd;\n --color-toolkit-checkbox-onoff-on-mark-background: #3050ff;\n --color-toolkit-checkbox-onoff-on-mark-color: #fff;\n --color-toolkit-checkbox-onoff-off-mark-background: #aaa;\n --color-toolkit-checkbox-onoff-off-mark-color: #fff;\n --color-toolkit-checkbox-label-background: #ddd;\n --color-toolkit-checkbox-label-border: #ddd;\n --color-toolkit-checkbox-input-border: #3050ff;\n --color-toolkit-engine-tooltip-border: #ddd;\n --color-toolkit-engine-tooltip-background: #fff;\n --color-toolkit-loader-border: rgba(0, 0, 0, 0.2);\n --color-toolkit-loader-borderleft: rgba(255, 255, 255, 0);\n --color-doc-code: #300;\n --color-doc-code-background: #fdd;\n}\n\n.dark-themes() {\n /// Base Colors\n --color-base-font: #bbb;\n --color-base-font-rgb: 187, 187, 187;\n --color-base-background: #222428;\n --color-base-background-mobile: #222428;\n --color-url-font: #8af;\n --color-url-visited-font: #c09cd9;\n /// Header Colors\n --color-header-background: #1e1e22;\n --color-header-border: #333;\n /// Footer Colors\n --color-footer-background: #1e1e22;\n --color-footer-border: #333;\n /// Sidebar Colors\n --color-sidebar-border: #555;\n --color-sidebar-font: #fff;\n --color-sidebar-background: #292c34;\n /// BackToTop Colors\n --color-backtotop-font: #bbb;\n --color-backtotop-border: #333;\n --color-backtotop-background: #2b2e36;\n /// Button Colors\n --color-btn-background: #58f;\n --color-btn-font: #222;\n --color-show-btn-background: #555;\n --color-show-btn-font: #fff;\n /// Search Input Colors\n --color-search-border: #555;\n --color-search-shadow: 0 2px 8px rgb(34 38 46 / 25%);\n --color-search-background: #2b2e36;\n --color-search-font: #fff;\n --color-search-background-hover: #58f;\n /// Modal Colors\n --color-error: #f55b5b;\n --color-error-background: darken(#db3434, 40%);\n --color-warning: #f1d561;\n --color-warning-background: darken(#dbba34, 40%);\n --color-success: #79f56e;\n --color-success-background: darken(#42db34, 40%);\n /// Categories Colors\n --color-categories-item-selected-font: #58f;\n --color-categories-item-border-selected: #58f;\n /// Autocomplete Colors\n --color-autocomplete-font: #fff;\n --color-autocomplete-border: #555;\n --color-autocomplete-shadow: 0 2px 8px rgb(34 38 46 / 25%);\n --color-autocomplete-background: #2b2e36;\n --color-autocomplete-background-hover: #1e1e22;\n /// Answer Colors\n --color-answer-font: #bbb; // same as --color-base-font\n --color-answer-background: #26292f;\n /// Results Colors\n --color-result-background: #26292f;\n --color-result-border: #333;\n --color-result-url-font: #fff;\n --color-result-vim-selected: #1f1f23cc;\n --color-result-vim-arrow: #8af;\n --color-result-description-highlight-font: #fff;\n --color-result-link-font: #8af;\n --color-result-link-font-highlight: #8af;\n --color-result-link-visited-font: #c09cd9;\n --color-result-publishdate-font: #888;\n --color-result-engines-font: #a4a4a4;\n --color-result-search-url-border: #555;\n --color-result-search-url-font: #fff;\n /// Detail modal : same as the light version\n --color-result-detail-font: #fff;\n --color-result-detail-label-font: lightgray;\n --color-result-detail-background: #1a1a1c;\n --color-result-detail-hr: #555;\n --color-result-detail-link: #8af;\n --color-result-detail-loader-border: rgba(255, 255, 255, 0.2);\n --color-result-detail-loader-borderleft: rgba(0, 0, 0, 0);\n // Images Colors\n --color-result-image-span-font: #bbb;\n --color-result-image-span-font-selected: #222;\n --color-result-image-background: #222;\n /// Settings Colors\n --color-settings-tr-hover: #2c2c32;\n --color-settings-engine-description-font: darken(#dcdcdc, 30%);\n --color-settings-engine-group-background: #1b1b21;\n /// Toolkit Colors\n --color-toolkit-badge-font: #fff;\n --color-toolkit-badge-background: #555;\n --color-toolkit-kbd-font: #000;\n --color-toolkit-kbd-background: #fff;\n --color-toolkit-dialog-border: #555;\n --color-toolkit-dialog-background: #1e1e22;\n --color-toolkit-tabs-label-border: #222;\n --color-toolkit-tabs-section-border: #555;\n --color-toolkit-select-background: #313338;\n --color-toolkit-select-border: #555;\n --color-toolkit-select-background-hover: #373b49;\n --color-toolkit-input-text-font: #fff;\n --color-toolkit-checkbox-onoff-off-background: #313338;\n --color-toolkit-checkbox-onoff-on-background: #313338;\n --color-toolkit-checkbox-onoff-on-mark-background: #58f;\n --color-toolkit-checkbox-onoff-on-mark-color: #222;\n --color-toolkit-checkbox-onoff-off-mark-background: #ddd;\n --color-toolkit-checkbox-onoff-off-mark-color: #222;\n --color-toolkit-checkbox-label-background: #222;\n --color-toolkit-checkbox-label-border: #333;\n --color-toolkit-checkbox-input-border: #58f;\n --color-toolkit-engine-tooltip-border: #333;\n --color-toolkit-engine-tooltip-background: #222;\n --color-toolkit-loader-border: rgba(255, 255, 255, 0.2);\n --color-toolkit-loader-borderleft: rgba(0, 0, 0, 0);\n --color-doc-code: #fdd;\n --color-doc-code-background: #300;\n}\n\n/// Dark Theme (autoswitch based on device pref)\n@media (prefers-color-scheme: dark) {\n :root.theme-auto {\n .dark-themes();\n }\n}\n\n// Dark Theme by preferences\n:root.theme-dark {\n .dark-themes();\n}\n\n/// General Size\n@results-width: 45rem;\n@results-sidebar-width: 25rem;\n@results-offset: 10rem;\n@results-tablet-offset: 0.5rem;\n@results-gap: 5rem;\n@results-margin: 0.125rem;\n@result-padding: 1rem;\n@results-image-row-height: 12rem;\n@results-image-row-height-phone: 6rem;\n@search-width: 44rem;\n// heigh of #search, see detail.less\n@search-height: 7.6rem;\n\n/// Device Size\n/// @desktop > @tablet\n@tablet: 79.75em; // see https://github.com/searxng/searxng/issues/874\n@phone: 50em;\n@small-phone: 35em;\n@ultra-small-phone: 20rem;\n\n/// From style.less\n@stacked-bar-chart: rgb(0, 0, 0);\n\n/// Load fonts from this directory.\n@icon-font-path: \"../../../fonts/\";\n//** File name for all font files.\n@icon-font-name: \"glyphicons-halflings-regular\";\n//** Element ID within SVG icon file.\n@icon-font-svg-id: \"glyphicons_halflingsregular\";\n\n// decoration of the select HTML elements\n@select-light-svg-path: \"../svg/select-light.svg\";\n@select-dark-svg-path: \"../svg/select-dark.svg\";\n",".code-highlight pre {\n overflow: auto;\n background-color: inherit;\n color: inherit;\n border: inherit;\n}\n\n// stylelint-disable no-invalid-position-at-import-rule\n@import \"../generated/pygments.less\";\n","/*\n this file is generated automatically by searxng_extra/update/update_pygments.py\n using pygments version 2.12.0\n*/\n\n.code-highlight .linenos {\n -webkit-touch-callout: none;\n -webkit-user-select: none;\n -khtml-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n cursor: default;\n\n &::selection {\n background: transparent; /* WebKit/Blink Browsers */\n }\n &::-moz-selection {\n background: transparent; /* Gecko Browsers */\n }\n\n margin-right: 8px;\n text-align: right;\n}\n\n.code-highlight pre { line-height: 125%; }\n.code-highlight td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }\n.code-highlight span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }\n.code-highlight td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }\n.code-highlight span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }\n.code-highlight .hll { background-color: #ffffcc }\n.code-highlight { background: #f8f8f8; }\n.code-highlight .c { color: #3D7B7B; font-style: italic } /* Comment */\n.code-highlight .err { border: 1px solid #FF0000 } /* Error */\n.code-highlight .k { color: #008000; font-weight: bold } /* Keyword */\n.code-highlight .o { color: #666666 } /* Operator */\n.code-highlight .ch { color: #3D7B7B; font-style: italic } /* Comment.Hashbang */\n.code-highlight .cm { color: #3D7B7B; font-style: italic } /* Comment.Multiline */\n.code-highlight .cp { color: #9C6500 } /* Comment.Preproc */\n.code-highlight .cpf { color: #3D7B7B; font-style: italic } /* Comment.PreprocFile */\n.code-highlight .c1 { color: #3D7B7B; font-style: italic } /* Comment.Single */\n.code-highlight .cs { color: #3D7B7B; font-style: italic } /* Comment.Special */\n.code-highlight .gd { color: #A00000 } /* Generic.Deleted */\n.code-highlight .ge { font-style: italic } /* Generic.Emph */\n.code-highlight .gr { color: #E40000 } /* Generic.Error */\n.code-highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */\n.code-highlight .gi { color: #008400 } /* Generic.Inserted */\n.code-highlight .go { color: #717171 } /* Generic.Output */\n.code-highlight .gp { color: #000080; font-weight: bold } /* Generic.Prompt */\n.code-highlight .gs { font-weight: bold } /* Generic.Strong */\n.code-highlight .gu { color: #800080; font-weight: bold } /* Generic.Subheading */\n.code-highlight .gt { color: #0044DD } /* Generic.Traceback */\n.code-highlight .kc { color: #008000; font-weight: bold } /* Keyword.Constant */\n.code-highlight .kd { color: #008000; font-weight: bold } /* Keyword.Declaration */\n.code-highlight .kn { color: #008000; font-weight: bold } /* Keyword.Namespace */\n.code-highlight .kp { color: #008000 } /* Keyword.Pseudo */\n.code-highlight .kr { color: #008000; font-weight: bold } /* Keyword.Reserved */\n.code-highlight .kt { color: #B00040 } /* Keyword.Type */\n.code-highlight .m { color: #666666 } /* Literal.Number */\n.code-highlight .s { color: #BA2121 } /* Literal.String */\n.code-highlight .na { color: #687822 } /* Name.Attribute */\n.code-highlight .nb { color: #008000 } /* Name.Builtin */\n.code-highlight .nc { color: #0000FF; font-weight: bold } /* Name.Class */\n.code-highlight .no { color: #880000 } /* Name.Constant */\n.code-highlight .nd { color: #AA22FF } /* Name.Decorator */\n.code-highlight .ni { color: #717171; font-weight: bold } /* Name.Entity */\n.code-highlight .ne { color: #CB3F38; font-weight: bold } /* Name.Exception */\n.code-highlight .nf { color: #0000FF } /* Name.Function */\n.code-highlight .nl { color: #767600 } /* Name.Label */\n.code-highlight .nn { color: #0000FF; font-weight: bold } /* Name.Namespace */\n.code-highlight .nt { color: #008000; font-weight: bold } /* Name.Tag */\n.code-highlight .nv { color: #19177C } /* Name.Variable */\n.code-highlight .ow { color: #AA22FF; font-weight: bold } /* Operator.Word */\n.code-highlight .w { color: #bbbbbb } /* Text.Whitespace */\n.code-highlight .mb { color: #666666 } /* Literal.Number.Bin */\n.code-highlight .mf { color: #666666 } /* Literal.Number.Float */\n.code-highlight .mh { color: #666666 } /* Literal.Number.Hex */\n.code-highlight .mi { color: #666666 } /* Literal.Number.Integer */\n.code-highlight .mo { color: #666666 } /* Literal.Number.Oct */\n.code-highlight .sa { color: #BA2121 } /* Literal.String.Affix */\n.code-highlight .sb { color: #BA2121 } /* Literal.String.Backtick */\n.code-highlight .sc { color: #BA2121 } /* Literal.String.Char */\n.code-highlight .dl { color: #BA2121 } /* Literal.String.Delimiter */\n.code-highlight .sd { color: #BA2121; font-style: italic } /* Literal.String.Doc */\n.code-highlight .s2 { color: #BA2121 } /* Literal.String.Double */\n.code-highlight .se { color: #AA5D1F; font-weight: bold } /* Literal.String.Escape */\n.code-highlight .sh { color: #BA2121 } /* Literal.String.Heredoc */\n.code-highlight .si { color: #A45A77; font-weight: bold } /* Literal.String.Interpol */\n.code-highlight .sx { color: #008000 } /* Literal.String.Other */\n.code-highlight .sr { color: #A45A77 } /* Literal.String.Regex */\n.code-highlight .s1 { color: #BA2121 } /* Literal.String.Single */\n.code-highlight .ss { color: #19177C } /* Literal.String.Symbol */\n.code-highlight .bp { color: #008000 } /* Name.Builtin.Pseudo */\n.code-highlight .fm { color: #0000FF } /* Name.Function.Magic */\n.code-highlight .vc { color: #19177C } /* Name.Variable.Class */\n.code-highlight .vg { color: #19177C } /* Name.Variable.Global */\n.code-highlight .vi { color: #19177C } /* Name.Variable.Instance */\n.code-highlight .vm { color: #19177C } /* Name.Variable.Magic */\n.code-highlight .il { color: #666666 } /* Literal.Number.Integer.Long */\n","// other solution : http://stackoverflow.com/questions/1577598/how-to-hide-parts-of-html-when-javascript-is-disabled/13857783#13857783\n\n// stylelint-disable no-descending-specificity\n\nhtml.no-js .hide_if_nojs {\n display: none;\n}\n\nhtml.js .show_if_nojs {\n display: none;\n}\n\n.center {\n text-align: center;\n}\n\n.right {\n float: right;\n}\n\n.left {\n float: left;\n}\n\n.invisible {\n display: none !important;\n}\n\n.list-unstyled {\n list-style-type: none;\n\n li {\n margin-top: 4px;\n margin-bottom: 4px;\n }\n}\n\n.danger {\n background-color: var(--color-error-background);\n}\n\n.warning {\n background: var(--color-warning-background);\n}\n\n.success {\n background: var(--color-success-background);\n}\n\n.badge {\n display: inline-block;\n color: var(--color-toolkit-badge-font);\n background-color: var(--color-toolkit-badge-background);\n text-align: center;\n white-space: nowrap;\n vertical-align: baseline;\n min-width: 10px;\n padding: 1px 5px;\n border-radius: 5px;\n}\n\n// kbd\nkbd {\n padding: 2px 4px;\n margin: 1px;\n font-size: 90%;\n color: var(--color-toolkit-kbd-font);\n background: var(--color-toolkit-kbd-background);\n}\n\n// table\ntable {\n width: 100%;\n\n &.striped {\n tr {\n border-bottom: 1px solid var(--color-settings-tr-hover);\n }\n }\n}\n\nth {\n padding: 0.4em;\n}\n\ntd {\n padding: 0 4px;\n}\n\ntr {\n &:hover {\n background: var(--color-settings-tr-hover) !important;\n }\n}\n\n// pre\n.pre() {\n display: block;\n font-size: 0.8em;\n word-break: break-all;\n margin: 0.1em;\n user-select: all;\n}\n\ndiv.selectable_url {\n display: block;\n border: 1px solid var(--color-result-search-url-border);\n padding: 4px;\n color: var(--color-result-search-url-font);\n margin: 0.1em;\n overflow: hidden;\n height: 1.2em;\n line-height: 1.2em;\n .rounded-corners-tiny;\n\n pre {\n .pre();\n }\n}\n\n// dialog\n.dialog() {\n position: relative;\n display: flex;\n padding: 1rem;\n margin: 0 0 1em 0;\n border: 1px solid var(--color-toolkit-dialog-border);\n .ltr-text-align-left();\n .rounded-corners;\n\n .close {\n .ltr-float-right();\n position: relative;\n top: -3px;\n color: inherit;\n font-size: 1.5em;\n }\n\n ul,\n ol,\n p {\n margin: 1px 0 0 0;\n }\n\n table {\n width: auto;\n }\n\n tr {\n vertical-align: text-top;\n\n &:hover {\n background: transparent !important;\n }\n }\n\n td {\n padding: 0 1em 0 0;\n padding-top: 0;\n .ltr-padding-right(1rem);\n padding-bottom: 0;\n .ltr-padding-left(0);\n }\n\n h4 {\n margin-top: 0.3em;\n margin-bottom: 0.3em;\n }\n}\n\n.dialog-error {\n .dialog();\n\n color: var(--color-error);\n background: var(--color-error-background);\n border-color: var(--color-error);\n}\n\n.dialog-warning {\n .dialog();\n\n color: var(--color-warning);\n background: var(--color-warning-background);\n border-color: var(--color-warning);\n}\n\n.dialog-modal {\n .dialog();\n\n display: block;\n background: var(--color-toolkit-dialog-background);\n position: fixed;\n top: 50%;\n left: 50%;\n margin: 0 auto;\n transform: translate(-50%, -50%);\n z-index: 10000000;\n\n h3 {\n margin-top: 0;\n }\n}\n\n// btn-collapse\n.btn-collapse {\n cursor: pointer;\n}\n\n//\n.scrollx {\n overflow-x: auto;\n overflow-y: hidden;\n display: block;\n padding: 0;\n margin: 0;\n border: none;\n}\n\n/* -- tabs -- */\n.tabs .tabs > label {\n font-size: 90%;\n}\n\nul.tabs {\n border-bottom: 1px solid var(--color-toolkit-tabs-section-border);\n list-style: none;\n padding-left: 0;\n\n li {\n display: flex;\n }\n}\n\n.tabs {\n display: flex;\n flex-wrap: wrap;\n width: 100%;\n min-width: 100%;\n\n & > * {\n order: 2;\n }\n\n & > input[type=radio] {\n display: none;\n }\n\n & > label,\n & > li > a {\n order: 1;\n padding: 0.7em;\n margin: 0 0.7em;\n letter-spacing: 0.5px;\n text-transform: uppercase;\n border: solid var(--color-toolkit-tabs-label-border);\n border-width: 0 0 2px 0;\n color: unset;\n\n .disable-user-select();\n\n cursor: pointer;\n\n &.active {\n border-bottom: 2px solid var(--color-categories-item-border-selected);\n background: var(--color-categories-item-selected);\n color: var(--color-categories-item-selected-font);\n }\n }\n\n & > label:hover,\n & > li > a:hover {\n border-bottom: 2px solid var(--color-categories-item-border-selected);\n }\n\n & > section {\n min-width: 100%;\n padding: 0.7rem 0;\n box-sizing: border-box;\n border-top: 1px solid var(--color-toolkit-tabs-section-border);\n display: none;\n }\n\n // default selection\n & > label:last-of-type {\n border-bottom: 2px solid var(--color-categories-item-border-selected);\n background: var(--color-categories-item-selected);\n color: var(--color-categories-item-selected-font);\n letter-spacing: -0.1px;\n }\n\n & > section:last-of-type {\n display: block;\n }\n}\n\nhtml body .tabs > input:checked {\n ~ section {\n display: none;\n }\n\n ~ label {\n position: inherited;\n background: inherit;\n border-bottom: 2px solid transparent;\n font-weight: normal;\n color: inherit;\n\n &:hover {\n border-bottom: 2px solid var(--color-categories-item-border-selected);\n }\n }\n\n + label {\n border-bottom: 2px solid var(--color-categories-item-border-selected);\n background: var(--color-categories-item-selected);\n color: var(--color-categories-item-selected-font);\n }\n\n + label + section {\n display: block;\n }\n}\n\n/* -- select -- */\nselect {\n height: 2.4rem;\n margin-top: 0;\n .ltr-margin-right(1rem);\n margin-bottom: 0;\n .ltr-margin-left(0);\n padding: 0.2rem !important;\n color: var(--color-search-font);\n font-size: 0.9rem;\n z-index: 2;\n\n &:hover,\n &:focus {\n cursor: pointer;\n }\n}\n\n@supports ((background-position-x: 100%) and ((appearance: none) or (-webkit-appearance: none) or (-moz-appearance: none))) {\n select {\n appearance: none;\n -webkit-appearance: none;\n -moz-appearance: none;\n border-width: 0 2rem 0 0;\n border-color: transparent;\n background: data-uri('image/svg+xml;charset=UTF-8', @select-light-svg-path) no-repeat;\n background-position-x: calc(100% + 2rem);\n background-size: 2rem;\n background-origin: content-box;\n background-color: var(--color-toolkit-select-background);\n outline: medium none;\n text-overflow: ellipsis;\n .rounded-corners-tiny;\n\n &:hover,\n &:focus {\n background-color: var(--color-toolkit-select-background-hover);\n }\n\n option {\n background-color: var(--color-base-background);\n }\n }\n\n @media (prefers-color-scheme: dark) {\n html.theme-auto select,\n html.theme-dark select {\n background-image: data-uri('image/svg+xml;charset=UTF-8', @select-dark-svg-path);\n }\n }\n\n html.theme-dark select {\n background-image: data-uri('image/svg+xml;charset=UTF-8', @select-dark-svg-path);\n }\n}\n\n/* -- checkbox-onoff -- */\ninput.checkbox-onoff[type=\"checkbox\"] {\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n cursor: pointer;\n display: inline-block;\n width: 2.5em;\n height: 0.7em;\n box-shadow: none !important;\n margin: 0 16px;\n border-radius: 10px;\n position: relative;\n\n /* focus & hover */\n &:focus,\n &:hover {\n outline: none;\n }\n\n &:focus::after {\n content: \"\";\n position: absolute;\n width: 3.5em;\n height: 1.65em;\n border: 1px solid var(--color-btn-background);\n border-radius: 12px;\n box-shadow: var(--color-btn-background) 0 0 3px;\n z-index: 10000;\n top: -0.55em;\n left: -0.6em;\n }\n\n &::before {\n position: absolute;\n top: -0.5em;\n display: flex;\n justify-content: center;\n align-items: center;\n font-size: 0.75em;\n width: 1.875em;\n height: 1.875em;\n border-radius: 50%;\n }\n}\n\n/* check mark\nreversed-checkbox displays unchecked checkedboxes as checked, and vice versa.\nsee https://github.com/searxng/searxng/blob/3408d061aab9abc6168fec9bbc6deab71b236dac/searx/templates/simple/preferences.html#L313\n*/\ninput.checkbox-onoff[type=\"checkbox\"],\n.reversed-checkbox input.checkbox-onoff[type=\"checkbox\"]:checked {\n background: var(--color-toolkit-checkbox-onoff-off-background);\n\n &::before {\n left: -0.5em;\n content: \"\\2715\";\n color: var(--color-toolkit-checkbox-onoff-off-mark-color);\n background: var(--color-toolkit-checkbox-onoff-off-mark-background);\n }\n}\n\ninput.checkbox-onoff[type=\"checkbox\"]:checked,\n.reversed-checkbox input.checkbox-onoff[type=\"checkbox\"] {\n background: var(--color-toolkit-checkbox-onoff-on-background);\n\n &::before {\n left: calc(100% - 1.5em);\n content: \"\\2713\";\n color: var(--color-toolkit-checkbox-onoff-on-mark-color);\n background: var(--color-toolkit-checkbox-onoff-on-mark-background);\n }\n}\n\n/* -- checkbox -- */\n@supports (transform: rotate(-45deg)) {\n input[type=checkbox]:not(.checkbox-onoff) {\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n\n width: 20px;\n height: 20px;\n cursor: pointer;\n position: relative;\n top: 0;\n left: 0;\n border: 2px solid var(--color-toolkit-checkbox-input-border);\n .rounded-corners(0.3em);\n\n &::after {\n content: '';\n width: 9px;\n height: 5px;\n position: absolute;\n top: 3px;\n left: 2px;\n border: 3px solid var(--color-toolkit-checkbox-label-border);\n border-top: none;\n border-right: none;\n background: transparent;\n opacity: 0;\n transform: rotate(-45deg);\n }\n\n &:checked::after {\n border-color: var(--color-toolkit-checkbox-input-border);\n opacity: 1;\n }\n }\n\n // disabled : can't be focused, show only the check mark\n input[type=checkbox][disabled]:not(.checkbox-onoff) {\n border: inherit;\n background-color: transparent !important;\n cursor: inherit;\n }\n\n // if not checked and possible to checked then display a \"light\" check mark on hover\n input.checkbox[type=checkbox]:not(:checked):not([disabled]):not(.checkbox-onoff):hover::after {\n opacity: 0.5;\n }\n}\n\n@media screen and (max-width: @phone) {\n .tabs > label {\n width: 100%;\n }\n}\n\n/* -- loader -- */\n.loader,\n.loader::after {\n border-radius: 50%;\n width: 2em;\n height: 2em;\n}\n\n.loader {\n margin: 1em auto;\n font-size: 10px;\n position: relative;\n text-indent: -9999em;\n border-top: 0.5em solid var(--color-toolkit-loader-border);\n border-right: 0.5em solid var(--color-toolkit-loader-border);\n border-bottom: 0.5em solid var(--color-toolkit-loader-border);\n border-left: 0.5em solid var(--color-toolkit-loader-borderleft);\n -webkit-transform: translateZ(0);\n -ms-transform: translateZ(0);\n transform: translateZ(0);\n -webkit-animation: load8 1.2s infinite linear;\n animation: load8 1.2s infinite linear;\n}\n\n@-webkit-keyframes load8 {\n 0% {\n -webkit-transform: rotate(0deg);\n transform: rotate(0deg);\n }\n\n 100% {\n -webkit-transform: rotate(360deg);\n transform: rotate(360deg);\n }\n}\n\n@keyframes load8 {\n 0% {\n -webkit-transform: rotate(0deg);\n transform: rotate(0deg);\n }\n\n 100% {\n -webkit-transform: rotate(360deg);\n transform: rotate(360deg);\n }\n}\n\n/* -- engine-tooltip -- */\n.engine-tooltip {\n display: none;\n position: absolute;\n padding: 0.5rem 1rem;\n margin: 0 0 0 2rem;\n border: 1px solid var(--color-toolkit-engine-tooltip-border);\n background: var(--color-toolkit-engine-tooltip-background);\n font-size: 14px;\n font-weight: normal;\n z-index: 1000000;\n text-align: left;\n .rounded-corners;\n}\n\nth:hover .engine-tooltip,\ntd:hover .engine-tooltip,\n.engine-tooltip:hover {\n display: inline-block;\n}\n\n/* -- stacked bar chart -- */\n.stacked-bar-chart {\n margin: 0;\n padding: 0 0.125rem 0 4rem;\n width: 100%;\n width: -moz-available;\n width: -webkit-fill-available;\n width: fill;\n flex-direction: row;\n flex-wrap: nowrap;\n align-items: center;\n display: inline-flex;\n}\n\n.stacked-bar-chart-value {\n width: 3rem;\n display: inline-block;\n position: absolute;\n padding: 0 0.5rem;\n text-align: right;\n}\n\n.stacked-bar-chart-base {\n display: flex;\n flex-shrink: 0;\n flex-grow: 0;\n flex-basis: unset;\n}\n\n.stacked-bar-chart-median {\n .stacked-bar-chart-base();\n\n background: var(--color-base-font);\n border: 1px solid rgba(var(--color-base-font-rgb), 0.9);\n padding: 0.3rem 0;\n}\n\n.stacked-bar-chart-rate80 {\n .stacked-bar-chart-base();\n\n background: transparent;\n border: 1px solid rgba(var(--color-base-font-rgb), 0.3);\n padding: 0.3rem 0;\n}\n\n.stacked-bar-chart-rate95 {\n .stacked-bar-chart-base();\n\n background: transparent;\n border-bottom: 1px dotted rgba(var(--color-base-font-rgb), 0.5);\n padding: 0;\n}\n\n.stacked-bar-chart-rate100 {\n .stacked-bar-chart-base();\n\n background: transparent;\n border-left: 1px solid rgba(var(--color-base-font-rgb), 0.9);\n padding: 0.4rem 0;\n width: 1px;\n}\n","// SPDX-License-Identifier: AGPL-3.0-or-later\n\n// Mixins\n.text-size-adjust (@property: 100%) {\n -webkit-text-size-adjust: @property;\n -ms-text-size-adjust: @property;\n -moz-text-size-adjust: @property;\n text-size-adjust: @property;\n}\n\n.rounded-corners (@radius: 10px) {\n border-radius: @radius;\n}\n\n.rounded-right-corners (@radius: 0 10px 10px 0) {\n border-radius: @radius;\n}\n\n.rounded-corners-tiny (@radius: 5px) {\n border-radius: @radius;\n}\n\n// disable user selection\n.disable-user-select () {\n -webkit-touch-callout: none;\n user-select: none;\n}\n\n.show-content-button() {\n padding: 5px 10px;\n .rounded-corners-tiny;\n background: var(--color-show-btn-background);\n color: var(--color-show-btn-font);\n cursor: pointer;\n\n &:hover {\n background: var(--color-btn-background);\n color: var(--color-btn-font);\n }\n}\n",".ltr-left(@offset) {\n right: @offset;\n}\n\n.ltr-right(@offset) {\n left: @offset;\n}\n\n.ltr-margin-right(@offset) {\n margin-left: @offset;\n}\n\n.ltr-margin-left(@offset) {\n margin-right: @offset;\n}\n\n.ltr-border-right(@offset) {\n border-left: @offset;\n}\n\n.ltr-border-left(@offset) {\n border-right: @offset;\n}\n\n.ltr-padding-right(@offset) {\n padding-left: @offset;\n}\n\n.ltr-padding-left(@offset) {\n padding-right: @offset;\n}\n\n.ltr-float-left() {\n float: right;\n}\n\n.ltr-float-right() {\n float: left;\n}\n\n.ltr-text-align-right() {\n text-align: left;\n}\n\n.ltr-rounded-left-corners(@radius) {\n border-radius: 0 @radius @radius 0;\n}\n\n.ltr-rounded-top-left-corners(@radius) {\n border-radius: 0 @radius 0 0;\n}\n\n.ltr-rounded-bottom-left-corners(@radius) {\n border-radius: 0 0 @radius 0;\n}\n\n.ltr-rounded-right-corners(@radius) {\n border-radius: @radius 0 0 @radius;\n}\n\n.ltr-rounded-top-right-corners(@radius) {\n border-radius: @radius 0 0 0;\n}\n\n.ltr-rounded-bottom-right-corners(@radius) {\n border-radius: 0 0 0 @radius;\n}\n\n.ltr-text-align-left() {\n text-align: right;\n}\n\n.ltr-border-left-width(@offset) {\n border-right-width: @offset;\n}\n\n.ltr-border-right-width(@offset) {\n border-left-width: @offset;\n}\n\n.ltr-transform() {\n transform: scale(-1, 1);\n}\n\n@import \"style.less\";\n\n#q,\n#sidebar .infobox dt bdi {\n direction: rtl;\n}\n\n// URL are displayed LTR but align on the right\n#urls {\n direction: initial;\n text-align: right;\n\n .result .url_wrapper {\n justify-content: end;\n }\n}\n\n// Image flexbox\n#main_results div#results.only_template_images #urls {\n direction: rtl;\n}\n\n// Image detail\n#results.image-detail-open article.result-images[data-vim-selected] .detail .result-images-labels p {\n direction: rtl;\n\n &.result-url {\n // Display URL using the LTR direction\n direction: ltr;\n\n span {\n // And put the label on the right\n direction: rtl;\n float: right;\n }\n }\n}\n\n// select HTML element\n@supports ((background-position-x: 100%) and ((appearance: none) or (-webkit-appearance: none) or (-moz-appearance: none))) {\n select {\n border-width: 0 0 0 2rem;\n background-position-x: -2rem;\n }\n}\n\n// vim hotkey helps is not translated\n#vim-hotkeys-help table {\n direction: ltr;\n text-align: left;\n}\n\n// Logo on the right\n#main_preferences h1,\n#main_stats h1 {\n background-position-x: 100%;\n}\n\n// patch of stats.less\n.bar-chart-serie1,\n.bar-chart-serie2 {\n float: right;\n}\n\n.engine-stats .engine-name,\n.engine-stats .engine-score,\n.engine-stats .result-count,\n.engine-stats .response-time,\n.engine-stats .engine-reliability {\n text-align: right;\n}\n","/*! Autocomplete.js v2.6.3 | license MIT | (c) 2017, Baptiste Donaux | http://autocomplete-js.com */\n\n.autocomplete {\n position: absolute;\n width: @search-width;\n max-height: 0;\n overflow-y: hidden;\n .ltr-text-align-left();\n\n .rounded-corners;\n\n &:active,\n &:focus,\n &:hover {\n background-color: var(--color-autocomplete-background);\n }\n\n &:empty {\n display: none;\n }\n\n > ul {\n list-style-type: none;\n margin: 0;\n padding: 0;\n\n > li {\n cursor: pointer;\n padding: 0.5rem 1rem;\n\n &.active,\n &:active,\n &:focus,\n &:hover {\n background-color: var(--color-autocomplete-background-hover);\n\n a:active,\n a:focus,\n a:hover {\n text-decoration: none;\n }\n }\n\n &.locked {\n cursor: inherit;\n }\n }\n }\n\n &.open {\n display: block;\n background-color: var(--color-autocomplete-background);\n color: var(--color-autocomplete-font);\n max-height: 32rem;\n overflow-y: auto;\n z-index: 100;\n margin-top: 3.5rem;\n border-radius: 0.8rem;\n box-shadow: 0 2px 8px rgb(34 38 46 / 25%);\n\n &:empty {\n display: none;\n }\n }\n}\n\n@media screen and (max-width: @phone) {\n .autocomplete {\n width: 100%;\n\n > ul > li {\n padding: 1rem;\n }\n }\n}\n","#main_results #results.image-detail-open.only_template_images {\n width: min(98%, 59.25rem) !important;\n}\n\n#main_results #results.only_template_images.image-detail-open #backToTop {\n .ltr-left(56.75rem) !important;\n .ltr-right(inherit);\n}\n\narticle.result-images .detail {\n display: none;\n}\n\n#results.image-detail-open article.result-images[data-vim-selected] .detail {\n display: flex;\n flex-direction: column;\n position: fixed;\n .ltr-left(60rem);\n .ltr-right(0);\n top: @search-height;\n transition: top 0.064s ease-in 0s;\n bottom: 0;\n background: var(--color-result-detail-background);\n border: 1px solid var(--color-result-detail-background);\n z-index: 10000;\n padding: 4rem 3rem 3rem 3rem;\n\n a.result-images-source {\n display: block;\n flex: 1;\n text-align: left;\n width: 100%;\n border: none;\n text-decoration: none;\n\n img {\n padding: 0;\n margin: 0;\n border: none;\n object-fit: contain;\n width: inherit;\n height: inherit;\n max-width: 100%;\n min-height: inherit;\n max-height: calc(100vh - 25rem - 7rem);\n background: inherit;\n }\n }\n\n .result-images-labels {\n color: var(--color-result-detail-font);\n max-height: 16rem;\n min-height: 16rem;\n\n hr {\n border-top: 1px solid var(--color-result-detail-hr);\n border-bottom: none;\n }\n\n h4 {\n height: 2rem;\n overflow: hidden;\n text-overflow: ellipsis;\n font-size: 0.9rem;\n }\n\n p {\n color: var(--color-result-detail-label-font);\n font-size: 0.9rem;\n\n span {\n display: inline-block;\n width: 12rem;\n }\n }\n\n h4,\n p,\n a {\n .ltr-text-align-left();\n }\n\n p.result-content {\n height: 2rem;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n\n p.result-url {\n white-space: nowrap;\n overflow-x: hidden;\n text-overflow: ellipsis;\n }\n\n p.result-content:hover,\n p.result-url:hover {\n position: relative;\n overflow: inherit !important;\n background: var(--color-result-detail-background);\n text-overflow: inherit !important;\n }\n\n a,\n a:visited,\n a:hover,\n a:active {\n color: var(--color-result-detail-link);\n }\n\n a:hover {\n text-decoration: underline;\n }\n }\n\n a.result-detail-close {\n top: 1rem;\n .ltr-left(1rem);\n padding: 0.4rem;\n }\n\n a.result-detail-previous {\n top: 1rem;\n .ltr-right(6rem);\n // center the icon by moving it slightly on the left\n padding-top: 0.4rem;\n .ltr-padding-right(0.5rem);\n padding-bottom: 0.4rem;\n .ltr-padding-left(0.3rem);\n }\n\n a.result-detail-next {\n top: 1rem;\n .ltr-right(2rem);\n padding: 0.4rem;\n }\n\n a.result-detail-close,\n a.result-detail-next,\n a.result-detail-previous {\n border-radius: 50%;\n display: block;\n width: 1.5rem;\n height: 1.5rem;\n position: absolute;\n filter: opacity(40%);\n z-index: 2000002;\n\n span {\n display: block;\n width: 1.5rem;\n height: 1.5rem;\n text-align: center;\n }\n }\n\n a.result-detail-next,\n a.result-detail-previous {\n span::before {\n // vertical center small icons\n vertical-align: sub;\n }\n }\n\n a.result-detail-close,\n a.result-detail-close:visited,\n a.result-detail-close:hover,\n a.result-detail-close:active,\n a.result-detail-previous,\n a.result-detail-previous:visited,\n a.result-detail-previous:hover,\n a.result-detail-previous:active,\n a.result-detail-next,\n a.result-detail-next:visited,\n a.result-detail-next:hover,\n a.result-detail-next:active {\n color: var(--color-result-detail-font);\n background: var(--color-result-detail-background);\n border: 1px solid var(--color-result-detail-font);\n }\n\n a.result-detail-close:focus,\n a.result-detail-close:hover,\n a.result-detail-previous:focus,\n a.result-detail-previous:hover,\n a.result-detail-next:focus,\n a.result-detail-next:hover {\n filter: opacity(80%);\n }\n\n .loader {\n position: absolute;\n top: 1rem;\n .ltr-right(50%);\n border-top: 0.5em solid var(--color-result-detail-loader-border);\n border-right: 0.5em solid var(--color-result-detail-loader-border);\n border-bottom: 0.5em solid var(--color-result-detail-loader-border);\n border-left: 0.5em solid var(--color-result-detail-loader-borderleft);\n }\n}\n\n#results.image-detail-open.scrolling article.result-images[data-vim-selected] .detail {\n top: 0;\n\n a.result-images-source img {\n max-height: calc(100vh - 25rem);\n }\n}\n\n@media screen and (max-width: @tablet) {\n #results.image-detail-open article.result-images[data-vim-selected] .detail {\n top: 0;\n .ltr-left(0);\n\n a.result-images-source {\n display: flex;\n flex-direction: column;\n justify-content: center;\n\n img {\n width: 100%;\n max-height: calc(100vh - 24rem);\n }\n }\n\n a.result-detail-next {\n .ltr-right(1rem);\n }\n }\n}\n\n@media screen and (max-width: @phone) {\n #results.image-detail-open article.result-images[data-vim-selected] .detail {\n top: 0;\n .ltr-left(0);\n padding: 1rem;\n\n a.result-images-source img {\n width: 100%;\n max-height: calc(100vh - 20rem);\n margin: 0;\n }\n\n .result-images-labels p span {\n width: inherit;\n .ltr-margin-right(1rem);\n }\n }\n}\n",".dialog-modal {\n animation-name: dialogmodal;\n animation-duration: 0.13s;\n\n @keyframes dialogmodal {\n 0% {\n opacity: 0;\n }\n\n 50% {\n opacity: 0.5;\n transform: translate(-50%, -50%) scale(1.05);\n }\n }\n}\n\ninput.checkbox-onoff[type=\"checkbox\"]::before {\n transition: left 0.25s;\n}\n","iframe[src^=\"https://w.soundcloud.com\"] {\n height: 120px;\n}\n\niframe[src^=\"https://www.deezer.com\"] {\n // The real size is 92px, but 94px are needed to avoid an inner scrollbar of\n // the embedded HTML.\n height: 94px;\n}\n\niframe[src^=\"https://www.mixcloud.com\"] {\n // the embedded player from mixcloud has some quirks: initial there is an\n // issue with an image URL that is blocked since it is an a Cross-Origin\n // request. The alternative text (<img alt='Mixcloud Logo'> then cause an\n // scrollbar in the inner of the iframe we can't avoid. Another quirk comes\n // when pressing the play button, somtimes the shown player has an height of\n // 200px, somtimes 250px.\n height: 250px;\n}\n\niframe[src^=\"https://bandcamp.com/EmbeddedPlayer\"] {\n // show playlist\n height: 350px;\n}\n\niframe[src^=\"https://bandcamp.com/EmbeddedPlayer/track\"] {\n // hide playlist\n height: 120px;\n}\n\niframe[src^=\"https://genius.com/songs\"] {\n height: 65px;\n}\n",".info-page {\n code {\n font-family: monospace;\n color: var(--color-doc-code);\n background-color: var(--color-doc-code-background);\n padding: 2px 5px;\n .rounded-corners(5px);\n }\n}\n","// SPDX-License-Identifier: AGPL-3.0-or-later\n.stats_endpoint {\n .github-issue-button {\n display: block;\n padding: 8px 16px;\n font-family: sans-serif;\n font-size: 16px;\n color: white;\n background-color: #238636;\n border: #2ea043;\n border-radius: 10px !important;\n box-shadow: rgba(0, 0, 0, 0) 0 0 0 0;\n }\n\n .github-issue-button:hover {\n background-color: #2ea043;\n }\n\n .issue-hide {\n display: none;\n }\n\n input[type=checked] {\n position: absolute;\n }\n\n label {\n margin: 1rem 1rem 1rem 0;\n }\n\n .step_content {\n margin: 1rem 1rem 1rem 2rem;\n }\n\n .step1,\n .step2 {\n visibility: hidden;\n }\n\n .step1_delay {\n transition: visibility 0s linear 4s;\n }\n\n #step1:checked ~ .step1,\n #step2:checked ~ .step2 {\n visibility: visible;\n }\n}\n","// SPDX-License-Identifier: AGPL-3.0-or-later\n\n.engine-stats {\n border-spacing: 0;\n border-collapse: collapse;\n\n tr td,\n tr th {\n border-bottom: 1px solid var(--color-result-border);\n padding: 0.25rem;\n }\n\n table.engine-tooltip {\n border-spacing: 0;\n border-collapse: collapse;\n\n td,\n th {\n border: none;\n }\n }\n\n .engine-name {\n width: 20rem;\n }\n\n .engine-score {\n width: 7rem;\n text-align: right;\n }\n\n .engine-reliability {\n text-align: right;\n }\n}\n\ntable.engine-error th.engine-error-type,\ntable.engine-error td.engine-error-type,\nfailed-test {\n width: 10rem;\n}\n\n.engine-errors {\n margin-top: 3rem;\n\n table.engine-error {\n max-width: 1280px;\n margin: 1rem 0 3rem 0;\n border: 1px solid var(--color-result-border);\n .ltr-text-align-left();\n\n tr th,\n tr td {\n padding: 0.5rem;\n }\n\n & span.log_parameters {\n border-right: 1px solid solid var(--color-result-border);\n padding: 0 1rem 0 0;\n margin: 0 0 0 0.5rem;\n }\n }\n}\n\n.bar-chart-value {\n width: 3em;\n display: inline-block;\n text-align: right;\n padding-right: 0.5rem;\n}\n\n.bar-chart-graph {\n width: calc(100% - 5rem);\n display: inline-block;\n}\n\n.bar-chart-bar {\n border: 3px solid #5bc0de;\n margin: 1px 0;\n}\n\n.bar-chart-serie1 {\n border: 3px solid #5bc0de;\n margin: 1px 0;\n float: left;\n}\n\n.bar-chart-serie2 {\n border: 3px solid #deb15b;\n margin: 1px 0;\n float: left;\n}\n\n.bar0 {\n width: 0;\n border: 0;\n}\n\n.generate-bar(100);\n\n.generate-bar(@n, @i: 1) when (@i =< @n) {\n .bar@{i} {\n width: (@i * 100% / @n);\n }\n .generate-bar(@n, (@i + 1));\n}\n","// SPDX-License-Identifier: AGPL-3.0-or-later\n\n.osm-map-box {\n height: 300px;\n width: 100%;\n margin: 10px 0;\n}\n","#main_index {\n margin-top: 26vh;\n}\n\n.index {\n text-align: center;\n\n .title {\n background: url('../img/searxng.png') no-repeat;\n min-height: 4rem;\n margin: 4rem auto;\n background-position: center;\n background-size: contain;\n }\n\n h1 {\n font-size: 4em;\n visibility: hidden;\n }\n\n #search,\n #search_header {\n margin: 0 auto;\n background: inherit;\n border: inherit;\n padding: 0;\n display: block;\n }\n\n .search_filters {\n display: block;\n margin: 1em 0;\n }\n\n .category label {\n padding: 6px 10px;\n border-bottom: initial !important;\n }\n}\n\n@media screen and (max-width: @tablet) {\n div.title {\n h1 {\n font-size: 1em;\n }\n }\n\n #main_index {\n margin-top: 6em;\n }\n}\n","#tab-content-query table td,\n#tab-content-query table th {\n .ltr-text-align-right() !important;\n height: 3rem;\n}\n\n#main_preferences {\n form {\n width: 100%;\n }\n\n fieldset {\n margin: 8px;\n border: none;\n }\n\n legend {\n margin: 0;\n padding: 5px 0 0 0;\n display: block;\n .ltr-float-left();\n width: 300px;\n }\n\n .value {\n margin: 0;\n padding: 0;\n .ltr-float-left();\n width: 15em;\n\n select,\n input[type=\"text\"] {\n font-size: inherit !important;\n margin-top: 0;\n .ltr-margin-right(1rem);\n margin-bottom: 0;\n .ltr-margin-left(0);\n }\n\n select {\n width: 14rem;\n }\n\n input[type=\"text\"] {\n width: 13.25rem;\n color: var(--color-toolkit-input-text-font);\n border: none;\n background: none repeat scroll 0 0 var(--color-toolkit-select-background);\n padding: 0.2rem 0.4rem;\n height: 2rem;\n .rounded-corners-tiny;\n\n &:hover,\n &:focus {\n background-color: var(--color-toolkit-select-background-hover);\n }\n }\n\n select:focus,\n input:focus {\n outline: none;\n box-shadow: 0 0 1px 1px var(--color-btn-background);\n }\n }\n\n .description {\n margin: 0;\n padding: 5px 0 0 0;\n .ltr-float-right();\n width: 50%;\n color: var(--color-settings-engine-description-font);\n font-size: 90%;\n }\n\n table {\n border-collapse: collapse;\n }\n\n table td {\n text-align: center;\n }\n\n .category {\n .ltr-margin-right(0.5rem);\n\n label {\n border: 2px solid transparent;\n padding: 0.2rem 0.4rem;\n .rounded-corners-tiny;\n }\n }\n\n .category input[type=\"checkbox\"]:checked + label {\n border: 2px solid var(--color-categories-item-border-selected);\n }\n\n table.table_engines {\n td {\n height: 3.75rem;\n }\n\n th.name {\n /* stylelint-disable */\n label {\n cursor: pointer;\n }\n /* stylelint-enable */\n\n .engine-tooltip {\n margin-top: 1.8rem;\n .ltr-left(calc((100% - 85em) / 2 + 10em));\n max-width: 40rem;\n\n .engine-description {\n margin-top: 0.5rem;\n }\n }\n }\n\n .engine-group {\n .ltr-text-align-left();\n font-weight: normal;\n background: var(--color-settings-engine-group-background);\n }\n\n .name,\n .shortcut {\n .ltr-text-align-left();\n }\n }\n\n table.cookies {\n width: 100%;\n direction: ltr;\n\n th,\n td {\n text-align: left;\n font-family: monospace;\n font-size: 1rem;\n padding: 0.5em;\n vertical-align: top;\n }\n\n td:first-child {\n word-break: keep-all;\n width: 14rem;\n padding-right: 1rem;\n }\n\n td:last-child {\n word-break: break-all;\n }\n\n & > tbody > tr:nth-child(even) > th,\n & > tbody > tr:nth-child(even) > td {\n background-color: var(--color-settings-tr-hover);\n }\n }\n\n .preferences_back {\n background: none repeat scroll 0 0 var(--color-btn-background);\n color: var(--color-btn-font);\n border: 0 none;\n .rounded-corners;\n\n cursor: pointer;\n display: inline-block;\n margin: 2px 4px;\n padding: 0.7em;\n\n a {\n color: var(--color-settings-return-font);\n }\n\n a::first-letter {\n text-transform: uppercase;\n }\n }\n\n div.selectable_url {\n pre {\n width: 100%;\n }\n }\n}\n\n@media screen and (max-width: @tablet) {\n .preferences_back {\n clear: both;\n }\n\n .engine-tooltip {\n .ltr-left(10em) !important;\n }\n}\n","/*\n* SearXNG, A privacy-respecting, hackable metasearch engine\n*/\n\n#search {\n padding: 0;\n margin: 0;\n}\n\n#search_header {\n padding-top: 1.5em;\n .ltr-padding-right(2em);\n .ltr-padding-left(@results-offset - 3rem);\n margin: 0;\n background: var(--color-header-background);\n border-bottom: 1px solid var(--color-header-border);\n display: grid;\n column-gap: 1.2rem;\n row-gap: 1rem;\n grid-template-columns: 3rem 1fr;\n grid-template-areas:\n \"logo search\"\n \"spacer categories\";\n}\n\n.category {\n display: inline-block;\n position: relative;\n .ltr-margin-right(1rem);\n padding: 0;\n\n input {\n display: none;\n }\n\n label {\n svg {\n padding-right: 0.2rem;\n }\n\n cursor: pointer;\n padding: 0.2rem 0;\n display: inline-flex;\n text-transform: capitalize;\n font-size: 0.9em;\n border-bottom: 2px solid transparent;\n .disable-user-select;\n\n div.category_name {\n margin: auto 0;\n }\n }\n\n input[type=\"checkbox\"]:checked + label {\n color: var(--color-categories-item-selected-font);\n border-bottom: 2px solid var(--color-categories-item-border-selected);\n }\n}\n\n#search_logo {\n grid-area: logo;\n display: flex;\n align-items: center;\n justify-content: center;\n\n svg {\n flex: 1;\n width: 30px;\n height: 30px;\n margin: 0.5rem 0 auto 0;\n }\n}\n\n.search_categories {\n grid-area: categories;\n\n .help {\n display: none;\n }\n\n &:hover .help {\n display: block;\n position: absolute;\n background: var(--color-base-background);\n padding: 1rem 0.6rem 0.6rem 0;\n z-index: 1000;\n width: 100%;\n left: -0.1rem;\n }\n}\n\n#search_view {\n grid-area: search;\n}\n\n.search_box {\n border-radius: 0.8rem;\n width: @search-width;\n display: inline-flex;\n flex-direction: row;\n white-space: nowrap;\n box-shadow: var(--color-search-shadow);\n}\n\n#clear_search {\n display: block;\n border-collapse: separate;\n box-sizing: border-box;\n width: 1.8rem;\n margin: 0;\n padding: 0.8rem 0.2rem;\n background: none repeat scroll 0 0 var(--color-search-background);\n border: none;\n outline: none;\n color: var(--color-search-font);\n font-size: 1.1rem;\n z-index: 10000;\n\n &:hover {\n color: var(--color-search-background-hover);\n }\n\n &.empty * {\n display: none;\n }\n}\n\nhtml.no-js #clear_search.hide_if_nojs {\n display: none;\n}\n\n#q,\n#send_search {\n display: block;\n margin: 0;\n padding: 0.8rem;\n background: none repeat scroll 0 0 var(--color-search-background);\n border: none;\n outline: none;\n color: var(--color-search-font);\n font-size: 1.1rem;\n z-index: 2;\n}\n\n#q {\n width: 100%;\n .ltr-padding-left(1rem);\n .ltr-padding-right(0) !important;\n .ltr-rounded-left-corners(0.8rem);\n}\n\n#q::-ms-clear,\n#q::-webkit-search-cancel-button {\n display: none;\n}\n\n#send_search {\n .ltr-rounded-right-corners(0.8rem);\n\n &:hover {\n cursor: pointer;\n background-color: var(--color-search-background-hover);\n color: var(--color-search-background);\n }\n}\n\n.no-js #clear_search,\n.no-js #send_search {\n width: auto !important;\n .ltr-border-left(1px solid var(--color-search-border));\n}\n\n.search_filters {\n margin-top: 0.6rem;\n .ltr-margin-right(0);\n margin-bottom: 0;\n .ltr-margin-left(@results-offset + 0.6rem);\n display: flex;\n overflow-x: auto;\n overscroll-behavior-inline: contain;\n\n select {\n background-color: inherit;\n\n &:hover,\n &:focus {\n color: var(--color-base-font);\n }\n }\n}\n\n@media screen and (max-width: @tablet) {\n #search_header {\n padding: 1.5em @results-tablet-offset 0 @results-tablet-offset;\n column-gap: @results-tablet-offset;\n }\n\n .search_filters {\n margin-top: 0.6rem;\n .ltr-margin-right(0);\n margin-bottom: 0;\n .ltr-margin-left(@results-tablet-offset + 3rem);\n }\n\n #categories {\n font-size: 90%;\n clear: both;\n\n .checkbox_container {\n margin: auto;\n margin-top: 2px;\n }\n }\n}\n\n@media screen and (max-width: @tablet) and (hover: none) {\n #main_index,\n #main_results {\n #categories_container {\n width: max-content;\n\n .category {\n display: inline-block;\n width: auto;\n }\n }\n\n #categories {\n width: 100%;\n .ltr-text-align-left();\n overflow-x: scroll;\n overflow-y: hidden;\n -webkit-overflow-scrolling: touch;\n }\n }\n}\n\n@media screen and (max-width: @phone) {\n #search_header {\n width: 100%;\n margin: 0;\n padding: 0.1rem 0 0 0;\n column-gap: 0;\n row-gap: 0;\n grid-template-areas:\n \"logo search\"\n \"categories categories\";\n }\n\n .search_logo {\n padding: 0;\n }\n\n .search_box {\n width: 98%;\n display: flex;\n margin: 0 auto;\n }\n\n #q {\n width: 100%;\n flex: 1;\n }\n\n .search_filters {\n margin: 0;\n }\n\n .category {\n display: inline-block;\n width: auto;\n margin: 0;\n\n label {\n padding: 1rem !important;\n margin: 0 !important;\n\n svg {\n display: none;\n }\n }\n }\n\n #search_view:focus-within {\n display: block;\n background-color: var(--color-search-background);\n position: absolute;\n top: 0;\n height: 100%;\n width: 100%;\n z-index: 10000;\n\n .search_box {\n border-bottom: 1px solid var(--color-search-border);\n width: 100%;\n border-radius: 0;\n box-shadow: none;\n\n #send_search {\n .ltr-margin-right(0) !important; // Delete when send_search button is disabled on mobile.\n }\n\n * {\n border: none;\n border-radius: 0;\n box-shadow: none;\n }\n }\n }\n\n #main_results #q:placeholder-shown ~ #send_search {\n .ltr-margin-right(2.6rem);\n transition: margin 0.1s;\n }\n}\n\n@media screen and (max-width: @ultra-small-phone) {\n #search_header {\n grid-template-areas:\n \"search search\"\n \"categories categories\";\n }\n\n #search_logo {\n display: none;\n }\n}\n\n#categories {\n .disable-user-select;\n\n &::-webkit-scrollbar {\n width: 0;\n height: 0;\n }\n}\n\n#categories_container {\n position: relative;\n}\n","/*\n--center-page-width overrides the less variable @results-width when the results are centered\nsee the CSS rules for #results in style.less ( grid-template-columns and gap).\n\nIn this file, the --center-page-width values comes from the Oscar theme (Bootstrap 3).\n\nAll rules starts with \".center-aligment-yes #main_results\" to be enabled only\non the /search URL and when the \"center alignment\" preference is enabled.\n*/\n\n@media screen and (min-width: @phone) {\n .center-aligment-yes #main_results {\n --center-page-width: 48rem;\n }\n}\n\n@media screen and (min-width: 62rem) {\n .center-aligment-yes #main_results {\n --center-page-width: 60rem;\n }\n}\n\n@media screen and (min-width: @tablet) {\n .center-aligment-yes #main_results {\n --center-page-width: 73rem;\n }\n}\n\n@media screen and (min-width: @phone) and (max-width: @tablet) {\n // any change must be reset in @media screen and (min-width: @tablet) { ... }\n .center-aligment-yes #main_results {\n #results {\n grid-template-columns: 60% calc(40% - @results-gap);\n margin-left: 0;\n margin-right: 0;\n }\n\n #urls {\n .ltr-margin-left(3rem);\n }\n\n #sidebar {\n .ltr-margin-right(1rem);\n }\n\n #backToTop {\n .ltr-left(calc(60% + 1rem));\n }\n }\n}\n\n@media screen and (min-width: @tablet) {\n .center-aligment-yes #main_results {\n display: flex;\n flex-direction: column;\n align-items: center;\n\n #search {\n width: 100%;\n display: flex;\n flex-direction: column;\n align-items: center;\n }\n\n #search_header {\n grid-template-columns: calc(50% - 4.5rem - var(--center-page-width) / 2) 3rem var(--center-page-width);\n grid-template-areas: \"na logo search\" \"na spacer categories\";\n column-gap: 1.2rem; // from search.less\n width: 100%;\n padding-left: 0;\n padding-right: 0;\n }\n\n .search_filters {\n .ltr-margin-left(0.5rem);\n width: var(--center-page-width);\n }\n\n #results {\n // from style.less (when screen width = @tablet, reset layout from tablet)\n .ltr-margin-right(2rem);\n .ltr-margin-left(@results-offset);\n //\n\n &.only_template_images,\n &.image-detail-open {\n // * grid-template-columns and .ltr-margin-left are set in style.less\n // * With .image-detail-open.only_template_images, the width is set in detail.less\n // * #results is going to be centered because of the #main_results rules,\n // align-self aligns the results on the left or right according to the language.\n align-self: flex-start;\n }\n\n &:not(.only_template_images):not(.image-detail-open) {\n // the gap is set in style.less\n .ltr-margin-left(1.5rem);\n grid-template-columns: calc(var(--center-page-width) - @results-gap - @results-sidebar-width) @results-sidebar-width;\n\n #backToTop {\n .ltr-left(calc(50% - @results-sidebar-width - @results-gap + 1rem + var(--center-page-width) / 2));\n }\n }\n\n .result .content {\n max-width: inherit;\n }\n }\n\n // from style.less (when screen width = @tablet, reset layout from tablet)\n #urls {\n .ltr-margin-left(0);\n }\n\n #sidebar {\n .ltr-margin-right(0);\n }\n }\n}\n","/*\n* SearXNG, A privacy-respecting, hackable metasearch engine\n*\n* To convert \"style.less\" to \"style.css\" run: $make styles\n*/\n\n// stylelint-disable no-descending-specificity\n\n@import (inline) \"../../node_modules/normalize.css/normalize.css\";\n@import \"definitions.less\";\n@import \"mixins.less\";\n@import \"code.less\";\n@import \"toolkit.less\";\n@import \"autocomplete.less\";\n@import \"detail.less\";\n@import \"animations.less\";\n@import \"embedded.less\";\n@import \"info.less\";\n@import \"new_issue.less\";\n@import \"stats.less\";\n@import \"result_templates.less\";\n\n// for index.html template\n@import \"index.less\";\n\n// for preferences.html template\n@import \"preferences.less\";\n\n// Search-Field\n@import \"search.less\";\n\n// to center the results\n@import \"style-center.less\";\n\n// ion-icon\n.ion-icon {\n display: inline-block;\n vertical-align: bottom;\n line-height: 1;\n text-decoration: inherit;\n .ltr-transform();\n}\n\n.ion-icon-small {\n width: 1rem;\n height: 1rem;\n .ion-icon;\n}\n\n.ion-icon-big {\n width: 1.5rem;\n height: 1.5rem;\n .ion-icon;\n}\n\n// Main LESS-Code\nhtml {\n font-family: sans-serif;\n font-size: 0.9em;\n .text-size-adjust;\n\n color: var(--color-base-font);\n background-color: var(--color-base-background);\n padding: 0;\n margin: 0;\n}\n\nbody,\nmain {\n padding: 0;\n margin: 0;\n}\n\nbody {\n display: flex;\n flex-direction: column;\n height: 100vh;\n margin: 0;\n}\n\nmain {\n width: 100%;\n margin-bottom: 2rem;\n flex: 1;\n}\n\n.page_with_header {\n margin: 2em auto;\n width: 85em;\n}\n\nfooter {\n clear: both;\n min-height: 4rem;\n padding: 1rem 0;\n width: 100%;\n text-align: center;\n background-color: var(--color-footer-background);\n border-top: 1px solid var(--color-footer-border);\n overflow: hidden;\n\n p {\n font-size: 0.9em;\n }\n}\n\n.page_with_header .logo {\n height: 40px;\n}\n\ninput[type=\"submit\"],\n#results button[type=\"submit\"] {\n padding: 0.7rem;\n display: inline-block;\n background: var(--color-btn-background);\n color: var(--color-btn-font);\n .rounded-corners;\n\n border: 0;\n cursor: pointer;\n}\n\na {\n text-decoration: none;\n color: var(--color-url-font);\n\n &:visited {\n color: var(--color-url-visited-font);\n\n .highlight {\n color: var(--color-url-visited-font);\n }\n }\n}\n\narticle[data-vim-selected] {\n background: var(--color-result-vim-selected);\n .ltr-border-left(0.2rem solid var(--color-result-vim-arrow));\n .ltr-rounded-right-corners(10px);\n}\n\narticle.result-images[data-vim-selected] {\n background: var(--color-result-vim-arrow);\n border: none;\n .rounded-corners;\n\n .image_thumbnail {\n filter: opacity(60%);\n }\n\n span.title,\n span.source {\n color: var(--color-result-image-span-font-selected);\n }\n}\n\narticle[data-vim-selected].category-videos,\narticle[data-vim-selected].category-news,\narticle[data-vim-selected].category-map,\narticle[data-vim-selected].category-music,\narticle[data-vim-selected].category-files,\narticle[data-vim-selected].category-social {\n border: 1px solid var(--color-result-vim-arrow);\n .rounded-corners;\n}\n\n.result {\n margin: @results-margin 0;\n padding: @result-padding;\n .ltr-border-left(0.2rem solid transparent);\n\n h3 {\n font-size: 1.2rem;\n word-wrap: break-word;\n margin: 0.4rem 0 0.4rem 0;\n padding: 0;\n\n a {\n color: var(--color-result-link-font);\n font-weight: normal;\n font-size: 1.1em;\n\n &:visited {\n color: var(--color-result-link-visited-font);\n }\n\n &:focus,\n &:hover {\n text-decoration: underline;\n border: none;\n outline: none;\n }\n }\n }\n\n .cache_link,\n .proxyfied_link {\n font-size: 0.9em !important;\n }\n\n .content,\n .stat {\n font-size: 0.9em;\n margin: 0;\n padding: 0;\n max-width: 54em;\n word-wrap: break-word;\n line-height: 1.24;\n\n .highlight {\n color: var(--color-result-description-highlight-font);\n background: inherit;\n font-weight: bold;\n }\n }\n\n .altlink a {\n font-size: 0.9em;\n margin: 0 10px 0 0;\n .show-content-button;\n }\n\n .codelines {\n .highlight {\n color: inherit;\n background: inherit;\n font-weight: normal;\n }\n }\n\n .url_wrapper {\n display: flex;\n font-size: 1rem;\n color: var(--color-result-url-font);\n flex-wrap: nowrap;\n overflow: hidden;\n flex-direction: row;\n margin: 0;\n padding: 0;\n\n .url_o1 {\n white-space: nowrap;\n flex-shrink: 1;\n }\n\n .url_o1::after {\n content: \" \";\n width: 1ch;\n display: inline-block;\n }\n\n .url_o2 {\n overflow: hidden;\n white-space: nowrap;\n flex-basis: content;\n flex-grow: 0;\n flex-shrink: 1;\n text-align: right;\n\n .url_i2 {\n float: right;\n }\n }\n }\n\n .published_date,\n .result_length,\n .result_author,\n .result_shipping,\n .result_source_country {\n font-size: 0.8em;\n color: var(--color-result-publishdate-font);\n }\n\n .result_price {\n font-size: 1.2em;\n color: var(--color-result-description-highlight-font);\n }\n\n img {\n &.thumbnail {\n .ltr-float-left();\n padding-top: 0.6rem;\n .ltr-padding-right(1rem);\n width: 20rem;\n height: unset; // remove heigth value that was needed for lazy loading\n }\n\n &.image {\n .ltr-float-left();\n padding-top: 0.6rem;\n .ltr-padding-right(1rem);\n width: 7rem;\n max-height: 7rem;\n object-fit: scale-down;\n object-position: right top;\n }\n }\n\n .break {\n clear: both;\n }\n}\n\n.template_group_images {\n display: flex;\n flex-wrap: wrap;\n}\n\n.template_group_images::after {\n flex-grow: 10;\n content: \"\";\n}\n\n.category-videos,\n.category-news,\n.category-map,\n.category-music,\n.category-files,\n.category-social {\n border: 1px solid var(--color-result-border);\n margin: 1rem @results-tablet-offset 0 @results-tablet-offset !important;\n .rounded-corners;\n}\n\n.category-social .image {\n width: auto !important;\n min-width: 48px;\n min-height: 48px;\n padding: 0 5px 25px 0 !important;\n}\n\n.audio-control audio {\n width: 100%;\n padding: 10px 0 0 0;\n}\n\n.embedded-content iframe {\n width: 100%;\n padding: 10px 0 0 0;\n}\n\n.result-videos .content {\n overflow: hidden;\n}\n\n.result-videos .embedded-video iframe {\n width: 100%;\n aspect-ratio: 16 / 9;\n padding: 10px 0 0 0;\n}\n\n@supports not (aspect-ratio: 1 / 1) {\n // support older browsers which do not have aspect-ratio\n // https://caniuse.com/?search=aspect-ratio\n .result-videos .embedded-video iframe {\n height: calc(@results-width * 9 / 16);\n }\n}\n\n.engines {\n .ltr-float-right();\n color: var(--color-result-engines-font);\n\n span {\n font-size: smaller;\n margin-top: 0;\n margin-bottom: 0;\n .ltr-margin-right(0.5rem);\n .ltr-margin-left(0);\n }\n}\n\n.small_font {\n font-size: 0.8em;\n}\n\n.highlight {\n color: var(--color-result-link-font-highlight);\n background: inherit;\n}\n\n.empty_element {\n font-style: italic;\n}\n\n.result-images {\n flex-grow: 1;\n padding: 0.5rem 0.5rem 3rem 0.5rem;\n margin: 0.25rem;\n border: none !important;\n height: @results-image-row-height;\n\n & > a {\n position: relative;\n }\n\n img {\n margin: 0;\n padding: 0;\n border: none;\n height: 100%;\n width: 100%;\n object-fit: cover;\n vertical-align: bottom;\n background: var(--color-result-image-background);\n }\n\n span.title,\n span.source {\n display: block;\n position: absolute;\n\n width: 100%;\n font-size: 0.9rem;\n color: var(--color-result-image-span-font);\n padding: 0.5rem 0 0 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n\n span.source {\n padding: 1.8rem 0 0 0;\n font-size: 0.7rem;\n }\n}\n\n.result-map {\n img.image {\n .ltr-float-right() !important;\n height: 100px !important;\n width: auto !important;\n }\n\n table {\n font-size: 0.9em;\n width: auto;\n border-collapse: separate;\n border-spacing: 0 0.35rem;\n\n th {\n font-weight: inherit;\n width: 17rem;\n vertical-align: top;\n .ltr-text-align-left();\n }\n\n td {\n vertical-align: top;\n .ltr-text-align-left();\n }\n }\n}\n\n.hidden {\n display: none !important;\n}\n\n#results {\n margin-top: 1rem;\n .ltr-margin-right(2rem);\n margin-bottom: 0;\n .ltr-margin-left(@results-offset);\n display: grid;\n grid-template-columns: @results-width @results-sidebar-width;\n grid-template-rows: min-content min-content 1fr min-content;\n gap: 0 @results-gap;\n grid-template-areas:\n \"corrections sidebar\"\n \"answers sidebar\"\n \"urls sidebar\"\n \"pagination sidebar\";\n}\n\n#results #sidebar *:first-child,\n#results #urls *:first-child {\n margin-top: 0;\n}\n\n#urls {\n padding: 0;\n grid-area: urls;\n}\n\n#suggestions {\n .wrapper {\n display: flex;\n flex-flow: row wrap;\n justify-content: flex-end;\n\n form {\n display: inline-block;\n flex: 1 1 50%;\n }\n }\n}\n\n#suggestions,\n#infoboxes {\n input {\n padding: 0;\n margin: 3px;\n font-size: 0.9em;\n display: inline-block;\n background: transparent;\n color: var(--color-result-search-url-font);\n cursor: pointer;\n }\n\n input[type=\"submit\"],\n .infobox .url a {\n color: var(--color-result-link-font);\n text-decoration: none;\n font-size: 0.9rem;\n\n &:hover {\n text-decoration: underline;\n }\n }\n}\n\n#corrections {\n grid-area: corrections;\n display: flex;\n flex-flow: row wrap;\n margin: 0 0 1em 0;\n\n h4,\n input[type=\"submit\"] {\n display: inline-block;\n padding: 0.5rem;\n margin: 0.5rem;\n }\n\n input[type=\"submit\"] {\n font-size: 0.8rem;\n .rounded-corners-tiny;\n }\n}\n\n#suggestions .title,\n#search_url .title,\n#apis .title {\n margin: 2em 0 0.5em 0;\n color: var(--color-base-font);\n}\n\n#answers {\n grid-area: answers;\n background: var(--color-answer-background);\n padding: @result-padding;\n margin: 1rem 0;\n margin-top: 0;\n color: var(--color-answer-font);\n .rounded-corners;\n\n h4 {\n display: none;\n }\n\n span {\n overflow-wrap: anywhere;\n }\n}\n\n#infoboxes {\n form {\n min-width: 210px;\n }\n}\n\n#sidebar {\n grid-area: sidebar;\n word-wrap: break-word;\n color: var(--color-sidebar-font);\n\n .infobox {\n margin: 10px 0 10px;\n border: 1px solid var(--color-sidebar-border);\n padding: 1rem;\n font-size: 0.9em;\n .rounded-corners;\n\n h2 {\n margin: 0 0 0.5em 0;\n }\n\n img {\n max-width: 100%;\n max-height: 12em;\n display: block;\n margin: 0 auto;\n padding: 0;\n }\n\n dt {\n font-weight: bold;\n }\n\n .attributes {\n dl {\n margin: 0.5em 0;\n }\n\n dt {\n display: inline;\n margin-top: 0.5em;\n .ltr-margin-right(0.25em);\n margin-bottom: 0.5em;\n .ltr-margin-left(0);\n padding: 0;\n }\n\n dd {\n display: inline;\n margin: 0.5em 0;\n padding: 0;\n }\n }\n\n input {\n font-size: 1em;\n }\n\n br {\n clear: both;\n }\n\n .attributes,\n .urls {\n clear: both;\n }\n }\n}\n\n#search_url {\n margin-top: 8px;\n\n div.selectable_url {\n pre {\n width: 200em;\n }\n }\n}\n\n#links_on_top {\n position: absolute;\n .ltr-right(1.8rem);\n .ltr-text-align-right();\n top: 2.2rem;\n padding: 0;\n border: 0;\n display: flex;\n align-items: center;\n font-size: 1em;\n color: var(--color-search-font);\n\n a {\n display: flex;\n align-items: center;\n margin-left: 1em;\n\n svg {\n font-size: 1.2em;\n .ltr-margin-right(0.125em);\n }\n }\n\n a,\n a:link *,\n a:hover *,\n a:visited *,\n a:active * {\n color: var(--color-search-font);\n }\n}\n\n#pagination {\n grid-area: pagination;\n\n br {\n clear: both;\n }\n}\n\n#apis {\n margin-top: 8px;\n clear: both;\n}\n\n#backToTop {\n border: 1px solid var(--color-backtotop-border);\n margin: 0;\n padding: 0;\n font-size: 1em;\n background: var(--color-backtotop-background);\n position: fixed;\n bottom: 8rem;\n .ltr-left(@results-width + @results-offset + (0.5 * @results-gap - 1.2em));\n transition: opacity 0.5s;\n opacity: 0;\n .rounded-corners;\n\n a {\n display: block;\n margin: 0;\n padding: 0.7em;\n }\n\n a,\n a:visited,\n a:hover,\n a:active {\n color: var(--color-backtotop-font);\n }\n}\n\n#results.scrolling #backToTop {\n opacity: 1;\n}\n\n/*\n tablet layout\n*/\n\n.results-tablet() {\n #links_on_top {\n span {\n display: none;\n }\n }\n\n .page_with_header {\n margin: 2rem 0.5rem;\n width: auto;\n }\n\n #infoboxes {\n position: inherit;\n max-width: inherit;\n\n .infobox {\n clear: both;\n\n img {\n .ltr-float-left();\n max-width: 10em;\n margin-top: 0.5em;\n .ltr-margin-right(0.5em);\n margin-bottom: 0.5em;\n .ltr-margin-left(0);\n }\n }\n }\n\n #sidebar {\n margin: 0 @results-tablet-offset @results-margin @results-tablet-offset;\n padding: 0;\n float: none;\n border: none;\n width: auto;\n\n input {\n border: 0;\n }\n }\n\n #apis {\n display: none;\n }\n\n #search_url {\n display: none;\n }\n\n .result {\n .thumbnail {\n max-width: 98%;\n }\n\n .url {\n span.url {\n display: block;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 100%;\n }\n }\n\n .engines {\n .ltr-float-right();\n padding: 0 0 3px 0;\n }\n }\n\n .result-images {\n border-bottom: none !important;\n }\n\n .image_result {\n max-width: 98%;\n\n img {\n max-width: 98%;\n }\n }\n\n #backToTop {\n display: none;\n }\n\n #pagination {\n margin: 2rem 0 0 0 !important;\n }\n\n #main_results div#results {\n margin: 1rem auto 0 auto;\n justify-content: center;\n display: grid;\n grid-template-columns: @results-width;\n grid-template-rows: min-content min-content min-content 1fr min-content min-content;\n gap: 0;\n grid-template-areas:\n \"corrections\"\n \"answers\"\n \"sidebar\"\n \"urls\"\n \"pagination\";\n }\n}\n\n@media screen and (max-width: calc(@tablet - 0.5px)) {\n #links_on_top {\n span {\n display: none;\n }\n }\n}\n\n@media screen and (max-width: 52rem) {\n body.results_endpoint {\n #links_on_top {\n .link_on_top_about,\n .link_on_top_donate {\n display: none;\n }\n }\n }\n}\n\n@media screen and (min-width: @phone) and (max-width: @tablet) {\n // when .center-aligment-yes, see style-center.less\n // the media query includes \"min-width: @phone\"\n // because the phone layout includes the tablet layout unconditionally.\n .center-aligment-no {\n .results-tablet();\n }\n}\n\n/* Misc */\n\n#main_results div#results.only_template_images {\n margin: 1rem @results-tablet-offset 0 @results-tablet-offset;\n display: grid;\n grid-template-columns: 100%;\n grid-template-rows: min-content min-content min-content 1fr min-content;\n gap: 0;\n grid-template-areas:\n \"corrections\"\n \"answers\"\n \"sidebar\"\n \"urls\"\n \"pagination\";\n\n #sidebar {\n display: none;\n }\n\n #urls {\n margin: 0;\n display: flex;\n flex-wrap: wrap;\n }\n\n #urls::after {\n flex-grow: 10;\n content: \"\";\n }\n\n #backToTop {\n .ltr-left(auto);\n .ltr-right(1rem);\n }\n\n #pagination {\n .ltr-margin-right(4rem);\n }\n}\n\n/*\n phone layout\n*/\n\n@media screen and (max-width: @phone) {\n // based on the tablet layout\n .results-tablet();\n\n html {\n background-color: var(--color-base-background-mobile);\n }\n\n #main_results div#results {\n grid-template-columns: 100%;\n margin: 1rem 0 0 0;\n }\n\n #links_on_top {\n top: 0.8rem;\n .ltr-right(0.7rem);\n }\n\n #main_index #links_on_top {\n top: 0.5rem;\n .ltr-right(0.5rem);\n }\n\n #results {\n margin: 0;\n padding: 0;\n }\n\n #pagination {\n margin: 2rem 1rem 0 1rem !important;\n }\n\n article[data-vim-selected] {\n border: 1px solid var(--color-result-vim-arrow);\n .rounded-corners;\n }\n\n .result {\n background: var(--color-result-background);\n margin: 1rem 0;\n }\n\n .result-images {\n margin: 0;\n height: @results-image-row-height-phone;\n background: var(--color-base-background-mobile);\n }\n\n .infobox {\n border: none !important;\n background-color: var(--color-sidebar-background);\n }\n}\n\n/*\n small-phone layout\n*/\n\n@media screen and (max-width: @small-phone) {\n .result-videos {\n img.thumbnail {\n float: none !important;\n }\n\n .content {\n overflow: inherit;\n }\n }\n}\n\npre code {\n white-space: pre-wrap;\n}\n"]} \ No newline at end of file
+{"version":3,"sources":["node_modules/normalize.css/normalize.css","src/less/definitions.less","src/less/code.less","src/generated/pygments.less","src/less/toolkit.less","src/less/mixins.less","src/less/style-rtl.less","src/less/autocomplete.less","src/less/detail.less","src/less/animations.less","src/less/embedded.less","src/less/info.less","src/less/new_issue.less","src/less/stats.less","src/less/result_templates.less","src/less/index.less","src/less/preferences.less","src/less/search.less","src/less/style-center.less","src/less/style.less"],"names":[],"mappings":"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,aAGF,eACE,OAAA,IAAA,MAAA,QACA,OAAA,IAAA,EAGF,kBACE,OAAA,IAAA,MAAA,QACA,OAAA,IAAA,EACA,MAAA,KAGF,kBACE,OAAA,IAAA,MAAA,QACA,OAAA,IAAA,EACA,MAAA,KAGF,MACE,MAAA,EACA,OAAA,EV/FD,MUsGG,MAAA,GVtGH,MUsGG,MAAA,GVtGH,MUsGG,MAAA,GVtGH,MUsGG,MAAA,GVtGH,MUsGG,MAAA,GVtGH,MUsGG,MAAA,GVtGH,MUsGG,MAAA,GVtGH,MUsGG,MAAA,GVtGH,MUsGG,MAAA,GVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,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","sourcesContent":["/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n\n/* Document\n ========================================================================== */\n\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\n\nhtml {\n line-height: 1.15; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n\n/**\n * Remove the margin in all browsers.\n */\n\nbody {\n margin: 0;\n}\n\n/**\n * Render the `main` element consistently in IE.\n */\n\nmain {\n display: block;\n}\n\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\n\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n/* Grouping content\n ========================================================================== */\n\n/**\n * 1. Add the correct box sizing in Firefox.\n * 2. Show the overflow in Edge and IE.\n */\n\nhr {\n box-sizing: content-box; /* 1 */\n height: 0; /* 1 */\n overflow: visible; /* 2 */\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\npre {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n\n/**\n * Remove the gray background on active links in IE 10.\n */\n\na {\n background-color: transparent;\n}\n\n/**\n * 1. Remove the bottom border in Chrome 57-\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n */\n\nabbr[title] {\n border-bottom: none; /* 1 */\n text-decoration: underline; /* 2 */\n text-decoration: underline dotted; /* 2 */\n}\n\n/**\n * Add the correct font weight in Chrome, Edge, and Safari.\n */\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\ncode,\nkbd,\nsamp {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/**\n * Add the correct font size in all browsers.\n */\n\nsmall {\n font-size: 80%;\n}\n\n/**\n * Prevent `sub` and `sup` elements from affecting the line height in\n * all browsers.\n */\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/* Embedded content\n ========================================================================== */\n\n/**\n * Remove the border on images inside links in IE 10.\n */\n\nimg {\n border-style: none;\n}\n\n/* Forms\n ========================================================================== */\n\n/**\n * 1. Change the font styles in all browsers.\n * 2. Remove the margin in Firefox and Safari.\n */\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n margin: 0; /* 2 */\n}\n\n/**\n * Show the overflow in IE.\n * 1. Show the overflow in Edge.\n */\n\nbutton,\ninput { /* 1 */\n overflow: visible;\n}\n\n/**\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\n * 1. Remove the inheritance of text transform in Firefox.\n */\n\nbutton,\nselect { /* 1 */\n text-transform: none;\n}\n\n/**\n * Correct the inability to style clickable types in iOS and Safari.\n */\n\nbutton,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button;\n}\n\n/**\n * Remove the inner border and padding in Firefox.\n */\n\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n}\n\n/**\n * Restore the focus styles unset by the previous rule.\n */\n\nbutton:-moz-focusring,\n[type=\"button\"]:-moz-focusring,\n[type=\"reset\"]:-moz-focusring,\n[type=\"submit\"]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n * Correct the padding in Firefox.\n */\n\nfieldset {\n padding: 0.35em 0.75em 0.625em;\n}\n\n/**\n * 1. Correct the text wrapping in Edge and IE.\n * 2. Correct the color inheritance from `fieldset` elements in IE.\n * 3. Remove the padding so developers are not caught out when they zero out\n * `fieldset` elements in all browsers.\n */\n\nlegend {\n box-sizing: border-box; /* 1 */\n color: inherit; /* 2 */\n display: table; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n white-space: normal; /* 1 */\n}\n\n/**\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\n */\n\nprogress {\n vertical-align: baseline;\n}\n\n/**\n * Remove the default vertical scrollbar in IE 10+.\n */\n\ntextarea {\n overflow: auto;\n}\n\n/**\n * 1. Add the correct box sizing in IE 10.\n * 2. Remove the padding in IE 10.\n */\n\n[type=\"checkbox\"],\n[type=\"radio\"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n * Correct the cursor style of increment and decrement buttons in Chrome.\n */\n\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n * 1. Correct the odd appearance in Chrome and Safari.\n * 2. Correct the outline style in Safari.\n */\n\n[type=\"search\"] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/**\n * Remove the inner padding in Chrome and Safari on macOS.\n */\n\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n * 1. Correct the inability to style clickable types in iOS and Safari.\n * 2. Change font properties to `inherit` in Safari.\n */\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/* Interactive\n ========================================================================== */\n\n/*\n * Add the correct display in Edge, IE 10+, and Firefox.\n */\n\ndetails {\n display: block;\n}\n\n/*\n * Add the correct display in all browsers.\n */\n\nsummary {\n display: list-item;\n}\n\n/* Misc\n ========================================================================== */\n\n/**\n * Add the correct display in IE 10+.\n */\n\ntemplate {\n display: none;\n}\n\n/**\n * Add the correct display in IE 10.\n */\n\n[hidden] {\n display: none;\n}\n","/*\n * SearXNG, A privacy-respecting, hackable metasearch engine\n *\n * To change the colors of the site, simple edit this variables\n */\n\n/// Light Theme\n:root {\n /// Base Colors\n --color-base-font: #444;\n --color-base-font-rgb: 68, 68, 68;\n --color-base-background: #fff;\n --color-base-background-mobile: #f2f5f8;\n --color-url-font: #334999;\n --color-url-visited-font: #9822c3;\n /// Header Colors\n --color-header-background: #fdfbff;\n --color-header-border: #ddd;\n /// Footer Colors\n --color-footer-background: #fdfbff;\n --color-footer-border: #ddd;\n /// Sidebar Colors\n --color-sidebar-border: #ddd;\n --color-sidebar-font: #000;\n --color-sidebar-background: #fff;\n /// BackToTop Colors\n --color-backtotop-font: #444;\n --color-backtotop-border: #ddd;\n --color-backtotop-background: #fff;\n /// Button Colors\n --color-btn-background: #3050ff;\n --color-btn-font: #fff;\n --color-show-btn-background: #bbb;\n --color-show-btn-font: #000;\n /// Search Input Colors\n --color-search-border: #bbb;\n --color-search-shadow: 0 2px 8px rgb(34 38 46 / 25%);\n --color-search-background: #fff;\n --color-search-font: #222;\n --color-search-background-hover: #3050ff;\n /// Modal Colors\n --color-error: #db3434;\n --color-error-background: lighten(#db3434, 40%);\n --color-warning: #dbba34;\n --color-warning-background: lighten(#dbba34, 40%);\n --color-success: #42db34;\n --color-success-background: lighten(#42db34, 40%);\n /// Categories Colors\n --color-categories-item-selected-font: #3050ff;\n --color-categories-item-border-selected: #3050ff;\n /// Autocomplete Colors\n --color-autocomplete-font: #000;\n --color-autocomplete-border: #bbb;\n --color-autocomplete-shadow: 0 2px 8px rgb(34 38 46 / 25%);\n --color-autocomplete-background: #fff;\n --color-autocomplete-background-hover: #e3e3e3;\n /// Answer Colors\n --color-answer-font: #444; // same as --color-base-font\n --color-answer-background: #fff;\n /// Results Colors\n --color-result-background: #fff;\n --color-result-border: #ddd;\n --color-result-url-font: #000;\n --color-result-vim-selected: #f7f7f7;\n --color-result-vim-arrow: #000bbb;\n --color-result-description-highlight-font: #000;\n --color-result-link-font: #000bbb;\n --color-result-link-font-highlight: #000bbb;\n --color-result-link-visited-font: #9822c3;\n --color-result-publishdate-font: #777;\n --color-result-engines-font: #545454;\n --color-result-search-url-border: #ddd;\n --color-result-search-url-font: #000;\n // Images Colors\n --color-result-image-span-font: #444;\n --color-result-image-span-font-selected: #fff;\n --color-result-image-background: #fff;\n /// Settings Colors\n --color-settings-tr-hover: #ebebeb;\n --color-settings-engine-description-font: #545454;\n --color-settings-engine-group-background: #0001;\n /// Detail modal\n --color-result-detail-font: #fff;\n --color-result-detail-label-font: lightgray;\n --color-result-detail-background: #242424;\n --color-result-detail-hr: #555;\n --color-result-detail-link: #8af;\n --color-result-detail-loader-border: rgba(255, 255, 255, 0.2);\n --color-result-detail-loader-borderleft: rgba(0, 0, 0, 0);\n /// Toolkit Colors\n --color-toolkit-badge-font: #fff;\n --color-toolkit-badge-background: #545454;\n --color-toolkit-kbd-font: #fff;\n --color-toolkit-kbd-background: #000;\n --color-toolkit-dialog-border: #ddd;\n --color-toolkit-dialog-background: #fff;\n --color-toolkit-tabs-label-border: #fff;\n --color-toolkit-tabs-section-border: #ddd;\n --color-toolkit-select-background: #e1e1e1;\n --color-toolkit-select-border: #ddd;\n --color-toolkit-select-background-hover: #bbb;\n --color-toolkit-input-text-font: #222;\n --color-toolkit-checkbox-onoff-off-background: #ddd;\n --color-toolkit-checkbox-onoff-on-background: #ddd;\n --color-toolkit-checkbox-onoff-on-mark-background: #3050ff;\n --color-toolkit-checkbox-onoff-on-mark-color: #fff;\n --color-toolkit-checkbox-onoff-off-mark-background: #aaa;\n --color-toolkit-checkbox-onoff-off-mark-color: #fff;\n --color-toolkit-checkbox-label-background: #ddd;\n --color-toolkit-checkbox-label-border: #ddd;\n --color-toolkit-checkbox-input-border: #3050ff;\n --color-toolkit-engine-tooltip-border: #ddd;\n --color-toolkit-engine-tooltip-background: #fff;\n --color-toolkit-loader-border: rgba(0, 0, 0, 0.2);\n --color-toolkit-loader-borderleft: rgba(255, 255, 255, 0);\n --color-doc-code: #300;\n --color-doc-code-background: #fdd;\n}\n\n.dark-themes() {\n /// Base Colors\n --color-base-font: #bbb;\n --color-base-font-rgb: 187, 187, 187;\n --color-base-background: #222428;\n --color-base-background-mobile: #222428;\n --color-url-font: #8af;\n --color-url-visited-font: #c09cd9;\n /// Header Colors\n --color-header-background: #1e1e22;\n --color-header-border: #333;\n /// Footer Colors\n --color-footer-background: #1e1e22;\n --color-footer-border: #333;\n /// Sidebar Colors\n --color-sidebar-border: #555;\n --color-sidebar-font: #fff;\n --color-sidebar-background: #292c34;\n /// BackToTop Colors\n --color-backtotop-font: #bbb;\n --color-backtotop-border: #333;\n --color-backtotop-background: #2b2e36;\n /// Button Colors\n --color-btn-background: #58f;\n --color-btn-font: #222;\n --color-show-btn-background: #555;\n --color-show-btn-font: #fff;\n /// Search Input Colors\n --color-search-border: #555;\n --color-search-shadow: 0 2px 8px rgb(34 38 46 / 25%);\n --color-search-background: #2b2e36;\n --color-search-font: #fff;\n --color-search-background-hover: #58f;\n /// Modal Colors\n --color-error: #f55b5b;\n --color-error-background: darken(#db3434, 40%);\n --color-warning: #f1d561;\n --color-warning-background: darken(#dbba34, 40%);\n --color-success: #79f56e;\n --color-success-background: darken(#42db34, 40%);\n /// Categories Colors\n --color-categories-item-selected-font: #58f;\n --color-categories-item-border-selected: #58f;\n /// Autocomplete Colors\n --color-autocomplete-font: #fff;\n --color-autocomplete-border: #555;\n --color-autocomplete-shadow: 0 2px 8px rgb(34 38 46 / 25%);\n --color-autocomplete-background: #2b2e36;\n --color-autocomplete-background-hover: #1e1e22;\n /// Answer Colors\n --color-answer-font: #bbb; // same as --color-base-font\n --color-answer-background: #26292f;\n /// Results Colors\n --color-result-background: #26292f;\n --color-result-border: #333;\n --color-result-url-font: #fff;\n --color-result-vim-selected: #1f1f23cc;\n --color-result-vim-arrow: #8af;\n --color-result-description-highlight-font: #fff;\n --color-result-link-font: #8af;\n --color-result-link-font-highlight: #8af;\n --color-result-link-visited-font: #c09cd9;\n --color-result-publishdate-font: #888;\n --color-result-engines-font: #a4a4a4;\n --color-result-search-url-border: #555;\n --color-result-search-url-font: #fff;\n /// Detail modal : same as the light version\n --color-result-detail-font: #fff;\n --color-result-detail-label-font: lightgray;\n --color-result-detail-background: #1a1a1c;\n --color-result-detail-hr: #555;\n --color-result-detail-link: #8af;\n --color-result-detail-loader-border: rgba(255, 255, 255, 0.2);\n --color-result-detail-loader-borderleft: rgba(0, 0, 0, 0);\n // Images Colors\n --color-result-image-span-font: #bbb;\n --color-result-image-span-font-selected: #222;\n --color-result-image-background: #222;\n /// Settings Colors\n --color-settings-tr-hover: #2c2c32;\n --color-settings-engine-description-font: darken(#dcdcdc, 30%);\n --color-settings-engine-group-background: #1b1b21;\n /// Toolkit Colors\n --color-toolkit-badge-font: #fff;\n --color-toolkit-badge-background: #555;\n --color-toolkit-kbd-font: #000;\n --color-toolkit-kbd-background: #fff;\n --color-toolkit-dialog-border: #555;\n --color-toolkit-dialog-background: #1e1e22;\n --color-toolkit-tabs-label-border: #222;\n --color-toolkit-tabs-section-border: #555;\n --color-toolkit-select-background: #313338;\n --color-toolkit-select-border: #555;\n --color-toolkit-select-background-hover: #373b49;\n --color-toolkit-input-text-font: #fff;\n --color-toolkit-checkbox-onoff-off-background: #313338;\n --color-toolkit-checkbox-onoff-on-background: #313338;\n --color-toolkit-checkbox-onoff-on-mark-background: #58f;\n --color-toolkit-checkbox-onoff-on-mark-color: #222;\n --color-toolkit-checkbox-onoff-off-mark-background: #ddd;\n --color-toolkit-checkbox-onoff-off-mark-color: #222;\n --color-toolkit-checkbox-label-background: #222;\n --color-toolkit-checkbox-label-border: #333;\n --color-toolkit-checkbox-input-border: #58f;\n --color-toolkit-engine-tooltip-border: #333;\n --color-toolkit-engine-tooltip-background: #222;\n --color-toolkit-loader-border: rgba(255, 255, 255, 0.2);\n --color-toolkit-loader-borderleft: rgba(0, 0, 0, 0);\n --color-doc-code: #fdd;\n --color-doc-code-background: #300;\n}\n\n/// Dark Theme (autoswitch based on device pref)\n@media (prefers-color-scheme: dark) {\n :root.theme-auto {\n .dark-themes();\n }\n}\n\n// Dark Theme by preferences\n:root.theme-dark {\n .dark-themes();\n}\n\n/// General Size\n@results-width: 45rem;\n@results-sidebar-width: 25rem;\n@results-offset: 10rem;\n@results-tablet-offset: 0.5rem;\n@results-gap: 5rem;\n@results-margin: 0.125rem;\n@result-padding: 1rem;\n@results-image-row-height: 12rem;\n@results-image-row-height-phone: 6rem;\n@search-width: 44rem;\n// heigh of #search, see detail.less\n@search-height: 7.6rem;\n\n/// Device Size\n/// @desktop > @tablet\n@tablet: 79.75em; // see https://github.com/searxng/searxng/issues/874\n@phone: 50em;\n@small-phone: 35em;\n@ultra-small-phone: 20rem;\n\n/// From style.less\n@stacked-bar-chart: rgb(0, 0, 0);\n\n/// Load fonts from this directory.\n@icon-font-path: \"../../../fonts/\";\n//** File name for all font files.\n@icon-font-name: \"glyphicons-halflings-regular\";\n//** Element ID within SVG icon file.\n@icon-font-svg-id: \"glyphicons_halflingsregular\";\n\n// decoration of the select HTML elements\n@select-light-svg-path: \"../svg/select-light.svg\";\n@select-dark-svg-path: \"../svg/select-dark.svg\";\n",".code-highlight pre {\n overflow: auto;\n background-color: inherit;\n color: inherit;\n border: inherit;\n}\n\n// stylelint-disable no-invalid-position-at-import-rule\n@import \"../generated/pygments.less\";\n","/*\n this file is generated automatically by searxng_extra/update/update_pygments.py\n using pygments version 2.13.0\n*/\n\n.code-highlight .linenos {\n -webkit-touch-callout: none;\n -webkit-user-select: none;\n -khtml-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n cursor: default;\n\n &::selection {\n background: transparent; /* WebKit/Blink Browsers */\n }\n &::-moz-selection {\n background: transparent; /* Gecko Browsers */\n }\n\n margin-right: 8px;\n text-align: right;\n}\n\n.code-highlight pre { line-height: 125%; }\n.code-highlight td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }\n.code-highlight span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }\n.code-highlight td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }\n.code-highlight span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }\n.code-highlight .hll { background-color: #ffffcc }\n.code-highlight { background: #f8f8f8; }\n.code-highlight .c { color: #3D7B7B; font-style: italic } /* Comment */\n.code-highlight .err { border: 1px solid #FF0000 } /* Error */\n.code-highlight .k { color: #008000; font-weight: bold } /* Keyword */\n.code-highlight .o { color: #666666 } /* Operator */\n.code-highlight .ch { color: #3D7B7B; font-style: italic } /* Comment.Hashbang */\n.code-highlight .cm { color: #3D7B7B; font-style: italic } /* Comment.Multiline */\n.code-highlight .cp { color: #9C6500 } /* Comment.Preproc */\n.code-highlight .cpf { color: #3D7B7B; font-style: italic } /* Comment.PreprocFile */\n.code-highlight .c1 { color: #3D7B7B; font-style: italic } /* Comment.Single */\n.code-highlight .cs { color: #3D7B7B; font-style: italic } /* Comment.Special */\n.code-highlight .gd { color: #A00000 } /* Generic.Deleted */\n.code-highlight .ge { font-style: italic } /* Generic.Emph */\n.code-highlight .gr { color: #E40000 } /* Generic.Error */\n.code-highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */\n.code-highlight .gi { color: #008400 } /* Generic.Inserted */\n.code-highlight .go { color: #717171 } /* Generic.Output */\n.code-highlight .gp { color: #000080; font-weight: bold } /* Generic.Prompt */\n.code-highlight .gs { font-weight: bold } /* Generic.Strong */\n.code-highlight .gu { color: #800080; font-weight: bold } /* Generic.Subheading */\n.code-highlight .gt { color: #0044DD } /* Generic.Traceback */\n.code-highlight .kc { color: #008000; font-weight: bold } /* Keyword.Constant */\n.code-highlight .kd { color: #008000; font-weight: bold } /* Keyword.Declaration */\n.code-highlight .kn { color: #008000; font-weight: bold } /* Keyword.Namespace */\n.code-highlight .kp { color: #008000 } /* Keyword.Pseudo */\n.code-highlight .kr { color: #008000; font-weight: bold } /* Keyword.Reserved */\n.code-highlight .kt { color: #B00040 } /* Keyword.Type */\n.code-highlight .m { color: #666666 } /* Literal.Number */\n.code-highlight .s { color: #BA2121 } /* Literal.String */\n.code-highlight .na { color: #687822 } /* Name.Attribute */\n.code-highlight .nb { color: #008000 } /* Name.Builtin */\n.code-highlight .nc { color: #0000FF; font-weight: bold } /* Name.Class */\n.code-highlight .no { color: #880000 } /* Name.Constant */\n.code-highlight .nd { color: #AA22FF } /* Name.Decorator */\n.code-highlight .ni { color: #717171; font-weight: bold } /* Name.Entity */\n.code-highlight .ne { color: #CB3F38; font-weight: bold } /* Name.Exception */\n.code-highlight .nf { color: #0000FF } /* Name.Function */\n.code-highlight .nl { color: #767600 } /* Name.Label */\n.code-highlight .nn { color: #0000FF; font-weight: bold } /* Name.Namespace */\n.code-highlight .nt { color: #008000; font-weight: bold } /* Name.Tag */\n.code-highlight .nv { color: #19177C } /* Name.Variable */\n.code-highlight .ow { color: #AA22FF; font-weight: bold } /* Operator.Word */\n.code-highlight .w { color: #bbbbbb } /* Text.Whitespace */\n.code-highlight .mb { color: #666666 } /* Literal.Number.Bin */\n.code-highlight .mf { color: #666666 } /* Literal.Number.Float */\n.code-highlight .mh { color: #666666 } /* Literal.Number.Hex */\n.code-highlight .mi { color: #666666 } /* Literal.Number.Integer */\n.code-highlight .mo { color: #666666 } /* Literal.Number.Oct */\n.code-highlight .sa { color: #BA2121 } /* Literal.String.Affix */\n.code-highlight .sb { color: #BA2121 } /* Literal.String.Backtick */\n.code-highlight .sc { color: #BA2121 } /* Literal.String.Char */\n.code-highlight .dl { color: #BA2121 } /* Literal.String.Delimiter */\n.code-highlight .sd { color: #BA2121; font-style: italic } /* Literal.String.Doc */\n.code-highlight .s2 { color: #BA2121 } /* Literal.String.Double */\n.code-highlight .se { color: #AA5D1F; font-weight: bold } /* Literal.String.Escape */\n.code-highlight .sh { color: #BA2121 } /* Literal.String.Heredoc */\n.code-highlight .si { color: #A45A77; font-weight: bold } /* Literal.String.Interpol */\n.code-highlight .sx { color: #008000 } /* Literal.String.Other */\n.code-highlight .sr { color: #A45A77 } /* Literal.String.Regex */\n.code-highlight .s1 { color: #BA2121 } /* Literal.String.Single */\n.code-highlight .ss { color: #19177C } /* Literal.String.Symbol */\n.code-highlight .bp { color: #008000 } /* Name.Builtin.Pseudo */\n.code-highlight .fm { color: #0000FF } /* Name.Function.Magic */\n.code-highlight .vc { color: #19177C } /* Name.Variable.Class */\n.code-highlight .vg { color: #19177C } /* Name.Variable.Global */\n.code-highlight .vi { color: #19177C } /* Name.Variable.Instance */\n.code-highlight .vm { color: #19177C } /* Name.Variable.Magic */\n.code-highlight .il { color: #666666 } /* Literal.Number.Integer.Long */\n","// other solution : http://stackoverflow.com/questions/1577598/how-to-hide-parts-of-html-when-javascript-is-disabled/13857783#13857783\n\n// stylelint-disable no-descending-specificity\n\nhtml.no-js .hide_if_nojs {\n display: none;\n}\n\nhtml.js .show_if_nojs {\n display: none;\n}\n\n.center {\n text-align: center;\n}\n\n.right {\n float: right;\n}\n\n.left {\n float: left;\n}\n\n.invisible {\n display: none !important;\n}\n\n.list-unstyled {\n list-style-type: none;\n\n li {\n margin-top: 4px;\n margin-bottom: 4px;\n }\n}\n\n.danger {\n background-color: var(--color-error-background);\n}\n\n.warning {\n background: var(--color-warning-background);\n}\n\n.success {\n background: var(--color-success-background);\n}\n\n.badge {\n display: inline-block;\n color: var(--color-toolkit-badge-font);\n background-color: var(--color-toolkit-badge-background);\n text-align: center;\n white-space: nowrap;\n vertical-align: baseline;\n min-width: 10px;\n padding: 1px 5px;\n border-radius: 5px;\n}\n\n// kbd\nkbd {\n padding: 2px 4px;\n margin: 1px;\n font-size: 90%;\n color: var(--color-toolkit-kbd-font);\n background: var(--color-toolkit-kbd-background);\n}\n\n// table\ntable {\n width: 100%;\n\n &.striped {\n tr {\n border-bottom: 1px solid var(--color-settings-tr-hover);\n }\n }\n}\n\nth {\n padding: 0.4em;\n}\n\ntd {\n padding: 0 4px;\n}\n\ntr {\n &:hover {\n background: var(--color-settings-tr-hover) !important;\n }\n}\n\n// pre\n.pre() {\n display: block;\n font-size: 0.8em;\n word-break: break-all;\n margin: 0.1em;\n user-select: all;\n}\n\ndiv.selectable_url {\n display: block;\n border: 1px solid var(--color-result-search-url-border);\n padding: 4px;\n color: var(--color-result-search-url-font);\n margin: 0.1em;\n overflow: hidden;\n height: 1.2em;\n line-height: 1.2em;\n .rounded-corners-tiny;\n\n pre {\n .pre();\n }\n}\n\n// dialog\n.dialog() {\n position: relative;\n display: flex;\n padding: 1rem;\n margin: 0 0 1em 0;\n border: 1px solid var(--color-toolkit-dialog-border);\n .ltr-text-align-left();\n .rounded-corners;\n\n .close {\n .ltr-float-right();\n position: relative;\n top: -3px;\n color: inherit;\n font-size: 1.5em;\n }\n\n ul,\n ol,\n p {\n margin: 1px 0 0 0;\n }\n\n table {\n width: auto;\n }\n\n tr {\n vertical-align: text-top;\n\n &:hover {\n background: transparent !important;\n }\n }\n\n td {\n padding: 0 1em 0 0;\n padding-top: 0;\n .ltr-padding-right(1rem);\n padding-bottom: 0;\n .ltr-padding-left(0);\n }\n\n h4 {\n margin-top: 0.3em;\n margin-bottom: 0.3em;\n }\n}\n\n.dialog-error {\n .dialog();\n\n color: var(--color-error);\n background: var(--color-error-background);\n border-color: var(--color-error);\n}\n\n.dialog-warning {\n .dialog();\n\n color: var(--color-warning);\n background: var(--color-warning-background);\n border-color: var(--color-warning);\n}\n\n.dialog-modal {\n .dialog();\n\n display: block;\n background: var(--color-toolkit-dialog-background);\n position: fixed;\n top: 50%;\n left: 50%;\n margin: 0 auto;\n transform: translate(-50%, -50%);\n z-index: 10000000;\n\n h3 {\n margin-top: 0;\n }\n}\n\n// btn-collapse\n.btn-collapse {\n cursor: pointer;\n}\n\n//\n.scrollx {\n overflow-x: auto;\n overflow-y: hidden;\n display: block;\n padding: 0;\n margin: 0;\n border: none;\n}\n\n/* -- tabs -- */\n.tabs .tabs > label {\n font-size: 90%;\n}\n\nul.tabs {\n border-bottom: 1px solid var(--color-toolkit-tabs-section-border);\n list-style: none;\n padding-left: 0;\n\n li {\n display: flex;\n }\n}\n\n.tabs {\n display: flex;\n flex-wrap: wrap;\n width: 100%;\n min-width: 100%;\n\n & > * {\n order: 2;\n }\n\n & > input[type=radio] {\n display: none;\n }\n\n & > label,\n & > li > a {\n order: 1;\n padding: 0.7em;\n margin: 0 0.7em;\n letter-spacing: 0.5px;\n text-transform: uppercase;\n border: solid var(--color-toolkit-tabs-label-border);\n border-width: 0 0 2px 0;\n color: unset;\n\n .disable-user-select();\n\n cursor: pointer;\n\n &.active {\n border-bottom: 2px solid var(--color-categories-item-border-selected);\n background: var(--color-categories-item-selected);\n color: var(--color-categories-item-selected-font);\n }\n }\n\n & > label:hover,\n & > li > a:hover {\n border-bottom: 2px solid var(--color-categories-item-border-selected);\n }\n\n & > section {\n min-width: 100%;\n padding: 0.7rem 0;\n box-sizing: border-box;\n border-top: 1px solid var(--color-toolkit-tabs-section-border);\n display: none;\n }\n\n // default selection\n & > label:last-of-type {\n border-bottom: 2px solid var(--color-categories-item-border-selected);\n background: var(--color-categories-item-selected);\n color: var(--color-categories-item-selected-font);\n letter-spacing: -0.1px;\n }\n\n & > section:last-of-type {\n display: block;\n }\n}\n\nhtml body .tabs > input:checked {\n ~ section {\n display: none;\n }\n\n ~ label {\n position: inherited;\n background: inherit;\n border-bottom: 2px solid transparent;\n font-weight: normal;\n color: inherit;\n\n &:hover {\n border-bottom: 2px solid var(--color-categories-item-border-selected);\n }\n }\n\n + label {\n border-bottom: 2px solid var(--color-categories-item-border-selected);\n background: var(--color-categories-item-selected);\n color: var(--color-categories-item-selected-font);\n }\n\n + label + section {\n display: block;\n }\n}\n\n/* -- select -- */\nselect {\n height: 2.4rem;\n margin-top: 0;\n .ltr-margin-right(1rem);\n margin-bottom: 0;\n .ltr-margin-left(0);\n padding: 0.2rem !important;\n color: var(--color-search-font);\n font-size: 0.9rem;\n z-index: 2;\n\n &:hover,\n &:focus {\n cursor: pointer;\n }\n}\n\n@supports ((background-position-x: 100%) and ((appearance: none) or (-webkit-appearance: none) or (-moz-appearance: none))) {\n select {\n appearance: none;\n -webkit-appearance: none;\n -moz-appearance: none;\n border-width: 0 2rem 0 0;\n border-color: transparent;\n background: data-uri('image/svg+xml;charset=UTF-8', @select-light-svg-path) no-repeat;\n background-position-x: calc(100% + 2rem);\n background-size: 2rem;\n background-origin: content-box;\n background-color: var(--color-toolkit-select-background);\n outline: medium none;\n text-overflow: ellipsis;\n .rounded-corners-tiny;\n\n &:hover,\n &:focus {\n background-color: var(--color-toolkit-select-background-hover);\n }\n\n option {\n background-color: var(--color-base-background);\n }\n }\n\n @media (prefers-color-scheme: dark) {\n html.theme-auto select,\n html.theme-dark select {\n background-image: data-uri('image/svg+xml;charset=UTF-8', @select-dark-svg-path);\n }\n }\n\n html.theme-dark select {\n background-image: data-uri('image/svg+xml;charset=UTF-8', @select-dark-svg-path);\n }\n}\n\n/* -- checkbox-onoff -- */\ninput.checkbox-onoff[type=\"checkbox\"] {\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n cursor: pointer;\n display: inline-block;\n width: 2.5em;\n height: 0.7em;\n box-shadow: none !important;\n margin: 0 16px;\n border-radius: 10px;\n position: relative;\n\n /* focus & hover */\n &:focus,\n &:hover {\n outline: none;\n }\n\n &:focus::after {\n content: \"\";\n position: absolute;\n width: 3.5em;\n height: 1.65em;\n border: 1px solid var(--color-btn-background);\n border-radius: 12px;\n box-shadow: var(--color-btn-background) 0 0 3px;\n z-index: 10000;\n top: -0.55em;\n left: -0.6em;\n }\n\n &::before {\n position: absolute;\n top: -0.5em;\n display: flex;\n justify-content: center;\n align-items: center;\n font-size: 0.75em;\n width: 1.875em;\n height: 1.875em;\n border-radius: 50%;\n }\n}\n\n/* check mark\nreversed-checkbox displays unchecked checkedboxes as checked, and vice versa.\nsee https://github.com/searxng/searxng/blob/3408d061aab9abc6168fec9bbc6deab71b236dac/searx/templates/simple/preferences.html#L313\n*/\ninput.checkbox-onoff[type=\"checkbox\"],\n.reversed-checkbox input.checkbox-onoff[type=\"checkbox\"]:checked {\n background: var(--color-toolkit-checkbox-onoff-off-background);\n\n &::before {\n left: -0.5em;\n content: \"\\2715\";\n color: var(--color-toolkit-checkbox-onoff-off-mark-color);\n background: var(--color-toolkit-checkbox-onoff-off-mark-background);\n }\n}\n\ninput.checkbox-onoff[type=\"checkbox\"]:checked,\n.reversed-checkbox input.checkbox-onoff[type=\"checkbox\"] {\n background: var(--color-toolkit-checkbox-onoff-on-background);\n\n &::before {\n left: calc(100% - 1.5em);\n content: \"\\2713\";\n color: var(--color-toolkit-checkbox-onoff-on-mark-color);\n background: var(--color-toolkit-checkbox-onoff-on-mark-background);\n }\n}\n\n/* -- checkbox -- */\n@supports (transform: rotate(-45deg)) {\n input[type=checkbox]:not(.checkbox-onoff) {\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n\n width: 20px;\n height: 20px;\n cursor: pointer;\n position: relative;\n top: 0;\n left: 0;\n border: 2px solid var(--color-toolkit-checkbox-input-border);\n .rounded-corners(0.3em);\n\n &::after {\n content: '';\n width: 9px;\n height: 5px;\n position: absolute;\n top: 3px;\n left: 2px;\n border: 3px solid var(--color-toolkit-checkbox-label-border);\n border-top: none;\n border-right: none;\n background: transparent;\n opacity: 0;\n transform: rotate(-45deg);\n }\n\n &:checked::after {\n border-color: var(--color-toolkit-checkbox-input-border);\n opacity: 1;\n }\n }\n\n // disabled : can't be focused, show only the check mark\n input[type=checkbox][disabled]:not(.checkbox-onoff) {\n border: inherit;\n background-color: transparent !important;\n cursor: inherit;\n }\n\n // if not checked and possible to checked then display a \"light\" check mark on hover\n input.checkbox[type=checkbox]:not(:checked):not([disabled]):not(.checkbox-onoff):hover::after {\n opacity: 0.5;\n }\n}\n\n@media screen and (max-width: @phone) {\n .tabs > label {\n width: 100%;\n }\n}\n\n/* -- loader -- */\n.loader,\n.loader::after {\n border-radius: 50%;\n width: 2em;\n height: 2em;\n}\n\n.loader {\n margin: 1em auto;\n font-size: 10px;\n position: relative;\n text-indent: -9999em;\n border-top: 0.5em solid var(--color-toolkit-loader-border);\n border-right: 0.5em solid var(--color-toolkit-loader-border);\n border-bottom: 0.5em solid var(--color-toolkit-loader-border);\n border-left: 0.5em solid var(--color-toolkit-loader-borderleft);\n -webkit-transform: translateZ(0);\n -ms-transform: translateZ(0);\n transform: translateZ(0);\n -webkit-animation: load8 1.2s infinite linear;\n animation: load8 1.2s infinite linear;\n}\n\n@-webkit-keyframes load8 {\n 0% {\n -webkit-transform: rotate(0deg);\n transform: rotate(0deg);\n }\n\n 100% {\n -webkit-transform: rotate(360deg);\n transform: rotate(360deg);\n }\n}\n\n@keyframes load8 {\n 0% {\n -webkit-transform: rotate(0deg);\n transform: rotate(0deg);\n }\n\n 100% {\n -webkit-transform: rotate(360deg);\n transform: rotate(360deg);\n }\n}\n\n/* -- engine-tooltip -- */\n.engine-tooltip {\n display: none;\n position: absolute;\n padding: 0.5rem 1rem;\n margin: 0 0 0 2rem;\n border: 1px solid var(--color-toolkit-engine-tooltip-border);\n background: var(--color-toolkit-engine-tooltip-background);\n font-size: 14px;\n font-weight: normal;\n z-index: 1000000;\n text-align: left;\n .rounded-corners;\n}\n\nth:hover .engine-tooltip,\ntd:hover .engine-tooltip,\n.engine-tooltip:hover {\n display: inline-block;\n}\n\n/* -- stacked bar chart -- */\n.stacked-bar-chart {\n margin: 0;\n padding: 0 0.125rem 0 4rem;\n width: 100%;\n width: -moz-available;\n width: -webkit-fill-available;\n width: fill;\n flex-direction: row;\n flex-wrap: nowrap;\n align-items: center;\n display: inline-flex;\n}\n\n.stacked-bar-chart-value {\n width: 3rem;\n display: inline-block;\n position: absolute;\n padding: 0 0.5rem;\n text-align: right;\n}\n\n.stacked-bar-chart-base {\n display: flex;\n flex-shrink: 0;\n flex-grow: 0;\n flex-basis: unset;\n}\n\n.stacked-bar-chart-median {\n .stacked-bar-chart-base();\n\n background: var(--color-base-font);\n border: 1px solid rgba(var(--color-base-font-rgb), 0.9);\n padding: 0.3rem 0;\n}\n\n.stacked-bar-chart-rate80 {\n .stacked-bar-chart-base();\n\n background: transparent;\n border: 1px solid rgba(var(--color-base-font-rgb), 0.3);\n padding: 0.3rem 0;\n}\n\n.stacked-bar-chart-rate95 {\n .stacked-bar-chart-base();\n\n background: transparent;\n border-bottom: 1px dotted rgba(var(--color-base-font-rgb), 0.5);\n padding: 0;\n}\n\n.stacked-bar-chart-rate100 {\n .stacked-bar-chart-base();\n\n background: transparent;\n border-left: 1px solid rgba(var(--color-base-font-rgb), 0.9);\n padding: 0.4rem 0;\n width: 1px;\n}\n","// SPDX-License-Identifier: AGPL-3.0-or-later\n\n// Mixins\n.text-size-adjust (@property: 100%) {\n -webkit-text-size-adjust: @property;\n -ms-text-size-adjust: @property;\n -moz-text-size-adjust: @property;\n text-size-adjust: @property;\n}\n\n.rounded-corners (@radius: 10px) {\n border-radius: @radius;\n}\n\n.rounded-right-corners (@radius: 0 10px 10px 0) {\n border-radius: @radius;\n}\n\n.rounded-corners-tiny (@radius: 5px) {\n border-radius: @radius;\n}\n\n// disable user selection\n.disable-user-select () {\n -webkit-touch-callout: none;\n user-select: none;\n}\n\n.show-content-button() {\n padding: 5px 10px;\n .rounded-corners-tiny;\n background: var(--color-show-btn-background);\n color: var(--color-show-btn-font);\n cursor: pointer;\n\n &:hover {\n background: var(--color-btn-background);\n color: var(--color-btn-font);\n }\n}\n",".ltr-left(@offset) {\n right: @offset;\n}\n\n.ltr-right(@offset) {\n left: @offset;\n}\n\n.ltr-margin-right(@offset) {\n margin-left: @offset;\n}\n\n.ltr-margin-left(@offset) {\n margin-right: @offset;\n}\n\n.ltr-border-right(@offset) {\n border-left: @offset;\n}\n\n.ltr-border-left(@offset) {\n border-right: @offset;\n}\n\n.ltr-padding-right(@offset) {\n padding-left: @offset;\n}\n\n.ltr-padding-left(@offset) {\n padding-right: @offset;\n}\n\n.ltr-float-left() {\n float: right;\n}\n\n.ltr-float-right() {\n float: left;\n}\n\n.ltr-text-align-right() {\n text-align: left;\n}\n\n.ltr-rounded-left-corners(@radius) {\n border-radius: 0 @radius @radius 0;\n}\n\n.ltr-rounded-top-left-corners(@radius) {\n border-radius: 0 @radius 0 0;\n}\n\n.ltr-rounded-bottom-left-corners(@radius) {\n border-radius: 0 0 @radius 0;\n}\n\n.ltr-rounded-right-corners(@radius) {\n border-radius: @radius 0 0 @radius;\n}\n\n.ltr-rounded-top-right-corners(@radius) {\n border-radius: @radius 0 0 0;\n}\n\n.ltr-rounded-bottom-right-corners(@radius) {\n border-radius: 0 0 0 @radius;\n}\n\n.ltr-text-align-left() {\n text-align: right;\n}\n\n.ltr-border-left-width(@offset) {\n border-right-width: @offset;\n}\n\n.ltr-border-right-width(@offset) {\n border-left-width: @offset;\n}\n\n.ltr-transform() {\n transform: scale(-1, 1);\n}\n\n@import \"style.less\";\n\n#q,\n#sidebar .infobox dt bdi {\n direction: rtl;\n}\n\n// URL are displayed LTR but align on the right\n#urls {\n direction: initial;\n text-align: right;\n\n .result .url_wrapper {\n justify-content: end;\n }\n}\n\n// Image flexbox\n#main_results div#results.only_template_images #urls {\n direction: rtl;\n}\n\n// Image detail\n#results.image-detail-open article.result-images[data-vim-selected] .detail .result-images-labels p {\n direction: rtl;\n\n &.result-url {\n // Display URL using the LTR direction\n direction: ltr;\n\n span {\n // And put the label on the right\n direction: rtl;\n float: right;\n }\n }\n}\n\n// select HTML element\n@supports ((background-position-x: 100%) and ((appearance: none) or (-webkit-appearance: none) or (-moz-appearance: none))) {\n select {\n border-width: 0 0 0 2rem;\n background-position-x: -2rem;\n }\n}\n\n// vim hotkey helps is not translated\n#vim-hotkeys-help table {\n direction: ltr;\n text-align: left;\n}\n\n// Logo on the right\n#main_preferences h1,\n#main_stats h1 {\n background-position-x: 100%;\n}\n\n// patch of stats.less\n.bar-chart-serie1,\n.bar-chart-serie2 {\n float: right;\n}\n\n.engine-stats .engine-name,\n.engine-stats .engine-score,\n.engine-stats .result-count,\n.engine-stats .response-time,\n.engine-stats .engine-reliability {\n text-align: right;\n}\n","/*! Autocomplete.js v2.6.3 | license MIT | (c) 2017, Baptiste Donaux | http://autocomplete-js.com */\n\n.autocomplete {\n position: absolute;\n width: @search-width;\n max-height: 0;\n overflow-y: hidden;\n .ltr-text-align-left();\n\n .rounded-corners;\n\n &:active,\n &:focus,\n &:hover {\n background-color: var(--color-autocomplete-background);\n }\n\n &:empty {\n display: none;\n }\n\n > ul {\n list-style-type: none;\n margin: 0;\n padding: 0;\n\n > li {\n cursor: pointer;\n padding: 0.5rem 1rem;\n\n &.active,\n &:active,\n &:focus,\n &:hover {\n background-color: var(--color-autocomplete-background-hover);\n\n a:active,\n a:focus,\n a:hover {\n text-decoration: none;\n }\n }\n\n &.locked {\n cursor: inherit;\n }\n }\n }\n\n &.open {\n display: block;\n background-color: var(--color-autocomplete-background);\n color: var(--color-autocomplete-font);\n max-height: 32rem;\n overflow-y: auto;\n z-index: 100;\n margin-top: 3.5rem;\n border-radius: 0.8rem;\n box-shadow: 0 2px 8px rgb(34 38 46 / 25%);\n\n &:empty {\n display: none;\n }\n }\n}\n\n@media screen and (max-width: @phone) {\n .autocomplete {\n width: 100%;\n\n > ul > li {\n padding: 1rem;\n }\n }\n}\n","#main_results #results.image-detail-open.only_template_images {\n width: min(98%, 59.25rem) !important;\n}\n\n#main_results #results.only_template_images.image-detail-open #backToTop {\n .ltr-left(56.75rem) !important;\n .ltr-right(inherit);\n}\n\narticle.result-images .detail {\n display: none;\n}\n\n#results.image-detail-open article.result-images[data-vim-selected] .detail {\n display: flex;\n flex-direction: column;\n position: fixed;\n .ltr-left(60rem);\n .ltr-right(0);\n top: @search-height;\n transition: top 0.064s ease-in 0s;\n bottom: 0;\n background: var(--color-result-detail-background);\n border: 1px solid var(--color-result-detail-background);\n z-index: 10000;\n padding: 4rem 3rem 3rem 3rem;\n\n a.result-images-source {\n display: block;\n flex: 1;\n text-align: left;\n width: 100%;\n border: none;\n text-decoration: none;\n\n img {\n padding: 0;\n margin: 0;\n border: none;\n object-fit: contain;\n width: inherit;\n height: inherit;\n max-width: 100%;\n min-height: inherit;\n max-height: calc(100vh - 25rem - 7rem);\n background: inherit;\n }\n }\n\n .result-images-labels {\n color: var(--color-result-detail-font);\n max-height: 16rem;\n min-height: 16rem;\n\n hr {\n border-top: 1px solid var(--color-result-detail-hr);\n border-bottom: none;\n }\n\n h4 {\n height: 2rem;\n overflow: hidden;\n text-overflow: ellipsis;\n font-size: 0.9rem;\n }\n\n p {\n color: var(--color-result-detail-label-font);\n font-size: 0.9rem;\n\n span {\n display: inline-block;\n width: 12rem;\n }\n }\n\n h4,\n p,\n a {\n .ltr-text-align-left();\n }\n\n p.result-content {\n height: 2rem;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n\n p.result-url {\n white-space: nowrap;\n overflow-x: hidden;\n text-overflow: ellipsis;\n }\n\n p.result-content:hover,\n p.result-url:hover {\n position: relative;\n overflow: inherit !important;\n background: var(--color-result-detail-background);\n text-overflow: inherit !important;\n }\n\n a,\n a:visited,\n a:hover,\n a:active {\n color: var(--color-result-detail-link);\n }\n\n a:hover {\n text-decoration: underline;\n }\n }\n\n a.result-detail-close {\n top: 1rem;\n .ltr-left(1rem);\n padding: 0.4rem;\n }\n\n a.result-detail-previous {\n top: 1rem;\n .ltr-right(6rem);\n // center the icon by moving it slightly on the left\n padding-top: 0.4rem;\n .ltr-padding-right(0.5rem);\n padding-bottom: 0.4rem;\n .ltr-padding-left(0.3rem);\n }\n\n a.result-detail-next {\n top: 1rem;\n .ltr-right(2rem);\n padding: 0.4rem;\n }\n\n a.result-detail-close,\n a.result-detail-next,\n a.result-detail-previous {\n border-radius: 50%;\n display: block;\n width: 1.5rem;\n height: 1.5rem;\n position: absolute;\n filter: opacity(40%);\n z-index: 2000002;\n\n span {\n display: block;\n width: 1.5rem;\n height: 1.5rem;\n text-align: center;\n }\n }\n\n a.result-detail-next,\n a.result-detail-previous {\n span::before {\n // vertical center small icons\n vertical-align: sub;\n }\n }\n\n a.result-detail-close,\n a.result-detail-close:visited,\n a.result-detail-close:hover,\n a.result-detail-close:active,\n a.result-detail-previous,\n a.result-detail-previous:visited,\n a.result-detail-previous:hover,\n a.result-detail-previous:active,\n a.result-detail-next,\n a.result-detail-next:visited,\n a.result-detail-next:hover,\n a.result-detail-next:active {\n color: var(--color-result-detail-font);\n background: var(--color-result-detail-background);\n border: 1px solid var(--color-result-detail-font);\n }\n\n a.result-detail-close:focus,\n a.result-detail-close:hover,\n a.result-detail-previous:focus,\n a.result-detail-previous:hover,\n a.result-detail-next:focus,\n a.result-detail-next:hover {\n filter: opacity(80%);\n }\n\n .loader {\n position: absolute;\n top: 1rem;\n .ltr-right(50%);\n border-top: 0.5em solid var(--color-result-detail-loader-border);\n border-right: 0.5em solid var(--color-result-detail-loader-border);\n border-bottom: 0.5em solid var(--color-result-detail-loader-border);\n border-left: 0.5em solid var(--color-result-detail-loader-borderleft);\n }\n}\n\n#results.image-detail-open.scrolling article.result-images[data-vim-selected] .detail {\n top: 0;\n\n a.result-images-source img {\n max-height: calc(100vh - 25rem);\n }\n}\n\n@media screen and (max-width: @tablet) {\n #results.image-detail-open article.result-images[data-vim-selected] .detail {\n top: 0;\n .ltr-left(0);\n\n a.result-images-source {\n display: flex;\n flex-direction: column;\n justify-content: center;\n\n img {\n width: 100%;\n max-height: calc(100vh - 24rem);\n }\n }\n\n a.result-detail-next {\n .ltr-right(1rem);\n }\n }\n}\n\n@media screen and (max-width: @phone) {\n #results.image-detail-open article.result-images[data-vim-selected] .detail {\n top: 0;\n .ltr-left(0);\n padding: 1rem;\n\n a.result-images-source img {\n width: 100%;\n max-height: calc(100vh - 20rem);\n margin: 0;\n }\n\n .result-images-labels p span {\n width: inherit;\n .ltr-margin-right(1rem);\n }\n }\n}\n",".dialog-modal {\n animation-name: dialogmodal;\n animation-duration: 0.13s;\n\n @keyframes dialogmodal {\n 0% {\n opacity: 0;\n }\n\n 50% {\n opacity: 0.5;\n transform: translate(-50%, -50%) scale(1.05);\n }\n }\n}\n\ninput.checkbox-onoff[type=\"checkbox\"]::before {\n transition: left 0.25s;\n}\n","iframe[src^=\"https://w.soundcloud.com\"] {\n height: 120px;\n}\n\niframe[src^=\"https://www.deezer.com\"] {\n // The real size is 92px, but 94px are needed to avoid an inner scrollbar of\n // the embedded HTML.\n height: 94px;\n}\n\niframe[src^=\"https://www.mixcloud.com\"] {\n // the embedded player from mixcloud has some quirks: initial there is an\n // issue with an image URL that is blocked since it is an a Cross-Origin\n // request. The alternative text (<img alt='Mixcloud Logo'> then cause an\n // scrollbar in the inner of the iframe we can't avoid. Another quirk comes\n // when pressing the play button, somtimes the shown player has an height of\n // 200px, somtimes 250px.\n height: 250px;\n}\n\niframe[src^=\"https://bandcamp.com/EmbeddedPlayer\"] {\n // show playlist\n height: 350px;\n}\n\niframe[src^=\"https://bandcamp.com/EmbeddedPlayer/track\"] {\n // hide playlist\n height: 120px;\n}\n\niframe[src^=\"https://genius.com/songs\"] {\n height: 65px;\n}\n",".info-page {\n code {\n font-family: monospace;\n color: var(--color-doc-code);\n background-color: var(--color-doc-code-background);\n padding: 2px 5px;\n .rounded-corners(5px);\n }\n}\n","// SPDX-License-Identifier: AGPL-3.0-or-later\n.stats_endpoint {\n .github-issue-button {\n display: block;\n padding: 8px 16px;\n font-family: sans-serif;\n font-size: 16px;\n color: white;\n background-color: #238636;\n border: #2ea043;\n border-radius: 10px !important;\n box-shadow: rgba(0, 0, 0, 0) 0 0 0 0;\n }\n\n .github-issue-button:hover {\n background-color: #2ea043;\n }\n\n .issue-hide {\n display: none;\n }\n\n input[type=checked] {\n position: absolute;\n }\n\n label {\n margin: 1rem 1rem 1rem 0;\n }\n\n .step_content {\n margin: 1rem 1rem 1rem 2rem;\n }\n\n .step1,\n .step2 {\n visibility: hidden;\n }\n\n .step1_delay {\n transition: visibility 0s linear 4s;\n }\n\n #step1:checked ~ .step1,\n #step2:checked ~ .step2 {\n visibility: visible;\n }\n}\n","// SPDX-License-Identifier: AGPL-3.0-or-later\n\n.engine-stats {\n border-spacing: 0;\n border-collapse: collapse;\n\n tr td,\n tr th {\n border-bottom: 1px solid var(--color-result-border);\n padding: 0.25rem;\n }\n\n table.engine-tooltip {\n border-spacing: 0;\n border-collapse: collapse;\n\n td,\n th {\n border: none;\n }\n }\n\n .engine-name {\n width: 20rem;\n }\n\n .engine-score {\n width: 7rem;\n text-align: right;\n }\n\n .engine-reliability {\n text-align: right;\n }\n}\n\ntable.engine-error th.engine-error-type,\ntable.engine-error td.engine-error-type,\nfailed-test {\n width: 10rem;\n}\n\n.engine-errors {\n margin-top: 3rem;\n\n table.engine-error {\n max-width: 1280px;\n margin: 1rem 0 3rem 0;\n border: 1px solid var(--color-result-border);\n .ltr-text-align-left();\n\n tr th,\n tr td {\n padding: 0.5rem;\n }\n\n & span.log_parameters {\n border-right: 1px solid solid var(--color-result-border);\n padding: 0 1rem 0 0;\n margin: 0 0 0 0.5rem;\n }\n }\n}\n\n.bar-chart-value {\n width: 3em;\n display: inline-block;\n text-align: right;\n padding-right: 0.5rem;\n}\n\n.bar-chart-graph {\n width: calc(100% - 5rem);\n display: inline-block;\n}\n\n.bar-chart-bar {\n border: 3px solid #5bc0de;\n margin: 1px 0;\n}\n\n.bar-chart-serie1 {\n border: 3px solid #5bc0de;\n margin: 1px 0;\n float: left;\n}\n\n.bar-chart-serie2 {\n border: 3px solid #deb15b;\n margin: 1px 0;\n float: left;\n}\n\n.bar0 {\n width: 0;\n border: 0;\n}\n\n.generate-bar(100);\n\n.generate-bar(@n, @i: 1) when (@i =< @n) {\n .bar@{i} {\n width: (@i * 100% / @n);\n }\n .generate-bar(@n, (@i + 1));\n}\n","// SPDX-License-Identifier: AGPL-3.0-or-later\n\n.osm-map-box {\n height: 300px;\n width: 100%;\n margin: 10px 0;\n}\n","#main_index {\n margin-top: 26vh;\n}\n\n.index {\n text-align: center;\n\n .title {\n background: url('../img/searxng.png') no-repeat;\n min-height: 4rem;\n margin: 4rem auto;\n background-position: center;\n background-size: contain;\n }\n\n h1 {\n font-size: 4em;\n visibility: hidden;\n }\n\n #search,\n #search_header {\n margin: 0 auto;\n background: inherit;\n border: inherit;\n padding: 0;\n display: block;\n }\n\n .search_filters {\n display: block;\n margin: 1em 0;\n }\n\n .category label {\n padding: 6px 10px;\n border-bottom: initial !important;\n }\n}\n\n@media screen and (max-width: @tablet) {\n div.title {\n h1 {\n font-size: 1em;\n }\n }\n\n #main_index {\n margin-top: 6em;\n }\n}\n","#tab-content-query table td,\n#tab-content-query table th {\n .ltr-text-align-right() !important;\n height: 3rem;\n}\n\n#main_preferences {\n form {\n width: 100%;\n }\n\n fieldset {\n margin: 8px;\n border: none;\n }\n\n legend {\n margin: 0;\n padding: 5px 0 0 0;\n display: block;\n .ltr-float-left();\n width: 300px;\n }\n\n .value {\n margin: 0;\n padding: 0;\n .ltr-float-left();\n width: 15em;\n\n select,\n input[type=\"text\"] {\n font-size: inherit !important;\n margin-top: 0;\n .ltr-margin-right(1rem);\n margin-bottom: 0;\n .ltr-margin-left(0);\n }\n\n select {\n width: 14rem;\n }\n\n input[type=\"text\"] {\n width: 13.25rem;\n color: var(--color-toolkit-input-text-font);\n border: none;\n background: none repeat scroll 0 0 var(--color-toolkit-select-background);\n padding: 0.2rem 0.4rem;\n height: 2rem;\n .rounded-corners-tiny;\n\n &:hover,\n &:focus {\n background-color: var(--color-toolkit-select-background-hover);\n }\n }\n\n select:focus,\n input:focus {\n outline: none;\n box-shadow: 0 0 1px 1px var(--color-btn-background);\n }\n }\n\n .description {\n margin: 0;\n padding: 5px 0 0 0;\n .ltr-float-right();\n width: 50%;\n color: var(--color-settings-engine-description-font);\n font-size: 90%;\n }\n\n table {\n border-collapse: collapse;\n }\n\n table td {\n text-align: center;\n }\n\n .category {\n .ltr-margin-right(0.5rem);\n\n label {\n border: 2px solid transparent;\n padding: 0.2rem 0.4rem;\n .rounded-corners-tiny;\n }\n }\n\n .category input[type=\"checkbox\"]:checked + label {\n border: 2px solid var(--color-categories-item-border-selected);\n }\n\n table.table_engines {\n td {\n height: 3.75rem;\n }\n\n th.name {\n /* stylelint-disable */\n label {\n cursor: pointer;\n }\n /* stylelint-enable */\n\n .engine-tooltip {\n margin-top: 1.8rem;\n .ltr-left(calc((100% - 85em) / 2 + 10em));\n max-width: 40rem;\n\n .engine-description {\n margin-top: 0.5rem;\n }\n }\n }\n\n .engine-group {\n .ltr-text-align-left();\n font-weight: normal;\n background: var(--color-settings-engine-group-background);\n }\n\n .name,\n .shortcut {\n .ltr-text-align-left();\n }\n }\n\n table.cookies {\n width: 100%;\n direction: ltr;\n\n th,\n td {\n text-align: left;\n font-family: monospace;\n font-size: 1rem;\n padding: 0.5em;\n vertical-align: top;\n }\n\n td:first-child {\n word-break: keep-all;\n width: 14rem;\n padding-right: 1rem;\n }\n\n td:last-child {\n word-break: break-all;\n }\n\n & > tbody > tr:nth-child(even) > th,\n & > tbody > tr:nth-child(even) > td {\n background-color: var(--color-settings-tr-hover);\n }\n }\n\n .preferences_back {\n background: none repeat scroll 0 0 var(--color-btn-background);\n color: var(--color-btn-font);\n border: 0 none;\n .rounded-corners;\n\n cursor: pointer;\n display: inline-block;\n margin: 2px 4px;\n padding: 0.7em;\n\n a {\n color: var(--color-settings-return-font);\n }\n\n a::first-letter {\n text-transform: uppercase;\n }\n }\n\n div.selectable_url {\n pre {\n width: 100%;\n }\n }\n}\n\n@media screen and (max-width: @tablet) {\n .preferences_back {\n clear: both;\n }\n\n .engine-tooltip {\n .ltr-left(10em) !important;\n }\n}\n","/*\n* SearXNG, A privacy-respecting, hackable metasearch engine\n*/\n\n#search {\n padding: 0;\n margin: 0;\n}\n\n#search_header {\n padding-top: 1.5em;\n .ltr-padding-right(2em);\n .ltr-padding-left(@results-offset - 3rem);\n margin: 0;\n background: var(--color-header-background);\n border-bottom: 1px solid var(--color-header-border);\n display: grid;\n column-gap: 1.2rem;\n row-gap: 1rem;\n grid-template-columns: 3rem 1fr;\n grid-template-areas:\n \"logo search\"\n \"spacer categories\";\n}\n\n.category {\n display: inline-block;\n position: relative;\n .ltr-margin-right(1rem);\n padding: 0;\n\n input {\n display: none;\n }\n\n label {\n svg {\n padding-right: 0.2rem;\n }\n\n cursor: pointer;\n padding: 0.2rem 0;\n display: inline-flex;\n text-transform: capitalize;\n font-size: 0.9em;\n border-bottom: 2px solid transparent;\n .disable-user-select;\n\n div.category_name {\n margin: auto 0;\n }\n }\n\n input[type=\"checkbox\"]:checked + label {\n color: var(--color-categories-item-selected-font);\n border-bottom: 2px solid var(--color-categories-item-border-selected);\n }\n}\n\n#search_logo {\n grid-area: logo;\n display: flex;\n align-items: center;\n justify-content: center;\n\n svg {\n flex: 1;\n width: 30px;\n height: 30px;\n margin: 0.5rem 0 auto 0;\n }\n}\n\n.search_categories {\n grid-area: categories;\n\n .help {\n display: none;\n }\n\n &:hover .help {\n display: block;\n position: absolute;\n background: var(--color-base-background);\n padding: 1rem 0.6rem 0.6rem 0;\n z-index: 1000;\n width: 100%;\n left: -0.1rem;\n }\n}\n\n#search_view {\n grid-area: search;\n}\n\n.search_box {\n border-radius: 0.8rem;\n width: @search-width;\n display: inline-flex;\n flex-direction: row;\n white-space: nowrap;\n box-shadow: var(--color-search-shadow);\n}\n\n#clear_search {\n display: block;\n border-collapse: separate;\n box-sizing: border-box;\n width: 1.8rem;\n margin: 0;\n padding: 0.8rem 0.2rem;\n background: none repeat scroll 0 0 var(--color-search-background);\n border: none;\n outline: none;\n color: var(--color-search-font);\n font-size: 1.1rem;\n z-index: 10000;\n\n &:hover {\n color: var(--color-search-background-hover);\n }\n\n &.empty * {\n display: none;\n }\n}\n\nhtml.no-js #clear_search.hide_if_nojs {\n display: none;\n}\n\n#q,\n#send_search {\n display: block;\n margin: 0;\n padding: 0.8rem;\n background: none repeat scroll 0 0 var(--color-search-background);\n border: none;\n outline: none;\n color: var(--color-search-font);\n font-size: 1.1rem;\n z-index: 2;\n}\n\n#q {\n width: 100%;\n .ltr-padding-left(1rem);\n .ltr-padding-right(0) !important;\n .ltr-rounded-left-corners(0.8rem);\n}\n\n#q::-ms-clear,\n#q::-webkit-search-cancel-button {\n display: none;\n}\n\n#send_search {\n .ltr-rounded-right-corners(0.8rem);\n\n &:hover {\n cursor: pointer;\n background-color: var(--color-search-background-hover);\n color: var(--color-search-background);\n }\n}\n\n.no-js #clear_search,\n.no-js #send_search {\n width: auto !important;\n .ltr-border-left(1px solid var(--color-search-border));\n}\n\n.search_filters {\n margin-top: 0.6rem;\n .ltr-margin-right(0);\n margin-bottom: 0;\n .ltr-margin-left(@results-offset + 0.6rem);\n display: flex;\n overflow-x: auto;\n overscroll-behavior-inline: contain;\n\n select {\n background-color: inherit;\n\n &:hover,\n &:focus {\n color: var(--color-base-font);\n }\n }\n}\n\n@media screen and (max-width: @tablet) {\n #search_header {\n padding: 1.5em @results-tablet-offset 0 @results-tablet-offset;\n column-gap: @results-tablet-offset;\n }\n\n .search_filters {\n margin-top: 0.6rem;\n .ltr-margin-right(0);\n margin-bottom: 0;\n .ltr-margin-left(@results-tablet-offset + 3rem);\n }\n\n #categories {\n font-size: 90%;\n clear: both;\n\n .checkbox_container {\n margin: auto;\n margin-top: 2px;\n }\n }\n}\n\n@media screen and (max-width: @tablet) and (hover: none) {\n #main_index,\n #main_results {\n #categories_container {\n width: max-content;\n\n .category {\n display: inline-block;\n width: auto;\n }\n }\n\n #categories {\n width: 100%;\n .ltr-text-align-left();\n overflow-x: scroll;\n overflow-y: hidden;\n -webkit-overflow-scrolling: touch;\n }\n }\n}\n\n@media screen and (max-width: @phone) {\n #search_header {\n width: 100%;\n margin: 0;\n padding: 0.1rem 0 0 0;\n column-gap: 0;\n row-gap: 0;\n grid-template-areas:\n \"logo search\"\n \"categories categories\";\n }\n\n .search_logo {\n padding: 0;\n }\n\n .search_box {\n width: 98%;\n display: flex;\n margin: 0 auto;\n }\n\n #q {\n width: 100%;\n flex: 1;\n }\n\n .search_filters {\n margin: 0;\n }\n\n .category {\n display: inline-block;\n width: auto;\n margin: 0;\n\n label {\n padding: 1rem !important;\n margin: 0 !important;\n\n svg {\n display: none;\n }\n }\n }\n\n #search_view:focus-within {\n display: block;\n background-color: var(--color-search-background);\n position: absolute;\n top: 0;\n height: 100%;\n width: 100%;\n z-index: 10000;\n\n .search_box {\n border-bottom: 1px solid var(--color-search-border);\n width: 100%;\n border-radius: 0;\n box-shadow: none;\n\n #send_search {\n .ltr-margin-right(0) !important; // Delete when send_search button is disabled on mobile.\n }\n\n * {\n border: none;\n border-radius: 0;\n box-shadow: none;\n }\n }\n }\n\n #main_results #q:placeholder-shown ~ #send_search {\n .ltr-margin-right(2.6rem);\n transition: margin 0.1s;\n }\n}\n\n@media screen and (max-width: @ultra-small-phone) {\n #search_header {\n grid-template-areas:\n \"search search\"\n \"categories categories\";\n }\n\n #search_logo {\n display: none;\n }\n}\n\n#categories {\n .disable-user-select;\n\n &::-webkit-scrollbar {\n width: 0;\n height: 0;\n }\n}\n\n#categories_container {\n position: relative;\n}\n","/*\n--center-page-width overrides the less variable @results-width when the results are centered\nsee the CSS rules for #results in style.less ( grid-template-columns and gap).\n\nIn this file, the --center-page-width values comes from the Oscar theme (Bootstrap 3).\n\nAll rules starts with \".center-aligment-yes #main_results\" to be enabled only\non the /search URL and when the \"center alignment\" preference is enabled.\n*/\n\n@media screen and (min-width: @phone) {\n .center-aligment-yes #main_results {\n --center-page-width: 48rem;\n }\n}\n\n@media screen and (min-width: 62rem) {\n .center-aligment-yes #main_results {\n --center-page-width: 60rem;\n }\n}\n\n@media screen and (min-width: @tablet) {\n .center-aligment-yes #main_results {\n --center-page-width: 73rem;\n }\n}\n\n@media screen and (min-width: @phone) and (max-width: @tablet) {\n // any change must be reset in @media screen and (min-width: @tablet) { ... }\n .center-aligment-yes #main_results {\n #results {\n grid-template-columns: 60% calc(40% - @results-gap);\n margin-left: 0;\n margin-right: 0;\n }\n\n #urls {\n .ltr-margin-left(3rem);\n }\n\n #sidebar {\n .ltr-margin-right(1rem);\n }\n\n #backToTop {\n .ltr-left(calc(60% + 1rem));\n }\n }\n}\n\n@media screen and (min-width: @tablet) {\n .center-aligment-yes #main_results {\n display: flex;\n flex-direction: column;\n align-items: center;\n\n #search {\n width: 100%;\n display: flex;\n flex-direction: column;\n align-items: center;\n }\n\n #search_header {\n grid-template-columns: calc(50% - 4.5rem - var(--center-page-width) / 2) 3rem var(--center-page-width);\n grid-template-areas: \"na logo search\" \"na spacer categories\";\n column-gap: 1.2rem; // from search.less\n width: 100%;\n padding-left: 0;\n padding-right: 0;\n }\n\n .search_filters {\n .ltr-margin-left(0.5rem);\n width: var(--center-page-width);\n }\n\n #results {\n // from style.less (when screen width = @tablet, reset layout from tablet)\n .ltr-margin-right(2rem);\n .ltr-margin-left(@results-offset);\n //\n\n &.only_template_images,\n &.image-detail-open {\n // * grid-template-columns and .ltr-margin-left are set in style.less\n // * With .image-detail-open.only_template_images, the width is set in detail.less\n // * #results is going to be centered because of the #main_results rules,\n // align-self aligns the results on the left or right according to the language.\n align-self: flex-start;\n }\n\n &:not(.only_template_images):not(.image-detail-open) {\n // the gap is set in style.less\n .ltr-margin-left(1.5rem);\n grid-template-columns: calc(var(--center-page-width) - @results-gap - @results-sidebar-width) @results-sidebar-width;\n\n #backToTop {\n .ltr-left(calc(50% - @results-sidebar-width - @results-gap + 1rem + var(--center-page-width) / 2));\n }\n }\n\n .result .content {\n max-width: inherit;\n }\n }\n\n // from style.less (when screen width = @tablet, reset layout from tablet)\n #urls {\n .ltr-margin-left(0);\n }\n\n #sidebar {\n .ltr-margin-right(0);\n }\n }\n}\n","/*\n* SearXNG, A privacy-respecting, hackable metasearch engine\n*\n* To convert \"style.less\" to \"style.css\" run: $make styles\n*/\n\n// stylelint-disable no-descending-specificity\n\n@import (inline) \"../../node_modules/normalize.css/normalize.css\";\n@import \"definitions.less\";\n@import \"mixins.less\";\n@import \"code.less\";\n@import \"toolkit.less\";\n@import \"autocomplete.less\";\n@import \"detail.less\";\n@import \"animations.less\";\n@import \"embedded.less\";\n@import \"info.less\";\n@import \"new_issue.less\";\n@import \"stats.less\";\n@import \"result_templates.less\";\n\n// for index.html template\n@import \"index.less\";\n\n// for preferences.html template\n@import \"preferences.less\";\n\n// Search-Field\n@import \"search.less\";\n\n// to center the results\n@import \"style-center.less\";\n\n// ion-icon\n.ion-icon {\n display: inline-block;\n vertical-align: bottom;\n line-height: 1;\n text-decoration: inherit;\n .ltr-transform();\n}\n\n.ion-icon-small {\n width: 1rem;\n height: 1rem;\n .ion-icon;\n}\n\n.ion-icon-big {\n width: 1.5rem;\n height: 1.5rem;\n .ion-icon;\n}\n\n// Main LESS-Code\nhtml {\n font-family: sans-serif;\n font-size: 0.9em;\n .text-size-adjust;\n\n color: var(--color-base-font);\n background-color: var(--color-base-background);\n padding: 0;\n margin: 0;\n}\n\nbody,\nmain {\n padding: 0;\n margin: 0;\n}\n\nbody {\n display: flex;\n flex-direction: column;\n height: 100vh;\n margin: 0;\n}\n\nmain {\n width: 100%;\n margin-bottom: 2rem;\n flex: 1;\n}\n\n.page_with_header {\n margin: 2em auto;\n width: 85em;\n}\n\nfooter {\n clear: both;\n min-height: 4rem;\n padding: 1rem 0;\n width: 100%;\n text-align: center;\n background-color: var(--color-footer-background);\n border-top: 1px solid var(--color-footer-border);\n overflow: hidden;\n\n p {\n font-size: 0.9em;\n }\n}\n\n.page_with_header .logo {\n height: 40px;\n}\n\ninput[type=\"submit\"],\n#results button[type=\"submit\"] {\n padding: 0.7rem;\n display: inline-block;\n background: var(--color-btn-background);\n color: var(--color-btn-font);\n .rounded-corners;\n\n border: 0;\n cursor: pointer;\n}\n\na {\n text-decoration: none;\n color: var(--color-url-font);\n\n &:visited {\n color: var(--color-url-visited-font);\n\n .highlight {\n color: var(--color-url-visited-font);\n }\n }\n}\n\narticle[data-vim-selected] {\n background: var(--color-result-vim-selected);\n .ltr-border-left(0.2rem solid var(--color-result-vim-arrow));\n .ltr-rounded-right-corners(10px);\n}\n\narticle.result-images[data-vim-selected] {\n background: var(--color-result-vim-arrow);\n border: none;\n .rounded-corners;\n\n .image_thumbnail {\n filter: opacity(60%);\n }\n\n span.title,\n span.source {\n color: var(--color-result-image-span-font-selected);\n }\n}\n\narticle[data-vim-selected].category-videos,\narticle[data-vim-selected].category-news,\narticle[data-vim-selected].category-map,\narticle[data-vim-selected].category-music,\narticle[data-vim-selected].category-files,\narticle[data-vim-selected].category-social {\n border: 1px solid var(--color-result-vim-arrow);\n .rounded-corners;\n}\n\n.result {\n margin: @results-margin 0;\n padding: @result-padding;\n .ltr-border-left(0.2rem solid transparent);\n\n h3 {\n font-size: 1.2rem;\n word-wrap: break-word;\n margin: 0.4rem 0 0.4rem 0;\n padding: 0;\n\n a {\n color: var(--color-result-link-font);\n font-weight: normal;\n font-size: 1.1em;\n\n &:visited {\n color: var(--color-result-link-visited-font);\n }\n\n &:focus,\n &:hover {\n text-decoration: underline;\n border: none;\n outline: none;\n }\n }\n }\n\n .cache_link,\n .proxyfied_link {\n font-size: 0.9em !important;\n }\n\n .content,\n .stat {\n font-size: 0.9em;\n margin: 0;\n padding: 0;\n max-width: 54em;\n word-wrap: break-word;\n line-height: 1.24;\n\n .highlight {\n color: var(--color-result-description-highlight-font);\n background: inherit;\n font-weight: bold;\n }\n }\n\n .altlink a {\n font-size: 0.9em;\n margin: 0 10px 0 0;\n .show-content-button;\n }\n\n .codelines {\n .highlight {\n color: inherit;\n background: inherit;\n font-weight: normal;\n }\n }\n\n .url_wrapper {\n display: flex;\n font-size: 1rem;\n color: var(--color-result-url-font);\n flex-wrap: nowrap;\n overflow: hidden;\n flex-direction: row;\n margin: 0;\n padding: 0;\n\n .url_o1 {\n white-space: nowrap;\n flex-shrink: 1;\n }\n\n .url_o1::after {\n content: \" \";\n width: 1ch;\n display: inline-block;\n }\n\n .url_o2 {\n overflow: hidden;\n white-space: nowrap;\n flex-basis: content;\n flex-grow: 0;\n flex-shrink: 1;\n text-align: right;\n\n .url_i2 {\n float: right;\n }\n }\n }\n\n .published_date,\n .result_length,\n .result_author,\n .result_shipping,\n .result_source_country {\n font-size: 0.8em;\n color: var(--color-result-publishdate-font);\n }\n\n .result_price {\n font-size: 1.2em;\n color: var(--color-result-description-highlight-font);\n }\n\n img {\n &.thumbnail {\n .ltr-float-left();\n padding-top: 0.6rem;\n .ltr-padding-right(1rem);\n width: 20rem;\n height: unset; // remove heigth value that was needed for lazy loading\n }\n\n &.image {\n .ltr-float-left();\n padding-top: 0.6rem;\n .ltr-padding-right(1rem);\n width: 7rem;\n max-height: 7rem;\n object-fit: scale-down;\n object-position: right top;\n }\n }\n\n .break {\n clear: both;\n }\n}\n\n.template_group_images {\n display: flex;\n flex-wrap: wrap;\n}\n\n.template_group_images::after {\n flex-grow: 10;\n content: \"\";\n}\n\n.category-videos,\n.category-news,\n.category-map,\n.category-music,\n.category-files,\n.category-social {\n border: 1px solid var(--color-result-border);\n margin: 1rem @results-tablet-offset 0 @results-tablet-offset !important;\n .rounded-corners;\n}\n\n.category-social .image {\n width: auto !important;\n min-width: 48px;\n min-height: 48px;\n padding: 0 5px 25px 0 !important;\n}\n\n.audio-control audio {\n width: 100%;\n padding: 10px 0 0 0;\n}\n\n.embedded-content iframe {\n width: 100%;\n padding: 10px 0 0 0;\n}\n\n.result-videos .content {\n overflow: hidden;\n}\n\n.result-videos .embedded-video iframe {\n width: 100%;\n aspect-ratio: 16 / 9;\n padding: 10px 0 0 0;\n}\n\n@supports not (aspect-ratio: 1 / 1) {\n // support older browsers which do not have aspect-ratio\n // https://caniuse.com/?search=aspect-ratio\n .result-videos .embedded-video iframe {\n height: calc(@results-width * 9 / 16);\n }\n}\n\n.engines {\n .ltr-float-right();\n color: var(--color-result-engines-font);\n\n span {\n font-size: smaller;\n margin-top: 0;\n margin-bottom: 0;\n .ltr-margin-right(0.5rem);\n .ltr-margin-left(0);\n }\n}\n\n.small_font {\n font-size: 0.8em;\n}\n\n.highlight {\n color: var(--color-result-link-font-highlight);\n background: inherit;\n}\n\n.empty_element {\n font-style: italic;\n}\n\n.result-images {\n flex-grow: 1;\n padding: 0.5rem 0.5rem 3rem 0.5rem;\n margin: 0.25rem;\n border: none !important;\n height: @results-image-row-height;\n\n & > a {\n position: relative;\n }\n\n img {\n margin: 0;\n padding: 0;\n border: none;\n height: 100%;\n width: 100%;\n object-fit: cover;\n vertical-align: bottom;\n background: var(--color-result-image-background);\n }\n\n span.title,\n span.source {\n display: block;\n position: absolute;\n\n width: 100%;\n font-size: 0.9rem;\n color: var(--color-result-image-span-font);\n padding: 0.5rem 0 0 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n\n span.source {\n padding: 1.8rem 0 0 0;\n font-size: 0.7rem;\n }\n}\n\n.result-map {\n img.image {\n .ltr-float-right() !important;\n height: 100px !important;\n width: auto !important;\n }\n\n table {\n font-size: 0.9em;\n width: auto;\n border-collapse: separate;\n border-spacing: 0 0.35rem;\n\n th {\n font-weight: inherit;\n width: 17rem;\n vertical-align: top;\n .ltr-text-align-left();\n }\n\n td {\n vertical-align: top;\n .ltr-text-align-left();\n }\n }\n}\n\n.hidden {\n display: none !important;\n}\n\n#results {\n margin-top: 1rem;\n .ltr-margin-right(2rem);\n margin-bottom: 0;\n .ltr-margin-left(@results-offset);\n display: grid;\n grid-template-columns: @results-width @results-sidebar-width;\n grid-template-rows: min-content min-content 1fr min-content;\n gap: 0 @results-gap;\n grid-template-areas:\n \"corrections sidebar\"\n \"answers sidebar\"\n \"urls sidebar\"\n \"pagination sidebar\";\n}\n\n#results #sidebar *:first-child,\n#results #urls *:first-child {\n margin-top: 0;\n}\n\n#urls {\n padding: 0;\n grid-area: urls;\n}\n\n#suggestions {\n .wrapper {\n display: flex;\n flex-flow: row wrap;\n justify-content: flex-end;\n\n form {\n display: inline-block;\n flex: 1 1 50%;\n }\n }\n}\n\n#suggestions,\n#infoboxes {\n input {\n padding: 0;\n margin: 3px;\n font-size: 0.9em;\n display: inline-block;\n background: transparent;\n color: var(--color-result-search-url-font);\n cursor: pointer;\n }\n\n input[type=\"submit\"],\n .infobox .url a {\n color: var(--color-result-link-font);\n text-decoration: none;\n font-size: 0.9rem;\n\n &:hover {\n text-decoration: underline;\n }\n }\n}\n\n#corrections {\n grid-area: corrections;\n display: flex;\n flex-flow: row wrap;\n margin: 0 0 1em 0;\n\n h4,\n input[type=\"submit\"] {\n display: inline-block;\n padding: 0.5rem;\n margin: 0.5rem;\n }\n\n input[type=\"submit\"] {\n font-size: 0.8rem;\n .rounded-corners-tiny;\n }\n}\n\n#suggestions .title,\n#search_url .title,\n#apis .title {\n margin: 2em 0 0.5em 0;\n color: var(--color-base-font);\n}\n\n#answers {\n grid-area: answers;\n background: var(--color-answer-background);\n padding: @result-padding;\n margin: 1rem 0;\n margin-top: 0;\n color: var(--color-answer-font);\n .rounded-corners;\n\n h4 {\n display: none;\n }\n\n span {\n overflow-wrap: anywhere;\n }\n}\n\n#infoboxes {\n form {\n min-width: 210px;\n }\n}\n\n#sidebar {\n grid-area: sidebar;\n word-wrap: break-word;\n color: var(--color-sidebar-font);\n\n .infobox {\n margin: 10px 0 10px;\n border: 1px solid var(--color-sidebar-border);\n padding: 1rem;\n font-size: 0.9em;\n .rounded-corners;\n\n h2 {\n margin: 0 0 0.5em 0;\n }\n\n img {\n max-width: 100%;\n max-height: 12em;\n display: block;\n margin: 0 auto;\n padding: 0;\n }\n\n dt {\n font-weight: bold;\n }\n\n .attributes {\n dl {\n margin: 0.5em 0;\n }\n\n dt {\n display: inline;\n margin-top: 0.5em;\n .ltr-margin-right(0.25em);\n margin-bottom: 0.5em;\n .ltr-margin-left(0);\n padding: 0;\n }\n\n dd {\n display: inline;\n margin: 0.5em 0;\n padding: 0;\n }\n }\n\n input {\n font-size: 1em;\n }\n\n br {\n clear: both;\n }\n\n .attributes,\n .urls {\n clear: both;\n }\n }\n}\n\n#search_url {\n margin-top: 8px;\n\n div.selectable_url {\n pre {\n width: 200em;\n }\n }\n}\n\n#links_on_top {\n position: absolute;\n .ltr-right(1.8rem);\n .ltr-text-align-right();\n top: 2.2rem;\n padding: 0;\n border: 0;\n display: flex;\n align-items: center;\n font-size: 1em;\n color: var(--color-search-font);\n\n a {\n display: flex;\n align-items: center;\n margin-left: 1em;\n\n svg {\n font-size: 1.2em;\n .ltr-margin-right(0.125em);\n }\n }\n\n a,\n a:link *,\n a:hover *,\n a:visited *,\n a:active * {\n color: var(--color-search-font);\n }\n}\n\n#pagination {\n grid-area: pagination;\n\n br {\n clear: both;\n }\n}\n\n#apis {\n margin-top: 8px;\n clear: both;\n}\n\n#backToTop {\n border: 1px solid var(--color-backtotop-border);\n margin: 0;\n padding: 0;\n font-size: 1em;\n background: var(--color-backtotop-background);\n position: fixed;\n bottom: 8rem;\n .ltr-left(@results-width + @results-offset + (0.5 * @results-gap - 1.2em));\n transition: opacity 0.5s;\n opacity: 0;\n .rounded-corners;\n\n a {\n display: block;\n margin: 0;\n padding: 0.7em;\n }\n\n a,\n a:visited,\n a:hover,\n a:active {\n color: var(--color-backtotop-font);\n }\n}\n\n#results.scrolling #backToTop {\n opacity: 1;\n}\n\n/*\n tablet layout\n*/\n\n.results-tablet() {\n #links_on_top {\n span {\n display: none;\n }\n }\n\n .page_with_header {\n margin: 2rem 0.5rem;\n width: auto;\n }\n\n #infoboxes {\n position: inherit;\n max-width: inherit;\n\n .infobox {\n clear: both;\n\n img {\n .ltr-float-left();\n max-width: 10em;\n margin-top: 0.5em;\n .ltr-margin-right(0.5em);\n margin-bottom: 0.5em;\n .ltr-margin-left(0);\n }\n }\n }\n\n #sidebar {\n margin: 0 @results-tablet-offset @results-margin @results-tablet-offset;\n padding: 0;\n float: none;\n border: none;\n width: auto;\n\n input {\n border: 0;\n }\n }\n\n #apis {\n display: none;\n }\n\n #search_url {\n display: none;\n }\n\n .result {\n .thumbnail {\n max-width: 98%;\n }\n\n .url {\n span.url {\n display: block;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 100%;\n }\n }\n\n .engines {\n .ltr-float-right();\n padding: 0 0 3px 0;\n }\n }\n\n .result-images {\n border-bottom: none !important;\n }\n\n .image_result {\n max-width: 98%;\n\n img {\n max-width: 98%;\n }\n }\n\n #backToTop {\n display: none;\n }\n\n #pagination {\n margin: 2rem 0 0 0 !important;\n }\n\n #main_results div#results {\n margin: 1rem auto 0 auto;\n justify-content: center;\n display: grid;\n grid-template-columns: @results-width;\n grid-template-rows: min-content min-content min-content 1fr min-content min-content;\n gap: 0;\n grid-template-areas:\n \"corrections\"\n \"answers\"\n \"sidebar\"\n \"urls\"\n \"pagination\";\n }\n}\n\n@media screen and (max-width: calc(@tablet - 0.5px)) {\n #links_on_top {\n span {\n display: none;\n }\n }\n}\n\n@media screen and (max-width: 52rem) {\n body.results_endpoint {\n #links_on_top {\n .link_on_top_about,\n .link_on_top_donate {\n display: none;\n }\n }\n }\n}\n\n@media screen and (min-width: @phone) and (max-width: @tablet) {\n // when .center-aligment-yes, see style-center.less\n // the media query includes \"min-width: @phone\"\n // because the phone layout includes the tablet layout unconditionally.\n .center-aligment-no {\n .results-tablet();\n }\n}\n\n/* Misc */\n\n#main_results div#results.only_template_images {\n margin: 1rem @results-tablet-offset 0 @results-tablet-offset;\n display: grid;\n grid-template-columns: 100%;\n grid-template-rows: min-content min-content min-content 1fr min-content;\n gap: 0;\n grid-template-areas:\n \"corrections\"\n \"answers\"\n \"sidebar\"\n \"urls\"\n \"pagination\";\n\n #sidebar {\n display: none;\n }\n\n #urls {\n margin: 0;\n display: flex;\n flex-wrap: wrap;\n }\n\n #urls::after {\n flex-grow: 10;\n content: \"\";\n }\n\n #backToTop {\n .ltr-left(auto);\n .ltr-right(1rem);\n }\n\n #pagination {\n .ltr-margin-right(4rem);\n }\n}\n\n/*\n phone layout\n*/\n\n@media screen and (max-width: @phone) {\n // based on the tablet layout\n .results-tablet();\n\n html {\n background-color: var(--color-base-background-mobile);\n }\n\n #main_results div#results {\n grid-template-columns: 100%;\n margin: 1rem 0 0 0;\n }\n\n #links_on_top {\n top: 0.8rem;\n .ltr-right(0.7rem);\n }\n\n #main_index #links_on_top {\n top: 0.5rem;\n .ltr-right(0.5rem);\n }\n\n #results {\n margin: 0;\n padding: 0;\n }\n\n #pagination {\n margin: 2rem 1rem 0 1rem !important;\n }\n\n article[data-vim-selected] {\n border: 1px solid var(--color-result-vim-arrow);\n .rounded-corners;\n }\n\n .result {\n background: var(--color-result-background);\n margin: 1rem 0;\n }\n\n .result-images {\n margin: 0;\n height: @results-image-row-height-phone;\n background: var(--color-base-background-mobile);\n }\n\n .infobox {\n border: none !important;\n background-color: var(--color-sidebar-background);\n }\n}\n\n/*\n small-phone layout\n*/\n\n@media screen and (max-width: @small-phone) {\n .result-videos {\n img.thumbnail {\n float: none !important;\n }\n\n .content {\n overflow: inherit;\n }\n }\n}\n\npre code {\n white-space: pre-wrap;\n}\n"]} \ No newline at end of file
diff --git a/searx/static/themes/simple/css/searxng.min.css.map b/searx/static/themes/simple/css/searxng.min.css.map
index fca74abfb..ad344d144 100644
--- a/searx/static/themes/simple/css/searxng.min.css.map
+++ b/searx/static/themes/simple/css/searxng.min.css.map
@@ -1 +1 @@
-{"version":3,"sources":["node_modules/normalize.css/normalize.css","src/less/definitions.less","src/less/code.less","src/generated/pygments.less","src/less/toolkit.less","src/less/mixins.less","src/less/style-ltr.less","src/less/autocomplete.less","src/less/detail.less","src/less/animations.less","src/less/embedded.less","src/less/info.less","src/less/new_issue.less","src/less/stats.less","src/less/result_templates.less","src/less/index.less","src/less/preferences.less","src/less/search.less","src/less/style-center.less","src/less/style.less"],"names":[],"mappings":"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,aAGF,eACE,OAAA,IAAA,MAAA,QACA,OAAA,IAAA,EAGF,kBACE,OAAA,IAAA,MAAA,QACA,OAAA,IAAA,EACA,MAAA,KAGF,kBACE,OAAA,IAAA,MAAA,QACA,OAAA,IAAA,EACA,MAAA,KAGF,MACE,MAAA,EACA,OAAA,EV/FD,MUsGG,MAAA,GVtGH,MUsGG,MAAA,GVtGH,MUsGG,MAAA,GVtGH,MUsGG,MAAA,GVtGH,MUsGG,MAAA,GVtGH,MUsGG,MAAA,GVtGH,MUsGG,MAAA,GVtGH,MUsGG,MAAA,GVtGH,MUsGG,MAAA,GVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,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","sourcesContent":["/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n\n/* Document\n ========================================================================== */\n\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\n\nhtml {\n line-height: 1.15; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n\n/**\n * Remove the margin in all browsers.\n */\n\nbody {\n margin: 0;\n}\n\n/**\n * Render the `main` element consistently in IE.\n */\n\nmain {\n display: block;\n}\n\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\n\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n/* Grouping content\n ========================================================================== */\n\n/**\n * 1. Add the correct box sizing in Firefox.\n * 2. Show the overflow in Edge and IE.\n */\n\nhr {\n box-sizing: content-box; /* 1 */\n height: 0; /* 1 */\n overflow: visible; /* 2 */\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\npre {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n\n/**\n * Remove the gray background on active links in IE 10.\n */\n\na {\n background-color: transparent;\n}\n\n/**\n * 1. Remove the bottom border in Chrome 57-\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n */\n\nabbr[title] {\n border-bottom: none; /* 1 */\n text-decoration: underline; /* 2 */\n text-decoration: underline dotted; /* 2 */\n}\n\n/**\n * Add the correct font weight in Chrome, Edge, and Safari.\n */\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\ncode,\nkbd,\nsamp {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/**\n * Add the correct font size in all browsers.\n */\n\nsmall {\n font-size: 80%;\n}\n\n/**\n * Prevent `sub` and `sup` elements from affecting the line height in\n * all browsers.\n */\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/* Embedded content\n ========================================================================== */\n\n/**\n * Remove the border on images inside links in IE 10.\n */\n\nimg {\n border-style: none;\n}\n\n/* Forms\n ========================================================================== */\n\n/**\n * 1. Change the font styles in all browsers.\n * 2. Remove the margin in Firefox and Safari.\n */\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n margin: 0; /* 2 */\n}\n\n/**\n * Show the overflow in IE.\n * 1. Show the overflow in Edge.\n */\n\nbutton,\ninput { /* 1 */\n overflow: visible;\n}\n\n/**\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\n * 1. Remove the inheritance of text transform in Firefox.\n */\n\nbutton,\nselect { /* 1 */\n text-transform: none;\n}\n\n/**\n * Correct the inability to style clickable types in iOS and Safari.\n */\n\nbutton,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button;\n}\n\n/**\n * Remove the inner border and padding in Firefox.\n */\n\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n}\n\n/**\n * Restore the focus styles unset by the previous rule.\n */\n\nbutton:-moz-focusring,\n[type=\"button\"]:-moz-focusring,\n[type=\"reset\"]:-moz-focusring,\n[type=\"submit\"]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n * Correct the padding in Firefox.\n */\n\nfieldset {\n padding: 0.35em 0.75em 0.625em;\n}\n\n/**\n * 1. Correct the text wrapping in Edge and IE.\n * 2. Correct the color inheritance from `fieldset` elements in IE.\n * 3. Remove the padding so developers are not caught out when they zero out\n * `fieldset` elements in all browsers.\n */\n\nlegend {\n box-sizing: border-box; /* 1 */\n color: inherit; /* 2 */\n display: table; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n white-space: normal; /* 1 */\n}\n\n/**\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\n */\n\nprogress {\n vertical-align: baseline;\n}\n\n/**\n * Remove the default vertical scrollbar in IE 10+.\n */\n\ntextarea {\n overflow: auto;\n}\n\n/**\n * 1. Add the correct box sizing in IE 10.\n * 2. Remove the padding in IE 10.\n */\n\n[type=\"checkbox\"],\n[type=\"radio\"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n * Correct the cursor style of increment and decrement buttons in Chrome.\n */\n\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n * 1. Correct the odd appearance in Chrome and Safari.\n * 2. Correct the outline style in Safari.\n */\n\n[type=\"search\"] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/**\n * Remove the inner padding in Chrome and Safari on macOS.\n */\n\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n * 1. Correct the inability to style clickable types in iOS and Safari.\n * 2. Change font properties to `inherit` in Safari.\n */\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/* Interactive\n ========================================================================== */\n\n/*\n * Add the correct display in Edge, IE 10+, and Firefox.\n */\n\ndetails {\n display: block;\n}\n\n/*\n * Add the correct display in all browsers.\n */\n\nsummary {\n display: list-item;\n}\n\n/* Misc\n ========================================================================== */\n\n/**\n * Add the correct display in IE 10+.\n */\n\ntemplate {\n display: none;\n}\n\n/**\n * Add the correct display in IE 10.\n */\n\n[hidden] {\n display: none;\n}\n","/*\n * SearXNG, A privacy-respecting, hackable metasearch engine\n *\n * To change the colors of the site, simple edit this variables\n */\n\n/// Light Theme\n:root {\n /// Base Colors\n --color-base-font: #444;\n --color-base-font-rgb: 68, 68, 68;\n --color-base-background: #fff;\n --color-base-background-mobile: #f2f5f8;\n --color-url-font: #334999;\n --color-url-visited-font: #9822c3;\n /// Header Colors\n --color-header-background: #fdfbff;\n --color-header-border: #ddd;\n /// Footer Colors\n --color-footer-background: #fdfbff;\n --color-footer-border: #ddd;\n /// Sidebar Colors\n --color-sidebar-border: #ddd;\n --color-sidebar-font: #000;\n --color-sidebar-background: #fff;\n /// BackToTop Colors\n --color-backtotop-font: #444;\n --color-backtotop-border: #ddd;\n --color-backtotop-background: #fff;\n /// Button Colors\n --color-btn-background: #3050ff;\n --color-btn-font: #fff;\n --color-show-btn-background: #bbb;\n --color-show-btn-font: #000;\n /// Search Input Colors\n --color-search-border: #bbb;\n --color-search-shadow: 0 2px 8px rgb(34 38 46 / 25%);\n --color-search-background: #fff;\n --color-search-font: #222;\n --color-search-background-hover: #3050ff;\n /// Modal Colors\n --color-error: #db3434;\n --color-error-background: lighten(#db3434, 40%);\n --color-warning: #dbba34;\n --color-warning-background: lighten(#dbba34, 40%);\n --color-success: #42db34;\n --color-success-background: lighten(#42db34, 40%);\n /// Categories Colors\n --color-categories-item-selected-font: #3050ff;\n --color-categories-item-border-selected: #3050ff;\n /// Autocomplete Colors\n --color-autocomplete-font: #000;\n --color-autocomplete-border: #bbb;\n --color-autocomplete-shadow: 0 2px 8px rgb(34 38 46 / 25%);\n --color-autocomplete-background: #fff;\n --color-autocomplete-background-hover: #e3e3e3;\n /// Answer Colors\n --color-answer-font: #444; // same as --color-base-font\n --color-answer-background: #fff;\n /// Results Colors\n --color-result-background: #fff;\n --color-result-border: #ddd;\n --color-result-url-font: #000;\n --color-result-vim-selected: #f7f7f7;\n --color-result-vim-arrow: #000bbb;\n --color-result-description-highlight-font: #000;\n --color-result-link-font: #000bbb;\n --color-result-link-font-highlight: #000bbb;\n --color-result-link-visited-font: #9822c3;\n --color-result-publishdate-font: #777;\n --color-result-engines-font: #545454;\n --color-result-search-url-border: #ddd;\n --color-result-search-url-font: #000;\n // Images Colors\n --color-result-image-span-font: #444;\n --color-result-image-span-font-selected: #fff;\n --color-result-image-background: #fff;\n /// Settings Colors\n --color-settings-tr-hover: #ebebeb;\n --color-settings-engine-description-font: #545454;\n --color-settings-engine-group-background: #0001;\n /// Detail modal\n --color-result-detail-font: #fff;\n --color-result-detail-label-font: lightgray;\n --color-result-detail-background: #242424;\n --color-result-detail-hr: #555;\n --color-result-detail-link: #8af;\n --color-result-detail-loader-border: rgba(255, 255, 255, 0.2);\n --color-result-detail-loader-borderleft: rgba(0, 0, 0, 0);\n /// Toolkit Colors\n --color-toolkit-badge-font: #fff;\n --color-toolkit-badge-background: #545454;\n --color-toolkit-kbd-font: #fff;\n --color-toolkit-kbd-background: #000;\n --color-toolkit-dialog-border: #ddd;\n --color-toolkit-dialog-background: #fff;\n --color-toolkit-tabs-label-border: #fff;\n --color-toolkit-tabs-section-border: #ddd;\n --color-toolkit-select-background: #e1e1e1;\n --color-toolkit-select-border: #ddd;\n --color-toolkit-select-background-hover: #bbb;\n --color-toolkit-input-text-font: #222;\n --color-toolkit-checkbox-onoff-off-background: #ddd;\n --color-toolkit-checkbox-onoff-on-background: #ddd;\n --color-toolkit-checkbox-onoff-on-mark-background: #3050ff;\n --color-toolkit-checkbox-onoff-on-mark-color: #fff;\n --color-toolkit-checkbox-onoff-off-mark-background: #aaa;\n --color-toolkit-checkbox-onoff-off-mark-color: #fff;\n --color-toolkit-checkbox-label-background: #ddd;\n --color-toolkit-checkbox-label-border: #ddd;\n --color-toolkit-checkbox-input-border: #3050ff;\n --color-toolkit-engine-tooltip-border: #ddd;\n --color-toolkit-engine-tooltip-background: #fff;\n --color-toolkit-loader-border: rgba(0, 0, 0, 0.2);\n --color-toolkit-loader-borderleft: rgba(255, 255, 255, 0);\n --color-doc-code: #300;\n --color-doc-code-background: #fdd;\n}\n\n.dark-themes() {\n /// Base Colors\n --color-base-font: #bbb;\n --color-base-font-rgb: 187, 187, 187;\n --color-base-background: #222428;\n --color-base-background-mobile: #222428;\n --color-url-font: #8af;\n --color-url-visited-font: #c09cd9;\n /// Header Colors\n --color-header-background: #1e1e22;\n --color-header-border: #333;\n /// Footer Colors\n --color-footer-background: #1e1e22;\n --color-footer-border: #333;\n /// Sidebar Colors\n --color-sidebar-border: #555;\n --color-sidebar-font: #fff;\n --color-sidebar-background: #292c34;\n /// BackToTop Colors\n --color-backtotop-font: #bbb;\n --color-backtotop-border: #333;\n --color-backtotop-background: #2b2e36;\n /// Button Colors\n --color-btn-background: #58f;\n --color-btn-font: #222;\n --color-show-btn-background: #555;\n --color-show-btn-font: #fff;\n /// Search Input Colors\n --color-search-border: #555;\n --color-search-shadow: 0 2px 8px rgb(34 38 46 / 25%);\n --color-search-background: #2b2e36;\n --color-search-font: #fff;\n --color-search-background-hover: #58f;\n /// Modal Colors\n --color-error: #f55b5b;\n --color-error-background: darken(#db3434, 40%);\n --color-warning: #f1d561;\n --color-warning-background: darken(#dbba34, 40%);\n --color-success: #79f56e;\n --color-success-background: darken(#42db34, 40%);\n /// Categories Colors\n --color-categories-item-selected-font: #58f;\n --color-categories-item-border-selected: #58f;\n /// Autocomplete Colors\n --color-autocomplete-font: #fff;\n --color-autocomplete-border: #555;\n --color-autocomplete-shadow: 0 2px 8px rgb(34 38 46 / 25%);\n --color-autocomplete-background: #2b2e36;\n --color-autocomplete-background-hover: #1e1e22;\n /// Answer Colors\n --color-answer-font: #bbb; // same as --color-base-font\n --color-answer-background: #26292f;\n /// Results Colors\n --color-result-background: #26292f;\n --color-result-border: #333;\n --color-result-url-font: #fff;\n --color-result-vim-selected: #1f1f23cc;\n --color-result-vim-arrow: #8af;\n --color-result-description-highlight-font: #fff;\n --color-result-link-font: #8af;\n --color-result-link-font-highlight: #8af;\n --color-result-link-visited-font: #c09cd9;\n --color-result-publishdate-font: #888;\n --color-result-engines-font: #a4a4a4;\n --color-result-search-url-border: #555;\n --color-result-search-url-font: #fff;\n /// Detail modal : same as the light version\n --color-result-detail-font: #fff;\n --color-result-detail-label-font: lightgray;\n --color-result-detail-background: #1a1a1c;\n --color-result-detail-hr: #555;\n --color-result-detail-link: #8af;\n --color-result-detail-loader-border: rgba(255, 255, 255, 0.2);\n --color-result-detail-loader-borderleft: rgba(0, 0, 0, 0);\n // Images Colors\n --color-result-image-span-font: #bbb;\n --color-result-image-span-font-selected: #222;\n --color-result-image-background: #222;\n /// Settings Colors\n --color-settings-tr-hover: #2c2c32;\n --color-settings-engine-description-font: darken(#dcdcdc, 30%);\n --color-settings-engine-group-background: #1b1b21;\n /// Toolkit Colors\n --color-toolkit-badge-font: #fff;\n --color-toolkit-badge-background: #555;\n --color-toolkit-kbd-font: #000;\n --color-toolkit-kbd-background: #fff;\n --color-toolkit-dialog-border: #555;\n --color-toolkit-dialog-background: #1e1e22;\n --color-toolkit-tabs-label-border: #222;\n --color-toolkit-tabs-section-border: #555;\n --color-toolkit-select-background: #313338;\n --color-toolkit-select-border: #555;\n --color-toolkit-select-background-hover: #373b49;\n --color-toolkit-input-text-font: #fff;\n --color-toolkit-checkbox-onoff-off-background: #313338;\n --color-toolkit-checkbox-onoff-on-background: #313338;\n --color-toolkit-checkbox-onoff-on-mark-background: #58f;\n --color-toolkit-checkbox-onoff-on-mark-color: #222;\n --color-toolkit-checkbox-onoff-off-mark-background: #ddd;\n --color-toolkit-checkbox-onoff-off-mark-color: #222;\n --color-toolkit-checkbox-label-background: #222;\n --color-toolkit-checkbox-label-border: #333;\n --color-toolkit-checkbox-input-border: #58f;\n --color-toolkit-engine-tooltip-border: #333;\n --color-toolkit-engine-tooltip-background: #222;\n --color-toolkit-loader-border: rgba(255, 255, 255, 0.2);\n --color-toolkit-loader-borderleft: rgba(0, 0, 0, 0);\n --color-doc-code: #fdd;\n --color-doc-code-background: #300;\n}\n\n/// Dark Theme (autoswitch based on device pref)\n@media (prefers-color-scheme: dark) {\n :root.theme-auto {\n .dark-themes();\n }\n}\n\n// Dark Theme by preferences\n:root.theme-dark {\n .dark-themes();\n}\n\n/// General Size\n@results-width: 45rem;\n@results-sidebar-width: 25rem;\n@results-offset: 10rem;\n@results-tablet-offset: 0.5rem;\n@results-gap: 5rem;\n@results-margin: 0.125rem;\n@result-padding: 1rem;\n@results-image-row-height: 12rem;\n@results-image-row-height-phone: 6rem;\n@search-width: 44rem;\n// heigh of #search, see detail.less\n@search-height: 7.6rem;\n\n/// Device Size\n/// @desktop > @tablet\n@tablet: 79.75em; // see https://github.com/searxng/searxng/issues/874\n@phone: 50em;\n@small-phone: 35em;\n@ultra-small-phone: 20rem;\n\n/// From style.less\n@stacked-bar-chart: rgb(0, 0, 0);\n\n/// Load fonts from this directory.\n@icon-font-path: \"../../../fonts/\";\n//** File name for all font files.\n@icon-font-name: \"glyphicons-halflings-regular\";\n//** Element ID within SVG icon file.\n@icon-font-svg-id: \"glyphicons_halflingsregular\";\n\n// decoration of the select HTML elements\n@select-light-svg-path: \"../svg/select-light.svg\";\n@select-dark-svg-path: \"../svg/select-dark.svg\";\n",".code-highlight pre {\n overflow: auto;\n background-color: inherit;\n color: inherit;\n border: inherit;\n}\n\n// stylelint-disable no-invalid-position-at-import-rule\n@import \"../generated/pygments.less\";\n","/*\n this file is generated automatically by searxng_extra/update/update_pygments.py\n using pygments version 2.12.0\n*/\n\n.code-highlight .linenos {\n -webkit-touch-callout: none;\n -webkit-user-select: none;\n -khtml-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n cursor: default;\n\n &::selection {\n background: transparent; /* WebKit/Blink Browsers */\n }\n &::-moz-selection {\n background: transparent; /* Gecko Browsers */\n }\n\n margin-right: 8px;\n text-align: right;\n}\n\n.code-highlight pre { line-height: 125%; }\n.code-highlight td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }\n.code-highlight span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }\n.code-highlight td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }\n.code-highlight span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }\n.code-highlight .hll { background-color: #ffffcc }\n.code-highlight { background: #f8f8f8; }\n.code-highlight .c { color: #3D7B7B; font-style: italic } /* Comment */\n.code-highlight .err { border: 1px solid #FF0000 } /* Error */\n.code-highlight .k { color: #008000; font-weight: bold } /* Keyword */\n.code-highlight .o { color: #666666 } /* Operator */\n.code-highlight .ch { color: #3D7B7B; font-style: italic } /* Comment.Hashbang */\n.code-highlight .cm { color: #3D7B7B; font-style: italic } /* Comment.Multiline */\n.code-highlight .cp { color: #9C6500 } /* Comment.Preproc */\n.code-highlight .cpf { color: #3D7B7B; font-style: italic } /* Comment.PreprocFile */\n.code-highlight .c1 { color: #3D7B7B; font-style: italic } /* Comment.Single */\n.code-highlight .cs { color: #3D7B7B; font-style: italic } /* Comment.Special */\n.code-highlight .gd { color: #A00000 } /* Generic.Deleted */\n.code-highlight .ge { font-style: italic } /* Generic.Emph */\n.code-highlight .gr { color: #E40000 } /* Generic.Error */\n.code-highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */\n.code-highlight .gi { color: #008400 } /* Generic.Inserted */\n.code-highlight .go { color: #717171 } /* Generic.Output */\n.code-highlight .gp { color: #000080; font-weight: bold } /* Generic.Prompt */\n.code-highlight .gs { font-weight: bold } /* Generic.Strong */\n.code-highlight .gu { color: #800080; font-weight: bold } /* Generic.Subheading */\n.code-highlight .gt { color: #0044DD } /* Generic.Traceback */\n.code-highlight .kc { color: #008000; font-weight: bold } /* Keyword.Constant */\n.code-highlight .kd { color: #008000; font-weight: bold } /* Keyword.Declaration */\n.code-highlight .kn { color: #008000; font-weight: bold } /* Keyword.Namespace */\n.code-highlight .kp { color: #008000 } /* Keyword.Pseudo */\n.code-highlight .kr { color: #008000; font-weight: bold } /* Keyword.Reserved */\n.code-highlight .kt { color: #B00040 } /* Keyword.Type */\n.code-highlight .m { color: #666666 } /* Literal.Number */\n.code-highlight .s { color: #BA2121 } /* Literal.String */\n.code-highlight .na { color: #687822 } /* Name.Attribute */\n.code-highlight .nb { color: #008000 } /* Name.Builtin */\n.code-highlight .nc { color: #0000FF; font-weight: bold } /* Name.Class */\n.code-highlight .no { color: #880000 } /* Name.Constant */\n.code-highlight .nd { color: #AA22FF } /* Name.Decorator */\n.code-highlight .ni { color: #717171; font-weight: bold } /* Name.Entity */\n.code-highlight .ne { color: #CB3F38; font-weight: bold } /* Name.Exception */\n.code-highlight .nf { color: #0000FF } /* Name.Function */\n.code-highlight .nl { color: #767600 } /* Name.Label */\n.code-highlight .nn { color: #0000FF; font-weight: bold } /* Name.Namespace */\n.code-highlight .nt { color: #008000; font-weight: bold } /* Name.Tag */\n.code-highlight .nv { color: #19177C } /* Name.Variable */\n.code-highlight .ow { color: #AA22FF; font-weight: bold } /* Operator.Word */\n.code-highlight .w { color: #bbbbbb } /* Text.Whitespace */\n.code-highlight .mb { color: #666666 } /* Literal.Number.Bin */\n.code-highlight .mf { color: #666666 } /* Literal.Number.Float */\n.code-highlight .mh { color: #666666 } /* Literal.Number.Hex */\n.code-highlight .mi { color: #666666 } /* Literal.Number.Integer */\n.code-highlight .mo { color: #666666 } /* Literal.Number.Oct */\n.code-highlight .sa { color: #BA2121 } /* Literal.String.Affix */\n.code-highlight .sb { color: #BA2121 } /* Literal.String.Backtick */\n.code-highlight .sc { color: #BA2121 } /* Literal.String.Char */\n.code-highlight .dl { color: #BA2121 } /* Literal.String.Delimiter */\n.code-highlight .sd { color: #BA2121; font-style: italic } /* Literal.String.Doc */\n.code-highlight .s2 { color: #BA2121 } /* Literal.String.Double */\n.code-highlight .se { color: #AA5D1F; font-weight: bold } /* Literal.String.Escape */\n.code-highlight .sh { color: #BA2121 } /* Literal.String.Heredoc */\n.code-highlight .si { color: #A45A77; font-weight: bold } /* Literal.String.Interpol */\n.code-highlight .sx { color: #008000 } /* Literal.String.Other */\n.code-highlight .sr { color: #A45A77 } /* Literal.String.Regex */\n.code-highlight .s1 { color: #BA2121 } /* Literal.String.Single */\n.code-highlight .ss { color: #19177C } /* Literal.String.Symbol */\n.code-highlight .bp { color: #008000 } /* Name.Builtin.Pseudo */\n.code-highlight .fm { color: #0000FF } /* Name.Function.Magic */\n.code-highlight .vc { color: #19177C } /* Name.Variable.Class */\n.code-highlight .vg { color: #19177C } /* Name.Variable.Global */\n.code-highlight .vi { color: #19177C } /* Name.Variable.Instance */\n.code-highlight .vm { color: #19177C } /* Name.Variable.Magic */\n.code-highlight .il { color: #666666 } /* Literal.Number.Integer.Long */\n","// other solution : http://stackoverflow.com/questions/1577598/how-to-hide-parts-of-html-when-javascript-is-disabled/13857783#13857783\n\n// stylelint-disable no-descending-specificity\n\nhtml.no-js .hide_if_nojs {\n display: none;\n}\n\nhtml.js .show_if_nojs {\n display: none;\n}\n\n.center {\n text-align: center;\n}\n\n.right {\n float: right;\n}\n\n.left {\n float: left;\n}\n\n.invisible {\n display: none !important;\n}\n\n.list-unstyled {\n list-style-type: none;\n\n li {\n margin-top: 4px;\n margin-bottom: 4px;\n }\n}\n\n.danger {\n background-color: var(--color-error-background);\n}\n\n.warning {\n background: var(--color-warning-background);\n}\n\n.success {\n background: var(--color-success-background);\n}\n\n.badge {\n display: inline-block;\n color: var(--color-toolkit-badge-font);\n background-color: var(--color-toolkit-badge-background);\n text-align: center;\n white-space: nowrap;\n vertical-align: baseline;\n min-width: 10px;\n padding: 1px 5px;\n border-radius: 5px;\n}\n\n// kbd\nkbd {\n padding: 2px 4px;\n margin: 1px;\n font-size: 90%;\n color: var(--color-toolkit-kbd-font);\n background: var(--color-toolkit-kbd-background);\n}\n\n// table\ntable {\n width: 100%;\n\n &.striped {\n tr {\n border-bottom: 1px solid var(--color-settings-tr-hover);\n }\n }\n}\n\nth {\n padding: 0.4em;\n}\n\ntd {\n padding: 0 4px;\n}\n\ntr {\n &:hover {\n background: var(--color-settings-tr-hover) !important;\n }\n}\n\n// pre\n.pre() {\n display: block;\n font-size: 0.8em;\n word-break: break-all;\n margin: 0.1em;\n user-select: all;\n}\n\ndiv.selectable_url {\n display: block;\n border: 1px solid var(--color-result-search-url-border);\n padding: 4px;\n color: var(--color-result-search-url-font);\n margin: 0.1em;\n overflow: hidden;\n height: 1.2em;\n line-height: 1.2em;\n .rounded-corners-tiny;\n\n pre {\n .pre();\n }\n}\n\n// dialog\n.dialog() {\n position: relative;\n display: flex;\n padding: 1rem;\n margin: 0 0 1em 0;\n border: 1px solid var(--color-toolkit-dialog-border);\n .ltr-text-align-left();\n .rounded-corners;\n\n .close {\n .ltr-float-right();\n position: relative;\n top: -3px;\n color: inherit;\n font-size: 1.5em;\n }\n\n ul,\n ol,\n p {\n margin: 1px 0 0 0;\n }\n\n table {\n width: auto;\n }\n\n tr {\n vertical-align: text-top;\n\n &:hover {\n background: transparent !important;\n }\n }\n\n td {\n padding: 0 1em 0 0;\n padding-top: 0;\n .ltr-padding-right(1rem);\n padding-bottom: 0;\n .ltr-padding-left(0);\n }\n\n h4 {\n margin-top: 0.3em;\n margin-bottom: 0.3em;\n }\n}\n\n.dialog-error {\n .dialog();\n\n color: var(--color-error);\n background: var(--color-error-background);\n border-color: var(--color-error);\n}\n\n.dialog-warning {\n .dialog();\n\n color: var(--color-warning);\n background: var(--color-warning-background);\n border-color: var(--color-warning);\n}\n\n.dialog-modal {\n .dialog();\n\n display: block;\n background: var(--color-toolkit-dialog-background);\n position: fixed;\n top: 50%;\n left: 50%;\n margin: 0 auto;\n transform: translate(-50%, -50%);\n z-index: 10000000;\n\n h3 {\n margin-top: 0;\n }\n}\n\n// btn-collapse\n.btn-collapse {\n cursor: pointer;\n}\n\n//\n.scrollx {\n overflow-x: auto;\n overflow-y: hidden;\n display: block;\n padding: 0;\n margin: 0;\n border: none;\n}\n\n/* -- tabs -- */\n.tabs .tabs > label {\n font-size: 90%;\n}\n\nul.tabs {\n border-bottom: 1px solid var(--color-toolkit-tabs-section-border);\n list-style: none;\n padding-left: 0;\n\n li {\n display: flex;\n }\n}\n\n.tabs {\n display: flex;\n flex-wrap: wrap;\n width: 100%;\n min-width: 100%;\n\n & > * {\n order: 2;\n }\n\n & > input[type=radio] {\n display: none;\n }\n\n & > label,\n & > li > a {\n order: 1;\n padding: 0.7em;\n margin: 0 0.7em;\n letter-spacing: 0.5px;\n text-transform: uppercase;\n border: solid var(--color-toolkit-tabs-label-border);\n border-width: 0 0 2px 0;\n color: unset;\n\n .disable-user-select();\n\n cursor: pointer;\n\n &.active {\n border-bottom: 2px solid var(--color-categories-item-border-selected);\n background: var(--color-categories-item-selected);\n color: var(--color-categories-item-selected-font);\n }\n }\n\n & > label:hover,\n & > li > a:hover {\n border-bottom: 2px solid var(--color-categories-item-border-selected);\n }\n\n & > section {\n min-width: 100%;\n padding: 0.7rem 0;\n box-sizing: border-box;\n border-top: 1px solid var(--color-toolkit-tabs-section-border);\n display: none;\n }\n\n // default selection\n & > label:last-of-type {\n border-bottom: 2px solid var(--color-categories-item-border-selected);\n background: var(--color-categories-item-selected);\n color: var(--color-categories-item-selected-font);\n letter-spacing: -0.1px;\n }\n\n & > section:last-of-type {\n display: block;\n }\n}\n\nhtml body .tabs > input:checked {\n ~ section {\n display: none;\n }\n\n ~ label {\n position: inherited;\n background: inherit;\n border-bottom: 2px solid transparent;\n font-weight: normal;\n color: inherit;\n\n &:hover {\n border-bottom: 2px solid var(--color-categories-item-border-selected);\n }\n }\n\n + label {\n border-bottom: 2px solid var(--color-categories-item-border-selected);\n background: var(--color-categories-item-selected);\n color: var(--color-categories-item-selected-font);\n }\n\n + label + section {\n display: block;\n }\n}\n\n/* -- select -- */\nselect {\n height: 2.4rem;\n margin-top: 0;\n .ltr-margin-right(1rem);\n margin-bottom: 0;\n .ltr-margin-left(0);\n padding: 0.2rem !important;\n color: var(--color-search-font);\n font-size: 0.9rem;\n z-index: 2;\n\n &:hover,\n &:focus {\n cursor: pointer;\n }\n}\n\n@supports ((background-position-x: 100%) and ((appearance: none) or (-webkit-appearance: none) or (-moz-appearance: none))) {\n select {\n appearance: none;\n -webkit-appearance: none;\n -moz-appearance: none;\n border-width: 0 2rem 0 0;\n border-color: transparent;\n background: data-uri('image/svg+xml;charset=UTF-8', @select-light-svg-path) no-repeat;\n background-position-x: calc(100% + 2rem);\n background-size: 2rem;\n background-origin: content-box;\n background-color: var(--color-toolkit-select-background);\n outline: medium none;\n text-overflow: ellipsis;\n .rounded-corners-tiny;\n\n &:hover,\n &:focus {\n background-color: var(--color-toolkit-select-background-hover);\n }\n\n option {\n background-color: var(--color-base-background);\n }\n }\n\n @media (prefers-color-scheme: dark) {\n html.theme-auto select,\n html.theme-dark select {\n background-image: data-uri('image/svg+xml;charset=UTF-8', @select-dark-svg-path);\n }\n }\n\n html.theme-dark select {\n background-image: data-uri('image/svg+xml;charset=UTF-8', @select-dark-svg-path);\n }\n}\n\n/* -- checkbox-onoff -- */\ninput.checkbox-onoff[type=\"checkbox\"] {\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n cursor: pointer;\n display: inline-block;\n width: 2.5em;\n height: 0.7em;\n box-shadow: none !important;\n margin: 0 16px;\n border-radius: 10px;\n position: relative;\n\n /* focus & hover */\n &:focus,\n &:hover {\n outline: none;\n }\n\n &:focus::after {\n content: \"\";\n position: absolute;\n width: 3.5em;\n height: 1.65em;\n border: 1px solid var(--color-btn-background);\n border-radius: 12px;\n box-shadow: var(--color-btn-background) 0 0 3px;\n z-index: 10000;\n top: -0.55em;\n left: -0.6em;\n }\n\n &::before {\n position: absolute;\n top: -0.5em;\n display: flex;\n justify-content: center;\n align-items: center;\n font-size: 0.75em;\n width: 1.875em;\n height: 1.875em;\n border-radius: 50%;\n }\n}\n\n/* check mark\nreversed-checkbox displays unchecked checkedboxes as checked, and vice versa.\nsee https://github.com/searxng/searxng/blob/3408d061aab9abc6168fec9bbc6deab71b236dac/searx/templates/simple/preferences.html#L313\n*/\ninput.checkbox-onoff[type=\"checkbox\"],\n.reversed-checkbox input.checkbox-onoff[type=\"checkbox\"]:checked {\n background: var(--color-toolkit-checkbox-onoff-off-background);\n\n &::before {\n left: -0.5em;\n content: \"\\2715\";\n color: var(--color-toolkit-checkbox-onoff-off-mark-color);\n background: var(--color-toolkit-checkbox-onoff-off-mark-background);\n }\n}\n\ninput.checkbox-onoff[type=\"checkbox\"]:checked,\n.reversed-checkbox input.checkbox-onoff[type=\"checkbox\"] {\n background: var(--color-toolkit-checkbox-onoff-on-background);\n\n &::before {\n left: calc(100% - 1.5em);\n content: \"\\2713\";\n color: var(--color-toolkit-checkbox-onoff-on-mark-color);\n background: var(--color-toolkit-checkbox-onoff-on-mark-background);\n }\n}\n\n/* -- checkbox -- */\n@supports (transform: rotate(-45deg)) {\n input[type=checkbox]:not(.checkbox-onoff) {\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n\n width: 20px;\n height: 20px;\n cursor: pointer;\n position: relative;\n top: 0;\n left: 0;\n border: 2px solid var(--color-toolkit-checkbox-input-border);\n .rounded-corners(0.3em);\n\n &::after {\n content: '';\n width: 9px;\n height: 5px;\n position: absolute;\n top: 3px;\n left: 2px;\n border: 3px solid var(--color-toolkit-checkbox-label-border);\n border-top: none;\n border-right: none;\n background: transparent;\n opacity: 0;\n transform: rotate(-45deg);\n }\n\n &:checked::after {\n border-color: var(--color-toolkit-checkbox-input-border);\n opacity: 1;\n }\n }\n\n // disabled : can't be focused, show only the check mark\n input[type=checkbox][disabled]:not(.checkbox-onoff) {\n border: inherit;\n background-color: transparent !important;\n cursor: inherit;\n }\n\n // if not checked and possible to checked then display a \"light\" check mark on hover\n input.checkbox[type=checkbox]:not(:checked):not([disabled]):not(.checkbox-onoff):hover::after {\n opacity: 0.5;\n }\n}\n\n@media screen and (max-width: @phone) {\n .tabs > label {\n width: 100%;\n }\n}\n\n/* -- loader -- */\n.loader,\n.loader::after {\n border-radius: 50%;\n width: 2em;\n height: 2em;\n}\n\n.loader {\n margin: 1em auto;\n font-size: 10px;\n position: relative;\n text-indent: -9999em;\n border-top: 0.5em solid var(--color-toolkit-loader-border);\n border-right: 0.5em solid var(--color-toolkit-loader-border);\n border-bottom: 0.5em solid var(--color-toolkit-loader-border);\n border-left: 0.5em solid var(--color-toolkit-loader-borderleft);\n -webkit-transform: translateZ(0);\n -ms-transform: translateZ(0);\n transform: translateZ(0);\n -webkit-animation: load8 1.2s infinite linear;\n animation: load8 1.2s infinite linear;\n}\n\n@-webkit-keyframes load8 {\n 0% {\n -webkit-transform: rotate(0deg);\n transform: rotate(0deg);\n }\n\n 100% {\n -webkit-transform: rotate(360deg);\n transform: rotate(360deg);\n }\n}\n\n@keyframes load8 {\n 0% {\n -webkit-transform: rotate(0deg);\n transform: rotate(0deg);\n }\n\n 100% {\n -webkit-transform: rotate(360deg);\n transform: rotate(360deg);\n }\n}\n\n/* -- engine-tooltip -- */\n.engine-tooltip {\n display: none;\n position: absolute;\n padding: 0.5rem 1rem;\n margin: 0 0 0 2rem;\n border: 1px solid var(--color-toolkit-engine-tooltip-border);\n background: var(--color-toolkit-engine-tooltip-background);\n font-size: 14px;\n font-weight: normal;\n z-index: 1000000;\n text-align: left;\n .rounded-corners;\n}\n\nth:hover .engine-tooltip,\ntd:hover .engine-tooltip,\n.engine-tooltip:hover {\n display: inline-block;\n}\n\n/* -- stacked bar chart -- */\n.stacked-bar-chart {\n margin: 0;\n padding: 0 0.125rem 0 4rem;\n width: 100%;\n width: -moz-available;\n width: -webkit-fill-available;\n width: fill;\n flex-direction: row;\n flex-wrap: nowrap;\n align-items: center;\n display: inline-flex;\n}\n\n.stacked-bar-chart-value {\n width: 3rem;\n display: inline-block;\n position: absolute;\n padding: 0 0.5rem;\n text-align: right;\n}\n\n.stacked-bar-chart-base {\n display: flex;\n flex-shrink: 0;\n flex-grow: 0;\n flex-basis: unset;\n}\n\n.stacked-bar-chart-median {\n .stacked-bar-chart-base();\n\n background: var(--color-base-font);\n border: 1px solid rgba(var(--color-base-font-rgb), 0.9);\n padding: 0.3rem 0;\n}\n\n.stacked-bar-chart-rate80 {\n .stacked-bar-chart-base();\n\n background: transparent;\n border: 1px solid rgba(var(--color-base-font-rgb), 0.3);\n padding: 0.3rem 0;\n}\n\n.stacked-bar-chart-rate95 {\n .stacked-bar-chart-base();\n\n background: transparent;\n border-bottom: 1px dotted rgba(var(--color-base-font-rgb), 0.5);\n padding: 0;\n}\n\n.stacked-bar-chart-rate100 {\n .stacked-bar-chart-base();\n\n background: transparent;\n border-left: 1px solid rgba(var(--color-base-font-rgb), 0.9);\n padding: 0.4rem 0;\n width: 1px;\n}\n","// SPDX-License-Identifier: AGPL-3.0-or-later\n\n// Mixins\n.text-size-adjust (@property: 100%) {\n -webkit-text-size-adjust: @property;\n -ms-text-size-adjust: @property;\n -moz-text-size-adjust: @property;\n text-size-adjust: @property;\n}\n\n.rounded-corners (@radius: 10px) {\n border-radius: @radius;\n}\n\n.rounded-right-corners (@radius: 0 10px 10px 0) {\n border-radius: @radius;\n}\n\n.rounded-corners-tiny (@radius: 5px) {\n border-radius: @radius;\n}\n\n// disable user selection\n.disable-user-select () {\n -webkit-touch-callout: none;\n user-select: none;\n}\n\n.show-content-button() {\n padding: 5px 10px;\n .rounded-corners-tiny;\n background: var(--color-show-btn-background);\n color: var(--color-show-btn-font);\n cursor: pointer;\n\n &:hover {\n background: var(--color-btn-background);\n color: var(--color-btn-font);\n }\n}\n",".ltr-left(@offset) {\n left: @offset;\n}\n\n.ltr-right(@offset) {\n right: @offset;\n}\n\n.ltr-margin-right(@offset) {\n margin-right: @offset;\n}\n\n.ltr-margin-left(@offset) {\n margin-left: @offset;\n}\n\n.ltr-border-right(@offset) {\n border-right: @offset;\n}\n\n.ltr-border-left(@offset) {\n border-left: @offset;\n}\n\n.ltr-padding-right(@offset) {\n padding-right: @offset;\n}\n\n.ltr-padding-left(@offset) {\n padding-left: @offset;\n}\n\n.ltr-float-left() {\n float: left;\n}\n\n.ltr-float-right() {\n float: right;\n}\n\n.ltr-text-align-right() {\n text-align: right;\n}\n\n.ltr-rounded-left-corners(@radius) {\n border-radius: @radius 0 0 @radius;\n}\n\n.ltr-rounded-top-left-corners(@radius) {\n border-radius: @radius 0 0 0;\n}\n\n.ltr-rounded-bottom-left-corners(@radius) {\n border-radius: 0 0 0 @radius;\n}\n\n.ltr-rounded-right-corners(@radius) {\n border-radius: 0 @radius @radius 0;\n}\n\n.ltr-rounded-top-right-corners(@radius) {\n border-radius: 0 @radius 0 0;\n}\n\n.ltr-rounded-bottom-right-corners(@radius) {\n border-radius: 0 0 @radius 0;\n}\n\n.ltr-text-align-left() {\n text-align: left;\n}\n\n.ltr-border-left-width(@offset) {\n border-left-width: @offset;\n}\n\n.ltr-border-right-width(@offset) {\n border-right-width: @offset;\n}\n\n.ltr-transform() {\n transform: scale(1, 1);\n}\n\n@import \"style.less\";\n","/*! Autocomplete.js v2.6.3 | license MIT | (c) 2017, Baptiste Donaux | http://autocomplete-js.com */\n\n.autocomplete {\n position: absolute;\n width: @search-width;\n max-height: 0;\n overflow-y: hidden;\n .ltr-text-align-left();\n\n .rounded-corners;\n\n &:active,\n &:focus,\n &:hover {\n background-color: var(--color-autocomplete-background);\n }\n\n &:empty {\n display: none;\n }\n\n > ul {\n list-style-type: none;\n margin: 0;\n padding: 0;\n\n > li {\n cursor: pointer;\n padding: 0.5rem 1rem;\n\n &.active,\n &:active,\n &:focus,\n &:hover {\n background-color: var(--color-autocomplete-background-hover);\n\n a:active,\n a:focus,\n a:hover {\n text-decoration: none;\n }\n }\n\n &.locked {\n cursor: inherit;\n }\n }\n }\n\n &.open {\n display: block;\n background-color: var(--color-autocomplete-background);\n color: var(--color-autocomplete-font);\n max-height: 32rem;\n overflow-y: auto;\n z-index: 100;\n margin-top: 3.5rem;\n border-radius: 0.8rem;\n box-shadow: 0 2px 8px rgb(34 38 46 / 25%);\n\n &:empty {\n display: none;\n }\n }\n}\n\n@media screen and (max-width: @phone) {\n .autocomplete {\n width: 100%;\n\n > ul > li {\n padding: 1rem;\n }\n }\n}\n","#main_results #results.image-detail-open.only_template_images {\n width: min(98%, 59.25rem) !important;\n}\n\n#main_results #results.only_template_images.image-detail-open #backToTop {\n .ltr-left(56.75rem) !important;\n .ltr-right(inherit);\n}\n\narticle.result-images .detail {\n display: none;\n}\n\n#results.image-detail-open article.result-images[data-vim-selected] .detail {\n display: flex;\n flex-direction: column;\n position: fixed;\n .ltr-left(60rem);\n .ltr-right(0);\n top: @search-height;\n transition: top 0.064s ease-in 0s;\n bottom: 0;\n background: var(--color-result-detail-background);\n border: 1px solid var(--color-result-detail-background);\n z-index: 10000;\n padding: 4rem 3rem 3rem 3rem;\n\n a.result-images-source {\n display: block;\n flex: 1;\n text-align: left;\n width: 100%;\n border: none;\n text-decoration: none;\n\n img {\n padding: 0;\n margin: 0;\n border: none;\n object-fit: contain;\n width: inherit;\n height: inherit;\n max-width: 100%;\n min-height: inherit;\n max-height: calc(100vh - 25rem - 7rem);\n background: inherit;\n }\n }\n\n .result-images-labels {\n color: var(--color-result-detail-font);\n max-height: 16rem;\n min-height: 16rem;\n\n hr {\n border-top: 1px solid var(--color-result-detail-hr);\n border-bottom: none;\n }\n\n h4 {\n height: 2rem;\n overflow: hidden;\n text-overflow: ellipsis;\n font-size: 0.9rem;\n }\n\n p {\n color: var(--color-result-detail-label-font);\n font-size: 0.9rem;\n\n span {\n display: inline-block;\n width: 12rem;\n }\n }\n\n h4,\n p,\n a {\n .ltr-text-align-left();\n }\n\n p.result-content {\n height: 2rem;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n\n p.result-url {\n white-space: nowrap;\n overflow-x: hidden;\n text-overflow: ellipsis;\n }\n\n p.result-content:hover,\n p.result-url:hover {\n position: relative;\n overflow: inherit !important;\n background: var(--color-result-detail-background);\n text-overflow: inherit !important;\n }\n\n a,\n a:visited,\n a:hover,\n a:active {\n color: var(--color-result-detail-link);\n }\n\n a:hover {\n text-decoration: underline;\n }\n }\n\n a.result-detail-close {\n top: 1rem;\n .ltr-left(1rem);\n padding: 0.4rem;\n }\n\n a.result-detail-previous {\n top: 1rem;\n .ltr-right(6rem);\n // center the icon by moving it slightly on the left\n padding-top: 0.4rem;\n .ltr-padding-right(0.5rem);\n padding-bottom: 0.4rem;\n .ltr-padding-left(0.3rem);\n }\n\n a.result-detail-next {\n top: 1rem;\n .ltr-right(2rem);\n padding: 0.4rem;\n }\n\n a.result-detail-close,\n a.result-detail-next,\n a.result-detail-previous {\n border-radius: 50%;\n display: block;\n width: 1.5rem;\n height: 1.5rem;\n position: absolute;\n filter: opacity(40%);\n z-index: 2000002;\n\n span {\n display: block;\n width: 1.5rem;\n height: 1.5rem;\n text-align: center;\n }\n }\n\n a.result-detail-next,\n a.result-detail-previous {\n span::before {\n // vertical center small icons\n vertical-align: sub;\n }\n }\n\n a.result-detail-close,\n a.result-detail-close:visited,\n a.result-detail-close:hover,\n a.result-detail-close:active,\n a.result-detail-previous,\n a.result-detail-previous:visited,\n a.result-detail-previous:hover,\n a.result-detail-previous:active,\n a.result-detail-next,\n a.result-detail-next:visited,\n a.result-detail-next:hover,\n a.result-detail-next:active {\n color: var(--color-result-detail-font);\n background: var(--color-result-detail-background);\n border: 1px solid var(--color-result-detail-font);\n }\n\n a.result-detail-close:focus,\n a.result-detail-close:hover,\n a.result-detail-previous:focus,\n a.result-detail-previous:hover,\n a.result-detail-next:focus,\n a.result-detail-next:hover {\n filter: opacity(80%);\n }\n\n .loader {\n position: absolute;\n top: 1rem;\n .ltr-right(50%);\n border-top: 0.5em solid var(--color-result-detail-loader-border);\n border-right: 0.5em solid var(--color-result-detail-loader-border);\n border-bottom: 0.5em solid var(--color-result-detail-loader-border);\n border-left: 0.5em solid var(--color-result-detail-loader-borderleft);\n }\n}\n\n#results.image-detail-open.scrolling article.result-images[data-vim-selected] .detail {\n top: 0;\n\n a.result-images-source img {\n max-height: calc(100vh - 25rem);\n }\n}\n\n@media screen and (max-width: @tablet) {\n #results.image-detail-open article.result-images[data-vim-selected] .detail {\n top: 0;\n .ltr-left(0);\n\n a.result-images-source {\n display: flex;\n flex-direction: column;\n justify-content: center;\n\n img {\n width: 100%;\n max-height: calc(100vh - 24rem);\n }\n }\n\n a.result-detail-next {\n .ltr-right(1rem);\n }\n }\n}\n\n@media screen and (max-width: @phone) {\n #results.image-detail-open article.result-images[data-vim-selected] .detail {\n top: 0;\n .ltr-left(0);\n padding: 1rem;\n\n a.result-images-source img {\n width: 100%;\n max-height: calc(100vh - 20rem);\n margin: 0;\n }\n\n .result-images-labels p span {\n width: inherit;\n .ltr-margin-right(1rem);\n }\n }\n}\n",".dialog-modal {\n animation-name: dialogmodal;\n animation-duration: 0.13s;\n\n @keyframes dialogmodal {\n 0% {\n opacity: 0;\n }\n\n 50% {\n opacity: 0.5;\n transform: translate(-50%, -50%) scale(1.05);\n }\n }\n}\n\ninput.checkbox-onoff[type=\"checkbox\"]::before {\n transition: left 0.25s;\n}\n","iframe[src^=\"https://w.soundcloud.com\"] {\n height: 120px;\n}\n\niframe[src^=\"https://www.deezer.com\"] {\n // The real size is 92px, but 94px are needed to avoid an inner scrollbar of\n // the embedded HTML.\n height: 94px;\n}\n\niframe[src^=\"https://www.mixcloud.com\"] {\n // the embedded player from mixcloud has some quirks: initial there is an\n // issue with an image URL that is blocked since it is an a Cross-Origin\n // request. The alternative text (<img alt='Mixcloud Logo'> then cause an\n // scrollbar in the inner of the iframe we can't avoid. Another quirk comes\n // when pressing the play button, somtimes the shown player has an height of\n // 200px, somtimes 250px.\n height: 250px;\n}\n\niframe[src^=\"https://bandcamp.com/EmbeddedPlayer\"] {\n // show playlist\n height: 350px;\n}\n\niframe[src^=\"https://bandcamp.com/EmbeddedPlayer/track\"] {\n // hide playlist\n height: 120px;\n}\n\niframe[src^=\"https://genius.com/songs\"] {\n height: 65px;\n}\n",".info-page {\n code {\n font-family: monospace;\n color: var(--color-doc-code);\n background-color: var(--color-doc-code-background);\n padding: 2px 5px;\n .rounded-corners(5px);\n }\n}\n","// SPDX-License-Identifier: AGPL-3.0-or-later\n.stats_endpoint {\n .github-issue-button {\n display: block;\n padding: 8px 16px;\n font-family: sans-serif;\n font-size: 16px;\n color: white;\n background-color: #238636;\n border: #2ea043;\n border-radius: 10px !important;\n box-shadow: rgba(0, 0, 0, 0) 0 0 0 0;\n }\n\n .github-issue-button:hover {\n background-color: #2ea043;\n }\n\n .issue-hide {\n display: none;\n }\n\n input[type=checked] {\n position: absolute;\n }\n\n label {\n margin: 1rem 1rem 1rem 0;\n }\n\n .step_content {\n margin: 1rem 1rem 1rem 2rem;\n }\n\n .step1,\n .step2 {\n visibility: hidden;\n }\n\n .step1_delay {\n transition: visibility 0s linear 4s;\n }\n\n #step1:checked ~ .step1,\n #step2:checked ~ .step2 {\n visibility: visible;\n }\n}\n","// SPDX-License-Identifier: AGPL-3.0-or-later\n\n.engine-stats {\n border-spacing: 0;\n border-collapse: collapse;\n\n tr td,\n tr th {\n border-bottom: 1px solid var(--color-result-border);\n padding: 0.25rem;\n }\n\n table.engine-tooltip {\n border-spacing: 0;\n border-collapse: collapse;\n\n td,\n th {\n border: none;\n }\n }\n\n .engine-name {\n width: 20rem;\n }\n\n .engine-score {\n width: 7rem;\n text-align: right;\n }\n\n .engine-reliability {\n text-align: right;\n }\n}\n\ntable.engine-error th.engine-error-type,\ntable.engine-error td.engine-error-type,\nfailed-test {\n width: 10rem;\n}\n\n.engine-errors {\n margin-top: 3rem;\n\n table.engine-error {\n max-width: 1280px;\n margin: 1rem 0 3rem 0;\n border: 1px solid var(--color-result-border);\n .ltr-text-align-left();\n\n tr th,\n tr td {\n padding: 0.5rem;\n }\n\n & span.log_parameters {\n border-right: 1px solid solid var(--color-result-border);\n padding: 0 1rem 0 0;\n margin: 0 0 0 0.5rem;\n }\n }\n}\n\n.bar-chart-value {\n width: 3em;\n display: inline-block;\n text-align: right;\n padding-right: 0.5rem;\n}\n\n.bar-chart-graph {\n width: calc(100% - 5rem);\n display: inline-block;\n}\n\n.bar-chart-bar {\n border: 3px solid #5bc0de;\n margin: 1px 0;\n}\n\n.bar-chart-serie1 {\n border: 3px solid #5bc0de;\n margin: 1px 0;\n float: left;\n}\n\n.bar-chart-serie2 {\n border: 3px solid #deb15b;\n margin: 1px 0;\n float: left;\n}\n\n.bar0 {\n width: 0;\n border: 0;\n}\n\n.generate-bar(100);\n\n.generate-bar(@n, @i: 1) when (@i =< @n) {\n .bar@{i} {\n width: (@i * 100% / @n);\n }\n .generate-bar(@n, (@i + 1));\n}\n","// SPDX-License-Identifier: AGPL-3.0-or-later\n\n.osm-map-box {\n height: 300px;\n width: 100%;\n margin: 10px 0;\n}\n","#main_index {\n margin-top: 26vh;\n}\n\n.index {\n text-align: center;\n\n .title {\n background: url('../img/searxng.png') no-repeat;\n min-height: 4rem;\n margin: 4rem auto;\n background-position: center;\n background-size: contain;\n }\n\n h1 {\n font-size: 4em;\n visibility: hidden;\n }\n\n #search,\n #search_header {\n margin: 0 auto;\n background: inherit;\n border: inherit;\n padding: 0;\n display: block;\n }\n\n .search_filters {\n display: block;\n margin: 1em 0;\n }\n\n .category label {\n padding: 6px 10px;\n border-bottom: initial !important;\n }\n}\n\n@media screen and (max-width: @tablet) {\n div.title {\n h1 {\n font-size: 1em;\n }\n }\n\n #main_index {\n margin-top: 6em;\n }\n}\n","#tab-content-query table td,\n#tab-content-query table th {\n .ltr-text-align-right() !important;\n height: 3rem;\n}\n\n#main_preferences {\n form {\n width: 100%;\n }\n\n fieldset {\n margin: 8px;\n border: none;\n }\n\n legend {\n margin: 0;\n padding: 5px 0 0 0;\n display: block;\n .ltr-float-left();\n width: 300px;\n }\n\n .value {\n margin: 0;\n padding: 0;\n .ltr-float-left();\n width: 15em;\n\n select,\n input[type=\"text\"] {\n font-size: inherit !important;\n margin-top: 0;\n .ltr-margin-right(1rem);\n margin-bottom: 0;\n .ltr-margin-left(0);\n }\n\n select {\n width: 14rem;\n }\n\n input[type=\"text\"] {\n width: 13.25rem;\n color: var(--color-toolkit-input-text-font);\n border: none;\n background: none repeat scroll 0 0 var(--color-toolkit-select-background);\n padding: 0.2rem 0.4rem;\n height: 2rem;\n .rounded-corners-tiny;\n\n &:hover,\n &:focus {\n background-color: var(--color-toolkit-select-background-hover);\n }\n }\n\n select:focus,\n input:focus {\n outline: none;\n box-shadow: 0 0 1px 1px var(--color-btn-background);\n }\n }\n\n .description {\n margin: 0;\n padding: 5px 0 0 0;\n .ltr-float-right();\n width: 50%;\n color: var(--color-settings-engine-description-font);\n font-size: 90%;\n }\n\n table {\n border-collapse: collapse;\n }\n\n table td {\n text-align: center;\n }\n\n .category {\n .ltr-margin-right(0.5rem);\n\n label {\n border: 2px solid transparent;\n padding: 0.2rem 0.4rem;\n .rounded-corners-tiny;\n }\n }\n\n .category input[type=\"checkbox\"]:checked + label {\n border: 2px solid var(--color-categories-item-border-selected);\n }\n\n table.table_engines {\n td {\n height: 3.75rem;\n }\n\n th.name {\n /* stylelint-disable */\n label {\n cursor: pointer;\n }\n /* stylelint-enable */\n\n .engine-tooltip {\n margin-top: 1.8rem;\n .ltr-left(calc((100% - 85em) / 2 + 10em));\n max-width: 40rem;\n\n .engine-description {\n margin-top: 0.5rem;\n }\n }\n }\n\n .engine-group {\n .ltr-text-align-left();\n font-weight: normal;\n background: var(--color-settings-engine-group-background);\n }\n\n .name,\n .shortcut {\n .ltr-text-align-left();\n }\n }\n\n table.cookies {\n width: 100%;\n direction: ltr;\n\n th,\n td {\n text-align: left;\n font-family: monospace;\n font-size: 1rem;\n padding: 0.5em;\n vertical-align: top;\n }\n\n td:first-child {\n word-break: keep-all;\n width: 14rem;\n padding-right: 1rem;\n }\n\n td:last-child {\n word-break: break-all;\n }\n\n & > tbody > tr:nth-child(even) > th,\n & > tbody > tr:nth-child(even) > td {\n background-color: var(--color-settings-tr-hover);\n }\n }\n\n .preferences_back {\n background: none repeat scroll 0 0 var(--color-btn-background);\n color: var(--color-btn-font);\n border: 0 none;\n .rounded-corners;\n\n cursor: pointer;\n display: inline-block;\n margin: 2px 4px;\n padding: 0.7em;\n\n a {\n color: var(--color-settings-return-font);\n }\n\n a::first-letter {\n text-transform: uppercase;\n }\n }\n\n div.selectable_url {\n pre {\n width: 100%;\n }\n }\n}\n\n@media screen and (max-width: @tablet) {\n .preferences_back {\n clear: both;\n }\n\n .engine-tooltip {\n .ltr-left(10em) !important;\n }\n}\n","/*\n* SearXNG, A privacy-respecting, hackable metasearch engine\n*/\n\n#search {\n padding: 0;\n margin: 0;\n}\n\n#search_header {\n padding-top: 1.5em;\n .ltr-padding-right(2em);\n .ltr-padding-left(@results-offset - 3rem);\n margin: 0;\n background: var(--color-header-background);\n border-bottom: 1px solid var(--color-header-border);\n display: grid;\n column-gap: 1.2rem;\n row-gap: 1rem;\n grid-template-columns: 3rem 1fr;\n grid-template-areas:\n \"logo search\"\n \"spacer categories\";\n}\n\n.category {\n display: inline-block;\n position: relative;\n .ltr-margin-right(1rem);\n padding: 0;\n\n input {\n display: none;\n }\n\n label {\n svg {\n padding-right: 0.2rem;\n }\n\n cursor: pointer;\n padding: 0.2rem 0;\n display: inline-flex;\n text-transform: capitalize;\n font-size: 0.9em;\n border-bottom: 2px solid transparent;\n .disable-user-select;\n\n div.category_name {\n margin: auto 0;\n }\n }\n\n input[type=\"checkbox\"]:checked + label {\n color: var(--color-categories-item-selected-font);\n border-bottom: 2px solid var(--color-categories-item-border-selected);\n }\n}\n\n#search_logo {\n grid-area: logo;\n display: flex;\n align-items: center;\n justify-content: center;\n\n svg {\n flex: 1;\n width: 30px;\n height: 30px;\n margin: 0.5rem 0 auto 0;\n }\n}\n\n.search_categories {\n grid-area: categories;\n\n .help {\n display: none;\n }\n\n &:hover .help {\n display: block;\n position: absolute;\n background: var(--color-base-background);\n padding: 1rem 0.6rem 0.6rem 0;\n z-index: 1000;\n width: 100%;\n left: -0.1rem;\n }\n}\n\n#search_view {\n grid-area: search;\n}\n\n.search_box {\n border-radius: 0.8rem;\n width: @search-width;\n display: inline-flex;\n flex-direction: row;\n white-space: nowrap;\n box-shadow: var(--color-search-shadow);\n}\n\n#clear_search {\n display: block;\n border-collapse: separate;\n box-sizing: border-box;\n width: 1.8rem;\n margin: 0;\n padding: 0.8rem 0.2rem;\n background: none repeat scroll 0 0 var(--color-search-background);\n border: none;\n outline: none;\n color: var(--color-search-font);\n font-size: 1.1rem;\n z-index: 10000;\n\n &:hover {\n color: var(--color-search-background-hover);\n }\n\n &.empty * {\n display: none;\n }\n}\n\nhtml.no-js #clear_search.hide_if_nojs {\n display: none;\n}\n\n#q,\n#send_search {\n display: block;\n margin: 0;\n padding: 0.8rem;\n background: none repeat scroll 0 0 var(--color-search-background);\n border: none;\n outline: none;\n color: var(--color-search-font);\n font-size: 1.1rem;\n z-index: 2;\n}\n\n#q {\n width: 100%;\n .ltr-padding-left(1rem);\n .ltr-padding-right(0) !important;\n .ltr-rounded-left-corners(0.8rem);\n}\n\n#q::-ms-clear,\n#q::-webkit-search-cancel-button {\n display: none;\n}\n\n#send_search {\n .ltr-rounded-right-corners(0.8rem);\n\n &:hover {\n cursor: pointer;\n background-color: var(--color-search-background-hover);\n color: var(--color-search-background);\n }\n}\n\n.no-js #clear_search,\n.no-js #send_search {\n width: auto !important;\n .ltr-border-left(1px solid var(--color-search-border));\n}\n\n.search_filters {\n margin-top: 0.6rem;\n .ltr-margin-right(0);\n margin-bottom: 0;\n .ltr-margin-left(@results-offset + 0.6rem);\n display: flex;\n overflow-x: auto;\n overscroll-behavior-inline: contain;\n\n select {\n background-color: inherit;\n\n &:hover,\n &:focus {\n color: var(--color-base-font);\n }\n }\n}\n\n@media screen and (max-width: @tablet) {\n #search_header {\n padding: 1.5em @results-tablet-offset 0 @results-tablet-offset;\n column-gap: @results-tablet-offset;\n }\n\n .search_filters {\n margin-top: 0.6rem;\n .ltr-margin-right(0);\n margin-bottom: 0;\n .ltr-margin-left(@results-tablet-offset + 3rem);\n }\n\n #categories {\n font-size: 90%;\n clear: both;\n\n .checkbox_container {\n margin: auto;\n margin-top: 2px;\n }\n }\n}\n\n@media screen and (max-width: @tablet) and (hover: none) {\n #main_index,\n #main_results {\n #categories_container {\n width: max-content;\n\n .category {\n display: inline-block;\n width: auto;\n }\n }\n\n #categories {\n width: 100%;\n .ltr-text-align-left();\n overflow-x: scroll;\n overflow-y: hidden;\n -webkit-overflow-scrolling: touch;\n }\n }\n}\n\n@media screen and (max-width: @phone) {\n #search_header {\n width: 100%;\n margin: 0;\n padding: 0.1rem 0 0 0;\n column-gap: 0;\n row-gap: 0;\n grid-template-areas:\n \"logo search\"\n \"categories categories\";\n }\n\n .search_logo {\n padding: 0;\n }\n\n .search_box {\n width: 98%;\n display: flex;\n margin: 0 auto;\n }\n\n #q {\n width: 100%;\n flex: 1;\n }\n\n .search_filters {\n margin: 0;\n }\n\n .category {\n display: inline-block;\n width: auto;\n margin: 0;\n\n label {\n padding: 1rem !important;\n margin: 0 !important;\n\n svg {\n display: none;\n }\n }\n }\n\n #search_view:focus-within {\n display: block;\n background-color: var(--color-search-background);\n position: absolute;\n top: 0;\n height: 100%;\n width: 100%;\n z-index: 10000;\n\n .search_box {\n border-bottom: 1px solid var(--color-search-border);\n width: 100%;\n border-radius: 0;\n box-shadow: none;\n\n #send_search {\n .ltr-margin-right(0) !important; // Delete when send_search button is disabled on mobile.\n }\n\n * {\n border: none;\n border-radius: 0;\n box-shadow: none;\n }\n }\n }\n\n #main_results #q:placeholder-shown ~ #send_search {\n .ltr-margin-right(2.6rem);\n transition: margin 0.1s;\n }\n}\n\n@media screen and (max-width: @ultra-small-phone) {\n #search_header {\n grid-template-areas:\n \"search search\"\n \"categories categories\";\n }\n\n #search_logo {\n display: none;\n }\n}\n\n#categories {\n .disable-user-select;\n\n &::-webkit-scrollbar {\n width: 0;\n height: 0;\n }\n}\n\n#categories_container {\n position: relative;\n}\n","/*\n--center-page-width overrides the less variable @results-width when the results are centered\nsee the CSS rules for #results in style.less ( grid-template-columns and gap).\n\nIn this file, the --center-page-width values comes from the Oscar theme (Bootstrap 3).\n\nAll rules starts with \".center-aligment-yes #main_results\" to be enabled only\non the /search URL and when the \"center alignment\" preference is enabled.\n*/\n\n@media screen and (min-width: @phone) {\n .center-aligment-yes #main_results {\n --center-page-width: 48rem;\n }\n}\n\n@media screen and (min-width: 62rem) {\n .center-aligment-yes #main_results {\n --center-page-width: 60rem;\n }\n}\n\n@media screen and (min-width: @tablet) {\n .center-aligment-yes #main_results {\n --center-page-width: 73rem;\n }\n}\n\n@media screen and (min-width: @phone) and (max-width: @tablet) {\n // any change must be reset in @media screen and (min-width: @tablet) { ... }\n .center-aligment-yes #main_results {\n #results {\n grid-template-columns: 60% calc(40% - @results-gap);\n margin-left: 0;\n margin-right: 0;\n }\n\n #urls {\n .ltr-margin-left(3rem);\n }\n\n #sidebar {\n .ltr-margin-right(1rem);\n }\n\n #backToTop {\n .ltr-left(calc(60% + 1rem));\n }\n }\n}\n\n@media screen and (min-width: @tablet) {\n .center-aligment-yes #main_results {\n display: flex;\n flex-direction: column;\n align-items: center;\n\n #search {\n width: 100%;\n display: flex;\n flex-direction: column;\n align-items: center;\n }\n\n #search_header {\n grid-template-columns: calc(50% - 4.5rem - var(--center-page-width) / 2) 3rem var(--center-page-width);\n grid-template-areas: \"na logo search\" \"na spacer categories\";\n column-gap: 1.2rem; // from search.less\n width: 100%;\n padding-left: 0;\n padding-right: 0;\n }\n\n .search_filters {\n .ltr-margin-left(0.5rem);\n width: var(--center-page-width);\n }\n\n #results {\n // from style.less (when screen width = @tablet, reset layout from tablet)\n .ltr-margin-right(2rem);\n .ltr-margin-left(@results-offset);\n //\n\n &.only_template_images,\n &.image-detail-open {\n // * grid-template-columns and .ltr-margin-left are set in style.less\n // * With .image-detail-open.only_template_images, the width is set in detail.less\n // * #results is going to be centered because of the #main_results rules,\n // align-self aligns the results on the left or right according to the language.\n align-self: flex-start;\n }\n\n &:not(.only_template_images):not(.image-detail-open) {\n // the gap is set in style.less\n .ltr-margin-left(1.5rem);\n grid-template-columns: calc(var(--center-page-width) - @results-gap - @results-sidebar-width) @results-sidebar-width;\n\n #backToTop {\n .ltr-left(calc(50% - @results-sidebar-width - @results-gap + 1rem + var(--center-page-width) / 2));\n }\n }\n\n .result .content {\n max-width: inherit;\n }\n }\n\n // from style.less (when screen width = @tablet, reset layout from tablet)\n #urls {\n .ltr-margin-left(0);\n }\n\n #sidebar {\n .ltr-margin-right(0);\n }\n }\n}\n","/*\n* SearXNG, A privacy-respecting, hackable metasearch engine\n*\n* To convert \"style.less\" to \"style.css\" run: $make styles\n*/\n\n// stylelint-disable no-descending-specificity\n\n@import (inline) \"../../node_modules/normalize.css/normalize.css\";\n@import \"definitions.less\";\n@import \"mixins.less\";\n@import \"code.less\";\n@import \"toolkit.less\";\n@import \"autocomplete.less\";\n@import \"detail.less\";\n@import \"animations.less\";\n@import \"embedded.less\";\n@import \"info.less\";\n@import \"new_issue.less\";\n@import \"stats.less\";\n@import \"result_templates.less\";\n\n// for index.html template\n@import \"index.less\";\n\n// for preferences.html template\n@import \"preferences.less\";\n\n// Search-Field\n@import \"search.less\";\n\n// to center the results\n@import \"style-center.less\";\n\n// ion-icon\n.ion-icon {\n display: inline-block;\n vertical-align: bottom;\n line-height: 1;\n text-decoration: inherit;\n .ltr-transform();\n}\n\n.ion-icon-small {\n width: 1rem;\n height: 1rem;\n .ion-icon;\n}\n\n.ion-icon-big {\n width: 1.5rem;\n height: 1.5rem;\n .ion-icon;\n}\n\n// Main LESS-Code\nhtml {\n font-family: sans-serif;\n font-size: 0.9em;\n .text-size-adjust;\n\n color: var(--color-base-font);\n background-color: var(--color-base-background);\n padding: 0;\n margin: 0;\n}\n\nbody,\nmain {\n padding: 0;\n margin: 0;\n}\n\nbody {\n display: flex;\n flex-direction: column;\n height: 100vh;\n margin: 0;\n}\n\nmain {\n width: 100%;\n margin-bottom: 2rem;\n flex: 1;\n}\n\n.page_with_header {\n margin: 2em auto;\n width: 85em;\n}\n\nfooter {\n clear: both;\n min-height: 4rem;\n padding: 1rem 0;\n width: 100%;\n text-align: center;\n background-color: var(--color-footer-background);\n border-top: 1px solid var(--color-footer-border);\n overflow: hidden;\n\n p {\n font-size: 0.9em;\n }\n}\n\n.page_with_header .logo {\n height: 40px;\n}\n\ninput[type=\"submit\"],\n#results button[type=\"submit\"] {\n padding: 0.7rem;\n display: inline-block;\n background: var(--color-btn-background);\n color: var(--color-btn-font);\n .rounded-corners;\n\n border: 0;\n cursor: pointer;\n}\n\na {\n text-decoration: none;\n color: var(--color-url-font);\n\n &:visited {\n color: var(--color-url-visited-font);\n\n .highlight {\n color: var(--color-url-visited-font);\n }\n }\n}\n\narticle[data-vim-selected] {\n background: var(--color-result-vim-selected);\n .ltr-border-left(0.2rem solid var(--color-result-vim-arrow));\n .ltr-rounded-right-corners(10px);\n}\n\narticle.result-images[data-vim-selected] {\n background: var(--color-result-vim-arrow);\n border: none;\n .rounded-corners;\n\n .image_thumbnail {\n filter: opacity(60%);\n }\n\n span.title,\n span.source {\n color: var(--color-result-image-span-font-selected);\n }\n}\n\narticle[data-vim-selected].category-videos,\narticle[data-vim-selected].category-news,\narticle[data-vim-selected].category-map,\narticle[data-vim-selected].category-music,\narticle[data-vim-selected].category-files,\narticle[data-vim-selected].category-social {\n border: 1px solid var(--color-result-vim-arrow);\n .rounded-corners;\n}\n\n.result {\n margin: @results-margin 0;\n padding: @result-padding;\n .ltr-border-left(0.2rem solid transparent);\n\n h3 {\n font-size: 1.2rem;\n word-wrap: break-word;\n margin: 0.4rem 0 0.4rem 0;\n padding: 0;\n\n a {\n color: var(--color-result-link-font);\n font-weight: normal;\n font-size: 1.1em;\n\n &:visited {\n color: var(--color-result-link-visited-font);\n }\n\n &:focus,\n &:hover {\n text-decoration: underline;\n border: none;\n outline: none;\n }\n }\n }\n\n .cache_link,\n .proxyfied_link {\n font-size: 0.9em !important;\n }\n\n .content,\n .stat {\n font-size: 0.9em;\n margin: 0;\n padding: 0;\n max-width: 54em;\n word-wrap: break-word;\n line-height: 1.24;\n\n .highlight {\n color: var(--color-result-description-highlight-font);\n background: inherit;\n font-weight: bold;\n }\n }\n\n .altlink a {\n font-size: 0.9em;\n margin: 0 10px 0 0;\n .show-content-button;\n }\n\n .codelines {\n .highlight {\n color: inherit;\n background: inherit;\n font-weight: normal;\n }\n }\n\n .url_wrapper {\n display: flex;\n font-size: 1rem;\n color: var(--color-result-url-font);\n flex-wrap: nowrap;\n overflow: hidden;\n flex-direction: row;\n margin: 0;\n padding: 0;\n\n .url_o1 {\n white-space: nowrap;\n flex-shrink: 1;\n }\n\n .url_o1::after {\n content: \" \";\n width: 1ch;\n display: inline-block;\n }\n\n .url_o2 {\n overflow: hidden;\n white-space: nowrap;\n flex-basis: content;\n flex-grow: 0;\n flex-shrink: 1;\n text-align: right;\n\n .url_i2 {\n float: right;\n }\n }\n }\n\n .published_date,\n .result_length,\n .result_author,\n .result_shipping,\n .result_source_country {\n font-size: 0.8em;\n color: var(--color-result-publishdate-font);\n }\n\n .result_price {\n font-size: 1.2em;\n color: var(--color-result-description-highlight-font);\n }\n\n img {\n &.thumbnail {\n .ltr-float-left();\n padding-top: 0.6rem;\n .ltr-padding-right(1rem);\n width: 20rem;\n height: unset; // remove heigth value that was needed for lazy loading\n }\n\n &.image {\n .ltr-float-left();\n padding-top: 0.6rem;\n .ltr-padding-right(1rem);\n width: 7rem;\n max-height: 7rem;\n object-fit: scale-down;\n object-position: right top;\n }\n }\n\n .break {\n clear: both;\n }\n}\n\n.template_group_images {\n display: flex;\n flex-wrap: wrap;\n}\n\n.template_group_images::after {\n flex-grow: 10;\n content: \"\";\n}\n\n.category-videos,\n.category-news,\n.category-map,\n.category-music,\n.category-files,\n.category-social {\n border: 1px solid var(--color-result-border);\n margin: 1rem @results-tablet-offset 0 @results-tablet-offset !important;\n .rounded-corners;\n}\n\n.category-social .image {\n width: auto !important;\n min-width: 48px;\n min-height: 48px;\n padding: 0 5px 25px 0 !important;\n}\n\n.audio-control audio {\n width: 100%;\n padding: 10px 0 0 0;\n}\n\n.embedded-content iframe {\n width: 100%;\n padding: 10px 0 0 0;\n}\n\n.result-videos .content {\n overflow: hidden;\n}\n\n.result-videos .embedded-video iframe {\n width: 100%;\n aspect-ratio: 16 / 9;\n padding: 10px 0 0 0;\n}\n\n@supports not (aspect-ratio: 1 / 1) {\n // support older browsers which do not have aspect-ratio\n // https://caniuse.com/?search=aspect-ratio\n .result-videos .embedded-video iframe {\n height: calc(@results-width * 9 / 16);\n }\n}\n\n.engines {\n .ltr-float-right();\n color: var(--color-result-engines-font);\n\n span {\n font-size: smaller;\n margin-top: 0;\n margin-bottom: 0;\n .ltr-margin-right(0.5rem);\n .ltr-margin-left(0);\n }\n}\n\n.small_font {\n font-size: 0.8em;\n}\n\n.highlight {\n color: var(--color-result-link-font-highlight);\n background: inherit;\n}\n\n.empty_element {\n font-style: italic;\n}\n\n.result-images {\n flex-grow: 1;\n padding: 0.5rem 0.5rem 3rem 0.5rem;\n margin: 0.25rem;\n border: none !important;\n height: @results-image-row-height;\n\n & > a {\n position: relative;\n }\n\n img {\n margin: 0;\n padding: 0;\n border: none;\n height: 100%;\n width: 100%;\n object-fit: cover;\n vertical-align: bottom;\n background: var(--color-result-image-background);\n }\n\n span.title,\n span.source {\n display: block;\n position: absolute;\n\n width: 100%;\n font-size: 0.9rem;\n color: var(--color-result-image-span-font);\n padding: 0.5rem 0 0 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n\n span.source {\n padding: 1.8rem 0 0 0;\n font-size: 0.7rem;\n }\n}\n\n.result-map {\n img.image {\n .ltr-float-right() !important;\n height: 100px !important;\n width: auto !important;\n }\n\n table {\n font-size: 0.9em;\n width: auto;\n border-collapse: separate;\n border-spacing: 0 0.35rem;\n\n th {\n font-weight: inherit;\n width: 17rem;\n vertical-align: top;\n .ltr-text-align-left();\n }\n\n td {\n vertical-align: top;\n .ltr-text-align-left();\n }\n }\n}\n\n.hidden {\n display: none !important;\n}\n\n#results {\n margin-top: 1rem;\n .ltr-margin-right(2rem);\n margin-bottom: 0;\n .ltr-margin-left(@results-offset);\n display: grid;\n grid-template-columns: @results-width @results-sidebar-width;\n grid-template-rows: min-content min-content 1fr min-content;\n gap: 0 @results-gap;\n grid-template-areas:\n \"corrections sidebar\"\n \"answers sidebar\"\n \"urls sidebar\"\n \"pagination sidebar\";\n}\n\n#results #sidebar *:first-child,\n#results #urls *:first-child {\n margin-top: 0;\n}\n\n#urls {\n padding: 0;\n grid-area: urls;\n}\n\n#suggestions {\n .wrapper {\n display: flex;\n flex-flow: row wrap;\n justify-content: flex-end;\n\n form {\n display: inline-block;\n flex: 1 1 50%;\n }\n }\n}\n\n#suggestions,\n#infoboxes {\n input {\n padding: 0;\n margin: 3px;\n font-size: 0.9em;\n display: inline-block;\n background: transparent;\n color: var(--color-result-search-url-font);\n cursor: pointer;\n }\n\n input[type=\"submit\"],\n .infobox .url a {\n color: var(--color-result-link-font);\n text-decoration: none;\n font-size: 0.9rem;\n\n &:hover {\n text-decoration: underline;\n }\n }\n}\n\n#corrections {\n grid-area: corrections;\n display: flex;\n flex-flow: row wrap;\n margin: 0 0 1em 0;\n\n h4,\n input[type=\"submit\"] {\n display: inline-block;\n padding: 0.5rem;\n margin: 0.5rem;\n }\n\n input[type=\"submit\"] {\n font-size: 0.8rem;\n .rounded-corners-tiny;\n }\n}\n\n#suggestions .title,\n#search_url .title,\n#apis .title {\n margin: 2em 0 0.5em 0;\n color: var(--color-base-font);\n}\n\n#answers {\n grid-area: answers;\n background: var(--color-answer-background);\n padding: @result-padding;\n margin: 1rem 0;\n margin-top: 0;\n color: var(--color-answer-font);\n .rounded-corners;\n\n h4 {\n display: none;\n }\n\n span {\n overflow-wrap: anywhere;\n }\n}\n\n#infoboxes {\n form {\n min-width: 210px;\n }\n}\n\n#sidebar {\n grid-area: sidebar;\n word-wrap: break-word;\n color: var(--color-sidebar-font);\n\n .infobox {\n margin: 10px 0 10px;\n border: 1px solid var(--color-sidebar-border);\n padding: 1rem;\n font-size: 0.9em;\n .rounded-corners;\n\n h2 {\n margin: 0 0 0.5em 0;\n }\n\n img {\n max-width: 100%;\n max-height: 12em;\n display: block;\n margin: 0 auto;\n padding: 0;\n }\n\n dt {\n font-weight: bold;\n }\n\n .attributes {\n dl {\n margin: 0.5em 0;\n }\n\n dt {\n display: inline;\n margin-top: 0.5em;\n .ltr-margin-right(0.25em);\n margin-bottom: 0.5em;\n .ltr-margin-left(0);\n padding: 0;\n }\n\n dd {\n display: inline;\n margin: 0.5em 0;\n padding: 0;\n }\n }\n\n input {\n font-size: 1em;\n }\n\n br {\n clear: both;\n }\n\n .attributes,\n .urls {\n clear: both;\n }\n }\n}\n\n#search_url {\n margin-top: 8px;\n\n div.selectable_url {\n pre {\n width: 200em;\n }\n }\n}\n\n#links_on_top {\n position: absolute;\n .ltr-right(1.8rem);\n .ltr-text-align-right();\n top: 2.2rem;\n padding: 0;\n border: 0;\n display: flex;\n align-items: center;\n font-size: 1em;\n color: var(--color-search-font);\n\n a {\n display: flex;\n align-items: center;\n margin-left: 1em;\n\n svg {\n font-size: 1.2em;\n .ltr-margin-right(0.125em);\n }\n }\n\n a,\n a:link *,\n a:hover *,\n a:visited *,\n a:active * {\n color: var(--color-search-font);\n }\n}\n\n#pagination {\n grid-area: pagination;\n\n br {\n clear: both;\n }\n}\n\n#apis {\n margin-top: 8px;\n clear: both;\n}\n\n#backToTop {\n border: 1px solid var(--color-backtotop-border);\n margin: 0;\n padding: 0;\n font-size: 1em;\n background: var(--color-backtotop-background);\n position: fixed;\n bottom: 8rem;\n .ltr-left(@results-width + @results-offset + (0.5 * @results-gap - 1.2em));\n transition: opacity 0.5s;\n opacity: 0;\n .rounded-corners;\n\n a {\n display: block;\n margin: 0;\n padding: 0.7em;\n }\n\n a,\n a:visited,\n a:hover,\n a:active {\n color: var(--color-backtotop-font);\n }\n}\n\n#results.scrolling #backToTop {\n opacity: 1;\n}\n\n/*\n tablet layout\n*/\n\n.results-tablet() {\n #links_on_top {\n span {\n display: none;\n }\n }\n\n .page_with_header {\n margin: 2rem 0.5rem;\n width: auto;\n }\n\n #infoboxes {\n position: inherit;\n max-width: inherit;\n\n .infobox {\n clear: both;\n\n img {\n .ltr-float-left();\n max-width: 10em;\n margin-top: 0.5em;\n .ltr-margin-right(0.5em);\n margin-bottom: 0.5em;\n .ltr-margin-left(0);\n }\n }\n }\n\n #sidebar {\n margin: 0 @results-tablet-offset @results-margin @results-tablet-offset;\n padding: 0;\n float: none;\n border: none;\n width: auto;\n\n input {\n border: 0;\n }\n }\n\n #apis {\n display: none;\n }\n\n #search_url {\n display: none;\n }\n\n .result {\n .thumbnail {\n max-width: 98%;\n }\n\n .url {\n span.url {\n display: block;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 100%;\n }\n }\n\n .engines {\n .ltr-float-right();\n padding: 0 0 3px 0;\n }\n }\n\n .result-images {\n border-bottom: none !important;\n }\n\n .image_result {\n max-width: 98%;\n\n img {\n max-width: 98%;\n }\n }\n\n #backToTop {\n display: none;\n }\n\n #pagination {\n margin: 2rem 0 0 0 !important;\n }\n\n #main_results div#results {\n margin: 1rem auto 0 auto;\n justify-content: center;\n display: grid;\n grid-template-columns: @results-width;\n grid-template-rows: min-content min-content min-content 1fr min-content min-content;\n gap: 0;\n grid-template-areas:\n \"corrections\"\n \"answers\"\n \"sidebar\"\n \"urls\"\n \"pagination\";\n }\n}\n\n@media screen and (max-width: calc(@tablet - 0.5px)) {\n #links_on_top {\n span {\n display: none;\n }\n }\n}\n\n@media screen and (max-width: 52rem) {\n body.results_endpoint {\n #links_on_top {\n .link_on_top_about,\n .link_on_top_donate {\n display: none;\n }\n }\n }\n}\n\n@media screen and (min-width: @phone) and (max-width: @tablet) {\n // when .center-aligment-yes, see style-center.less\n // the media query includes \"min-width: @phone\"\n // because the phone layout includes the tablet layout unconditionally.\n .center-aligment-no {\n .results-tablet();\n }\n}\n\n/* Misc */\n\n#main_results div#results.only_template_images {\n margin: 1rem @results-tablet-offset 0 @results-tablet-offset;\n display: grid;\n grid-template-columns: 100%;\n grid-template-rows: min-content min-content min-content 1fr min-content;\n gap: 0;\n grid-template-areas:\n \"corrections\"\n \"answers\"\n \"sidebar\"\n \"urls\"\n \"pagination\";\n\n #sidebar {\n display: none;\n }\n\n #urls {\n margin: 0;\n display: flex;\n flex-wrap: wrap;\n }\n\n #urls::after {\n flex-grow: 10;\n content: \"\";\n }\n\n #backToTop {\n .ltr-left(auto);\n .ltr-right(1rem);\n }\n\n #pagination {\n .ltr-margin-right(4rem);\n }\n}\n\n/*\n phone layout\n*/\n\n@media screen and (max-width: @phone) {\n // based on the tablet layout\n .results-tablet();\n\n html {\n background-color: var(--color-base-background-mobile);\n }\n\n #main_results div#results {\n grid-template-columns: 100%;\n margin: 1rem 0 0 0;\n }\n\n #links_on_top {\n top: 0.8rem;\n .ltr-right(0.7rem);\n }\n\n #main_index #links_on_top {\n top: 0.5rem;\n .ltr-right(0.5rem);\n }\n\n #results {\n margin: 0;\n padding: 0;\n }\n\n #pagination {\n margin: 2rem 1rem 0 1rem !important;\n }\n\n article[data-vim-selected] {\n border: 1px solid var(--color-result-vim-arrow);\n .rounded-corners;\n }\n\n .result {\n background: var(--color-result-background);\n margin: 1rem 0;\n }\n\n .result-images {\n margin: 0;\n height: @results-image-row-height-phone;\n background: var(--color-base-background-mobile);\n }\n\n .infobox {\n border: none !important;\n background-color: var(--color-sidebar-background);\n }\n}\n\n/*\n small-phone layout\n*/\n\n@media screen and (max-width: @small-phone) {\n .result-videos {\n img.thumbnail {\n float: none !important;\n }\n\n .content {\n overflow: inherit;\n }\n }\n}\n\npre code {\n white-space: pre-wrap;\n}\n"]} \ No newline at end of file
+{"version":3,"sources":["node_modules/normalize.css/normalize.css","src/less/definitions.less","src/less/code.less","src/generated/pygments.less","src/less/toolkit.less","src/less/mixins.less","src/less/style-ltr.less","src/less/autocomplete.less","src/less/detail.less","src/less/animations.less","src/less/embedded.less","src/less/info.less","src/less/new_issue.less","src/less/stats.less","src/less/result_templates.less","src/less/index.less","src/less/preferences.less","src/less/search.less","src/less/style-center.less","src/less/style.less"],"names":[],"mappings":"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,aAGF,eACE,OAAA,IAAA,MAAA,QACA,OAAA,IAAA,EAGF,kBACE,OAAA,IAAA,MAAA,QACA,OAAA,IAAA,EACA,MAAA,KAGF,kBACE,OAAA,IAAA,MAAA,QACA,OAAA,IAAA,EACA,MAAA,KAGF,MACE,MAAA,EACA,OAAA,EV/FD,MUsGG,MAAA,GVtGH,MUsGG,MAAA,GVtGH,MUsGG,MAAA,GVtGH,MUsGG,MAAA,GVtGH,MUsGG,MAAA,GVtGH,MUsGG,MAAA,GVtGH,MUsGG,MAAA,GVtGH,MUsGG,MAAA,GVtGH,MUsGG,MAAA,GVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,MAAA,IVtGH,OUsGG,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","sourcesContent":["/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n\n/* Document\n ========================================================================== */\n\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\n\nhtml {\n line-height: 1.15; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n\n/**\n * Remove the margin in all browsers.\n */\n\nbody {\n margin: 0;\n}\n\n/**\n * Render the `main` element consistently in IE.\n */\n\nmain {\n display: block;\n}\n\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\n\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n/* Grouping content\n ========================================================================== */\n\n/**\n * 1. Add the correct box sizing in Firefox.\n * 2. Show the overflow in Edge and IE.\n */\n\nhr {\n box-sizing: content-box; /* 1 */\n height: 0; /* 1 */\n overflow: visible; /* 2 */\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\npre {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n\n/**\n * Remove the gray background on active links in IE 10.\n */\n\na {\n background-color: transparent;\n}\n\n/**\n * 1. Remove the bottom border in Chrome 57-\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n */\n\nabbr[title] {\n border-bottom: none; /* 1 */\n text-decoration: underline; /* 2 */\n text-decoration: underline dotted; /* 2 */\n}\n\n/**\n * Add the correct font weight in Chrome, Edge, and Safari.\n */\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\ncode,\nkbd,\nsamp {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/**\n * Add the correct font size in all browsers.\n */\n\nsmall {\n font-size: 80%;\n}\n\n/**\n * Prevent `sub` and `sup` elements from affecting the line height in\n * all browsers.\n */\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/* Embedded content\n ========================================================================== */\n\n/**\n * Remove the border on images inside links in IE 10.\n */\n\nimg {\n border-style: none;\n}\n\n/* Forms\n ========================================================================== */\n\n/**\n * 1. Change the font styles in all browsers.\n * 2. Remove the margin in Firefox and Safari.\n */\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n margin: 0; /* 2 */\n}\n\n/**\n * Show the overflow in IE.\n * 1. Show the overflow in Edge.\n */\n\nbutton,\ninput { /* 1 */\n overflow: visible;\n}\n\n/**\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\n * 1. Remove the inheritance of text transform in Firefox.\n */\n\nbutton,\nselect { /* 1 */\n text-transform: none;\n}\n\n/**\n * Correct the inability to style clickable types in iOS and Safari.\n */\n\nbutton,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button;\n}\n\n/**\n * Remove the inner border and padding in Firefox.\n */\n\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n}\n\n/**\n * Restore the focus styles unset by the previous rule.\n */\n\nbutton:-moz-focusring,\n[type=\"button\"]:-moz-focusring,\n[type=\"reset\"]:-moz-focusring,\n[type=\"submit\"]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n * Correct the padding in Firefox.\n */\n\nfieldset {\n padding: 0.35em 0.75em 0.625em;\n}\n\n/**\n * 1. Correct the text wrapping in Edge and IE.\n * 2. Correct the color inheritance from `fieldset` elements in IE.\n * 3. Remove the padding so developers are not caught out when they zero out\n * `fieldset` elements in all browsers.\n */\n\nlegend {\n box-sizing: border-box; /* 1 */\n color: inherit; /* 2 */\n display: table; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n white-space: normal; /* 1 */\n}\n\n/**\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\n */\n\nprogress {\n vertical-align: baseline;\n}\n\n/**\n * Remove the default vertical scrollbar in IE 10+.\n */\n\ntextarea {\n overflow: auto;\n}\n\n/**\n * 1. Add the correct box sizing in IE 10.\n * 2. Remove the padding in IE 10.\n */\n\n[type=\"checkbox\"],\n[type=\"radio\"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n * Correct the cursor style of increment and decrement buttons in Chrome.\n */\n\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n * 1. Correct the odd appearance in Chrome and Safari.\n * 2. Correct the outline style in Safari.\n */\n\n[type=\"search\"] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/**\n * Remove the inner padding in Chrome and Safari on macOS.\n */\n\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n * 1. Correct the inability to style clickable types in iOS and Safari.\n * 2. Change font properties to `inherit` in Safari.\n */\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/* Interactive\n ========================================================================== */\n\n/*\n * Add the correct display in Edge, IE 10+, and Firefox.\n */\n\ndetails {\n display: block;\n}\n\n/*\n * Add the correct display in all browsers.\n */\n\nsummary {\n display: list-item;\n}\n\n/* Misc\n ========================================================================== */\n\n/**\n * Add the correct display in IE 10+.\n */\n\ntemplate {\n display: none;\n}\n\n/**\n * Add the correct display in IE 10.\n */\n\n[hidden] {\n display: none;\n}\n","/*\n * SearXNG, A privacy-respecting, hackable metasearch engine\n *\n * To change the colors of the site, simple edit this variables\n */\n\n/// Light Theme\n:root {\n /// Base Colors\n --color-base-font: #444;\n --color-base-font-rgb: 68, 68, 68;\n --color-base-background: #fff;\n --color-base-background-mobile: #f2f5f8;\n --color-url-font: #334999;\n --color-url-visited-font: #9822c3;\n /// Header Colors\n --color-header-background: #fdfbff;\n --color-header-border: #ddd;\n /// Footer Colors\n --color-footer-background: #fdfbff;\n --color-footer-border: #ddd;\n /// Sidebar Colors\n --color-sidebar-border: #ddd;\n --color-sidebar-font: #000;\n --color-sidebar-background: #fff;\n /// BackToTop Colors\n --color-backtotop-font: #444;\n --color-backtotop-border: #ddd;\n --color-backtotop-background: #fff;\n /// Button Colors\n --color-btn-background: #3050ff;\n --color-btn-font: #fff;\n --color-show-btn-background: #bbb;\n --color-show-btn-font: #000;\n /// Search Input Colors\n --color-search-border: #bbb;\n --color-search-shadow: 0 2px 8px rgb(34 38 46 / 25%);\n --color-search-background: #fff;\n --color-search-font: #222;\n --color-search-background-hover: #3050ff;\n /// Modal Colors\n --color-error: #db3434;\n --color-error-background: lighten(#db3434, 40%);\n --color-warning: #dbba34;\n --color-warning-background: lighten(#dbba34, 40%);\n --color-success: #42db34;\n --color-success-background: lighten(#42db34, 40%);\n /// Categories Colors\n --color-categories-item-selected-font: #3050ff;\n --color-categories-item-border-selected: #3050ff;\n /// Autocomplete Colors\n --color-autocomplete-font: #000;\n --color-autocomplete-border: #bbb;\n --color-autocomplete-shadow: 0 2px 8px rgb(34 38 46 / 25%);\n --color-autocomplete-background: #fff;\n --color-autocomplete-background-hover: #e3e3e3;\n /// Answer Colors\n --color-answer-font: #444; // same as --color-base-font\n --color-answer-background: #fff;\n /// Results Colors\n --color-result-background: #fff;\n --color-result-border: #ddd;\n --color-result-url-font: #000;\n --color-result-vim-selected: #f7f7f7;\n --color-result-vim-arrow: #000bbb;\n --color-result-description-highlight-font: #000;\n --color-result-link-font: #000bbb;\n --color-result-link-font-highlight: #000bbb;\n --color-result-link-visited-font: #9822c3;\n --color-result-publishdate-font: #777;\n --color-result-engines-font: #545454;\n --color-result-search-url-border: #ddd;\n --color-result-search-url-font: #000;\n // Images Colors\n --color-result-image-span-font: #444;\n --color-result-image-span-font-selected: #fff;\n --color-result-image-background: #fff;\n /// Settings Colors\n --color-settings-tr-hover: #ebebeb;\n --color-settings-engine-description-font: #545454;\n --color-settings-engine-group-background: #0001;\n /// Detail modal\n --color-result-detail-font: #fff;\n --color-result-detail-label-font: lightgray;\n --color-result-detail-background: #242424;\n --color-result-detail-hr: #555;\n --color-result-detail-link: #8af;\n --color-result-detail-loader-border: rgba(255, 255, 255, 0.2);\n --color-result-detail-loader-borderleft: rgba(0, 0, 0, 0);\n /// Toolkit Colors\n --color-toolkit-badge-font: #fff;\n --color-toolkit-badge-background: #545454;\n --color-toolkit-kbd-font: #fff;\n --color-toolkit-kbd-background: #000;\n --color-toolkit-dialog-border: #ddd;\n --color-toolkit-dialog-background: #fff;\n --color-toolkit-tabs-label-border: #fff;\n --color-toolkit-tabs-section-border: #ddd;\n --color-toolkit-select-background: #e1e1e1;\n --color-toolkit-select-border: #ddd;\n --color-toolkit-select-background-hover: #bbb;\n --color-toolkit-input-text-font: #222;\n --color-toolkit-checkbox-onoff-off-background: #ddd;\n --color-toolkit-checkbox-onoff-on-background: #ddd;\n --color-toolkit-checkbox-onoff-on-mark-background: #3050ff;\n --color-toolkit-checkbox-onoff-on-mark-color: #fff;\n --color-toolkit-checkbox-onoff-off-mark-background: #aaa;\n --color-toolkit-checkbox-onoff-off-mark-color: #fff;\n --color-toolkit-checkbox-label-background: #ddd;\n --color-toolkit-checkbox-label-border: #ddd;\n --color-toolkit-checkbox-input-border: #3050ff;\n --color-toolkit-engine-tooltip-border: #ddd;\n --color-toolkit-engine-tooltip-background: #fff;\n --color-toolkit-loader-border: rgba(0, 0, 0, 0.2);\n --color-toolkit-loader-borderleft: rgba(255, 255, 255, 0);\n --color-doc-code: #300;\n --color-doc-code-background: #fdd;\n}\n\n.dark-themes() {\n /// Base Colors\n --color-base-font: #bbb;\n --color-base-font-rgb: 187, 187, 187;\n --color-base-background: #222428;\n --color-base-background-mobile: #222428;\n --color-url-font: #8af;\n --color-url-visited-font: #c09cd9;\n /// Header Colors\n --color-header-background: #1e1e22;\n --color-header-border: #333;\n /// Footer Colors\n --color-footer-background: #1e1e22;\n --color-footer-border: #333;\n /// Sidebar Colors\n --color-sidebar-border: #555;\n --color-sidebar-font: #fff;\n --color-sidebar-background: #292c34;\n /// BackToTop Colors\n --color-backtotop-font: #bbb;\n --color-backtotop-border: #333;\n --color-backtotop-background: #2b2e36;\n /// Button Colors\n --color-btn-background: #58f;\n --color-btn-font: #222;\n --color-show-btn-background: #555;\n --color-show-btn-font: #fff;\n /// Search Input Colors\n --color-search-border: #555;\n --color-search-shadow: 0 2px 8px rgb(34 38 46 / 25%);\n --color-search-background: #2b2e36;\n --color-search-font: #fff;\n --color-search-background-hover: #58f;\n /// Modal Colors\n --color-error: #f55b5b;\n --color-error-background: darken(#db3434, 40%);\n --color-warning: #f1d561;\n --color-warning-background: darken(#dbba34, 40%);\n --color-success: #79f56e;\n --color-success-background: darken(#42db34, 40%);\n /// Categories Colors\n --color-categories-item-selected-font: #58f;\n --color-categories-item-border-selected: #58f;\n /// Autocomplete Colors\n --color-autocomplete-font: #fff;\n --color-autocomplete-border: #555;\n --color-autocomplete-shadow: 0 2px 8px rgb(34 38 46 / 25%);\n --color-autocomplete-background: #2b2e36;\n --color-autocomplete-background-hover: #1e1e22;\n /// Answer Colors\n --color-answer-font: #bbb; // same as --color-base-font\n --color-answer-background: #26292f;\n /// Results Colors\n --color-result-background: #26292f;\n --color-result-border: #333;\n --color-result-url-font: #fff;\n --color-result-vim-selected: #1f1f23cc;\n --color-result-vim-arrow: #8af;\n --color-result-description-highlight-font: #fff;\n --color-result-link-font: #8af;\n --color-result-link-font-highlight: #8af;\n --color-result-link-visited-font: #c09cd9;\n --color-result-publishdate-font: #888;\n --color-result-engines-font: #a4a4a4;\n --color-result-search-url-border: #555;\n --color-result-search-url-font: #fff;\n /// Detail modal : same as the light version\n --color-result-detail-font: #fff;\n --color-result-detail-label-font: lightgray;\n --color-result-detail-background: #1a1a1c;\n --color-result-detail-hr: #555;\n --color-result-detail-link: #8af;\n --color-result-detail-loader-border: rgba(255, 255, 255, 0.2);\n --color-result-detail-loader-borderleft: rgba(0, 0, 0, 0);\n // Images Colors\n --color-result-image-span-font: #bbb;\n --color-result-image-span-font-selected: #222;\n --color-result-image-background: #222;\n /// Settings Colors\n --color-settings-tr-hover: #2c2c32;\n --color-settings-engine-description-font: darken(#dcdcdc, 30%);\n --color-settings-engine-group-background: #1b1b21;\n /// Toolkit Colors\n --color-toolkit-badge-font: #fff;\n --color-toolkit-badge-background: #555;\n --color-toolkit-kbd-font: #000;\n --color-toolkit-kbd-background: #fff;\n --color-toolkit-dialog-border: #555;\n --color-toolkit-dialog-background: #1e1e22;\n --color-toolkit-tabs-label-border: #222;\n --color-toolkit-tabs-section-border: #555;\n --color-toolkit-select-background: #313338;\n --color-toolkit-select-border: #555;\n --color-toolkit-select-background-hover: #373b49;\n --color-toolkit-input-text-font: #fff;\n --color-toolkit-checkbox-onoff-off-background: #313338;\n --color-toolkit-checkbox-onoff-on-background: #313338;\n --color-toolkit-checkbox-onoff-on-mark-background: #58f;\n --color-toolkit-checkbox-onoff-on-mark-color: #222;\n --color-toolkit-checkbox-onoff-off-mark-background: #ddd;\n --color-toolkit-checkbox-onoff-off-mark-color: #222;\n --color-toolkit-checkbox-label-background: #222;\n --color-toolkit-checkbox-label-border: #333;\n --color-toolkit-checkbox-input-border: #58f;\n --color-toolkit-engine-tooltip-border: #333;\n --color-toolkit-engine-tooltip-background: #222;\n --color-toolkit-loader-border: rgba(255, 255, 255, 0.2);\n --color-toolkit-loader-borderleft: rgba(0, 0, 0, 0);\n --color-doc-code: #fdd;\n --color-doc-code-background: #300;\n}\n\n/// Dark Theme (autoswitch based on device pref)\n@media (prefers-color-scheme: dark) {\n :root.theme-auto {\n .dark-themes();\n }\n}\n\n// Dark Theme by preferences\n:root.theme-dark {\n .dark-themes();\n}\n\n/// General Size\n@results-width: 45rem;\n@results-sidebar-width: 25rem;\n@results-offset: 10rem;\n@results-tablet-offset: 0.5rem;\n@results-gap: 5rem;\n@results-margin: 0.125rem;\n@result-padding: 1rem;\n@results-image-row-height: 12rem;\n@results-image-row-height-phone: 6rem;\n@search-width: 44rem;\n// heigh of #search, see detail.less\n@search-height: 7.6rem;\n\n/// Device Size\n/// @desktop > @tablet\n@tablet: 79.75em; // see https://github.com/searxng/searxng/issues/874\n@phone: 50em;\n@small-phone: 35em;\n@ultra-small-phone: 20rem;\n\n/// From style.less\n@stacked-bar-chart: rgb(0, 0, 0);\n\n/// Load fonts from this directory.\n@icon-font-path: \"../../../fonts/\";\n//** File name for all font files.\n@icon-font-name: \"glyphicons-halflings-regular\";\n//** Element ID within SVG icon file.\n@icon-font-svg-id: \"glyphicons_halflingsregular\";\n\n// decoration of the select HTML elements\n@select-light-svg-path: \"../svg/select-light.svg\";\n@select-dark-svg-path: \"../svg/select-dark.svg\";\n",".code-highlight pre {\n overflow: auto;\n background-color: inherit;\n color: inherit;\n border: inherit;\n}\n\n// stylelint-disable no-invalid-position-at-import-rule\n@import \"../generated/pygments.less\";\n","/*\n this file is generated automatically by searxng_extra/update/update_pygments.py\n using pygments version 2.13.0\n*/\n\n.code-highlight .linenos {\n -webkit-touch-callout: none;\n -webkit-user-select: none;\n -khtml-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n cursor: default;\n\n &::selection {\n background: transparent; /* WebKit/Blink Browsers */\n }\n &::-moz-selection {\n background: transparent; /* Gecko Browsers */\n }\n\n margin-right: 8px;\n text-align: right;\n}\n\n.code-highlight pre { line-height: 125%; }\n.code-highlight td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }\n.code-highlight span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }\n.code-highlight td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }\n.code-highlight span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }\n.code-highlight .hll { background-color: #ffffcc }\n.code-highlight { background: #f8f8f8; }\n.code-highlight .c { color: #3D7B7B; font-style: italic } /* Comment */\n.code-highlight .err { border: 1px solid #FF0000 } /* Error */\n.code-highlight .k { color: #008000; font-weight: bold } /* Keyword */\n.code-highlight .o { color: #666666 } /* Operator */\n.code-highlight .ch { color: #3D7B7B; font-style: italic } /* Comment.Hashbang */\n.code-highlight .cm { color: #3D7B7B; font-style: italic } /* Comment.Multiline */\n.code-highlight .cp { color: #9C6500 } /* Comment.Preproc */\n.code-highlight .cpf { color: #3D7B7B; font-style: italic } /* Comment.PreprocFile */\n.code-highlight .c1 { color: #3D7B7B; font-style: italic } /* Comment.Single */\n.code-highlight .cs { color: #3D7B7B; font-style: italic } /* Comment.Special */\n.code-highlight .gd { color: #A00000 } /* Generic.Deleted */\n.code-highlight .ge { font-style: italic } /* Generic.Emph */\n.code-highlight .gr { color: #E40000 } /* Generic.Error */\n.code-highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */\n.code-highlight .gi { color: #008400 } /* Generic.Inserted */\n.code-highlight .go { color: #717171 } /* Generic.Output */\n.code-highlight .gp { color: #000080; font-weight: bold } /* Generic.Prompt */\n.code-highlight .gs { font-weight: bold } /* Generic.Strong */\n.code-highlight .gu { color: #800080; font-weight: bold } /* Generic.Subheading */\n.code-highlight .gt { color: #0044DD } /* Generic.Traceback */\n.code-highlight .kc { color: #008000; font-weight: bold } /* Keyword.Constant */\n.code-highlight .kd { color: #008000; font-weight: bold } /* Keyword.Declaration */\n.code-highlight .kn { color: #008000; font-weight: bold } /* Keyword.Namespace */\n.code-highlight .kp { color: #008000 } /* Keyword.Pseudo */\n.code-highlight .kr { color: #008000; font-weight: bold } /* Keyword.Reserved */\n.code-highlight .kt { color: #B00040 } /* Keyword.Type */\n.code-highlight .m { color: #666666 } /* Literal.Number */\n.code-highlight .s { color: #BA2121 } /* Literal.String */\n.code-highlight .na { color: #687822 } /* Name.Attribute */\n.code-highlight .nb { color: #008000 } /* Name.Builtin */\n.code-highlight .nc { color: #0000FF; font-weight: bold } /* Name.Class */\n.code-highlight .no { color: #880000 } /* Name.Constant */\n.code-highlight .nd { color: #AA22FF } /* Name.Decorator */\n.code-highlight .ni { color: #717171; font-weight: bold } /* Name.Entity */\n.code-highlight .ne { color: #CB3F38; font-weight: bold } /* Name.Exception */\n.code-highlight .nf { color: #0000FF } /* Name.Function */\n.code-highlight .nl { color: #767600 } /* Name.Label */\n.code-highlight .nn { color: #0000FF; font-weight: bold } /* Name.Namespace */\n.code-highlight .nt { color: #008000; font-weight: bold } /* Name.Tag */\n.code-highlight .nv { color: #19177C } /* Name.Variable */\n.code-highlight .ow { color: #AA22FF; font-weight: bold } /* Operator.Word */\n.code-highlight .w { color: #bbbbbb } /* Text.Whitespace */\n.code-highlight .mb { color: #666666 } /* Literal.Number.Bin */\n.code-highlight .mf { color: #666666 } /* Literal.Number.Float */\n.code-highlight .mh { color: #666666 } /* Literal.Number.Hex */\n.code-highlight .mi { color: #666666 } /* Literal.Number.Integer */\n.code-highlight .mo { color: #666666 } /* Literal.Number.Oct */\n.code-highlight .sa { color: #BA2121 } /* Literal.String.Affix */\n.code-highlight .sb { color: #BA2121 } /* Literal.String.Backtick */\n.code-highlight .sc { color: #BA2121 } /* Literal.String.Char */\n.code-highlight .dl { color: #BA2121 } /* Literal.String.Delimiter */\n.code-highlight .sd { color: #BA2121; font-style: italic } /* Literal.String.Doc */\n.code-highlight .s2 { color: #BA2121 } /* Literal.String.Double */\n.code-highlight .se { color: #AA5D1F; font-weight: bold } /* Literal.String.Escape */\n.code-highlight .sh { color: #BA2121 } /* Literal.String.Heredoc */\n.code-highlight .si { color: #A45A77; font-weight: bold } /* Literal.String.Interpol */\n.code-highlight .sx { color: #008000 } /* Literal.String.Other */\n.code-highlight .sr { color: #A45A77 } /* Literal.String.Regex */\n.code-highlight .s1 { color: #BA2121 } /* Literal.String.Single */\n.code-highlight .ss { color: #19177C } /* Literal.String.Symbol */\n.code-highlight .bp { color: #008000 } /* Name.Builtin.Pseudo */\n.code-highlight .fm { color: #0000FF } /* Name.Function.Magic */\n.code-highlight .vc { color: #19177C } /* Name.Variable.Class */\n.code-highlight .vg { color: #19177C } /* Name.Variable.Global */\n.code-highlight .vi { color: #19177C } /* Name.Variable.Instance */\n.code-highlight .vm { color: #19177C } /* Name.Variable.Magic */\n.code-highlight .il { color: #666666 } /* Literal.Number.Integer.Long */\n","// other solution : http://stackoverflow.com/questions/1577598/how-to-hide-parts-of-html-when-javascript-is-disabled/13857783#13857783\n\n// stylelint-disable no-descending-specificity\n\nhtml.no-js .hide_if_nojs {\n display: none;\n}\n\nhtml.js .show_if_nojs {\n display: none;\n}\n\n.center {\n text-align: center;\n}\n\n.right {\n float: right;\n}\n\n.left {\n float: left;\n}\n\n.invisible {\n display: none !important;\n}\n\n.list-unstyled {\n list-style-type: none;\n\n li {\n margin-top: 4px;\n margin-bottom: 4px;\n }\n}\n\n.danger {\n background-color: var(--color-error-background);\n}\n\n.warning {\n background: var(--color-warning-background);\n}\n\n.success {\n background: var(--color-success-background);\n}\n\n.badge {\n display: inline-block;\n color: var(--color-toolkit-badge-font);\n background-color: var(--color-toolkit-badge-background);\n text-align: center;\n white-space: nowrap;\n vertical-align: baseline;\n min-width: 10px;\n padding: 1px 5px;\n border-radius: 5px;\n}\n\n// kbd\nkbd {\n padding: 2px 4px;\n margin: 1px;\n font-size: 90%;\n color: var(--color-toolkit-kbd-font);\n background: var(--color-toolkit-kbd-background);\n}\n\n// table\ntable {\n width: 100%;\n\n &.striped {\n tr {\n border-bottom: 1px solid var(--color-settings-tr-hover);\n }\n }\n}\n\nth {\n padding: 0.4em;\n}\n\ntd {\n padding: 0 4px;\n}\n\ntr {\n &:hover {\n background: var(--color-settings-tr-hover) !important;\n }\n}\n\n// pre\n.pre() {\n display: block;\n font-size: 0.8em;\n word-break: break-all;\n margin: 0.1em;\n user-select: all;\n}\n\ndiv.selectable_url {\n display: block;\n border: 1px solid var(--color-result-search-url-border);\n padding: 4px;\n color: var(--color-result-search-url-font);\n margin: 0.1em;\n overflow: hidden;\n height: 1.2em;\n line-height: 1.2em;\n .rounded-corners-tiny;\n\n pre {\n .pre();\n }\n}\n\n// dialog\n.dialog() {\n position: relative;\n display: flex;\n padding: 1rem;\n margin: 0 0 1em 0;\n border: 1px solid var(--color-toolkit-dialog-border);\n .ltr-text-align-left();\n .rounded-corners;\n\n .close {\n .ltr-float-right();\n position: relative;\n top: -3px;\n color: inherit;\n font-size: 1.5em;\n }\n\n ul,\n ol,\n p {\n margin: 1px 0 0 0;\n }\n\n table {\n width: auto;\n }\n\n tr {\n vertical-align: text-top;\n\n &:hover {\n background: transparent !important;\n }\n }\n\n td {\n padding: 0 1em 0 0;\n padding-top: 0;\n .ltr-padding-right(1rem);\n padding-bottom: 0;\n .ltr-padding-left(0);\n }\n\n h4 {\n margin-top: 0.3em;\n margin-bottom: 0.3em;\n }\n}\n\n.dialog-error {\n .dialog();\n\n color: var(--color-error);\n background: var(--color-error-background);\n border-color: var(--color-error);\n}\n\n.dialog-warning {\n .dialog();\n\n color: var(--color-warning);\n background: var(--color-warning-background);\n border-color: var(--color-warning);\n}\n\n.dialog-modal {\n .dialog();\n\n display: block;\n background: var(--color-toolkit-dialog-background);\n position: fixed;\n top: 50%;\n left: 50%;\n margin: 0 auto;\n transform: translate(-50%, -50%);\n z-index: 10000000;\n\n h3 {\n margin-top: 0;\n }\n}\n\n// btn-collapse\n.btn-collapse {\n cursor: pointer;\n}\n\n//\n.scrollx {\n overflow-x: auto;\n overflow-y: hidden;\n display: block;\n padding: 0;\n margin: 0;\n border: none;\n}\n\n/* -- tabs -- */\n.tabs .tabs > label {\n font-size: 90%;\n}\n\nul.tabs {\n border-bottom: 1px solid var(--color-toolkit-tabs-section-border);\n list-style: none;\n padding-left: 0;\n\n li {\n display: flex;\n }\n}\n\n.tabs {\n display: flex;\n flex-wrap: wrap;\n width: 100%;\n min-width: 100%;\n\n & > * {\n order: 2;\n }\n\n & > input[type=radio] {\n display: none;\n }\n\n & > label,\n & > li > a {\n order: 1;\n padding: 0.7em;\n margin: 0 0.7em;\n letter-spacing: 0.5px;\n text-transform: uppercase;\n border: solid var(--color-toolkit-tabs-label-border);\n border-width: 0 0 2px 0;\n color: unset;\n\n .disable-user-select();\n\n cursor: pointer;\n\n &.active {\n border-bottom: 2px solid var(--color-categories-item-border-selected);\n background: var(--color-categories-item-selected);\n color: var(--color-categories-item-selected-font);\n }\n }\n\n & > label:hover,\n & > li > a:hover {\n border-bottom: 2px solid var(--color-categories-item-border-selected);\n }\n\n & > section {\n min-width: 100%;\n padding: 0.7rem 0;\n box-sizing: border-box;\n border-top: 1px solid var(--color-toolkit-tabs-section-border);\n display: none;\n }\n\n // default selection\n & > label:last-of-type {\n border-bottom: 2px solid var(--color-categories-item-border-selected);\n background: var(--color-categories-item-selected);\n color: var(--color-categories-item-selected-font);\n letter-spacing: -0.1px;\n }\n\n & > section:last-of-type {\n display: block;\n }\n}\n\nhtml body .tabs > input:checked {\n ~ section {\n display: none;\n }\n\n ~ label {\n position: inherited;\n background: inherit;\n border-bottom: 2px solid transparent;\n font-weight: normal;\n color: inherit;\n\n &:hover {\n border-bottom: 2px solid var(--color-categories-item-border-selected);\n }\n }\n\n + label {\n border-bottom: 2px solid var(--color-categories-item-border-selected);\n background: var(--color-categories-item-selected);\n color: var(--color-categories-item-selected-font);\n }\n\n + label + section {\n display: block;\n }\n}\n\n/* -- select -- */\nselect {\n height: 2.4rem;\n margin-top: 0;\n .ltr-margin-right(1rem);\n margin-bottom: 0;\n .ltr-margin-left(0);\n padding: 0.2rem !important;\n color: var(--color-search-font);\n font-size: 0.9rem;\n z-index: 2;\n\n &:hover,\n &:focus {\n cursor: pointer;\n }\n}\n\n@supports ((background-position-x: 100%) and ((appearance: none) or (-webkit-appearance: none) or (-moz-appearance: none))) {\n select {\n appearance: none;\n -webkit-appearance: none;\n -moz-appearance: none;\n border-width: 0 2rem 0 0;\n border-color: transparent;\n background: data-uri('image/svg+xml;charset=UTF-8', @select-light-svg-path) no-repeat;\n background-position-x: calc(100% + 2rem);\n background-size: 2rem;\n background-origin: content-box;\n background-color: var(--color-toolkit-select-background);\n outline: medium none;\n text-overflow: ellipsis;\n .rounded-corners-tiny;\n\n &:hover,\n &:focus {\n background-color: var(--color-toolkit-select-background-hover);\n }\n\n option {\n background-color: var(--color-base-background);\n }\n }\n\n @media (prefers-color-scheme: dark) {\n html.theme-auto select,\n html.theme-dark select {\n background-image: data-uri('image/svg+xml;charset=UTF-8', @select-dark-svg-path);\n }\n }\n\n html.theme-dark select {\n background-image: data-uri('image/svg+xml;charset=UTF-8', @select-dark-svg-path);\n }\n}\n\n/* -- checkbox-onoff -- */\ninput.checkbox-onoff[type=\"checkbox\"] {\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n cursor: pointer;\n display: inline-block;\n width: 2.5em;\n height: 0.7em;\n box-shadow: none !important;\n margin: 0 16px;\n border-radius: 10px;\n position: relative;\n\n /* focus & hover */\n &:focus,\n &:hover {\n outline: none;\n }\n\n &:focus::after {\n content: \"\";\n position: absolute;\n width: 3.5em;\n height: 1.65em;\n border: 1px solid var(--color-btn-background);\n border-radius: 12px;\n box-shadow: var(--color-btn-background) 0 0 3px;\n z-index: 10000;\n top: -0.55em;\n left: -0.6em;\n }\n\n &::before {\n position: absolute;\n top: -0.5em;\n display: flex;\n justify-content: center;\n align-items: center;\n font-size: 0.75em;\n width: 1.875em;\n height: 1.875em;\n border-radius: 50%;\n }\n}\n\n/* check mark\nreversed-checkbox displays unchecked checkedboxes as checked, and vice versa.\nsee https://github.com/searxng/searxng/blob/3408d061aab9abc6168fec9bbc6deab71b236dac/searx/templates/simple/preferences.html#L313\n*/\ninput.checkbox-onoff[type=\"checkbox\"],\n.reversed-checkbox input.checkbox-onoff[type=\"checkbox\"]:checked {\n background: var(--color-toolkit-checkbox-onoff-off-background);\n\n &::before {\n left: -0.5em;\n content: \"\\2715\";\n color: var(--color-toolkit-checkbox-onoff-off-mark-color);\n background: var(--color-toolkit-checkbox-onoff-off-mark-background);\n }\n}\n\ninput.checkbox-onoff[type=\"checkbox\"]:checked,\n.reversed-checkbox input.checkbox-onoff[type=\"checkbox\"] {\n background: var(--color-toolkit-checkbox-onoff-on-background);\n\n &::before {\n left: calc(100% - 1.5em);\n content: \"\\2713\";\n color: var(--color-toolkit-checkbox-onoff-on-mark-color);\n background: var(--color-toolkit-checkbox-onoff-on-mark-background);\n }\n}\n\n/* -- checkbox -- */\n@supports (transform: rotate(-45deg)) {\n input[type=checkbox]:not(.checkbox-onoff) {\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n\n width: 20px;\n height: 20px;\n cursor: pointer;\n position: relative;\n top: 0;\n left: 0;\n border: 2px solid var(--color-toolkit-checkbox-input-border);\n .rounded-corners(0.3em);\n\n &::after {\n content: '';\n width: 9px;\n height: 5px;\n position: absolute;\n top: 3px;\n left: 2px;\n border: 3px solid var(--color-toolkit-checkbox-label-border);\n border-top: none;\n border-right: none;\n background: transparent;\n opacity: 0;\n transform: rotate(-45deg);\n }\n\n &:checked::after {\n border-color: var(--color-toolkit-checkbox-input-border);\n opacity: 1;\n }\n }\n\n // disabled : can't be focused, show only the check mark\n input[type=checkbox][disabled]:not(.checkbox-onoff) {\n border: inherit;\n background-color: transparent !important;\n cursor: inherit;\n }\n\n // if not checked and possible to checked then display a \"light\" check mark on hover\n input.checkbox[type=checkbox]:not(:checked):not([disabled]):not(.checkbox-onoff):hover::after {\n opacity: 0.5;\n }\n}\n\n@media screen and (max-width: @phone) {\n .tabs > label {\n width: 100%;\n }\n}\n\n/* -- loader -- */\n.loader,\n.loader::after {\n border-radius: 50%;\n width: 2em;\n height: 2em;\n}\n\n.loader {\n margin: 1em auto;\n font-size: 10px;\n position: relative;\n text-indent: -9999em;\n border-top: 0.5em solid var(--color-toolkit-loader-border);\n border-right: 0.5em solid var(--color-toolkit-loader-border);\n border-bottom: 0.5em solid var(--color-toolkit-loader-border);\n border-left: 0.5em solid var(--color-toolkit-loader-borderleft);\n -webkit-transform: translateZ(0);\n -ms-transform: translateZ(0);\n transform: translateZ(0);\n -webkit-animation: load8 1.2s infinite linear;\n animation: load8 1.2s infinite linear;\n}\n\n@-webkit-keyframes load8 {\n 0% {\n -webkit-transform: rotate(0deg);\n transform: rotate(0deg);\n }\n\n 100% {\n -webkit-transform: rotate(360deg);\n transform: rotate(360deg);\n }\n}\n\n@keyframes load8 {\n 0% {\n -webkit-transform: rotate(0deg);\n transform: rotate(0deg);\n }\n\n 100% {\n -webkit-transform: rotate(360deg);\n transform: rotate(360deg);\n }\n}\n\n/* -- engine-tooltip -- */\n.engine-tooltip {\n display: none;\n position: absolute;\n padding: 0.5rem 1rem;\n margin: 0 0 0 2rem;\n border: 1px solid var(--color-toolkit-engine-tooltip-border);\n background: var(--color-toolkit-engine-tooltip-background);\n font-size: 14px;\n font-weight: normal;\n z-index: 1000000;\n text-align: left;\n .rounded-corners;\n}\n\nth:hover .engine-tooltip,\ntd:hover .engine-tooltip,\n.engine-tooltip:hover {\n display: inline-block;\n}\n\n/* -- stacked bar chart -- */\n.stacked-bar-chart {\n margin: 0;\n padding: 0 0.125rem 0 4rem;\n width: 100%;\n width: -moz-available;\n width: -webkit-fill-available;\n width: fill;\n flex-direction: row;\n flex-wrap: nowrap;\n align-items: center;\n display: inline-flex;\n}\n\n.stacked-bar-chart-value {\n width: 3rem;\n display: inline-block;\n position: absolute;\n padding: 0 0.5rem;\n text-align: right;\n}\n\n.stacked-bar-chart-base {\n display: flex;\n flex-shrink: 0;\n flex-grow: 0;\n flex-basis: unset;\n}\n\n.stacked-bar-chart-median {\n .stacked-bar-chart-base();\n\n background: var(--color-base-font);\n border: 1px solid rgba(var(--color-base-font-rgb), 0.9);\n padding: 0.3rem 0;\n}\n\n.stacked-bar-chart-rate80 {\n .stacked-bar-chart-base();\n\n background: transparent;\n border: 1px solid rgba(var(--color-base-font-rgb), 0.3);\n padding: 0.3rem 0;\n}\n\n.stacked-bar-chart-rate95 {\n .stacked-bar-chart-base();\n\n background: transparent;\n border-bottom: 1px dotted rgba(var(--color-base-font-rgb), 0.5);\n padding: 0;\n}\n\n.stacked-bar-chart-rate100 {\n .stacked-bar-chart-base();\n\n background: transparent;\n border-left: 1px solid rgba(var(--color-base-font-rgb), 0.9);\n padding: 0.4rem 0;\n width: 1px;\n}\n","// SPDX-License-Identifier: AGPL-3.0-or-later\n\n// Mixins\n.text-size-adjust (@property: 100%) {\n -webkit-text-size-adjust: @property;\n -ms-text-size-adjust: @property;\n -moz-text-size-adjust: @property;\n text-size-adjust: @property;\n}\n\n.rounded-corners (@radius: 10px) {\n border-radius: @radius;\n}\n\n.rounded-right-corners (@radius: 0 10px 10px 0) {\n border-radius: @radius;\n}\n\n.rounded-corners-tiny (@radius: 5px) {\n border-radius: @radius;\n}\n\n// disable user selection\n.disable-user-select () {\n -webkit-touch-callout: none;\n user-select: none;\n}\n\n.show-content-button() {\n padding: 5px 10px;\n .rounded-corners-tiny;\n background: var(--color-show-btn-background);\n color: var(--color-show-btn-font);\n cursor: pointer;\n\n &:hover {\n background: var(--color-btn-background);\n color: var(--color-btn-font);\n }\n}\n",".ltr-left(@offset) {\n left: @offset;\n}\n\n.ltr-right(@offset) {\n right: @offset;\n}\n\n.ltr-margin-right(@offset) {\n margin-right: @offset;\n}\n\n.ltr-margin-left(@offset) {\n margin-left: @offset;\n}\n\n.ltr-border-right(@offset) {\n border-right: @offset;\n}\n\n.ltr-border-left(@offset) {\n border-left: @offset;\n}\n\n.ltr-padding-right(@offset) {\n padding-right: @offset;\n}\n\n.ltr-padding-left(@offset) {\n padding-left: @offset;\n}\n\n.ltr-float-left() {\n float: left;\n}\n\n.ltr-float-right() {\n float: right;\n}\n\n.ltr-text-align-right() {\n text-align: right;\n}\n\n.ltr-rounded-left-corners(@radius) {\n border-radius: @radius 0 0 @radius;\n}\n\n.ltr-rounded-top-left-corners(@radius) {\n border-radius: @radius 0 0 0;\n}\n\n.ltr-rounded-bottom-left-corners(@radius) {\n border-radius: 0 0 0 @radius;\n}\n\n.ltr-rounded-right-corners(@radius) {\n border-radius: 0 @radius @radius 0;\n}\n\n.ltr-rounded-top-right-corners(@radius) {\n border-radius: 0 @radius 0 0;\n}\n\n.ltr-rounded-bottom-right-corners(@radius) {\n border-radius: 0 0 @radius 0;\n}\n\n.ltr-text-align-left() {\n text-align: left;\n}\n\n.ltr-border-left-width(@offset) {\n border-left-width: @offset;\n}\n\n.ltr-border-right-width(@offset) {\n border-right-width: @offset;\n}\n\n.ltr-transform() {\n transform: scale(1, 1);\n}\n\n@import \"style.less\";\n","/*! Autocomplete.js v2.6.3 | license MIT | (c) 2017, Baptiste Donaux | http://autocomplete-js.com */\n\n.autocomplete {\n position: absolute;\n width: @search-width;\n max-height: 0;\n overflow-y: hidden;\n .ltr-text-align-left();\n\n .rounded-corners;\n\n &:active,\n &:focus,\n &:hover {\n background-color: var(--color-autocomplete-background);\n }\n\n &:empty {\n display: none;\n }\n\n > ul {\n list-style-type: none;\n margin: 0;\n padding: 0;\n\n > li {\n cursor: pointer;\n padding: 0.5rem 1rem;\n\n &.active,\n &:active,\n &:focus,\n &:hover {\n background-color: var(--color-autocomplete-background-hover);\n\n a:active,\n a:focus,\n a:hover {\n text-decoration: none;\n }\n }\n\n &.locked {\n cursor: inherit;\n }\n }\n }\n\n &.open {\n display: block;\n background-color: var(--color-autocomplete-background);\n color: var(--color-autocomplete-font);\n max-height: 32rem;\n overflow-y: auto;\n z-index: 100;\n margin-top: 3.5rem;\n border-radius: 0.8rem;\n box-shadow: 0 2px 8px rgb(34 38 46 / 25%);\n\n &:empty {\n display: none;\n }\n }\n}\n\n@media screen and (max-width: @phone) {\n .autocomplete {\n width: 100%;\n\n > ul > li {\n padding: 1rem;\n }\n }\n}\n","#main_results #results.image-detail-open.only_template_images {\n width: min(98%, 59.25rem) !important;\n}\n\n#main_results #results.only_template_images.image-detail-open #backToTop {\n .ltr-left(56.75rem) !important;\n .ltr-right(inherit);\n}\n\narticle.result-images .detail {\n display: none;\n}\n\n#results.image-detail-open article.result-images[data-vim-selected] .detail {\n display: flex;\n flex-direction: column;\n position: fixed;\n .ltr-left(60rem);\n .ltr-right(0);\n top: @search-height;\n transition: top 0.064s ease-in 0s;\n bottom: 0;\n background: var(--color-result-detail-background);\n border: 1px solid var(--color-result-detail-background);\n z-index: 10000;\n padding: 4rem 3rem 3rem 3rem;\n\n a.result-images-source {\n display: block;\n flex: 1;\n text-align: left;\n width: 100%;\n border: none;\n text-decoration: none;\n\n img {\n padding: 0;\n margin: 0;\n border: none;\n object-fit: contain;\n width: inherit;\n height: inherit;\n max-width: 100%;\n min-height: inherit;\n max-height: calc(100vh - 25rem - 7rem);\n background: inherit;\n }\n }\n\n .result-images-labels {\n color: var(--color-result-detail-font);\n max-height: 16rem;\n min-height: 16rem;\n\n hr {\n border-top: 1px solid var(--color-result-detail-hr);\n border-bottom: none;\n }\n\n h4 {\n height: 2rem;\n overflow: hidden;\n text-overflow: ellipsis;\n font-size: 0.9rem;\n }\n\n p {\n color: var(--color-result-detail-label-font);\n font-size: 0.9rem;\n\n span {\n display: inline-block;\n width: 12rem;\n }\n }\n\n h4,\n p,\n a {\n .ltr-text-align-left();\n }\n\n p.result-content {\n height: 2rem;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n\n p.result-url {\n white-space: nowrap;\n overflow-x: hidden;\n text-overflow: ellipsis;\n }\n\n p.result-content:hover,\n p.result-url:hover {\n position: relative;\n overflow: inherit !important;\n background: var(--color-result-detail-background);\n text-overflow: inherit !important;\n }\n\n a,\n a:visited,\n a:hover,\n a:active {\n color: var(--color-result-detail-link);\n }\n\n a:hover {\n text-decoration: underline;\n }\n }\n\n a.result-detail-close {\n top: 1rem;\n .ltr-left(1rem);\n padding: 0.4rem;\n }\n\n a.result-detail-previous {\n top: 1rem;\n .ltr-right(6rem);\n // center the icon by moving it slightly on the left\n padding-top: 0.4rem;\n .ltr-padding-right(0.5rem);\n padding-bottom: 0.4rem;\n .ltr-padding-left(0.3rem);\n }\n\n a.result-detail-next {\n top: 1rem;\n .ltr-right(2rem);\n padding: 0.4rem;\n }\n\n a.result-detail-close,\n a.result-detail-next,\n a.result-detail-previous {\n border-radius: 50%;\n display: block;\n width: 1.5rem;\n height: 1.5rem;\n position: absolute;\n filter: opacity(40%);\n z-index: 2000002;\n\n span {\n display: block;\n width: 1.5rem;\n height: 1.5rem;\n text-align: center;\n }\n }\n\n a.result-detail-next,\n a.result-detail-previous {\n span::before {\n // vertical center small icons\n vertical-align: sub;\n }\n }\n\n a.result-detail-close,\n a.result-detail-close:visited,\n a.result-detail-close:hover,\n a.result-detail-close:active,\n a.result-detail-previous,\n a.result-detail-previous:visited,\n a.result-detail-previous:hover,\n a.result-detail-previous:active,\n a.result-detail-next,\n a.result-detail-next:visited,\n a.result-detail-next:hover,\n a.result-detail-next:active {\n color: var(--color-result-detail-font);\n background: var(--color-result-detail-background);\n border: 1px solid var(--color-result-detail-font);\n }\n\n a.result-detail-close:focus,\n a.result-detail-close:hover,\n a.result-detail-previous:focus,\n a.result-detail-previous:hover,\n a.result-detail-next:focus,\n a.result-detail-next:hover {\n filter: opacity(80%);\n }\n\n .loader {\n position: absolute;\n top: 1rem;\n .ltr-right(50%);\n border-top: 0.5em solid var(--color-result-detail-loader-border);\n border-right: 0.5em solid var(--color-result-detail-loader-border);\n border-bottom: 0.5em solid var(--color-result-detail-loader-border);\n border-left: 0.5em solid var(--color-result-detail-loader-borderleft);\n }\n}\n\n#results.image-detail-open.scrolling article.result-images[data-vim-selected] .detail {\n top: 0;\n\n a.result-images-source img {\n max-height: calc(100vh - 25rem);\n }\n}\n\n@media screen and (max-width: @tablet) {\n #results.image-detail-open article.result-images[data-vim-selected] .detail {\n top: 0;\n .ltr-left(0);\n\n a.result-images-source {\n display: flex;\n flex-direction: column;\n justify-content: center;\n\n img {\n width: 100%;\n max-height: calc(100vh - 24rem);\n }\n }\n\n a.result-detail-next {\n .ltr-right(1rem);\n }\n }\n}\n\n@media screen and (max-width: @phone) {\n #results.image-detail-open article.result-images[data-vim-selected] .detail {\n top: 0;\n .ltr-left(0);\n padding: 1rem;\n\n a.result-images-source img {\n width: 100%;\n max-height: calc(100vh - 20rem);\n margin: 0;\n }\n\n .result-images-labels p span {\n width: inherit;\n .ltr-margin-right(1rem);\n }\n }\n}\n",".dialog-modal {\n animation-name: dialogmodal;\n animation-duration: 0.13s;\n\n @keyframes dialogmodal {\n 0% {\n opacity: 0;\n }\n\n 50% {\n opacity: 0.5;\n transform: translate(-50%, -50%) scale(1.05);\n }\n }\n}\n\ninput.checkbox-onoff[type=\"checkbox\"]::before {\n transition: left 0.25s;\n}\n","iframe[src^=\"https://w.soundcloud.com\"] {\n height: 120px;\n}\n\niframe[src^=\"https://www.deezer.com\"] {\n // The real size is 92px, but 94px are needed to avoid an inner scrollbar of\n // the embedded HTML.\n height: 94px;\n}\n\niframe[src^=\"https://www.mixcloud.com\"] {\n // the embedded player from mixcloud has some quirks: initial there is an\n // issue with an image URL that is blocked since it is an a Cross-Origin\n // request. The alternative text (<img alt='Mixcloud Logo'> then cause an\n // scrollbar in the inner of the iframe we can't avoid. Another quirk comes\n // when pressing the play button, somtimes the shown player has an height of\n // 200px, somtimes 250px.\n height: 250px;\n}\n\niframe[src^=\"https://bandcamp.com/EmbeddedPlayer\"] {\n // show playlist\n height: 350px;\n}\n\niframe[src^=\"https://bandcamp.com/EmbeddedPlayer/track\"] {\n // hide playlist\n height: 120px;\n}\n\niframe[src^=\"https://genius.com/songs\"] {\n height: 65px;\n}\n",".info-page {\n code {\n font-family: monospace;\n color: var(--color-doc-code);\n background-color: var(--color-doc-code-background);\n padding: 2px 5px;\n .rounded-corners(5px);\n }\n}\n","// SPDX-License-Identifier: AGPL-3.0-or-later\n.stats_endpoint {\n .github-issue-button {\n display: block;\n padding: 8px 16px;\n font-family: sans-serif;\n font-size: 16px;\n color: white;\n background-color: #238636;\n border: #2ea043;\n border-radius: 10px !important;\n box-shadow: rgba(0, 0, 0, 0) 0 0 0 0;\n }\n\n .github-issue-button:hover {\n background-color: #2ea043;\n }\n\n .issue-hide {\n display: none;\n }\n\n input[type=checked] {\n position: absolute;\n }\n\n label {\n margin: 1rem 1rem 1rem 0;\n }\n\n .step_content {\n margin: 1rem 1rem 1rem 2rem;\n }\n\n .step1,\n .step2 {\n visibility: hidden;\n }\n\n .step1_delay {\n transition: visibility 0s linear 4s;\n }\n\n #step1:checked ~ .step1,\n #step2:checked ~ .step2 {\n visibility: visible;\n }\n}\n","// SPDX-License-Identifier: AGPL-3.0-or-later\n\n.engine-stats {\n border-spacing: 0;\n border-collapse: collapse;\n\n tr td,\n tr th {\n border-bottom: 1px solid var(--color-result-border);\n padding: 0.25rem;\n }\n\n table.engine-tooltip {\n border-spacing: 0;\n border-collapse: collapse;\n\n td,\n th {\n border: none;\n }\n }\n\n .engine-name {\n width: 20rem;\n }\n\n .engine-score {\n width: 7rem;\n text-align: right;\n }\n\n .engine-reliability {\n text-align: right;\n }\n}\n\ntable.engine-error th.engine-error-type,\ntable.engine-error td.engine-error-type,\nfailed-test {\n width: 10rem;\n}\n\n.engine-errors {\n margin-top: 3rem;\n\n table.engine-error {\n max-width: 1280px;\n margin: 1rem 0 3rem 0;\n border: 1px solid var(--color-result-border);\n .ltr-text-align-left();\n\n tr th,\n tr td {\n padding: 0.5rem;\n }\n\n & span.log_parameters {\n border-right: 1px solid solid var(--color-result-border);\n padding: 0 1rem 0 0;\n margin: 0 0 0 0.5rem;\n }\n }\n}\n\n.bar-chart-value {\n width: 3em;\n display: inline-block;\n text-align: right;\n padding-right: 0.5rem;\n}\n\n.bar-chart-graph {\n width: calc(100% - 5rem);\n display: inline-block;\n}\n\n.bar-chart-bar {\n border: 3px solid #5bc0de;\n margin: 1px 0;\n}\n\n.bar-chart-serie1 {\n border: 3px solid #5bc0de;\n margin: 1px 0;\n float: left;\n}\n\n.bar-chart-serie2 {\n border: 3px solid #deb15b;\n margin: 1px 0;\n float: left;\n}\n\n.bar0 {\n width: 0;\n border: 0;\n}\n\n.generate-bar(100);\n\n.generate-bar(@n, @i: 1) when (@i =< @n) {\n .bar@{i} {\n width: (@i * 100% / @n);\n }\n .generate-bar(@n, (@i + 1));\n}\n","// SPDX-License-Identifier: AGPL-3.0-or-later\n\n.osm-map-box {\n height: 300px;\n width: 100%;\n margin: 10px 0;\n}\n","#main_index {\n margin-top: 26vh;\n}\n\n.index {\n text-align: center;\n\n .title {\n background: url('../img/searxng.png') no-repeat;\n min-height: 4rem;\n margin: 4rem auto;\n background-position: center;\n background-size: contain;\n }\n\n h1 {\n font-size: 4em;\n visibility: hidden;\n }\n\n #search,\n #search_header {\n margin: 0 auto;\n background: inherit;\n border: inherit;\n padding: 0;\n display: block;\n }\n\n .search_filters {\n display: block;\n margin: 1em 0;\n }\n\n .category label {\n padding: 6px 10px;\n border-bottom: initial !important;\n }\n}\n\n@media screen and (max-width: @tablet) {\n div.title {\n h1 {\n font-size: 1em;\n }\n }\n\n #main_index {\n margin-top: 6em;\n }\n}\n","#tab-content-query table td,\n#tab-content-query table th {\n .ltr-text-align-right() !important;\n height: 3rem;\n}\n\n#main_preferences {\n form {\n width: 100%;\n }\n\n fieldset {\n margin: 8px;\n border: none;\n }\n\n legend {\n margin: 0;\n padding: 5px 0 0 0;\n display: block;\n .ltr-float-left();\n width: 300px;\n }\n\n .value {\n margin: 0;\n padding: 0;\n .ltr-float-left();\n width: 15em;\n\n select,\n input[type=\"text\"] {\n font-size: inherit !important;\n margin-top: 0;\n .ltr-margin-right(1rem);\n margin-bottom: 0;\n .ltr-margin-left(0);\n }\n\n select {\n width: 14rem;\n }\n\n input[type=\"text\"] {\n width: 13.25rem;\n color: var(--color-toolkit-input-text-font);\n border: none;\n background: none repeat scroll 0 0 var(--color-toolkit-select-background);\n padding: 0.2rem 0.4rem;\n height: 2rem;\n .rounded-corners-tiny;\n\n &:hover,\n &:focus {\n background-color: var(--color-toolkit-select-background-hover);\n }\n }\n\n select:focus,\n input:focus {\n outline: none;\n box-shadow: 0 0 1px 1px var(--color-btn-background);\n }\n }\n\n .description {\n margin: 0;\n padding: 5px 0 0 0;\n .ltr-float-right();\n width: 50%;\n color: var(--color-settings-engine-description-font);\n font-size: 90%;\n }\n\n table {\n border-collapse: collapse;\n }\n\n table td {\n text-align: center;\n }\n\n .category {\n .ltr-margin-right(0.5rem);\n\n label {\n border: 2px solid transparent;\n padding: 0.2rem 0.4rem;\n .rounded-corners-tiny;\n }\n }\n\n .category input[type=\"checkbox\"]:checked + label {\n border: 2px solid var(--color-categories-item-border-selected);\n }\n\n table.table_engines {\n td {\n height: 3.75rem;\n }\n\n th.name {\n /* stylelint-disable */\n label {\n cursor: pointer;\n }\n /* stylelint-enable */\n\n .engine-tooltip {\n margin-top: 1.8rem;\n .ltr-left(calc((100% - 85em) / 2 + 10em));\n max-width: 40rem;\n\n .engine-description {\n margin-top: 0.5rem;\n }\n }\n }\n\n .engine-group {\n .ltr-text-align-left();\n font-weight: normal;\n background: var(--color-settings-engine-group-background);\n }\n\n .name,\n .shortcut {\n .ltr-text-align-left();\n }\n }\n\n table.cookies {\n width: 100%;\n direction: ltr;\n\n th,\n td {\n text-align: left;\n font-family: monospace;\n font-size: 1rem;\n padding: 0.5em;\n vertical-align: top;\n }\n\n td:first-child {\n word-break: keep-all;\n width: 14rem;\n padding-right: 1rem;\n }\n\n td:last-child {\n word-break: break-all;\n }\n\n & > tbody > tr:nth-child(even) > th,\n & > tbody > tr:nth-child(even) > td {\n background-color: var(--color-settings-tr-hover);\n }\n }\n\n .preferences_back {\n background: none repeat scroll 0 0 var(--color-btn-background);\n color: var(--color-btn-font);\n border: 0 none;\n .rounded-corners;\n\n cursor: pointer;\n display: inline-block;\n margin: 2px 4px;\n padding: 0.7em;\n\n a {\n color: var(--color-settings-return-font);\n }\n\n a::first-letter {\n text-transform: uppercase;\n }\n }\n\n div.selectable_url {\n pre {\n width: 100%;\n }\n }\n}\n\n@media screen and (max-width: @tablet) {\n .preferences_back {\n clear: both;\n }\n\n .engine-tooltip {\n .ltr-left(10em) !important;\n }\n}\n","/*\n* SearXNG, A privacy-respecting, hackable metasearch engine\n*/\n\n#search {\n padding: 0;\n margin: 0;\n}\n\n#search_header {\n padding-top: 1.5em;\n .ltr-padding-right(2em);\n .ltr-padding-left(@results-offset - 3rem);\n margin: 0;\n background: var(--color-header-background);\n border-bottom: 1px solid var(--color-header-border);\n display: grid;\n column-gap: 1.2rem;\n row-gap: 1rem;\n grid-template-columns: 3rem 1fr;\n grid-template-areas:\n \"logo search\"\n \"spacer categories\";\n}\n\n.category {\n display: inline-block;\n position: relative;\n .ltr-margin-right(1rem);\n padding: 0;\n\n input {\n display: none;\n }\n\n label {\n svg {\n padding-right: 0.2rem;\n }\n\n cursor: pointer;\n padding: 0.2rem 0;\n display: inline-flex;\n text-transform: capitalize;\n font-size: 0.9em;\n border-bottom: 2px solid transparent;\n .disable-user-select;\n\n div.category_name {\n margin: auto 0;\n }\n }\n\n input[type=\"checkbox\"]:checked + label {\n color: var(--color-categories-item-selected-font);\n border-bottom: 2px solid var(--color-categories-item-border-selected);\n }\n}\n\n#search_logo {\n grid-area: logo;\n display: flex;\n align-items: center;\n justify-content: center;\n\n svg {\n flex: 1;\n width: 30px;\n height: 30px;\n margin: 0.5rem 0 auto 0;\n }\n}\n\n.search_categories {\n grid-area: categories;\n\n .help {\n display: none;\n }\n\n &:hover .help {\n display: block;\n position: absolute;\n background: var(--color-base-background);\n padding: 1rem 0.6rem 0.6rem 0;\n z-index: 1000;\n width: 100%;\n left: -0.1rem;\n }\n}\n\n#search_view {\n grid-area: search;\n}\n\n.search_box {\n border-radius: 0.8rem;\n width: @search-width;\n display: inline-flex;\n flex-direction: row;\n white-space: nowrap;\n box-shadow: var(--color-search-shadow);\n}\n\n#clear_search {\n display: block;\n border-collapse: separate;\n box-sizing: border-box;\n width: 1.8rem;\n margin: 0;\n padding: 0.8rem 0.2rem;\n background: none repeat scroll 0 0 var(--color-search-background);\n border: none;\n outline: none;\n color: var(--color-search-font);\n font-size: 1.1rem;\n z-index: 10000;\n\n &:hover {\n color: var(--color-search-background-hover);\n }\n\n &.empty * {\n display: none;\n }\n}\n\nhtml.no-js #clear_search.hide_if_nojs {\n display: none;\n}\n\n#q,\n#send_search {\n display: block;\n margin: 0;\n padding: 0.8rem;\n background: none repeat scroll 0 0 var(--color-search-background);\n border: none;\n outline: none;\n color: var(--color-search-font);\n font-size: 1.1rem;\n z-index: 2;\n}\n\n#q {\n width: 100%;\n .ltr-padding-left(1rem);\n .ltr-padding-right(0) !important;\n .ltr-rounded-left-corners(0.8rem);\n}\n\n#q::-ms-clear,\n#q::-webkit-search-cancel-button {\n display: none;\n}\n\n#send_search {\n .ltr-rounded-right-corners(0.8rem);\n\n &:hover {\n cursor: pointer;\n background-color: var(--color-search-background-hover);\n color: var(--color-search-background);\n }\n}\n\n.no-js #clear_search,\n.no-js #send_search {\n width: auto !important;\n .ltr-border-left(1px solid var(--color-search-border));\n}\n\n.search_filters {\n margin-top: 0.6rem;\n .ltr-margin-right(0);\n margin-bottom: 0;\n .ltr-margin-left(@results-offset + 0.6rem);\n display: flex;\n overflow-x: auto;\n overscroll-behavior-inline: contain;\n\n select {\n background-color: inherit;\n\n &:hover,\n &:focus {\n color: var(--color-base-font);\n }\n }\n}\n\n@media screen and (max-width: @tablet) {\n #search_header {\n padding: 1.5em @results-tablet-offset 0 @results-tablet-offset;\n column-gap: @results-tablet-offset;\n }\n\n .search_filters {\n margin-top: 0.6rem;\n .ltr-margin-right(0);\n margin-bottom: 0;\n .ltr-margin-left(@results-tablet-offset + 3rem);\n }\n\n #categories {\n font-size: 90%;\n clear: both;\n\n .checkbox_container {\n margin: auto;\n margin-top: 2px;\n }\n }\n}\n\n@media screen and (max-width: @tablet) and (hover: none) {\n #main_index,\n #main_results {\n #categories_container {\n width: max-content;\n\n .category {\n display: inline-block;\n width: auto;\n }\n }\n\n #categories {\n width: 100%;\n .ltr-text-align-left();\n overflow-x: scroll;\n overflow-y: hidden;\n -webkit-overflow-scrolling: touch;\n }\n }\n}\n\n@media screen and (max-width: @phone) {\n #search_header {\n width: 100%;\n margin: 0;\n padding: 0.1rem 0 0 0;\n column-gap: 0;\n row-gap: 0;\n grid-template-areas:\n \"logo search\"\n \"categories categories\";\n }\n\n .search_logo {\n padding: 0;\n }\n\n .search_box {\n width: 98%;\n display: flex;\n margin: 0 auto;\n }\n\n #q {\n width: 100%;\n flex: 1;\n }\n\n .search_filters {\n margin: 0;\n }\n\n .category {\n display: inline-block;\n width: auto;\n margin: 0;\n\n label {\n padding: 1rem !important;\n margin: 0 !important;\n\n svg {\n display: none;\n }\n }\n }\n\n #search_view:focus-within {\n display: block;\n background-color: var(--color-search-background);\n position: absolute;\n top: 0;\n height: 100%;\n width: 100%;\n z-index: 10000;\n\n .search_box {\n border-bottom: 1px solid var(--color-search-border);\n width: 100%;\n border-radius: 0;\n box-shadow: none;\n\n #send_search {\n .ltr-margin-right(0) !important; // Delete when send_search button is disabled on mobile.\n }\n\n * {\n border: none;\n border-radius: 0;\n box-shadow: none;\n }\n }\n }\n\n #main_results #q:placeholder-shown ~ #send_search {\n .ltr-margin-right(2.6rem);\n transition: margin 0.1s;\n }\n}\n\n@media screen and (max-width: @ultra-small-phone) {\n #search_header {\n grid-template-areas:\n \"search search\"\n \"categories categories\";\n }\n\n #search_logo {\n display: none;\n }\n}\n\n#categories {\n .disable-user-select;\n\n &::-webkit-scrollbar {\n width: 0;\n height: 0;\n }\n}\n\n#categories_container {\n position: relative;\n}\n","/*\n--center-page-width overrides the less variable @results-width when the results are centered\nsee the CSS rules for #results in style.less ( grid-template-columns and gap).\n\nIn this file, the --center-page-width values comes from the Oscar theme (Bootstrap 3).\n\nAll rules starts with \".center-aligment-yes #main_results\" to be enabled only\non the /search URL and when the \"center alignment\" preference is enabled.\n*/\n\n@media screen and (min-width: @phone) {\n .center-aligment-yes #main_results {\n --center-page-width: 48rem;\n }\n}\n\n@media screen and (min-width: 62rem) {\n .center-aligment-yes #main_results {\n --center-page-width: 60rem;\n }\n}\n\n@media screen and (min-width: @tablet) {\n .center-aligment-yes #main_results {\n --center-page-width: 73rem;\n }\n}\n\n@media screen and (min-width: @phone) and (max-width: @tablet) {\n // any change must be reset in @media screen and (min-width: @tablet) { ... }\n .center-aligment-yes #main_results {\n #results {\n grid-template-columns: 60% calc(40% - @results-gap);\n margin-left: 0;\n margin-right: 0;\n }\n\n #urls {\n .ltr-margin-left(3rem);\n }\n\n #sidebar {\n .ltr-margin-right(1rem);\n }\n\n #backToTop {\n .ltr-left(calc(60% + 1rem));\n }\n }\n}\n\n@media screen and (min-width: @tablet) {\n .center-aligment-yes #main_results {\n display: flex;\n flex-direction: column;\n align-items: center;\n\n #search {\n width: 100%;\n display: flex;\n flex-direction: column;\n align-items: center;\n }\n\n #search_header {\n grid-template-columns: calc(50% - 4.5rem - var(--center-page-width) / 2) 3rem var(--center-page-width);\n grid-template-areas: \"na logo search\" \"na spacer categories\";\n column-gap: 1.2rem; // from search.less\n width: 100%;\n padding-left: 0;\n padding-right: 0;\n }\n\n .search_filters {\n .ltr-margin-left(0.5rem);\n width: var(--center-page-width);\n }\n\n #results {\n // from style.less (when screen width = @tablet, reset layout from tablet)\n .ltr-margin-right(2rem);\n .ltr-margin-left(@results-offset);\n //\n\n &.only_template_images,\n &.image-detail-open {\n // * grid-template-columns and .ltr-margin-left are set in style.less\n // * With .image-detail-open.only_template_images, the width is set in detail.less\n // * #results is going to be centered because of the #main_results rules,\n // align-self aligns the results on the left or right according to the language.\n align-self: flex-start;\n }\n\n &:not(.only_template_images):not(.image-detail-open) {\n // the gap is set in style.less\n .ltr-margin-left(1.5rem);\n grid-template-columns: calc(var(--center-page-width) - @results-gap - @results-sidebar-width) @results-sidebar-width;\n\n #backToTop {\n .ltr-left(calc(50% - @results-sidebar-width - @results-gap + 1rem + var(--center-page-width) / 2));\n }\n }\n\n .result .content {\n max-width: inherit;\n }\n }\n\n // from style.less (when screen width = @tablet, reset layout from tablet)\n #urls {\n .ltr-margin-left(0);\n }\n\n #sidebar {\n .ltr-margin-right(0);\n }\n }\n}\n","/*\n* SearXNG, A privacy-respecting, hackable metasearch engine\n*\n* To convert \"style.less\" to \"style.css\" run: $make styles\n*/\n\n// stylelint-disable no-descending-specificity\n\n@import (inline) \"../../node_modules/normalize.css/normalize.css\";\n@import \"definitions.less\";\n@import \"mixins.less\";\n@import \"code.less\";\n@import \"toolkit.less\";\n@import \"autocomplete.less\";\n@import \"detail.less\";\n@import \"animations.less\";\n@import \"embedded.less\";\n@import \"info.less\";\n@import \"new_issue.less\";\n@import \"stats.less\";\n@import \"result_templates.less\";\n\n// for index.html template\n@import \"index.less\";\n\n// for preferences.html template\n@import \"preferences.less\";\n\n// Search-Field\n@import \"search.less\";\n\n// to center the results\n@import \"style-center.less\";\n\n// ion-icon\n.ion-icon {\n display: inline-block;\n vertical-align: bottom;\n line-height: 1;\n text-decoration: inherit;\n .ltr-transform();\n}\n\n.ion-icon-small {\n width: 1rem;\n height: 1rem;\n .ion-icon;\n}\n\n.ion-icon-big {\n width: 1.5rem;\n height: 1.5rem;\n .ion-icon;\n}\n\n// Main LESS-Code\nhtml {\n font-family: sans-serif;\n font-size: 0.9em;\n .text-size-adjust;\n\n color: var(--color-base-font);\n background-color: var(--color-base-background);\n padding: 0;\n margin: 0;\n}\n\nbody,\nmain {\n padding: 0;\n margin: 0;\n}\n\nbody {\n display: flex;\n flex-direction: column;\n height: 100vh;\n margin: 0;\n}\n\nmain {\n width: 100%;\n margin-bottom: 2rem;\n flex: 1;\n}\n\n.page_with_header {\n margin: 2em auto;\n width: 85em;\n}\n\nfooter {\n clear: both;\n min-height: 4rem;\n padding: 1rem 0;\n width: 100%;\n text-align: center;\n background-color: var(--color-footer-background);\n border-top: 1px solid var(--color-footer-border);\n overflow: hidden;\n\n p {\n font-size: 0.9em;\n }\n}\n\n.page_with_header .logo {\n height: 40px;\n}\n\ninput[type=\"submit\"],\n#results button[type=\"submit\"] {\n padding: 0.7rem;\n display: inline-block;\n background: var(--color-btn-background);\n color: var(--color-btn-font);\n .rounded-corners;\n\n border: 0;\n cursor: pointer;\n}\n\na {\n text-decoration: none;\n color: var(--color-url-font);\n\n &:visited {\n color: var(--color-url-visited-font);\n\n .highlight {\n color: var(--color-url-visited-font);\n }\n }\n}\n\narticle[data-vim-selected] {\n background: var(--color-result-vim-selected);\n .ltr-border-left(0.2rem solid var(--color-result-vim-arrow));\n .ltr-rounded-right-corners(10px);\n}\n\narticle.result-images[data-vim-selected] {\n background: var(--color-result-vim-arrow);\n border: none;\n .rounded-corners;\n\n .image_thumbnail {\n filter: opacity(60%);\n }\n\n span.title,\n span.source {\n color: var(--color-result-image-span-font-selected);\n }\n}\n\narticle[data-vim-selected].category-videos,\narticle[data-vim-selected].category-news,\narticle[data-vim-selected].category-map,\narticle[data-vim-selected].category-music,\narticle[data-vim-selected].category-files,\narticle[data-vim-selected].category-social {\n border: 1px solid var(--color-result-vim-arrow);\n .rounded-corners;\n}\n\n.result {\n margin: @results-margin 0;\n padding: @result-padding;\n .ltr-border-left(0.2rem solid transparent);\n\n h3 {\n font-size: 1.2rem;\n word-wrap: break-word;\n margin: 0.4rem 0 0.4rem 0;\n padding: 0;\n\n a {\n color: var(--color-result-link-font);\n font-weight: normal;\n font-size: 1.1em;\n\n &:visited {\n color: var(--color-result-link-visited-font);\n }\n\n &:focus,\n &:hover {\n text-decoration: underline;\n border: none;\n outline: none;\n }\n }\n }\n\n .cache_link,\n .proxyfied_link {\n font-size: 0.9em !important;\n }\n\n .content,\n .stat {\n font-size: 0.9em;\n margin: 0;\n padding: 0;\n max-width: 54em;\n word-wrap: break-word;\n line-height: 1.24;\n\n .highlight {\n color: var(--color-result-description-highlight-font);\n background: inherit;\n font-weight: bold;\n }\n }\n\n .altlink a {\n font-size: 0.9em;\n margin: 0 10px 0 0;\n .show-content-button;\n }\n\n .codelines {\n .highlight {\n color: inherit;\n background: inherit;\n font-weight: normal;\n }\n }\n\n .url_wrapper {\n display: flex;\n font-size: 1rem;\n color: var(--color-result-url-font);\n flex-wrap: nowrap;\n overflow: hidden;\n flex-direction: row;\n margin: 0;\n padding: 0;\n\n .url_o1 {\n white-space: nowrap;\n flex-shrink: 1;\n }\n\n .url_o1::after {\n content: \" \";\n width: 1ch;\n display: inline-block;\n }\n\n .url_o2 {\n overflow: hidden;\n white-space: nowrap;\n flex-basis: content;\n flex-grow: 0;\n flex-shrink: 1;\n text-align: right;\n\n .url_i2 {\n float: right;\n }\n }\n }\n\n .published_date,\n .result_length,\n .result_author,\n .result_shipping,\n .result_source_country {\n font-size: 0.8em;\n color: var(--color-result-publishdate-font);\n }\n\n .result_price {\n font-size: 1.2em;\n color: var(--color-result-description-highlight-font);\n }\n\n img {\n &.thumbnail {\n .ltr-float-left();\n padding-top: 0.6rem;\n .ltr-padding-right(1rem);\n width: 20rem;\n height: unset; // remove heigth value that was needed for lazy loading\n }\n\n &.image {\n .ltr-float-left();\n padding-top: 0.6rem;\n .ltr-padding-right(1rem);\n width: 7rem;\n max-height: 7rem;\n object-fit: scale-down;\n object-position: right top;\n }\n }\n\n .break {\n clear: both;\n }\n}\n\n.template_group_images {\n display: flex;\n flex-wrap: wrap;\n}\n\n.template_group_images::after {\n flex-grow: 10;\n content: \"\";\n}\n\n.category-videos,\n.category-news,\n.category-map,\n.category-music,\n.category-files,\n.category-social {\n border: 1px solid var(--color-result-border);\n margin: 1rem @results-tablet-offset 0 @results-tablet-offset !important;\n .rounded-corners;\n}\n\n.category-social .image {\n width: auto !important;\n min-width: 48px;\n min-height: 48px;\n padding: 0 5px 25px 0 !important;\n}\n\n.audio-control audio {\n width: 100%;\n padding: 10px 0 0 0;\n}\n\n.embedded-content iframe {\n width: 100%;\n padding: 10px 0 0 0;\n}\n\n.result-videos .content {\n overflow: hidden;\n}\n\n.result-videos .embedded-video iframe {\n width: 100%;\n aspect-ratio: 16 / 9;\n padding: 10px 0 0 0;\n}\n\n@supports not (aspect-ratio: 1 / 1) {\n // support older browsers which do not have aspect-ratio\n // https://caniuse.com/?search=aspect-ratio\n .result-videos .embedded-video iframe {\n height: calc(@results-width * 9 / 16);\n }\n}\n\n.engines {\n .ltr-float-right();\n color: var(--color-result-engines-font);\n\n span {\n font-size: smaller;\n margin-top: 0;\n margin-bottom: 0;\n .ltr-margin-right(0.5rem);\n .ltr-margin-left(0);\n }\n}\n\n.small_font {\n font-size: 0.8em;\n}\n\n.highlight {\n color: var(--color-result-link-font-highlight);\n background: inherit;\n}\n\n.empty_element {\n font-style: italic;\n}\n\n.result-images {\n flex-grow: 1;\n padding: 0.5rem 0.5rem 3rem 0.5rem;\n margin: 0.25rem;\n border: none !important;\n height: @results-image-row-height;\n\n & > a {\n position: relative;\n }\n\n img {\n margin: 0;\n padding: 0;\n border: none;\n height: 100%;\n width: 100%;\n object-fit: cover;\n vertical-align: bottom;\n background: var(--color-result-image-background);\n }\n\n span.title,\n span.source {\n display: block;\n position: absolute;\n\n width: 100%;\n font-size: 0.9rem;\n color: var(--color-result-image-span-font);\n padding: 0.5rem 0 0 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n\n span.source {\n padding: 1.8rem 0 0 0;\n font-size: 0.7rem;\n }\n}\n\n.result-map {\n img.image {\n .ltr-float-right() !important;\n height: 100px !important;\n width: auto !important;\n }\n\n table {\n font-size: 0.9em;\n width: auto;\n border-collapse: separate;\n border-spacing: 0 0.35rem;\n\n th {\n font-weight: inherit;\n width: 17rem;\n vertical-align: top;\n .ltr-text-align-left();\n }\n\n td {\n vertical-align: top;\n .ltr-text-align-left();\n }\n }\n}\n\n.hidden {\n display: none !important;\n}\n\n#results {\n margin-top: 1rem;\n .ltr-margin-right(2rem);\n margin-bottom: 0;\n .ltr-margin-left(@results-offset);\n display: grid;\n grid-template-columns: @results-width @results-sidebar-width;\n grid-template-rows: min-content min-content 1fr min-content;\n gap: 0 @results-gap;\n grid-template-areas:\n \"corrections sidebar\"\n \"answers sidebar\"\n \"urls sidebar\"\n \"pagination sidebar\";\n}\n\n#results #sidebar *:first-child,\n#results #urls *:first-child {\n margin-top: 0;\n}\n\n#urls {\n padding: 0;\n grid-area: urls;\n}\n\n#suggestions {\n .wrapper {\n display: flex;\n flex-flow: row wrap;\n justify-content: flex-end;\n\n form {\n display: inline-block;\n flex: 1 1 50%;\n }\n }\n}\n\n#suggestions,\n#infoboxes {\n input {\n padding: 0;\n margin: 3px;\n font-size: 0.9em;\n display: inline-block;\n background: transparent;\n color: var(--color-result-search-url-font);\n cursor: pointer;\n }\n\n input[type=\"submit\"],\n .infobox .url a {\n color: var(--color-result-link-font);\n text-decoration: none;\n font-size: 0.9rem;\n\n &:hover {\n text-decoration: underline;\n }\n }\n}\n\n#corrections {\n grid-area: corrections;\n display: flex;\n flex-flow: row wrap;\n margin: 0 0 1em 0;\n\n h4,\n input[type=\"submit\"] {\n display: inline-block;\n padding: 0.5rem;\n margin: 0.5rem;\n }\n\n input[type=\"submit\"] {\n font-size: 0.8rem;\n .rounded-corners-tiny;\n }\n}\n\n#suggestions .title,\n#search_url .title,\n#apis .title {\n margin: 2em 0 0.5em 0;\n color: var(--color-base-font);\n}\n\n#answers {\n grid-area: answers;\n background: var(--color-answer-background);\n padding: @result-padding;\n margin: 1rem 0;\n margin-top: 0;\n color: var(--color-answer-font);\n .rounded-corners;\n\n h4 {\n display: none;\n }\n\n span {\n overflow-wrap: anywhere;\n }\n}\n\n#infoboxes {\n form {\n min-width: 210px;\n }\n}\n\n#sidebar {\n grid-area: sidebar;\n word-wrap: break-word;\n color: var(--color-sidebar-font);\n\n .infobox {\n margin: 10px 0 10px;\n border: 1px solid var(--color-sidebar-border);\n padding: 1rem;\n font-size: 0.9em;\n .rounded-corners;\n\n h2 {\n margin: 0 0 0.5em 0;\n }\n\n img {\n max-width: 100%;\n max-height: 12em;\n display: block;\n margin: 0 auto;\n padding: 0;\n }\n\n dt {\n font-weight: bold;\n }\n\n .attributes {\n dl {\n margin: 0.5em 0;\n }\n\n dt {\n display: inline;\n margin-top: 0.5em;\n .ltr-margin-right(0.25em);\n margin-bottom: 0.5em;\n .ltr-margin-left(0);\n padding: 0;\n }\n\n dd {\n display: inline;\n margin: 0.5em 0;\n padding: 0;\n }\n }\n\n input {\n font-size: 1em;\n }\n\n br {\n clear: both;\n }\n\n .attributes,\n .urls {\n clear: both;\n }\n }\n}\n\n#search_url {\n margin-top: 8px;\n\n div.selectable_url {\n pre {\n width: 200em;\n }\n }\n}\n\n#links_on_top {\n position: absolute;\n .ltr-right(1.8rem);\n .ltr-text-align-right();\n top: 2.2rem;\n padding: 0;\n border: 0;\n display: flex;\n align-items: center;\n font-size: 1em;\n color: var(--color-search-font);\n\n a {\n display: flex;\n align-items: center;\n margin-left: 1em;\n\n svg {\n font-size: 1.2em;\n .ltr-margin-right(0.125em);\n }\n }\n\n a,\n a:link *,\n a:hover *,\n a:visited *,\n a:active * {\n color: var(--color-search-font);\n }\n}\n\n#pagination {\n grid-area: pagination;\n\n br {\n clear: both;\n }\n}\n\n#apis {\n margin-top: 8px;\n clear: both;\n}\n\n#backToTop {\n border: 1px solid var(--color-backtotop-border);\n margin: 0;\n padding: 0;\n font-size: 1em;\n background: var(--color-backtotop-background);\n position: fixed;\n bottom: 8rem;\n .ltr-left(@results-width + @results-offset + (0.5 * @results-gap - 1.2em));\n transition: opacity 0.5s;\n opacity: 0;\n .rounded-corners;\n\n a {\n display: block;\n margin: 0;\n padding: 0.7em;\n }\n\n a,\n a:visited,\n a:hover,\n a:active {\n color: var(--color-backtotop-font);\n }\n}\n\n#results.scrolling #backToTop {\n opacity: 1;\n}\n\n/*\n tablet layout\n*/\n\n.results-tablet() {\n #links_on_top {\n span {\n display: none;\n }\n }\n\n .page_with_header {\n margin: 2rem 0.5rem;\n width: auto;\n }\n\n #infoboxes {\n position: inherit;\n max-width: inherit;\n\n .infobox {\n clear: both;\n\n img {\n .ltr-float-left();\n max-width: 10em;\n margin-top: 0.5em;\n .ltr-margin-right(0.5em);\n margin-bottom: 0.5em;\n .ltr-margin-left(0);\n }\n }\n }\n\n #sidebar {\n margin: 0 @results-tablet-offset @results-margin @results-tablet-offset;\n padding: 0;\n float: none;\n border: none;\n width: auto;\n\n input {\n border: 0;\n }\n }\n\n #apis {\n display: none;\n }\n\n #search_url {\n display: none;\n }\n\n .result {\n .thumbnail {\n max-width: 98%;\n }\n\n .url {\n span.url {\n display: block;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 100%;\n }\n }\n\n .engines {\n .ltr-float-right();\n padding: 0 0 3px 0;\n }\n }\n\n .result-images {\n border-bottom: none !important;\n }\n\n .image_result {\n max-width: 98%;\n\n img {\n max-width: 98%;\n }\n }\n\n #backToTop {\n display: none;\n }\n\n #pagination {\n margin: 2rem 0 0 0 !important;\n }\n\n #main_results div#results {\n margin: 1rem auto 0 auto;\n justify-content: center;\n display: grid;\n grid-template-columns: @results-width;\n grid-template-rows: min-content min-content min-content 1fr min-content min-content;\n gap: 0;\n grid-template-areas:\n \"corrections\"\n \"answers\"\n \"sidebar\"\n \"urls\"\n \"pagination\";\n }\n}\n\n@media screen and (max-width: calc(@tablet - 0.5px)) {\n #links_on_top {\n span {\n display: none;\n }\n }\n}\n\n@media screen and (max-width: 52rem) {\n body.results_endpoint {\n #links_on_top {\n .link_on_top_about,\n .link_on_top_donate {\n display: none;\n }\n }\n }\n}\n\n@media screen and (min-width: @phone) and (max-width: @tablet) {\n // when .center-aligment-yes, see style-center.less\n // the media query includes \"min-width: @phone\"\n // because the phone layout includes the tablet layout unconditionally.\n .center-aligment-no {\n .results-tablet();\n }\n}\n\n/* Misc */\n\n#main_results div#results.only_template_images {\n margin: 1rem @results-tablet-offset 0 @results-tablet-offset;\n display: grid;\n grid-template-columns: 100%;\n grid-template-rows: min-content min-content min-content 1fr min-content;\n gap: 0;\n grid-template-areas:\n \"corrections\"\n \"answers\"\n \"sidebar\"\n \"urls\"\n \"pagination\";\n\n #sidebar {\n display: none;\n }\n\n #urls {\n margin: 0;\n display: flex;\n flex-wrap: wrap;\n }\n\n #urls::after {\n flex-grow: 10;\n content: \"\";\n }\n\n #backToTop {\n .ltr-left(auto);\n .ltr-right(1rem);\n }\n\n #pagination {\n .ltr-margin-right(4rem);\n }\n}\n\n/*\n phone layout\n*/\n\n@media screen and (max-width: @phone) {\n // based on the tablet layout\n .results-tablet();\n\n html {\n background-color: var(--color-base-background-mobile);\n }\n\n #main_results div#results {\n grid-template-columns: 100%;\n margin: 1rem 0 0 0;\n }\n\n #links_on_top {\n top: 0.8rem;\n .ltr-right(0.7rem);\n }\n\n #main_index #links_on_top {\n top: 0.5rem;\n .ltr-right(0.5rem);\n }\n\n #results {\n margin: 0;\n padding: 0;\n }\n\n #pagination {\n margin: 2rem 1rem 0 1rem !important;\n }\n\n article[data-vim-selected] {\n border: 1px solid var(--color-result-vim-arrow);\n .rounded-corners;\n }\n\n .result {\n background: var(--color-result-background);\n margin: 1rem 0;\n }\n\n .result-images {\n margin: 0;\n height: @results-image-row-height-phone;\n background: var(--color-base-background-mobile);\n }\n\n .infobox {\n border: none !important;\n background-color: var(--color-sidebar-background);\n }\n}\n\n/*\n small-phone layout\n*/\n\n@media screen and (max-width: @small-phone) {\n .result-videos {\n img.thumbnail {\n float: none !important;\n }\n\n .content {\n overflow: inherit;\n }\n }\n}\n\npre code {\n white-space: pre-wrap;\n}\n"]} \ No newline at end of file
diff --git a/searx/static/themes/simple/src/generated/pygments.less b/searx/static/themes/simple/src/generated/pygments.less
index 2e8213c2c..b016e97f9 100644
--- a/searx/static/themes/simple/src/generated/pygments.less
+++ b/searx/static/themes/simple/src/generated/pygments.less
@@ -1,6 +1,6 @@
/*
this file is generated automatically by searxng_extra/update/update_pygments.py
- using pygments version 2.12.0
+ using pygments version 2.13.0
*/
.code-highlight .linenos {
diff --git a/searx/templates/simple/opensearch.xml b/searx/templates/simple/opensearch.xml
index 230f327a5..212cecc80 100644
--- a/searx/templates/simple/opensearch.xml
+++ b/searx/templates/simple/opensearch.xml
@@ -1,22 +1,21 @@
<?xml version="1.0" encoding="utf-8"?>
-<OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/">
+<OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/" xmlns:moz="http://www.mozilla.org/2006/browser/search/">
<ShortName>{{ instance_name }}</ShortName>
- <Description>a privacy-respecting, hackable metasearch engine</Description>
+ <LongName>SearXNG metasearch</LongName>
+ <Description>SearXNG is a metasearch engine that respects your privacy.</Description>
<InputEncoding>UTF-8</InputEncoding>
- <Image>{{ url_for('static', filename='img/favicon.png', _external=True) }}</Image>
- <LongName>searx metasearch</LongName>
- {% if opensearch_method == 'get' %}
- <Url rel="results" type="text/html" method="get" template="{{ url_for('search', _external=True) }}?q={searchTerms}"/>
+ <Image type="image/png">{{ url_for('static', filename='img/favicon.png', _external=True) }}</Image>
+ {% if opensearch_method == 'GET' %}
+ <Url rel="results" type="text/html" method="{{ opensearch_method }}" template="{{ url_for('search', _external=True) }}?q={searchTerms}"/>
{% else %}
- <Url rel="results" type="text/html" method="post" template="{{ url_for('search', _external=True) }}">
- <Param name="q" value="{searchTerms}" />
- </Url>
+ <Url rel="results" type="text/html" method="{{ opensearch_method }}" template="{{ url_for('search', _external=True) }}">
+ <Param name="q" value="{searchTerms}" />
+ </Url>
{% endif %}
{% if autocomplete %}
- <Url rel="suggestions" type="application/x-suggestions+json" template="{{ url_for('autocompleter', _external=True) }}?q={searchTerms}"/>
+ <Url rel="suggestions" type="application/x-suggestions+json" method="{{ opensearch_method }}" template="{{ url_for('autocompleter', _external=True) }}?q={searchTerms}"/>
{% endif %}
-
- <Url type="application/opensearchdescription+xml"
- rel="self"
- template="{{ opensearch_url }}" />
+ <Url rel="self" type="application/opensearchdescription+xml" method="{{ opensearch_method }}" template="{{ opensearch_url }}" />
+ <Query role="example" searchTerms="SearXNG" />
+ <moz:SearchForm>{{ url_for('search', _external=True) }}</moz:SearchForm>
</OpenSearchDescription>
diff --git a/searx/translations/af/LC_MESSAGES/messages.mo b/searx/translations/af/LC_MESSAGES/messages.mo
index cc707ac5d..6e56cca6d 100644
--- a/searx/translations/af/LC_MESSAGES/messages.mo
+++ b/searx/translations/af/LC_MESSAGES/messages.mo
Binary files differ
diff --git a/searx/translations/af/LC_MESSAGES/messages.po b/searx/translations/af/LC_MESSAGES/messages.po
index fd23f3330..d85dad2d6 100644
--- a/searx/translations/af/LC_MESSAGES/messages.po
+++ b/searx/translations/af/LC_MESSAGES/messages.po
@@ -9,7 +9,7 @@ msgstr ""
"Project-Id-Version: PROJECT VERSION\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2022-07-23 14:08+0000\n"
-"PO-Revision-Date: 2022-08-04 19:15+0000\n"
+"PO-Revision-Date: 2022-08-19 07:18+0000\n"
"Last-Translator: Markus Heiser <markus.heiser@darmarit.de>\n"
"Language-Team: Afrikaans <https://weblate.bubu1.eu/projects/searxng/searxng/"
"af/>\n"
@@ -143,7 +143,7 @@ msgstr "donker"
#: searx/webapp.py:165
msgid "timeout"
-msgstr ""
+msgstr "tydsverloop"
#: searx/webapp.py:166
msgid "parsing error"
@@ -171,7 +171,7 @@ msgstr "HTTP koppelingsfout"
#: searx/webapp.py:184
msgid "proxy error"
-msgstr ""
+msgstr "proksie fout"
#: searx/webapp.py:185
msgid "CAPTCHA"
@@ -309,6 +309,8 @@ msgid ""
"Avoid paywalls by redirecting to open-access versions of publications "
"when available"
msgstr ""
+"Vermy betaalmure deur na ope-toegang weergawes van publikasies te herlei "
+"wanneer beskikbaar"
#: searx/plugins/search_on_category_select.py:19
msgid "Search on category select"
@@ -319,6 +321,8 @@ msgid ""
"Perform search immediately if a category selected. Disable to select "
"multiple categories. (JavaScript required)"
msgstr ""
+"Doen soektog onmiddelik indien 'n kategorie geselekteer is. Deaktiveer om "
+"veelvoudige kategoriee te selekteer. (JavaScript benodig)"
#: searx/plugins/self_info.py:20
msgid "Self Informations"
@@ -329,6 +333,8 @@ msgid ""
"Displays your IP if the query is \"ip\" and your user agent if the query "
"contains \"user agent\"."
msgstr ""
+"Vertoon jou IP indien die navraag \"ip\" is en jou gebruiker agent indien "
+"die navraag \"user agent\" bevat."
#: searx/plugins/tor_check.py:25
msgid "Tor check plugin"
@@ -339,20 +345,25 @@ msgid ""
"This plugin checks if the address of the request is a TOR exit node, and "
"informs the user if it is, like check.torproject.org but from searxng."
msgstr ""
+"Hierdie inprop toepassing kontroleer of die adres van die versoek 'n TOR "
+"uitgang nodus is en stel die gebruiker in kennis indien wel, soos "
+"check.torproject.org maar vanaf searxng."
#: searx/plugins/tor_check.py:62
msgid ""
"The TOR exit node list (https://check.torproject.org/exit-addresses) is "
"unreachable."
msgstr ""
+"Die TOR uitgang nodus lys (https://check.torproject.org/exit-addresses) is "
+"nie bereikbaar nie."
#: searx/plugins/tor_check.py:78
msgid "You are using TOR. Your IP address seems to be: {ip_address}."
-msgstr ""
+msgstr "Jy gebruik tans TOR. Jou IP adres lyk na : {ip_address}."
#: searx/plugins/tor_check.py:84
msgid "You are not using TOR. Your IP address seems to be: {ip_address}."
-msgstr ""
+msgstr "Jy gebruik nie tans TOR nie. Jou IP adres lyk na: {ip_address}."
#: searx/plugins/tracker_url_remover.py:29
msgid "Tracker URL remover"
@@ -374,33 +385,33 @@ msgstr ""
#: searx/templates/simple/404.html:4
msgid "Page not found"
-msgstr ""
+msgstr "Bladsy nie gevind"
#: searx/templates/simple/404.html:6
#, python-format
msgid "Go to %(search_page)s."
-msgstr ""
+msgstr "Gaan na %(search_page)s."
#: searx/templates/simple/404.html:6
msgid "search page"
-msgstr ""
+msgstr "soekblad"
#: searx/templates/simple/base.html:46
msgid "About"
-msgstr ""
+msgstr "Aangaande"
#: searx/templates/simple/base.html:50
msgid "Donate"
-msgstr ""
+msgstr "Skenk"
#: searx/templates/simple/base.html:54
#: searx/templates/simple/preferences.html:99
msgid "Preferences"
-msgstr ""
+msgstr "Voorkeure"
#: searx/templates/simple/base.html:64
msgid "Powered by"
-msgstr ""
+msgstr "Aangedryf deur"
#: searx/templates/simple/base.html:64
msgid "a privacy-respecting, hackable metasearch engine"
@@ -408,7 +419,7 @@ msgstr ""
#: searx/templates/simple/base.html:65
msgid "Source code"
-msgstr ""
+msgstr "Bronkode"
#: searx/templates/simple/base.html:66
msgid "Issue tracker"
@@ -416,7 +427,7 @@ msgstr ""
#: searx/templates/simple/base.html:67 searx/templates/simple/stats.html:18
msgid "Engine stats"
-msgstr ""
+msgstr "Enjin statistieke"
#: searx/templates/simple/base.html:69
#: searx/templates/simple/messages/no_results.html:15
@@ -425,7 +436,7 @@ msgstr ""
#: searx/templates/simple/base.html:72
msgid "Privacy policy"
-msgstr ""
+msgstr "Privaatheidsbeleid"
#: searx/templates/simple/base.html:75
msgid "Contact instance maintainer"
@@ -433,16 +444,16 @@ msgstr ""
#: searx/templates/simple/categories.html:24
msgid "Click on the magnifier to perform search"
-msgstr ""
+msgstr "Kliek op die vergrootglas om 'n soektog te doen"
#: searx/templates/simple/macros.html:36
msgid "Length"
-msgstr ""
+msgstr "Lengte"
#: searx/templates/simple/macros.html:37
#: searx/templates/simple/result_templates/images.html:18
msgid "Author"
-msgstr ""
+msgstr "Outeur"
#: searx/templates/simple/macros.html:45
msgid "cached"
@@ -454,15 +465,15 @@ msgstr ""
#: searx/templates/simple/new_issue.html:64
msgid "Start submiting a new issue on GitHub"
-msgstr ""
+msgstr "Begin om 'n nuwe probleem op GitHub in te dien"
#: searx/templates/simple/new_issue.html:66
msgid "Please check for existing bugs about this engine on GitHub"
-msgstr ""
+msgstr "Kyk asseblief vir bestaande goggas vir hierdie enjin op GitHub"
#: searx/templates/simple/new_issue.html:69
msgid "I confirm there is no existing bug about the issue I encounter"
-msgstr ""
+msgstr "Ek bevestig daar is geen bestaande gogga oor die probleem wat ek teekom"
#: searx/templates/simple/new_issue.html:71
msgid "If this is a public instance, please specify the URL in the bug report"
@@ -470,11 +481,11 @@ msgstr ""
#: searx/templates/simple/new_issue.html:72
msgid "Submit a new issue on Github including the above information"
-msgstr ""
+msgstr "Dien 'n nuwe probleem in op GitHub insluitend die bogenoemde inligting"
#: searx/templates/simple/preferences.html:29
msgid "No HTTPS"
-msgstr ""
+msgstr "Geen HTTPS"
#: searx/templates/simple/messages/no_results.html:10
#: searx/templates/simple/preferences.html:31
@@ -486,17 +497,17 @@ msgstr ""
#: searx/templates/simple/preferences.html:53
#: searx/templates/simple/stats.html:67
msgid "Median"
-msgstr ""
+msgstr "Mediaan"
#: searx/templates/simple/preferences.html:54
#: searx/templates/simple/stats.html:73
msgid "P80"
-msgstr ""
+msgstr "P80"
#: searx/templates/simple/preferences.html:55
#: searx/templates/simple/stats.html:79
msgid "P95"
-msgstr ""
+msgstr "P95"
#: searx/templates/simple/preferences.html:83
msgid "Failed checker test(s): "
@@ -504,37 +515,37 @@ msgstr ""
#: searx/templates/simple/preferences.html:85
msgid "Errors:"
-msgstr ""
+msgstr "Foute:"
#: searx/templates/simple/preferences.html:105
msgid "General"
-msgstr ""
+msgstr "Algemeen"
#: searx/templates/simple/preferences.html:108
msgid "Default categories"
-msgstr ""
+msgstr "Verstek kategoriee"
#: searx/templates/simple/filters/languages.html:1
#: searx/templates/simple/preferences.html:115
msgid "Search language"
-msgstr ""
+msgstr "Soek taal"
#: searx/templates/simple/filters/languages.html:2
#: searx/templates/simple/preferences.html:118
msgid "Default language"
-msgstr ""
+msgstr "Verstek taal"
#: searx/templates/simple/preferences.html:124
msgid "What language do you prefer for search?"
-msgstr ""
+msgstr "Watter taal verkies jy vir soek?"
#: searx/templates/simple/preferences.html:129
msgid "Autocomplete"
-msgstr ""
+msgstr "Outovoltooi"
#: searx/templates/simple/preferences.html:138
msgid "Find stuff as you type"
-msgstr ""
+msgstr "Vind goed soos jy tik"
#: searx/templates/simple/filters/safesearch.html:1
#: searx/templates/simple/filters/safesearch.html:2
@@ -543,26 +554,26 @@ msgstr ""
#: searx/templates/simple/preferences.html:143
#: searx/templates/simple/preferences.html:311
msgid "SafeSearch"
-msgstr ""
+msgstr "SafeSearch"
#: searx/templates/simple/filters/safesearch.html:2
#: searx/templates/simple/preferences.html:146
msgid "Strict"
-msgstr ""
+msgstr "Streng"
#: searx/templates/simple/filters/safesearch.html:3
#: searx/templates/simple/preferences.html:147
msgid "Moderate"
-msgstr ""
+msgstr "Matig"
#: searx/templates/simple/filters/safesearch.html:4
#: searx/templates/simple/preferences.html:148
msgid "None"
-msgstr ""
+msgstr "Geen"
#: searx/templates/simple/preferences.html:151
msgid "Filter content"
-msgstr ""
+msgstr "Filter inhoud"
#: searx/templates/simple/preferences.html:157
msgid "Open Access DOI resolver"
@@ -592,23 +603,23 @@ msgstr ""
#: searx/templates/simple/preferences.html:190
msgid "Change the language of the layout"
-msgstr ""
+msgstr "Verander die uitleg taal"
#: searx/templates/simple/preferences.html:195
msgid "Theme"
-msgstr ""
+msgstr "Tema"
#: searx/templates/simple/preferences.html:203
msgid "Change SearXNG layout"
-msgstr ""
+msgstr "Verander SearXNG uitleg"
#: searx/templates/simple/preferences.html:206
msgid "Theme style"
-msgstr ""
+msgstr "Tema styl"
#: searx/templates/simple/preferences.html:214
msgid "Choose auto to follow your browser settings"
-msgstr ""
+msgstr "Kies outo om jou blaaier verstellings te volg"
#: searx/templates/simple/preferences.html:217
msgid "Center Alignment"
@@ -618,41 +629,43 @@ msgstr ""
#: searx/templates/simple/preferences.html:232
#: searx/templates/simple/preferences.html:244
msgid "On"
-msgstr ""
+msgstr "Aan"
#: searx/templates/simple/preferences.html:221
#: searx/templates/simple/preferences.html:233
#: searx/templates/simple/preferences.html:245
msgid "Off"
-msgstr ""
+msgstr "Af"
#: searx/templates/simple/preferences.html:224
msgid "Displays results in the center of the page (Oscar layout)."
-msgstr ""
+msgstr "Vertoon resultate in die middel van die bladsy (Oscar uitleg)."
#: searx/templates/simple/preferences.html:229
msgid "Results on new tabs"
-msgstr ""
+msgstr "Resultate op nuwe oortjies"
#: searx/templates/simple/preferences.html:236
msgid "Open result links on new browser tabs"
-msgstr ""
+msgstr "Maak resultaat skakels oop in nuwe blaaier oortjies"
#: searx/templates/simple/preferences.html:241
msgid "Infinite scroll"
-msgstr ""
+msgstr "Oneindige blaai"
#: searx/templates/simple/preferences.html:248
msgid "Automatically load next page when scrolling to bottom of current page"
msgstr ""
+"Laai die volgende bladsy outomaties wanneer blaai na die onderkant van die "
+"huidige bladsy"
#: searx/templates/simple/preferences.html:254
msgid "Privacy"
-msgstr ""
+msgstr "Privaatheid"
#: searx/templates/simple/preferences.html:257
msgid "HTTP Method"
-msgstr ""
+msgstr "HTTP Metode"
#: searx/templates/simple/preferences.html:264
msgid ""
@@ -660,42 +673,47 @@ msgid ""
"href=\"http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol#Request_methods\""
" rel=\"external\">learn more about request methods</a>"
msgstr ""
+"Verander hoe vorms ingedien word, <a href=\"http://en.wikipedia.org/wiki/"
+"Hypertext_Transfer_Protocol#Request_methods\" rel=\"external\"> leer meer "
+"oor versoek metodes</a>"
#: searx/templates/simple/preferences.html:269
msgid "Image proxy"
-msgstr ""
+msgstr "Beeld proksie"
#: searx/templates/simple/preferences.html:272
#: searx/templates/simple/preferences.html:284
msgid "Enabled"
-msgstr ""
+msgstr "Geaktiveer"
#: searx/templates/simple/preferences.html:273
#: searx/templates/simple/preferences.html:285
msgid "Disabled"
-msgstr ""
+msgstr "Gedeaktiveer"
#: searx/templates/simple/preferences.html:276
msgid "Proxying image results through SearXNG"
-msgstr ""
+msgstr "Proksie beeld resultate deur SearXNG"
#: searx/templates/simple/preferences.html:281
msgid "Query in the page's title"
-msgstr ""
+msgstr "Navraag in die bladsy se titel"
#: searx/templates/simple/preferences.html:288
msgid ""
"When enabled, the result page's title contains your query. Your browser "
"can record this title"
msgstr ""
+"Wanneer geaktiveer sal die resultaat se bladsy titel jou navraag bevat. Jou "
+"blaaier kan hierdie titel opneem"
#: searx/templates/simple/preferences.html:294
msgid "Engines"
-msgstr ""
+msgstr "Enjins"
#: searx/templates/simple/preferences.html:295
msgid "Currently used search engines"
-msgstr ""
+msgstr "Huidige gebruikte soekenjins"
#: searx/templates/simple/preferences.html:302
msgid ""
@@ -706,59 +724,59 @@ msgstr ""
#: searx/templates/simple/preferences.html:307
#: searx/templates/simple/preferences.html:358
msgid "Allow"
-msgstr ""
+msgstr "Laat toe"
#: searx/templates/simple/preferences.html:308
#: searx/templates/simple/stats.html:25
msgid "Engine name"
-msgstr ""
+msgstr "Enjin naam"
#: searx/templates/simple/preferences.html:309
msgid "Shortcut"
-msgstr ""
+msgstr "Kortpad"
#: searx/templates/simple/preferences.html:310
msgid "Supports selected language"
-msgstr ""
+msgstr "Ondersteun gekose taal"
#: searx/templates/simple/filters/time_range.html:1
#: searx/templates/simple/preferences.html:312
msgid "Time range"
-msgstr ""
+msgstr "Tydreeks"
#: searx/templates/simple/preferences.html:313
#: searx/templates/simple/stats.html:28
msgid "Response time"
-msgstr ""
+msgstr "Reaksietyd"
#: searx/templates/simple/preferences.html:314
msgid "Max time"
-msgstr ""
+msgstr "Maks tyd"
#: searx/templates/simple/preferences.html:315
#: searx/templates/simple/stats.html:29
msgid "Reliability"
-msgstr ""
+msgstr "Betroubaarheid"
#: searx/templates/simple/preferences.html:353
msgid "Special Queries"
-msgstr ""
+msgstr "Spesiale Navrae"
#: searx/templates/simple/preferences.html:359
msgid "Keywords"
-msgstr ""
+msgstr "Sleutelwoorde"
#: searx/templates/simple/preferences.html:360
msgid "Name"
-msgstr ""
+msgstr "Naam"
#: searx/templates/simple/preferences.html:361
msgid "Description"
-msgstr ""
+msgstr "Beskrywing"
#: searx/templates/simple/preferences.html:362
msgid "Examples"
-msgstr ""
+msgstr "Voorbeelde"
#: searx/templates/simple/preferences.html:365
msgid "This is the list of SearXNG's instant answering modules."
@@ -770,7 +788,7 @@ msgstr ""
#: searx/templates/simple/preferences.html:393
msgid "Cookies"
-msgstr ""
+msgstr "Koekies"
#: searx/templates/simple/preferences.html:395
msgid ""
diff --git a/searx/translations/bg/LC_MESSAGES/messages.mo b/searx/translations/bg/LC_MESSAGES/messages.mo
index 67330760f..1e3b2c834 100644
--- a/searx/translations/bg/LC_MESSAGES/messages.mo
+++ b/searx/translations/bg/LC_MESSAGES/messages.mo
Binary files differ
diff --git a/searx/translations/bg/LC_MESSAGES/messages.po b/searx/translations/bg/LC_MESSAGES/messages.po
index 78b000d8d..8a900feb5 100644
--- a/searx/translations/bg/LC_MESSAGES/messages.po
+++ b/searx/translations/bg/LC_MESSAGES/messages.po
@@ -8,18 +8,19 @@
# Markus Heiser <markus.heiser@darmarit.de>, 2022.
msgid ""
msgstr ""
-"Project-Id-Version: searx\n"
+"Project-Id-Version: searx\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2022-07-23 14:08+0000\n"
-"PO-Revision-Date: 2022-07-06 00:21+0000\n"
+"PO-Revision-Date: 2022-08-26 07:23+0000\n"
"Last-Translator: Markus Heiser <markus.heiser@darmarit.de>\n"
+"Language-Team: Bulgarian <https://weblate.bubu1.eu/projects/searxng/searxng/"
+"bg/>\n"
"Language: bg\n"
-"Language-Team: Bulgarian "
-"<https://weblate.bubu1.eu/projects/searxng/searxng/bg/>\n"
-"Plural-Forms: nplurals=2; plural=n != 1;\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Weblate 4.13.1\n"
"Generated-By: Babel 2.10.3\n"
#. CONSTANT_NAMES['DEFAULT_GROUP_NAME']
@@ -241,7 +242,7 @@ msgstr "Функции за статистика"
#: searx/answerers/statistics/answerer.py:48
msgid "Compute {functions} of the arguments"
-msgstr "Изчислете {функции} на аргументите"
+msgstr "Изчислете {functions} на аргументите"
#: searx/engines/openstreetmap.py:160
msgid "Get directions"
@@ -269,16 +270,21 @@ msgid ""
"format. TinEye only supports images that are JPEG, PNG, GIF, BMP, TIFF or"
" WebP."
msgstr ""
+"URL адресът на изображението не можа да бъде прочетен. Това може да се дължи "
+"на неподдържан файлов формат. TinEye поддържа само изображения, които са "
+"JPEG, PNG, GIF, BMP, TIFF или WebP."
#: searx/engines/tineye.py:46
msgid ""
"The image is too simple to find matches. TinEye requires a basic level of"
" visual detail to successfully identify matches."
msgstr ""
+"Изображението е твърде просто за намиране на съвпадения. TinEye изисква "
+"основно ниво на визуална детайлност за успешно идентифициране на съвпадения."
#: searx/engines/tineye.py:52
msgid "The image could not be downloaded."
-msgstr ""
+msgstr "Снимката не може да бъде смъкната."
#: searx/plugins/hash_plugin.py:24
msgid "Converts strings to different hash digests."
@@ -954,11 +960,11 @@ msgstr "Предупреждения"
#: searx/templates/simple/stats.html:102
msgid "Errors and exceptions"
-msgstr ""
+msgstr "Грешки и изключения"
#: searx/templates/simple/stats.html:108
msgid "Exception"
-msgstr ""
+msgstr "Изключение"
#: searx/templates/simple/stats.html:110
msgid "Message"
@@ -1374,4 +1380,3 @@ msgstr "скрий видеото"
#~ msgid "preferences"
#~ msgstr "предпочитания"
-
diff --git a/searx/translations/es/LC_MESSAGES/messages.mo b/searx/translations/es/LC_MESSAGES/messages.mo
index 83f722a60..a0a3b8553 100644
--- a/searx/translations/es/LC_MESSAGES/messages.mo
+++ b/searx/translations/es/LC_MESSAGES/messages.mo
Binary files differ
diff --git a/searx/translations/es/LC_MESSAGES/messages.po b/searx/translations/es/LC_MESSAGES/messages.po
index 5659a09de..731788731 100644
--- a/searx/translations/es/LC_MESSAGES/messages.po
+++ b/searx/translations/es/LC_MESSAGES/messages.po
@@ -25,7 +25,7 @@ msgstr ""
"Project-Id-Version: searx\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2022-07-23 14:08+0000\n"
-"PO-Revision-Date: 2022-08-05 07:18+0000\n"
+"PO-Revision-Date: 2022-08-26 07:23+0000\n"
"Last-Translator: Markus Heiser <markus.heiser@darmarit.de>\n"
"Language-Team: Spanish <https://weblate.bubu1.eu/projects/searxng/searxng/es/"
">\n"
@@ -50,7 +50,7 @@ msgstr "otro"
#. CATEGORY_NAMES['FILES']
#: searx/searxng.msg
msgid "files"
-msgstr "Archivos"
+msgstr "Ficheros"
#. CATEGORY_NAMES['GENERAL']
#: searx/searxng.msg
diff --git a/searx/translations/et/LC_MESSAGES/messages.mo b/searx/translations/et/LC_MESSAGES/messages.mo
index 7f96b022b..b75a029ec 100644
--- a/searx/translations/et/LC_MESSAGES/messages.mo
+++ b/searx/translations/et/LC_MESSAGES/messages.mo
Binary files differ
diff --git a/searx/translations/et/LC_MESSAGES/messages.po b/searx/translations/et/LC_MESSAGES/messages.po
index db4d8d935..9907f670a 100644
--- a/searx/translations/et/LC_MESSAGES/messages.po
+++ b/searx/translations/et/LC_MESSAGES/messages.po
@@ -8,18 +8,19 @@
# Markus Heiser <markus.heiser@darmarit.de>, 2022.
msgid ""
msgstr ""
-"Project-Id-Version: searx\n"
+"Project-Id-Version: searx\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2022-07-23 14:08+0000\n"
-"PO-Revision-Date: 2022-07-21 21:02+0000\n"
+"PO-Revision-Date: 2022-08-19 07:18+0000\n"
"Last-Translator: Markus Heiser <markus.heiser@darmarit.de>\n"
+"Language-Team: Estonian <https://weblate.bubu1.eu/projects/searxng/searxng/"
+"et/>\n"
"Language: et\n"
-"Language-Team: Estonian "
-"<https://weblate.bubu1.eu/projects/searxng/searxng/et/>\n"
-"Plural-Forms: nplurals=2; plural=n != 1;\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Weblate 4.13.1\n"
"Generated-By: Babel 2.10.3\n"
#. CONSTANT_NAMES['DEFAULT_GROUP_NAME']
@@ -269,6 +270,9 @@ msgid ""
"format. TinEye only supports images that are JPEG, PNG, GIF, BMP, TIFF or"
" WebP."
msgstr ""
+"Ei saanud lugeda seda pildi linki. See võib olla faili formaadi pärast. "
+"TinEye ainult lubab ainult järgmisi formaate: JPEG, PNG, GIF, BMP, TIFF või "
+"WebP."
#: searx/engines/tineye.py:46
msgid ""
@@ -1379,4 +1383,3 @@ msgstr "peida video"
#~ msgid "preferences"
#~ msgstr "eelistused"
-
diff --git a/searx/translations/fil/LC_MESSAGES/messages.mo b/searx/translations/fil/LC_MESSAGES/messages.mo
index e29967dec..e5a59760d 100644
--- a/searx/translations/fil/LC_MESSAGES/messages.mo
+++ b/searx/translations/fil/LC_MESSAGES/messages.mo
Binary files differ
diff --git a/searx/translations/fil/LC_MESSAGES/messages.po b/searx/translations/fil/LC_MESSAGES/messages.po
index dca976bbf..a4f576768 100644
--- a/searx/translations/fil/LC_MESSAGES/messages.po
+++ b/searx/translations/fil/LC_MESSAGES/messages.po
@@ -8,19 +8,20 @@
# Hachiki <ninonakano408@gmail.com>, 2022.
msgid ""
msgstr ""
-"Project-Id-Version: searx\n"
+"Project-Id-Version: searx\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2022-07-23 14:08+0000\n"
-"PO-Revision-Date: 2022-07-21 21:02+0000\n"
+"PO-Revision-Date: 2022-08-22 12:54+0000\n"
"Last-Translator: Markus Heiser <markus.heiser@darmarit.de>\n"
+"Language-Team: Filipino <https://weblate.bubu1.eu/projects/searxng/searxng/"
+"fil/>\n"
"Language: fil\n"
-"Language-Team: Filipino "
-"<https://weblate.bubu1.eu/projects/searxng/searxng/fil/>\n"
-"Plural-Forms: nplurals=2; plural=(n == 1 || n==2 || n==3) || (n % 10 != 4"
-" || n % 10 != 6 || n % 10 != 9);\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n == 1 || n==2 || n==3) || (n % 10 != 4 || "
+"n % 10 != 6 || n % 10 != 9);\n"
+"X-Generator: Weblate 4.13.1\n"
"Generated-By: Babel 2.10.3\n"
#. CONSTANT_NAMES['DEFAULT_GROUP_NAME']
@@ -279,7 +280,7 @@ msgstr ""
#: searx/engines/tineye.py:52
msgid "The image could not be downloaded."
-msgstr ""
+msgstr "Ang image na ito ay hindi maaaring i-download."
#: searx/plugins/hash_plugin.py:24
msgid "Converts strings to different hash digests."
@@ -335,27 +336,32 @@ msgstr ""
#: searx/plugins/tor_check.py:25
msgid "Tor check plugin"
-msgstr ""
+msgstr "Tor check plugin"
#: searx/plugins/tor_check.py:28
msgid ""
"This plugin checks if the address of the request is a TOR exit node, and "
"informs the user if it is, like check.torproject.org but from searxng."
msgstr ""
+"Ang plugin na ito ay tsini-check kung ang address ng request ay isang TOR "
+"exit node, at i-iinform ang user kung oo, gaya ng check.torproject.org "
+"ngunit searxng."
#: searx/plugins/tor_check.py:62
msgid ""
"The TOR exit node list (https://check.torproject.org/exit-addresses) is "
"unreachable."
msgstr ""
+"Ang TOR exit node list (https://check.torproject.org/exit-addresses) ay "
+"unreachable."
#: searx/plugins/tor_check.py:78
msgid "You are using TOR. Your IP address seems to be: {ip_address}."
-msgstr ""
+msgstr "Ikaw ay gumagamit ng TOR. Ang i'yong IP address ay: {ip_address}."
#: searx/plugins/tor_check.py:84
msgid "You are not using TOR. Your IP address seems to be: {ip_address}."
-msgstr ""
+msgstr "Ikaw ay hindi gumagamit ng TOR. Ang i'yong IP address ay: {ip_address}."
#: searx/plugins/tracker_url_remover.py:29
msgid "Tracker URL remover"
@@ -478,7 +484,8 @@ msgstr ""
#: searx/templates/simple/new_issue.html:72
msgid "Submit a new issue on Github including the above information"
-msgstr "Mag sumite ng bagong isyu sa github kasama ng bagong impormasyon sa taas."
+msgstr ""
+"Mga-submit ng isang bagong issue sa GitHub kasama ng impormasyong nasa itaas"
#: searx/templates/simple/preferences.html:29
msgid "No HTTPS"
@@ -797,6 +804,8 @@ msgid ""
"This is the list of cookies and their values SearXNG is storing on your "
"computer."
msgstr ""
+"Ito ang listahan ng mga cookies at values na ini-store ng SearXNG sa i'yong "
+"computer."
#: searx/templates/simple/preferences.html:396
msgid "With that list, you can assess SearXNG transparency."
@@ -959,7 +968,7 @@ msgstr ""
#: searx/templates/simple/stats.html:102
msgid "Errors and exceptions"
-msgstr ""
+msgstr "Mga error at exceptions"
#: searx/templates/simple/stats.html:108
msgid "Exception"
@@ -1027,7 +1036,7 @@ msgstr "Impormasyon!"
#: searx/templates/simple/messages/no_cookies.html:4
msgid "currently, there are no cookies defined."
-msgstr "wala pa sa ngayon na cookies na naka define."
+msgstr "wala pang cookies na naka-define sa ngayon."
#: searx/templates/simple/messages/no_results.html:6
msgid "Engines cannot retrieve results."
@@ -1035,7 +1044,7 @@ msgstr "Hindi makuha ng engines ang mga resulta."
#: searx/templates/simple/messages/no_results.html:15
msgid "Please, try again later or find another SearXNG instance."
-msgstr ""
+msgstr "Pakiusap, subukan muli mamaya o humanap ng ibang SearXNG instance."
#: searx/templates/simple/messages/no_results.html:20
msgid "Sorry!"
@@ -1060,7 +1069,7 @@ msgstr "itago ang media"
#: searx/templates/simple/result_templates/default.html:14
#: searx/templates/simple/result_templates/videos.html:14
msgid "This site did not provide any description."
-msgstr "Hindi bumigay ng deskripsyon ang site"
+msgstr "Ang site na ito ay hindi nagbigay ng deskripsyon."
#: searx/templates/simple/result_templates/images.html:19
msgid "Format"
@@ -1072,7 +1081,7 @@ msgstr ""
#: searx/templates/simple/result_templates/images.html:22
msgid "View source"
-msgstr "Tignan ang pinagkuhanan"
+msgstr "Tignan ang source"
#: searx/templates/simple/result_templates/map.html:12
msgid "address"
@@ -1132,11 +1141,11 @@ msgstr "Bilang ng mga files"
#: searx/templates/simple/result_templates/videos.html:6
msgid "show video"
-msgstr "ipakita ang bidyo"
+msgstr "ipakita ang video"
#: searx/templates/simple/result_templates/videos.html:6
msgid "hide video"
-msgstr "itago ang bidyo"
+msgstr "itago ang video"
#~ msgid "Engine time (sec)"
#~ msgstr "Oras ng engine (segundo)"
@@ -1387,4 +1396,3 @@ msgstr "itago ang bidyo"
#~ msgid "preferences"
#~ msgstr ""
-
diff --git a/searx/translations/he/LC_MESSAGES/messages.mo b/searx/translations/he/LC_MESSAGES/messages.mo
index a88a2b814..c8333650a 100644
--- a/searx/translations/he/LC_MESSAGES/messages.mo
+++ b/searx/translations/he/LC_MESSAGES/messages.mo
Binary files differ
diff --git a/searx/translations/he/LC_MESSAGES/messages.po b/searx/translations/he/LC_MESSAGES/messages.po
index 1cf32d034..91764d0c9 100644
--- a/searx/translations/he/LC_MESSAGES/messages.po
+++ b/searx/translations/he/LC_MESSAGES/messages.po
@@ -10,13 +10,14 @@
# rike, 2014
# stf <stefan.marsiske@gmail.com>, 2014
# Markus Heiser <markus.heiser@darmarit.de>, 2022.
+# Shopimisrel <shopisrael12@gmail.com>, 2022.
msgid ""
msgstr ""
"Project-Id-Version: searx\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2022-07-23 14:08+0000\n"
-"PO-Revision-Date: 2022-08-05 07:18+0000\n"
-"Last-Translator: Markus Heiser <markus.heiser@darmarit.de>\n"
+"PO-Revision-Date: 2022-08-12 07:18+0000\n"
+"Last-Translator: Shopimisrel <shopisrael12@gmail.com>\n"
"Language-Team: Hebrew <https://weblate.bubu1.eu/projects/searxng/searxng/he/>"
"\n"
"Language: he\n"
@@ -275,6 +276,8 @@ msgid ""
"format. TinEye only supports images that are JPEG, PNG, GIF, BMP, TIFF or"
" WebP."
msgstr ""
+"לא ניתן היה לקרוא את כתובת האתר של התמונה. ייתכן שהסיבה לכך היא פורמט קובץ "
+"שאינו נתמך. TinEye תומך רק בתמונות שהן JPEG, PNG, GIF, BMP, TIFF או WebP."
#: searx/engines/tineye.py:46
msgid ""
@@ -342,27 +345,31 @@ msgstr ""
#: searx/plugins/tor_check.py:25
msgid "Tor check plugin"
-msgstr ""
+msgstr "טור בודק תוסף"
#: searx/plugins/tor_check.py:28
msgid ""
"This plugin checks if the address of the request is a TOR exit node, and "
"informs the user if it is, like check.torproject.org but from searxng."
msgstr ""
+"תוסף זה בודק אם הכתובת של הבקשה היא צומת יציאה של TOR, ומודיע למשתמש אם כן, "
+"כמו check.torproject.org אבל מ-searxng."
#: searx/plugins/tor_check.py:62
msgid ""
"The TOR exit node list (https://check.torproject.org/exit-addresses) is "
"unreachable."
msgstr ""
+"רשימת צומת היציאה של TOR (https://check.torproject.org/exit-addresses) אינה "
+"ניתנת לגישה."
#: searx/plugins/tor_check.py:78
msgid "You are using TOR. Your IP address seems to be: {ip_address}."
-msgstr ""
+msgstr "אתה משתמש ב-TOR. נראה שכתובת ה-IP שלך היא: {ip_address}."
#: searx/plugins/tor_check.py:84
msgid "You are not using TOR. Your IP address seems to be: {ip_address}."
-msgstr ""
+msgstr "אתה לא משתמש ב-TOR. נראה שכתובת ה-IP שלך היא: {ip_address}."
#: searx/plugins/tracker_url_remover.py:29
msgid "Tracker URL remover"
@@ -466,19 +473,19 @@ msgstr "פרוקסי"
#: searx/templates/simple/new_issue.html:64
msgid "Start submiting a new issue on GitHub"
-msgstr ""
+msgstr "התחל להגיש גיליון חדש ב- GitHub"
#: searx/templates/simple/new_issue.html:66
msgid "Please check for existing bugs about this engine on GitHub"
-msgstr ""
+msgstr "בדוק אם קיימים באגים לגבי מנוע זה ב-GitHub"
#: searx/templates/simple/new_issue.html:69
msgid "I confirm there is no existing bug about the issue I encounter"
-msgstr ""
+msgstr "אני מאשר שאין באג קיים לגבי הבעיה שאני נתקל בה"
#: searx/templates/simple/new_issue.html:71
msgid "If this is a public instance, please specify the URL in the bug report"
-msgstr ""
+msgstr "אם זה מופע ציבורי, אנא ציין את כתובת האתר בדוח הבאג"
#: searx/templates/simple/new_issue.html:72
msgid "Submit a new issue on Github including the above information"
@@ -624,7 +631,7 @@ msgstr "בחר אוטומטית כדי לשמור על התאמה עם הגדר
#: searx/templates/simple/preferences.html:217
msgid "Center Alignment"
-msgstr ""
+msgstr "יישור מרכז"
#: searx/templates/simple/preferences.html:220
#: searx/templates/simple/preferences.html:232
@@ -640,7 +647,7 @@ msgstr "כבוי"
#: searx/templates/simple/preferences.html:224
msgid "Displays results in the center of the page (Oscar layout)."
-msgstr ""
+msgstr "מציג תוצאות במרכז העמוד (פריסת אוסקר)."
#: searx/templates/simple/preferences.html:229
msgid "Results on new tabs"
@@ -823,13 +830,15 @@ msgstr ""
#: searx/templates/simple/preferences.html:419
msgid "URL to restore your preferences in another browser"
-msgstr ""
+msgstr "כתובת אתר לשחזור ההעדפות שלך בדפדפן אחר"
#: searx/templates/simple/preferences.html:423
msgid ""
"Specifying custom settings in the preferences URL can be used to sync "
"preferences across devices."
msgstr ""
+"ניתן להשתמש בציון הגדרות מותאמות אישית בכתובת ההעדפות כדי לסנכרן העדפות בין "
+"מכשירים."
#: searx/templates/simple/preferences.html:428
msgid ""
diff --git a/searx/translations/hr/LC_MESSAGES/messages.mo b/searx/translations/hr/LC_MESSAGES/messages.mo
index d09b62e1d..6a1278055 100644
--- a/searx/translations/hr/LC_MESSAGES/messages.mo
+++ b/searx/translations/hr/LC_MESSAGES/messages.mo
Binary files differ
diff --git a/searx/translations/hr/LC_MESSAGES/messages.po b/searx/translations/hr/LC_MESSAGES/messages.po
index 1b46d3ccf..97b078418 100644
--- a/searx/translations/hr/LC_MESSAGES/messages.po
+++ b/searx/translations/hr/LC_MESSAGES/messages.po
@@ -6,13 +6,14 @@
# df3fdd29c9d33426452a2db187d128e3, 2017
# Issa1552 <fairfull.playing@gmail.com>, 2020
# Matija Kromar <matija.kromar@gmail.com>, 2022.
+# Markus Heiser <markus.heiser@darmarit.de>, 2022.
msgid ""
msgstr ""
"Project-Id-Version: searx\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2022-07-23 14:08+0000\n"
-"PO-Revision-Date: 2022-07-29 07:17+0000\n"
-"Last-Translator: Matija Kromar <matija.kromar@gmail.com>\n"
+"PO-Revision-Date: 2022-08-22 19:57+0000\n"
+"Last-Translator: Markus Heiser <markus.heiser@darmarit.de>\n"
"Language-Team: Croatian <https://weblate.bubu1.eu/projects/searxng/searxng/"
"hr/>\n"
"Language: hr\n"
@@ -359,7 +360,7 @@ msgstr ""
#: searx/plugins/tor_check.py:78
msgid "You are using TOR. Your IP address seems to be: {ip_address}."
-msgstr ""
+msgstr "Vi koristite TOR. Vaša IP adresa se čini da je: {ip_address}."
#: searx/plugins/tor_check.py:84
msgid "You are not using TOR. Your IP address seems to be: {ip_address}."
@@ -405,7 +406,7 @@ msgstr ""
#: searx/templates/simple/base.html:50
msgid "Donate"
-msgstr ""
+msgstr "Donirajte"
#: searx/templates/simple/base.html:54
#: searx/templates/simple/preferences.html:99
diff --git a/searx/translations/it/LC_MESSAGES/messages.mo b/searx/translations/it/LC_MESSAGES/messages.mo
index 4a811c3b3..041e4c001 100644
--- a/searx/translations/it/LC_MESSAGES/messages.mo
+++ b/searx/translations/it/LC_MESSAGES/messages.mo
Binary files differ
diff --git a/searx/translations/it/LC_MESSAGES/messages.po b/searx/translations/it/LC_MESSAGES/messages.po
index 54b1c285f..b58b948b3 100644
--- a/searx/translations/it/LC_MESSAGES/messages.po
+++ b/searx/translations/it/LC_MESSAGES/messages.po
@@ -14,12 +14,13 @@
# Random_R, 2018-2020
# carlonigiulio <giuliocarloni20@gmail.com>, 2022.
# Markus Heiser <markus.heiser@darmarit.de>, 2022.
+# Content Card <weblate-bubu1@gabg.email>, 2022.
msgid ""
msgstr ""
"Project-Id-Version: searx\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2022-07-23 14:08+0000\n"
-"PO-Revision-Date: 2022-08-05 07:18+0000\n"
+"PO-Revision-Date: 2022-08-22 12:54+0000\n"
"Last-Translator: Markus Heiser <markus.heiser@darmarit.de>\n"
"Language-Team: Italian <https://weblate.bubu1.eu/projects/searxng/searxng/it/"
">\n"
@@ -89,7 +90,7 @@ msgstr "mappe"
#. CATEGORY_NAMES['ONIONS']
#: searx/searxng.msg
msgid "onions"
-msgstr "onions"
+msgstr "onion"
#. CATEGORY_NAMES['SCIENCE']
#: searx/searxng.msg
@@ -287,6 +288,9 @@ msgid ""
"The image is too simple to find matches. TinEye requires a basic level of"
" visual detail to successfully identify matches."
msgstr ""
+"L'immagine è troppo semplice per trovare corrispondenze. TinEye richiede un "
+"maggiore livello di dettagli visivi per identificare corrispondenze con "
+"successo."
#: searx/engines/tineye.py:52
msgid "The image could not be downloaded."
@@ -356,6 +360,9 @@ msgid ""
"This plugin checks if the address of the request is a TOR exit node, and "
"informs the user if it is, like check.torproject.org but from searxng."
msgstr ""
+"Questo plugin controlla se l'indirizzo della richiesta è un nodo di uscita "
+"di TOR e informa l'utente se lo è. Simile a check.torproject.org ma fornito "
+"da searxng."
#: searx/plugins/tor_check.py:62
msgid ""
diff --git a/searx/translations/ml/LC_MESSAGES/messages.mo b/searx/translations/ml/LC_MESSAGES/messages.mo
new file mode 100644
index 000000000..a29339362
--- /dev/null
+++ b/searx/translations/ml/LC_MESSAGES/messages.mo
Binary files differ
diff --git a/searx/translations/ml/LC_MESSAGES/messages.po b/searx/translations/ml/LC_MESSAGES/messages.po
new file mode 100644
index 000000000..aa22a541b
--- /dev/null
+++ b/searx/translations/ml/LC_MESSAGES/messages.po
@@ -0,0 +1,1106 @@
+# Translations template for PROJECT.
+# Copyright (C) 2022 ORGANIZATION
+# This file is distributed under the same license as the PROJECT project.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2022.
+# ajnasaboobacker <ajnasaboobacker@gmail.com>, 2022.
+# Markus Heiser <markus.heiser@darmarit.de>, 2022.
+msgid ""
+msgstr ""
+"Project-Id-Version: PROJECT VERSION\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2022-07-23 14:08+0000\n"
+"PO-Revision-Date: 2022-08-12 07:18+0000\n"
+"Last-Translator: Markus Heiser <markus.heiser@darmarit.de>\n"
+"Language-Team: Malayalam <https://weblate.bubu1.eu/projects/searxng/searxng/"
+"ml/>\n"
+"Language: ml\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Weblate 4.13.1\n"
+"Generated-By: Babel 2.10.3\n"
+
+#. CONSTANT_NAMES['DEFAULT_GROUP_NAME']
+#: searx/searxng.msg
+msgid "others"
+msgstr "മറ്റുള്ളവർ"
+
+#. CONSTANT_NAMES['OTHER_CATEGORY']
+#: searx/searxng.msg
+msgid "other"
+msgstr "മറ്റുള്ളവ"
+
+#. CATEGORY_NAMES['FILES']
+#: searx/searxng.msg
+#, fuzzy
+msgid "files"
+msgstr "ഫയലുകൾ"
+
+#. CATEGORY_NAMES['GENERAL']
+#: searx/searxng.msg
+msgid "general"
+msgstr "പൊതുവായ"
+
+#. CATEGORY_NAMES['MUSIC']
+#: searx/searxng.msg
+msgid "music"
+msgstr "സംഗീതം"
+
+#. CATEGORY_NAMES['SOCIAL_MEDIA']
+#: searx/searxng.msg
+msgid "social media"
+msgstr "സമൂഹമാദ്ധ്യമങ്ങൾ"
+
+#. CATEGORY_NAMES['IMAGES']
+#: searx/searxng.msg
+msgid "images"
+msgstr "ചിത്രങ്ങൾ"
+
+#. CATEGORY_NAMES['VIDEOS']
+#: searx/searxng.msg
+msgid "videos"
+msgstr "വീഡിയോകൾ"
+
+#. CATEGORY_NAMES['IT']
+#: searx/searxng.msg
+msgid "it"
+msgstr "അത്"
+
+#. CATEGORY_NAMES['NEWS']
+#: searx/searxng.msg
+msgid "news"
+msgstr "വാർത്ത"
+
+#. CATEGORY_NAMES['MAP']
+#: searx/searxng.msg
+msgid "map"
+msgstr "ഭൂപടം"
+
+#. CATEGORY_NAMES['ONIONS']
+#: searx/searxng.msg
+msgid "onions"
+msgstr ""
+
+#. CATEGORY_NAMES['SCIENCE']
+#: searx/searxng.msg
+msgid "science"
+msgstr "ശാസ്ത്രം"
+
+#. CATEGORY_GROUPS['APPS']
+#: searx/searxng.msg
+msgid "apps"
+msgstr ""
+
+#. CATEGORY_GROUPS['DICTIONARIES']
+#: searx/searxng.msg
+msgid "dictionaries"
+msgstr ""
+
+#. CATEGORY_GROUPS['LYRICS']
+#: searx/searxng.msg
+msgid "lyrics"
+msgstr ""
+
+#. CATEGORY_GROUPS['PACKAGES']
+#: searx/searxng.msg
+msgid "packages"
+msgstr ""
+
+#. CATEGORY_GROUPS['Q_A']
+#: searx/searxng.msg
+msgid "q&a"
+msgstr ""
+
+#. CATEGORY_GROUPS['REPOS']
+#: searx/searxng.msg
+msgid "repos"
+msgstr ""
+
+#. CATEGORY_GROUPS['SOFTWARE_WIKIS']
+#: searx/searxng.msg
+msgid "software wikis"
+msgstr ""
+
+#. CATEGORY_GROUPS['WEB']
+#: searx/searxng.msg
+msgid "web"
+msgstr ""
+
+#. STYLE_NAMES['AUTO']
+#: searx/searxng.msg
+msgid "auto"
+msgstr ""
+
+#. STYLE_NAMES['LIGHT']
+#: searx/searxng.msg
+msgid "light"
+msgstr ""
+
+#. STYLE_NAMES['DARK']
+#: searx/searxng.msg
+msgid "dark"
+msgstr ""
+
+#: searx/webapp.py:165
+msgid "timeout"
+msgstr ""
+
+#: searx/webapp.py:166
+msgid "parsing error"
+msgstr ""
+
+#: searx/webapp.py:167
+msgid "HTTP protocol error"
+msgstr ""
+
+#: searx/webapp.py:168
+msgid "network error"
+msgstr ""
+
+#: searx/webapp.py:170
+msgid "unexpected crash"
+msgstr ""
+
+#: searx/webapp.py:177
+msgid "HTTP error"
+msgstr ""
+
+#: searx/webapp.py:178
+msgid "HTTP connection error"
+msgstr ""
+
+#: searx/webapp.py:184
+msgid "proxy error"
+msgstr ""
+
+#: searx/webapp.py:185
+msgid "CAPTCHA"
+msgstr ""
+
+#: searx/webapp.py:186
+msgid "too many requests"
+msgstr ""
+
+#: searx/webapp.py:187
+msgid "access denied"
+msgstr ""
+
+#: searx/webapp.py:188
+msgid "server API error"
+msgstr ""
+
+#: searx/webapp.py:363
+msgid "No item found"
+msgstr ""
+
+#: searx/engines/qwant.py:212
+#: searx/templates/simple/result_templates/images.html:20 searx/webapp.py:365
+msgid "Source"
+msgstr ""
+
+#: searx/webapp.py:367
+msgid "Error loading the next page"
+msgstr ""
+
+#: searx/webapp.py:516 searx/webapp.py:960
+msgid "Invalid settings, please edit your preferences"
+msgstr ""
+
+#: searx/webapp.py:532
+msgid "Invalid settings"
+msgstr ""
+
+#: searx/webapp.py:609 searx/webapp.py:685
+msgid "search error"
+msgstr ""
+
+#: searx/webapp.py:731
+msgid "{minutes} minute(s) ago"
+msgstr ""
+
+#: searx/webapp.py:733
+msgid "{hours} hour(s), {minutes} minute(s) ago"
+msgstr ""
+
+#: searx/webapp.py:859
+msgid "Suspended"
+msgstr ""
+
+#: searx/answerers/random/answerer.py:67
+msgid "Random value generator"
+msgstr ""
+
+#: searx/answerers/random/answerer.py:68
+msgid "Generate different random values"
+msgstr ""
+
+#: searx/answerers/statistics/answerer.py:47
+msgid "Statistics functions"
+msgstr ""
+
+#: searx/answerers/statistics/answerer.py:48
+msgid "Compute {functions} of the arguments"
+msgstr ""
+
+#: searx/engines/openstreetmap.py:160
+msgid "Get directions"
+msgstr ""
+
+#: searx/engines/pdbe.py:96
+msgid "{title} (OBSOLETE)"
+msgstr ""
+
+#: searx/engines/pdbe.py:103
+msgid "This entry has been superseded by"
+msgstr ""
+
+#: searx/engines/pubmed.py:78
+msgid "No abstract is available for this publication."
+msgstr ""
+
+#: searx/engines/qwant.py:214
+msgid "Channel"
+msgstr ""
+
+#: searx/engines/tineye.py:40
+msgid ""
+"Could not read that image url. This may be due to an unsupported file "
+"format. TinEye only supports images that are JPEG, PNG, GIF, BMP, TIFF or"
+" WebP."
+msgstr ""
+
+#: searx/engines/tineye.py:46
+msgid ""
+"The image is too simple to find matches. TinEye requires a basic level of"
+" visual detail to successfully identify matches."
+msgstr ""
+
+#: searx/engines/tineye.py:52
+msgid "The image could not be downloaded."
+msgstr ""
+
+#: searx/plugins/hash_plugin.py:24
+msgid "Converts strings to different hash digests."
+msgstr ""
+
+#: searx/plugins/hash_plugin.py:52
+msgid "hash digest"
+msgstr ""
+
+#: searx/plugins/hostname_replace.py:9
+msgid "Hostname replace"
+msgstr ""
+
+#: searx/plugins/hostname_replace.py:10
+msgid "Rewrite result hostnames or remove results based on the hostname"
+msgstr ""
+
+#: searx/plugins/oa_doi_rewrite.py:9
+msgid "Open Access DOI rewrite"
+msgstr ""
+
+#: searx/plugins/oa_doi_rewrite.py:10
+msgid ""
+"Avoid paywalls by redirecting to open-access versions of publications "
+"when available"
+msgstr ""
+
+#: searx/plugins/search_on_category_select.py:19
+msgid "Search on category select"
+msgstr ""
+
+#: searx/plugins/search_on_category_select.py:20
+msgid ""
+"Perform search immediately if a category selected. Disable to select "
+"multiple categories. (JavaScript required)"
+msgstr ""
+
+#: searx/plugins/self_info.py:20
+msgid "Self Informations"
+msgstr ""
+
+#: searx/plugins/self_info.py:21
+msgid ""
+"Displays your IP if the query is \"ip\" and your user agent if the query "
+"contains \"user agent\"."
+msgstr ""
+
+#: searx/plugins/tor_check.py:25
+msgid "Tor check plugin"
+msgstr ""
+
+#: searx/plugins/tor_check.py:28
+msgid ""
+"This plugin checks if the address of the request is a TOR exit node, and "
+"informs the user if it is, like check.torproject.org but from searxng."
+msgstr ""
+
+#: searx/plugins/tor_check.py:62
+msgid ""
+"The TOR exit node list (https://check.torproject.org/exit-addresses) is "
+"unreachable."
+msgstr ""
+
+#: searx/plugins/tor_check.py:78
+msgid "You are using TOR. Your IP address seems to be: {ip_address}."
+msgstr ""
+
+#: searx/plugins/tor_check.py:84
+msgid "You are not using TOR. Your IP address seems to be: {ip_address}."
+msgstr ""
+
+#: searx/plugins/tracker_url_remover.py:29
+msgid "Tracker URL remover"
+msgstr ""
+
+#: searx/plugins/tracker_url_remover.py:30
+msgid "Remove trackers arguments from the returned URL"
+msgstr ""
+
+#: searx/plugins/vim_hotkeys.py:3
+msgid "Vim-like hotkeys"
+msgstr ""
+
+#: searx/plugins/vim_hotkeys.py:4
+msgid ""
+"Navigate search results with Vim-like hotkeys (JavaScript required). "
+"Press \"h\" key on main or result page to get help."
+msgstr ""
+
+#: searx/templates/simple/404.html:4
+msgid "Page not found"
+msgstr ""
+
+#: searx/templates/simple/404.html:6
+#, python-format
+msgid "Go to %(search_page)s."
+msgstr ""
+
+#: searx/templates/simple/404.html:6
+msgid "search page"
+msgstr ""
+
+#: searx/templates/simple/base.html:46
+msgid "About"
+msgstr ""
+
+#: searx/templates/simple/base.html:50
+msgid "Donate"
+msgstr ""
+
+#: searx/templates/simple/base.html:54
+#: searx/templates/simple/preferences.html:99
+msgid "Preferences"
+msgstr ""
+
+#: searx/templates/simple/base.html:64
+msgid "Powered by"
+msgstr ""
+
+#: searx/templates/simple/base.html:64
+msgid "a privacy-respecting, hackable metasearch engine"
+msgstr ""
+
+#: searx/templates/simple/base.html:65
+msgid "Source code"
+msgstr ""
+
+#: searx/templates/simple/base.html:66
+msgid "Issue tracker"
+msgstr ""
+
+#: searx/templates/simple/base.html:67 searx/templates/simple/stats.html:18
+msgid "Engine stats"
+msgstr ""
+
+#: searx/templates/simple/base.html:69
+#: searx/templates/simple/messages/no_results.html:15
+msgid "Public instances"
+msgstr ""
+
+#: searx/templates/simple/base.html:72
+msgid "Privacy policy"
+msgstr ""
+
+#: searx/templates/simple/base.html:75
+msgid "Contact instance maintainer"
+msgstr ""
+
+#: searx/templates/simple/categories.html:24
+msgid "Click on the magnifier to perform search"
+msgstr ""
+
+#: searx/templates/simple/macros.html:36
+msgid "Length"
+msgstr ""
+
+#: searx/templates/simple/macros.html:37
+#: searx/templates/simple/result_templates/images.html:18
+msgid "Author"
+msgstr ""
+
+#: searx/templates/simple/macros.html:45
+msgid "cached"
+msgstr ""
+
+#: searx/templates/simple/macros.html:45
+msgid "proxied"
+msgstr ""
+
+#: searx/templates/simple/new_issue.html:64
+msgid "Start submiting a new issue on GitHub"
+msgstr ""
+
+#: searx/templates/simple/new_issue.html:66
+msgid "Please check for existing bugs about this engine on GitHub"
+msgstr ""
+
+#: searx/templates/simple/new_issue.html:69
+msgid "I confirm there is no existing bug about the issue I encounter"
+msgstr ""
+
+#: searx/templates/simple/new_issue.html:71
+msgid "If this is a public instance, please specify the URL in the bug report"
+msgstr ""
+
+#: searx/templates/simple/new_issue.html:72
+msgid "Submit a new issue on Github including the above information"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:29
+msgid "No HTTPS"
+msgstr ""
+
+#: searx/templates/simple/messages/no_results.html:10
+#: searx/templates/simple/preferences.html:31
+#: searx/templates/simple/preferences.html:32
+#: searx/templates/simple/results.html:49
+msgid "View error logs and submit a bug report"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:53
+#: searx/templates/simple/stats.html:67
+msgid "Median"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:54
+#: searx/templates/simple/stats.html:73
+msgid "P80"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:55
+#: searx/templates/simple/stats.html:79
+msgid "P95"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:83
+msgid "Failed checker test(s): "
+msgstr ""
+
+#: searx/templates/simple/preferences.html:85
+msgid "Errors:"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:105
+msgid "General"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:108
+msgid "Default categories"
+msgstr ""
+
+#: searx/templates/simple/filters/languages.html:1
+#: searx/templates/simple/preferences.html:115
+msgid "Search language"
+msgstr ""
+
+#: searx/templates/simple/filters/languages.html:2
+#: searx/templates/simple/preferences.html:118
+msgid "Default language"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:124
+msgid "What language do you prefer for search?"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:129
+msgid "Autocomplete"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:138
+msgid "Find stuff as you type"
+msgstr ""
+
+#: searx/templates/simple/filters/safesearch.html:1
+#: searx/templates/simple/filters/safesearch.html:2
+#: searx/templates/simple/filters/safesearch.html:3
+#: searx/templates/simple/filters/safesearch.html:4
+#: searx/templates/simple/preferences.html:143
+#: searx/templates/simple/preferences.html:311
+msgid "SafeSearch"
+msgstr ""
+
+#: searx/templates/simple/filters/safesearch.html:2
+#: searx/templates/simple/preferences.html:146
+msgid "Strict"
+msgstr ""
+
+#: searx/templates/simple/filters/safesearch.html:3
+#: searx/templates/simple/preferences.html:147
+msgid "Moderate"
+msgstr ""
+
+#: searx/templates/simple/filters/safesearch.html:4
+#: searx/templates/simple/preferences.html:148
+msgid "None"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:151
+msgid "Filter content"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:157
+msgid "Open Access DOI resolver"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:167
+msgid ""
+"Redirect to open-access versions of publications when available (plugin "
+"required)"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:171
+msgid "Engine tokens"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:175
+msgid "Access tokens for private engines"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:179
+msgid "User interface"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:182
+msgid "Interface language"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:190
+msgid "Change the language of the layout"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:195
+msgid "Theme"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:203
+msgid "Change SearXNG layout"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:206
+msgid "Theme style"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:214
+msgid "Choose auto to follow your browser settings"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:217
+msgid "Center Alignment"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:220
+#: searx/templates/simple/preferences.html:232
+#: searx/templates/simple/preferences.html:244
+msgid "On"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:221
+#: searx/templates/simple/preferences.html:233
+#: searx/templates/simple/preferences.html:245
+msgid "Off"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:224
+msgid "Displays results in the center of the page (Oscar layout)."
+msgstr ""
+
+#: searx/templates/simple/preferences.html:229
+msgid "Results on new tabs"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:236
+msgid "Open result links on new browser tabs"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:241
+msgid "Infinite scroll"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:248
+msgid "Automatically load next page when scrolling to bottom of current page"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:254
+msgid "Privacy"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:257
+msgid "HTTP Method"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:264
+msgid ""
+"Change how forms are submited, <a "
+"href=\"http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol#Request_methods\""
+" rel=\"external\">learn more about request methods</a>"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:269
+msgid "Image proxy"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:272
+#: searx/templates/simple/preferences.html:284
+msgid "Enabled"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:273
+#: searx/templates/simple/preferences.html:285
+msgid "Disabled"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:276
+msgid "Proxying image results through SearXNG"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:281
+msgid "Query in the page's title"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:288
+msgid ""
+"When enabled, the result page's title contains your query. Your browser "
+"can record this title"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:294
+msgid "Engines"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:295
+msgid "Currently used search engines"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:302
+msgid ""
+"This tab does not show up for search results, but you can search the "
+"engines listed here via bangs."
+msgstr ""
+
+#: searx/templates/simple/preferences.html:307
+#: searx/templates/simple/preferences.html:358
+msgid "Allow"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:308
+#: searx/templates/simple/stats.html:25
+msgid "Engine name"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:309
+msgid "Shortcut"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:310
+msgid "Supports selected language"
+msgstr ""
+
+#: searx/templates/simple/filters/time_range.html:1
+#: searx/templates/simple/preferences.html:312
+msgid "Time range"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:313
+#: searx/templates/simple/stats.html:28
+msgid "Response time"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:314
+msgid "Max time"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:315
+#: searx/templates/simple/stats.html:29
+msgid "Reliability"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:353
+msgid "Special Queries"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:359
+msgid "Keywords"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:360
+msgid "Name"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:361
+msgid "Description"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:362
+msgid "Examples"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:365
+msgid "This is the list of SearXNG's instant answering modules."
+msgstr ""
+
+#: searx/templates/simple/preferences.html:376
+msgid "This is the list of plugins."
+msgstr ""
+
+#: searx/templates/simple/preferences.html:393
+msgid "Cookies"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:395
+msgid ""
+"This is the list of cookies and their values SearXNG is storing on your "
+"computer."
+msgstr ""
+
+#: searx/templates/simple/preferences.html:396
+msgid "With that list, you can assess SearXNG transparency."
+msgstr ""
+
+#: searx/templates/simple/preferences.html:401
+msgid "Cookie name"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:402
+msgid "Value"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:414
+msgid "Search URL of the currently saved preferences"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:418
+msgid ""
+"Note: specifying custom settings in the search URL can reduce privacy by "
+"leaking data to the clicked result sites."
+msgstr ""
+
+#: searx/templates/simple/preferences.html:419
+msgid "URL to restore your preferences in another browser"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:423
+msgid ""
+"Specifying custom settings in the preferences URL can be used to sync "
+"preferences across devices."
+msgstr ""
+
+#: searx/templates/simple/preferences.html:428
+msgid ""
+"These settings are stored in your cookies, this allows us not to store "
+"this data about you."
+msgstr ""
+
+#: searx/templates/simple/preferences.html:430
+msgid ""
+"These cookies serve your sole convenience, we don't use these cookies to "
+"track you."
+msgstr ""
+
+#: searx/templates/simple/preferences.html:433
+msgid "Save"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:434
+msgid "Reset defaults"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:435
+msgid "Back"
+msgstr ""
+
+#: searx/templates/simple/results.html:23
+msgid "Answers"
+msgstr ""
+
+#: searx/templates/simple/results.html:39
+msgid "Number of results"
+msgstr ""
+
+#: searx/templates/simple/messages/no_results.html:6
+#: searx/templates/simple/results.html:46
+msgid "Error!"
+msgstr ""
+
+#: searx/templates/simple/results.html:46
+msgid "Engines cannot retrieve results"
+msgstr ""
+
+#: searx/templates/simple/results.html:68
+msgid "Suggestions"
+msgstr ""
+
+#: searx/templates/simple/results.html:90
+msgid "Search URL"
+msgstr ""
+
+#: searx/templates/simple/results.html:96
+msgid "Download results"
+msgstr ""
+
+#: searx/templates/simple/results.html:120
+msgid "Try searching for:"
+msgstr ""
+
+#: searx/templates/simple/results.html:152
+msgid "Back to top"
+msgstr ""
+
+#: searx/templates/simple/results.html:170
+msgid "Previous page"
+msgstr ""
+
+#: searx/templates/simple/results.html:187
+msgid "Next page"
+msgstr ""
+
+#: searx/templates/simple/search.html:3
+msgid "Display the front page"
+msgstr ""
+
+#: searx/templates/simple/search.html:9
+#: searx/templates/simple/simple_search.html:5
+msgid "Search for..."
+msgstr ""
+
+#: searx/templates/simple/search.html:10
+#: searx/templates/simple/simple_search.html:6
+msgid "clear"
+msgstr ""
+
+#: searx/templates/simple/search.html:11
+#: searx/templates/simple/simple_search.html:7
+msgid "search"
+msgstr ""
+
+#: searx/templates/simple/stats.html:21
+msgid "There is currently no data available. "
+msgstr ""
+
+#: searx/templates/simple/stats.html:26
+msgid "Scores"
+msgstr ""
+
+#: searx/templates/simple/stats.html:27
+msgid "Result count"
+msgstr ""
+
+#: searx/templates/simple/stats.html:38
+msgid "Scores per result"
+msgstr ""
+
+#: searx/templates/simple/stats.html:62
+msgid "Total"
+msgstr ""
+
+#: searx/templates/simple/stats.html:63
+msgid "HTTP"
+msgstr ""
+
+#: searx/templates/simple/stats.html:64
+msgid "Processing"
+msgstr ""
+
+#: searx/templates/simple/stats.html:102
+msgid "Warnings"
+msgstr ""
+
+#: searx/templates/simple/stats.html:102
+msgid "Errors and exceptions"
+msgstr ""
+
+#: searx/templates/simple/stats.html:108
+msgid "Exception"
+msgstr ""
+
+#: searx/templates/simple/stats.html:110
+msgid "Message"
+msgstr ""
+
+#: searx/templates/simple/stats.html:112
+msgid "Percentage"
+msgstr ""
+
+#: searx/templates/simple/stats.html:114
+msgid "Parameter"
+msgstr ""
+
+#: searx/templates/simple/stats.html:122
+msgid "Filename"
+msgstr ""
+
+#: searx/templates/simple/stats.html:123
+msgid "Function"
+msgstr ""
+
+#: searx/templates/simple/stats.html:124
+msgid "Code"
+msgstr ""
+
+#: searx/templates/simple/stats.html:131
+msgid "Checker"
+msgstr ""
+
+#: searx/templates/simple/stats.html:134
+msgid "Failed test"
+msgstr ""
+
+#: searx/templates/simple/stats.html:135
+msgid "Comment(s)"
+msgstr ""
+
+#: searx/templates/simple/filters/time_range.html:3
+msgid "Anytime"
+msgstr ""
+
+#: searx/templates/simple/filters/time_range.html:6
+msgid "Last day"
+msgstr ""
+
+#: searx/templates/simple/filters/time_range.html:9
+msgid "Last week"
+msgstr ""
+
+#: searx/templates/simple/filters/time_range.html:12
+msgid "Last month"
+msgstr ""
+
+#: searx/templates/simple/filters/time_range.html:15
+msgid "Last year"
+msgstr ""
+
+#: searx/templates/simple/messages/no_cookies.html:3
+msgid "Information!"
+msgstr ""
+
+#: searx/templates/simple/messages/no_cookies.html:4
+msgid "currently, there are no cookies defined."
+msgstr ""
+
+#: searx/templates/simple/messages/no_results.html:6
+msgid "Engines cannot retrieve results."
+msgstr ""
+
+#: searx/templates/simple/messages/no_results.html:15
+msgid "Please, try again later or find another SearXNG instance."
+msgstr ""
+
+#: searx/templates/simple/messages/no_results.html:20
+msgid "Sorry!"
+msgstr ""
+
+#: searx/templates/simple/messages/no_results.html:21
+msgid ""
+"we didn't find any results. Please use another query or search in more "
+"categories."
+msgstr ""
+
+#: searx/templates/simple/result_templates/default.html:6
+msgid "show media"
+msgstr ""
+
+#: searx/templates/simple/result_templates/default.html:6
+msgid "hide media"
+msgstr ""
+
+#: searx/templates/simple/result_templates/default.html:14
+#: searx/templates/simple/result_templates/videos.html:14
+msgid "This site did not provide any description."
+msgstr ""
+
+#: searx/templates/simple/result_templates/images.html:19
+msgid "Format"
+msgstr ""
+
+#: searx/templates/simple/result_templates/images.html:21
+msgid "Engine"
+msgstr ""
+
+#: searx/templates/simple/result_templates/images.html:22
+msgid "View source"
+msgstr ""
+
+#: searx/templates/simple/result_templates/map.html:12
+msgid "address"
+msgstr ""
+
+#: searx/templates/simple/result_templates/map.html:43
+msgid "show map"
+msgstr ""
+
+#: searx/templates/simple/result_templates/map.html:43
+msgid "hide map"
+msgstr ""
+
+#: searx/templates/simple/result_templates/torrent.html:6
+msgid "magnet link"
+msgstr ""
+
+#: searx/templates/simple/result_templates/torrent.html:7
+msgid "torrent file"
+msgstr ""
+
+#: searx/templates/simple/result_templates/torrent.html:9
+msgid "Seeder"
+msgstr ""
+
+#: searx/templates/simple/result_templates/torrent.html:9
+msgid "Leecher"
+msgstr ""
+
+#: searx/templates/simple/result_templates/torrent.html:11
+msgid "Filesize"
+msgstr ""
+
+#: searx/templates/simple/result_templates/torrent.html:12
+msgid "Bytes"
+msgstr ""
+
+#: searx/templates/simple/result_templates/torrent.html:13
+msgid "kiB"
+msgstr ""
+
+#: searx/templates/simple/result_templates/torrent.html:14
+msgid "MiB"
+msgstr ""
+
+#: searx/templates/simple/result_templates/torrent.html:15
+msgid "GiB"
+msgstr ""
+
+#: searx/templates/simple/result_templates/torrent.html:16
+msgid "TiB"
+msgstr ""
+
+#: searx/templates/simple/result_templates/torrent.html:20
+msgid "Number of Files"
+msgstr ""
+
+#: searx/templates/simple/result_templates/videos.html:6
+msgid "show video"
+msgstr ""
+
+#: searx/templates/simple/result_templates/videos.html:6
+msgid "hide video"
+msgstr ""
diff --git a/searx/translations/nb_NO/LC_MESSAGES/messages.mo b/searx/translations/nb_NO/LC_MESSAGES/messages.mo
index 2dcc8b875..00ad964d7 100644
--- a/searx/translations/nb_NO/LC_MESSAGES/messages.mo
+++ b/searx/translations/nb_NO/LC_MESSAGES/messages.mo
Binary files differ
diff --git a/searx/translations/nb_NO/LC_MESSAGES/messages.po b/searx/translations/nb_NO/LC_MESSAGES/messages.po
index cb42ca442..add9b613b 100644
--- a/searx/translations/nb_NO/LC_MESSAGES/messages.po
+++ b/searx/translations/nb_NO/LC_MESSAGES/messages.po
@@ -3,20 +3,22 @@
# This file is distributed under the same license as the PROJECT project.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2021.
# Morten R. Bjørklund <mortenrb@live.no>, 2022.
+# Markus Heiser <markus.heiser@darmarit.de>, 2022.
msgid ""
msgstr ""
"Project-Id-Version: PROJECT VERSION\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2022-07-23 14:08+0000\n"
-"PO-Revision-Date: 2022-07-06 00:21+0000\n"
-"Last-Translator: Morten R. Bjørklund <mortenrb@live.no>\n"
+"PO-Revision-Date: 2022-08-26 07:23+0000\n"
+"Last-Translator: Markus Heiser <markus.heiser@darmarit.de>\n"
+"Language-Team: Norwegian Bokmål <https://weblate.bubu1.eu/projects/searxng/"
+"searxng/nb_NO/>\n"
"Language: nb_NO\n"
-"Language-Team: Norwegian Bokmål "
-"<https://weblate.bubu1.eu/projects/searxng/searxng/nb_NO/>\n"
-"Plural-Forms: nplurals=2; plural=n != 1;\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Weblate 4.13.1\n"
"Generated-By: Babel 2.10.3\n"
#. CONSTANT_NAMES['DEFAULT_GROUP_NAME']
@@ -77,7 +79,7 @@ msgstr "kart"
#. CATEGORY_NAMES['ONIONS']
#: searx/searxng.msg
msgid "onions"
-msgstr "løktjenester"
+msgstr "onions"
#. CATEGORY_NAMES['SCIENCE']
#: searx/searxng.msg
@@ -214,7 +216,7 @@ msgstr "søkefeil"
#: searx/webapp.py:731
msgid "{minutes} minute(s) ago"
-msgstr "for {minutes} minute(s) siden"
+msgstr "for {minutes} minuter siden"
#: searx/webapp.py:733
msgid "{hours} hour(s), {minutes} minute(s) ago"
@@ -266,16 +268,21 @@ msgid ""
"format. TinEye only supports images that are JPEG, PNG, GIF, BMP, TIFF or"
" WebP."
msgstr ""
+"Kunne ikke lese bilde-lenken. Dette kan være fordi bildet er i et format som "
+"ikke er støttet. TinEye støtter bare JPEG, PNG, GIF, BMP, TIFF eller WebP "
+"formater."
#: searx/engines/tineye.py:46
msgid ""
"The image is too simple to find matches. TinEye requires a basic level of"
" visual detail to successfully identify matches."
msgstr ""
+"Bildet har for få særskilte detaljer for at TinEye kan finne like eller "
+"lignende bilder."
#: searx/engines/tineye.py:52
msgid "The image could not be downloaded."
-msgstr ""
+msgstr "Bildet kunne ikke lastes ned."
#: searx/plugins/hash_plugin.py:24
msgid "Converts strings to different hash digests."
@@ -347,11 +354,11 @@ msgstr ""
#: searx/plugins/tor_check.py:78
msgid "You are using TOR. Your IP address seems to be: {ip_address}."
-msgstr ""
+msgstr "Du bruker TOR. Din ip-adresse er: {ip_address}."
#: searx/plugins/tor_check.py:84
msgid "You are not using TOR. Your IP address seems to be: {ip_address}."
-msgstr ""
+msgstr "Du bruker ikke TOR. Din ip adresse er: {ip_address}."
#: searx/plugins/tracker_url_remover.py:29
msgid "Tracker URL remover"
@@ -1300,4 +1307,3 @@ msgstr "skjul video"
#~ msgid "preferences"
#~ msgstr "innstillinger"
-
diff --git a/searx/translations/pl/LC_MESSAGES/messages.mo b/searx/translations/pl/LC_MESSAGES/messages.mo
index f7e63fb7f..f469d5a75 100644
--- a/searx/translations/pl/LC_MESSAGES/messages.mo
+++ b/searx/translations/pl/LC_MESSAGES/messages.mo
Binary files differ
diff --git a/searx/translations/pl/LC_MESSAGES/messages.po b/searx/translations/pl/LC_MESSAGES/messages.po
index 7afbd55c7..2ffefedf1 100644
--- a/searx/translations/pl/LC_MESSAGES/messages.po
+++ b/searx/translations/pl/LC_MESSAGES/messages.po
@@ -7,20 +7,21 @@
# Markus Heiser <markus.heiser@darmarit.de>, 2022.
msgid ""
msgstr ""
-"Project-Id-Version: searx\n"
+"Project-Id-Version: searx\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2022-07-23 14:08+0000\n"
-"PO-Revision-Date: 2022-07-23 14:09+0000\n"
+"PO-Revision-Date: 2022-08-19 07:18+0000\n"
"Last-Translator: Markus Heiser <markus.heiser@darmarit.de>\n"
+"Language-Team: Polish <https://weblate.bubu1.eu/projects/searxng/searxng/pl/>"
+"\n"
"Language: pl\n"
-"Language-Team: Polish "
-"<https://weblate.bubu1.eu/projects/searxng/searxng/pl/>\n"
-"Plural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && "
-"(n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && "
-"n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n"
+"%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n"
+"%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n"
+"X-Generator: Weblate 4.13.1\n"
"Generated-By: Babel 2.10.3\n"
#. CONSTANT_NAMES['DEFAULT_GROUP_NAME']
@@ -270,16 +271,21 @@ msgid ""
"format. TinEye only supports images that are JPEG, PNG, GIF, BMP, TIFF or"
" WebP."
msgstr ""
+"Nie można odczytać obrazu z tego adresu URL. Może być to spowodowane "
+"nieobsługiwanym formatem pliku. TinEye obsługuje jedynie obrazy w formatach "
+"JPEG, PNG, GIF, BMP, TIFF i WebP."
#: searx/engines/tineye.py:46
msgid ""
"The image is too simple to find matches. TinEye requires a basic level of"
" visual detail to successfully identify matches."
msgstr ""
+"Zdjęcie jest za proste by znaleźć wyniki TinEye wymaga prostego poziomu "
+"szczegółów wizualnych aby poprawnie zidentyfikować wyniki."
#: searx/engines/tineye.py:52
msgid "The image could not be downloaded."
-msgstr ""
+msgstr "Nie można pobrać obrazu."
#: searx/plugins/hash_plugin.py:24
msgid "Converts strings to different hash digests."
@@ -335,23 +341,28 @@ msgstr ""
#: searx/plugins/tor_check.py:25
msgid "Tor check plugin"
-msgstr ""
+msgstr "Sprawdzenie plugin TOR"
#: searx/plugins/tor_check.py:28
msgid ""
"This plugin checks if the address of the request is a TOR exit node, and "
"informs the user if it is, like check.torproject.org but from searxng."
msgstr ""
+"Ten plugin sprawdza, czy adres wysyłający zapytanie jest węzłem wyjściowym "
+"sieci Tor, i powiadamia użytkownika jeśli jest, tak jak check.torproject.org "
+"ale z searxng."
#: searx/plugins/tor_check.py:62
msgid ""
"The TOR exit node list (https://check.torproject.org/exit-addresses) is "
"unreachable."
msgstr ""
+"Lista węzłów wyjsciowych sieci Tor (https://check.torproject.org/exit-"
+"addresses) jest nieosiągalna."
#: searx/plugins/tor_check.py:78
msgid "You are using TOR. Your IP address seems to be: {ip_address}."
-msgstr ""
+msgstr "Używasz sieci TOR. Twoje IP widoczne z zewnątrz to {ip_address}."
#: searx/plugins/tor_check.py:84
msgid "You are not using TOR. Your IP address seems to be: {ip_address}."
@@ -1387,4 +1398,3 @@ msgstr "ukryj wideo"
#~ msgid "preferences"
#~ msgstr "preferencje"
-
diff --git a/searx/translations/pt/LC_MESSAGES/messages.mo b/searx/translations/pt/LC_MESSAGES/messages.mo
index 28b66c09c..7a979fe35 100644
--- a/searx/translations/pt/LC_MESSAGES/messages.mo
+++ b/searx/translations/pt/LC_MESSAGES/messages.mo
Binary files differ
diff --git a/searx/translations/pt/LC_MESSAGES/messages.po b/searx/translations/pt/LC_MESSAGES/messages.po
index b88f9f3ee..9e9ba1e55 100644
--- a/searx/translations/pt/LC_MESSAGES/messages.po
+++ b/searx/translations/pt/LC_MESSAGES/messages.po
@@ -7,12 +7,13 @@
# C. E., 2018
# Markus Heiser <markus.heiser@darmarit.de>, 2022.
# Miguel Silva <miguelcabeca.dev@gmail.com>, 2022.
+# Ricardo Simões <xmcorporation@gmail.com>, 2022.
msgid ""
msgstr ""
"Project-Id-Version: searx\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2022-07-23 14:08+0000\n"
-"PO-Revision-Date: 2022-08-05 07:18+0000\n"
+"PO-Revision-Date: 2022-08-22 12:54+0000\n"
"Last-Translator: Markus Heiser <markus.heiser@darmarit.de>\n"
"Language-Team: Portuguese <https://weblate.bubu1.eu/projects/searxng/searxng/"
"pt/>\n"
@@ -280,6 +281,8 @@ msgid ""
"The image is too simple to find matches. TinEye requires a basic level of"
" visual detail to successfully identify matches."
msgstr ""
+"A imagem é demasiado simples para encontrar fósforos. O TinEye requer um "
+"nível básico de detalhe visual para identificar com sucesso os fósforos."
#: searx/engines/tineye.py:52
msgid "The image could not be downloaded."
@@ -291,7 +294,7 @@ msgstr "Converte strings em diferentes resumos de hash."
#: searx/plugins/hash_plugin.py:52
msgid "hash digest"
-msgstr "hash digest"
+msgstr "resumo de hash"
#: searx/plugins/hostname_replace.py:9
msgid "Hostname replace"
@@ -342,27 +345,31 @@ msgstr ""
#: searx/plugins/tor_check.py:25
msgid "Tor check plugin"
-msgstr ""
+msgstr "Verificar plugin Tor"
#: searx/plugins/tor_check.py:28
msgid ""
"This plugin checks if the address of the request is a TOR exit node, and "
"informs the user if it is, like check.torproject.org but from searxng."
msgstr ""
+"Este plugin verifica se o endereço do pedido é um nó de saída do TOR, e "
+"informa o utilizador se é, como check.torproject.org mas de searchxng."
#: searx/plugins/tor_check.py:62
msgid ""
"The TOR exit node list (https://check.torproject.org/exit-addresses) is "
"unreachable."
msgstr ""
+"A lista de nós de saída dos TOR (https://check.torproject.org/exit-addresses)"
+" é inalcançável."
#: searx/plugins/tor_check.py:78
msgid "You are using TOR. Your IP address seems to be: {ip_address}."
-msgstr ""
+msgstr "Está a utilizar os TOR. O seu endereço IP parece estar: {ip_address}."
#: searx/plugins/tor_check.py:84
msgid "You are not using TOR. Your IP address seems to be: {ip_address}."
-msgstr ""
+msgstr "Não está a usar o TOR. O seu endereço IP parece ser: {ip_address}."
#: searx/plugins/tracker_url_remover.py:29
msgid "Tracker URL remover"
@@ -466,19 +473,20 @@ msgstr "via proxy"
#: searx/templates/simple/new_issue.html:64
msgid "Start submiting a new issue on GitHub"
-msgstr ""
+msgstr "Iniciar envio de novo problema para o GitHub"
#: searx/templates/simple/new_issue.html:66
msgid "Please check for existing bugs about this engine on GitHub"
-msgstr ""
+msgstr "Por favor verifique se há bugs existentes sobre este motor no GitHub"
#: searx/templates/simple/new_issue.html:69
msgid "I confirm there is no existing bug about the issue I encounter"
-msgstr ""
+msgstr "Confirmo que não há bug existente sobre o problema que encontro"
#: searx/templates/simple/new_issue.html:71
msgid "If this is a public instance, please specify the URL in the bug report"
msgstr ""
+"Se esta for uma instância pública, especifique a URL no relatório do bug"
#: searx/templates/simple/new_issue.html:72
msgid "Submit a new issue on Github including the above information"
@@ -590,7 +598,7 @@ msgstr ""
#: searx/templates/simple/preferences.html:171
msgid "Engine tokens"
-msgstr "Engine tokens"
+msgstr "Tokens do Motor"
#: searx/templates/simple/preferences.html:175
msgid "Access tokens for private engines"
diff --git a/searx/translations/sl/LC_MESSAGES/messages.mo b/searx/translations/sl/LC_MESSAGES/messages.mo
index 8324949af..185308440 100644
--- a/searx/translations/sl/LC_MESSAGES/messages.mo
+++ b/searx/translations/sl/LC_MESSAGES/messages.mo
Binary files differ
diff --git a/searx/translations/sl/LC_MESSAGES/messages.po b/searx/translations/sl/LC_MESSAGES/messages.po
index 3d80d27c7..f230ab0c1 100644
--- a/searx/translations/sl/LC_MESSAGES/messages.po
+++ b/searx/translations/sl/LC_MESSAGES/messages.po
@@ -10,7 +10,7 @@ msgstr ""
"Project-Id-Version: searx\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2022-07-23 14:08+0000\n"
-"PO-Revision-Date: 2022-08-05 07:18+0000\n"
+"PO-Revision-Date: 2022-08-19 07:18+0000\n"
"Last-Translator: Markus Heiser <markus.heiser@darmarit.de>\n"
"Language-Team: Slovenian <https://weblate.bubu1.eu/projects/searxng/searxng/"
"sl/>\n"
@@ -31,7 +31,7 @@ msgstr "Drugi"
#. CONSTANT_NAMES['OTHER_CATEGORY']
#: searx/searxng.msg
msgid "other"
-msgstr ""
+msgstr "Ostale kategorije"
#. CATEGORY_NAMES['FILES']
#: searx/searxng.msg
@@ -121,7 +121,7 @@ msgstr "repozitoriji"
#. CATEGORY_GROUPS['SOFTWARE_WIKIS']
#: searx/searxng.msg
msgid "software wikis"
-msgstr ""
+msgstr "Dokumentacija programske opreme"
#. CATEGORY_GROUPS['WEB']
#: searx/searxng.msg
@@ -250,7 +250,7 @@ msgstr "Pridobite navodila"
#: searx/engines/pdbe.py:96
msgid "{title} (OBSOLETE)"
-msgstr ""
+msgstr "{title} (neveljaven)"
#: searx/engines/pdbe.py:103
msgid "This entry has been superseded by"
@@ -262,7 +262,7 @@ msgstr "Povzetek za to publikacijo ni na voljo."
#: searx/engines/qwant.py:214
msgid "Channel"
-msgstr ""
+msgstr "Kanal"
#: searx/engines/tineye.py:40
msgid ""
@@ -270,12 +270,17 @@ msgid ""
"format. TinEye only supports images that are JPEG, PNG, GIF, BMP, TIFF or"
" WebP."
msgstr ""
+"Ne morem prebrati slike hiperpovezave. Razlog je lahko zaradi nepodprtega "
+"formata datoteke. TinEye podpira samo slikovne formate JPEG, PNG, GIF, BMP, "
+"TIFF ali WebP."
#: searx/engines/tineye.py:46
msgid ""
"The image is too simple to find matches. TinEye requires a basic level of"
" visual detail to successfully identify matches."
msgstr ""
+"Slika je preveč preprosta, da bi lahko našel zadetke. TinEye potrebuje "
+"osnovni nivo vizualnih detajlov za identifikacijo zadetkov."
#: searx/engines/tineye.py:52
msgid "The image could not be downloaded."
@@ -283,23 +288,25 @@ msgstr "Slike ni bilo mogoče prevesti."
#: searx/plugins/hash_plugin.py:24
msgid "Converts strings to different hash digests."
-msgstr ""
+msgstr "Pretvori besede v drugo hash vrednost."
#: searx/plugins/hash_plugin.py:52
msgid "hash digest"
-msgstr ""
+msgstr "Hash vrednost"
#: searx/plugins/hostname_replace.py:9
msgid "Hostname replace"
-msgstr ""
+msgstr "Preimenuj strežniško ime"
#: searx/plugins/hostname_replace.py:10
msgid "Rewrite result hostnames or remove results based on the hostname"
msgstr ""
+"Prepiši rezultate strežniških imen ali odstrani rezultate na bazi "
+"strežniških imen"
#: searx/plugins/oa_doi_rewrite.py:9
msgid "Open Access DOI rewrite"
-msgstr ""
+msgstr "Prosto dostopni DOI prepis"
#: searx/plugins/oa_doi_rewrite.py:10
msgid ""
@@ -323,7 +330,7 @@ msgstr ""
#: searx/plugins/self_info.py:20
msgid "Self Informations"
-msgstr ""
+msgstr "Informacije o sebi"
#: searx/plugins/self_info.py:21
msgid ""
@@ -335,27 +342,32 @@ msgstr ""
#: searx/plugins/tor_check.py:25
msgid "Tor check plugin"
-msgstr ""
+msgstr "Preveri Tor vtičnik"
#: searx/plugins/tor_check.py:28
msgid ""
"This plugin checks if the address of the request is a TOR exit node, and "
"informs the user if it is, like check.torproject.org but from searxng."
msgstr ""
+"Ta vtičnik preveri, če je naslov poizvedbe izhodni prikluček TOR in "
+"informira uporabnika o njem, kot naprimer check.torproject.org ampak preko "
+"searxng-ja."
#: searx/plugins/tor_check.py:62
msgid ""
"The TOR exit node list (https://check.torproject.org/exit-addresses) is "
"unreachable."
msgstr ""
+"Seznam izhodnih priključkov TOR (https://check.torproject.org/exit-addresses)"
+" je nedosegljiv."
#: searx/plugins/tor_check.py:78
msgid "You are using TOR. Your IP address seems to be: {ip_address}."
-msgstr ""
+msgstr "Uporabljaš TOR. Tvoj IP naslov naj bi bil: {ip_address}."
#: searx/plugins/tor_check.py:84
msgid "You are not using TOR. Your IP address seems to be: {ip_address}."
-msgstr ""
+msgstr "Ne uporabljaš TOR-a. Tvoj IP naslov naj bi bil: {ip_address}."
#: searx/plugins/tracker_url_remover.py:29
msgid "Tracker URL remover"
@@ -393,11 +405,11 @@ msgstr "stran za iskanje"
#: searx/templates/simple/base.html:46
msgid "About"
-msgstr ""
+msgstr "O nas"
#: searx/templates/simple/base.html:50
msgid "Donate"
-msgstr ""
+msgstr "Doniraj"
#: searx/templates/simple/base.html:54
#: searx/templates/simple/preferences.html:99
@@ -414,11 +426,11 @@ msgstr "razširljiv metaiskalnik, ki spoštuje vašo zasebnost"
#: searx/templates/simple/base.html:65
msgid "Source code"
-msgstr ""
+msgstr "Izvorna koda"
#: searx/templates/simple/base.html:66
msgid "Issue tracker"
-msgstr ""
+msgstr "Sledilnik napak/problemov"
#: searx/templates/simple/base.html:67 searx/templates/simple/stats.html:18
msgid "Engine stats"
@@ -427,15 +439,15 @@ msgstr "Statistike iskalnika"
#: searx/templates/simple/base.html:69
#: searx/templates/simple/messages/no_results.html:15
msgid "Public instances"
-msgstr ""
+msgstr "Javne instance"
#: searx/templates/simple/base.html:72
msgid "Privacy policy"
-msgstr ""
+msgstr "Politika zasebnosti"
#: searx/templates/simple/base.html:75
msgid "Contact instance maintainer"
-msgstr ""
+msgstr "Kontaktiraj vzdrževalca instance"
#: searx/templates/simple/categories.html:24
msgid "Click on the magnifier to perform search"
@@ -443,12 +455,12 @@ msgstr "Kiknite na lupo za iskanje"
#: searx/templates/simple/macros.html:36
msgid "Length"
-msgstr ""
+msgstr "Dolžina"
#: searx/templates/simple/macros.html:37
#: searx/templates/simple/result_templates/images.html:18
msgid "Author"
-msgstr ""
+msgstr "Avtor"
#: searx/templates/simple/macros.html:45
msgid "cached"
@@ -460,19 +472,20 @@ msgstr "preko posredniškega strežnika"
#: searx/templates/simple/new_issue.html:64
msgid "Start submiting a new issue on GitHub"
-msgstr ""
+msgstr "Začni oddajo novega hrošča na GitHub-u"
#: searx/templates/simple/new_issue.html:66
msgid "Please check for existing bugs about this engine on GitHub"
-msgstr ""
+msgstr "Prosim preveri že aktivne hrošče glede engine-a na GitHub-u"
#: searx/templates/simple/new_issue.html:69
msgid "I confirm there is no existing bug about the issue I encounter"
msgstr ""
+"Potrjujem da o problemu, na katerega sem naletel, ni že obstoječega hrošča"
#: searx/templates/simple/new_issue.html:71
msgid "If this is a public instance, please specify the URL in the bug report"
-msgstr ""
+msgstr "Če je to javna instanca, prosim specificirajte URL v poročilu o napaki"
#: searx/templates/simple/new_issue.html:72
msgid "Submit a new issue on Github including the above information"
diff --git a/searx/translations/szl/LC_MESSAGES/messages.mo b/searx/translations/szl/LC_MESSAGES/messages.mo
index 921581ad6..5f7c495fe 100644
--- a/searx/translations/szl/LC_MESSAGES/messages.mo
+++ b/searx/translations/szl/LC_MESSAGES/messages.mo
Binary files differ
diff --git a/searx/translations/szl/LC_MESSAGES/messages.po b/searx/translations/szl/LC_MESSAGES/messages.po
index 3f838fdc2..61a7a803e 100644
--- a/searx/translations/szl/LC_MESSAGES/messages.po
+++ b/searx/translations/szl/LC_MESSAGES/messages.po
@@ -2,20 +2,23 @@
# Copyright (C) 2022 ORGANIZATION
# This file is distributed under the same license as the PROJECT project.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2022.
-#
+# gkkulik <gregorykkulik@gmail.com>, 2022.
msgid ""
msgstr ""
"Project-Id-Version: PROJECT VERSION\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2022-07-23 14:08+0000\n"
-"PO-Revision-Date: 2022-05-13 07:20+0000\n"
+"PO-Revision-Date: 2022-08-19 07:18+0000\n"
"Last-Translator: gkkulik <gregorykkulik@gmail.com>\n"
+"Language-Team: Silesian <https://weblate.bubu1.eu/projects/searxng/searxng/"
+"szl/>\n"
"Language: szl\n"
-"Language-Team: Silesian "
-"<https://weblate.bubu1.eu/projects/searxng/searxng/szl/>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 "
+"|| n%100>=20) ? 1 : 2;\n"
+"X-Generator: Weblate 4.13.1\n"
"Generated-By: Babel 2.10.3\n"
#. CONSTANT_NAMES['DEFAULT_GROUP_NAME']
@@ -265,16 +268,21 @@ msgid ""
"format. TinEye only supports images that are JPEG, PNG, GIF, BMP, TIFF or"
" WebP."
msgstr ""
+"Niy szło przeczytać adresy ôd tego ôbrozka. To może wynikać ze niyspiyranego "
+"formatu zbioru. TinEye spiyro ino ôbrazy JPEG, PNG, GIF, BMP, TIFF i WebP."
#: searx/engines/tineye.py:46
msgid ""
"The image is too simple to find matches. TinEye requires a basic level of"
" visual detail to successfully identify matches."
msgstr ""
+"Tyn ôbroz je za mały, żeby znojś coś, co pasuje. TinEye potrzebuje "
+"podstawowego poziōmu wizualnyj akuratności, żeby akuratnie idyntyfikować "
+"pasowne ôbrazy."
#: searx/engines/tineye.py:52
msgid "The image could not be downloaded."
-msgstr ""
+msgstr "Tego ôbrazu niy szło ściōngnōńć."
#: searx/plugins/hash_plugin.py:24
msgid "Converts strings to different hash digests."
@@ -332,7 +340,7 @@ msgstr ""
#: searx/plugins/tor_check.py:25
msgid "Tor check plugin"
-msgstr ""
+msgstr "Przidowek sprawdzanio necu Tor"
#: searx/plugins/tor_check.py:28
msgid ""
@@ -390,11 +398,11 @@ msgstr "strōny wyszukowanio"
#: searx/templates/simple/base.html:46
msgid "About"
-msgstr ""
+msgstr "Informacyje"
#: searx/templates/simple/base.html:50
msgid "Donate"
-msgstr ""
+msgstr "Spōmōż"
#: searx/templates/simple/base.html:54
#: searx/templates/simple/preferences.html:99
@@ -428,7 +436,7 @@ msgstr "Publiczne instancyje"
#: searx/templates/simple/base.html:72
msgid "Privacy policy"
-msgstr ""
+msgstr "Polityka prywatności"
#: searx/templates/simple/base.html:75
msgid "Contact instance maintainer"
@@ -617,7 +625,7 @@ msgstr "Wybier autōmatyczny, żeby sie szaltrowoł podug sztalōnkōw przeglōn
#: searx/templates/simple/preferences.html:217
msgid "Center Alignment"
-msgstr ""
+msgstr "Wypostrzodkowanie"
#: searx/templates/simple/preferences.html:220
#: searx/templates/simple/preferences.html:232
@@ -1142,4 +1150,3 @@ msgstr "skryj wideo"
#~ msgid "preferences"
#~ msgstr "preferyncyje"
-
diff --git a/searx/translations/tr/LC_MESSAGES/messages.mo b/searx/translations/tr/LC_MESSAGES/messages.mo
index 510759cb7..6f476b132 100644
--- a/searx/translations/tr/LC_MESSAGES/messages.mo
+++ b/searx/translations/tr/LC_MESSAGES/messages.mo
Binary files differ
diff --git a/searx/translations/tr/LC_MESSAGES/messages.po b/searx/translations/tr/LC_MESSAGES/messages.po
index 09a1b338f..54e092a8d 100644
--- a/searx/translations/tr/LC_MESSAGES/messages.po
+++ b/searx/translations/tr/LC_MESSAGES/messages.po
@@ -15,7 +15,7 @@ msgstr ""
"Project-Id-Version: searx\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2022-07-23 14:08+0000\n"
-"PO-Revision-Date: 2022-07-29 07:17+0000\n"
+"PO-Revision-Date: 2022-08-19 07:18+0000\n"
"Last-Translator: Markus Heiser <markus.heiser@darmarit.de>\n"
"Language-Team: Turkish <https://weblate.bubu1.eu/projects/searxng/searxng/tr/"
">\n"
@@ -283,6 +283,8 @@ msgid ""
"The image is too simple to find matches. TinEye requires a basic level of"
" visual detail to successfully identify matches."
msgstr ""
+"Fotoğraf aranmak için fazla basit. TinEye 'ın başarılı şekilde çalışması "
+"için basit detaylar gereklidir."
#: searx/engines/tineye.py:52
msgid "The image could not be downloaded."
@@ -344,19 +346,24 @@ msgstr ""
#: searx/plugins/tor_check.py:25
msgid "Tor check plugin"
-msgstr ""
+msgstr "Tor kontrol eklentisi"
#: searx/plugins/tor_check.py:28
msgid ""
"This plugin checks if the address of the request is a TOR exit node, and "
"informs the user if it is, like check.torproject.org but from searxng."
msgstr ""
+"Bu eklenti istek adresinin TOR çıkış düğümü olup olmadığını kontrol eder ve "
+"öyleyse kullanıcıya haber verir, check.torproject.org benzeri ama "
+"searxng'den."
#: searx/plugins/tor_check.py:62
msgid ""
"The TOR exit node list (https://check.torproject.org/exit-addresses) is "
"unreachable."
msgstr ""
+"TOR cıkış düğümü listesine (https://check.torproject.org/exit-addresses) "
+"ulaşılamıyor."
#: searx/plugins/tor_check.py:78
msgid "You are using TOR. Your IP address seems to be: {ip_address}."
diff --git a/searx/translations/zh_Hans_CN/LC_MESSAGES/messages.mo b/searx/translations/zh_Hans_CN/LC_MESSAGES/messages.mo
index 293c455c6..7690d09bb 100644
--- a/searx/translations/zh_Hans_CN/LC_MESSAGES/messages.mo
+++ b/searx/translations/zh_Hans_CN/LC_MESSAGES/messages.mo
Binary files differ
diff --git a/searx/translations/zh_Hans_CN/LC_MESSAGES/messages.po b/searx/translations/zh_Hans_CN/LC_MESSAGES/messages.po
index dfd757555..3e8673365 100644
--- a/searx/translations/zh_Hans_CN/LC_MESSAGES/messages.po
+++ b/searx/translations/zh_Hans_CN/LC_MESSAGES/messages.po
@@ -19,8 +19,8 @@ msgstr ""
"Project-Id-Version: searx\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2022-07-23 14:08+0000\n"
-"PO-Revision-Date: 2022-08-05 07:18+0000\n"
-"Last-Translator: Markus Heiser <markus.heiser@darmarit.de>\n"
+"PO-Revision-Date: 2022-08-12 07:18+0000\n"
+"Last-Translator: wordpure <wordlesspure@gmail.com>\n"
"Language-Team: Chinese (Simplified) <https://weblate.bubu1.eu/projects/"
"searxng/searxng/zh_Hans/>\n"
"Language: zh_Hans_CN\n"
@@ -285,7 +285,8 @@ msgstr ""
msgid ""
"The image is too simple to find matches. TinEye requires a basic level of"
" visual detail to successfully identify matches."
-msgstr ""
+msgstr "图像过于简单,无法找到匹配项。 TinEye "
+"需要基本级别的视觉细节才能成功识别匹配项。"
#: searx/engines/tineye.py:52
msgid "The image could not be downloaded."
@@ -346,6 +347,8 @@ msgid ""
"This plugin checks if the address of the request is a TOR exit node, and "
"informs the user if it is, like check.torproject.org but from searxng."
msgstr ""
+"该插件检查请求的 IP 地址是否为 TOR 出口节点,是的话就通知用户,可视为 "
+"searxng 中的 check.torproject.org 。"
#: searx/plugins/tor_check.py:62
msgid ""
@@ -469,7 +472,7 @@ msgstr "请在 GitHub 上检查有关此引擎的现有错误"
#: searx/templates/simple/new_issue.html:69
msgid "I confirm there is no existing bug about the issue I encounter"
-msgstr ""
+msgstr "我确定已知 bug 中没有我遇到的问题"
#: searx/templates/simple/new_issue.html:71
msgid "If this is a public instance, please specify the URL in the bug report"
diff --git a/searx/webapp.py b/searx/webapp.py
index 83bbeac06..eb2b19d44 100755
--- a/searx/webapp.py
+++ b/searx/webapp.py
@@ -1282,19 +1282,17 @@ Disallow: /*?*q=*
@app.route('/opensearch.xml', methods=['GET'])
def opensearch():
- method = 'post'
-
- if request.preferences.get_value('method') == 'GET':
- method = 'get'
+ method = request.preferences.get_value('method')
+ autocomplete = request.preferences.get_value('autocomplete')
# chrome/chromium only supports HTTP GET....
if request.headers.get('User-Agent', '').lower().find('webkit') >= 0:
- method = 'get'
+ method = 'GET'
- autocomplete = request.preferences.get_value('autocomplete')
+ if method not in ('POST', 'GET'):
+ method = 'POST'
ret = render('opensearch.xml', opensearch_method=method, autocomplete=autocomplete)
-
resp = Response(response=ret, status=200, mimetype="application/opensearchdescription+xml")
return resp
diff --git a/tests/unit/test_webapp.py b/tests/unit/test_webapp.py
index 558cc6bb3..9f10df908 100644
--- a/tests/unit/test_webapp.py
+++ b/tests/unit/test_webapp.py
@@ -244,7 +244,9 @@ class ViewsTestCase(SearxTestCase):
def test_opensearch_xml(self):
result = self.app.get('/opensearch.xml')
self.assertEqual(result.status_code, 200)
- self.assertIn(b'<Description>a privacy-respecting, hackable metasearch engine</Description>', result.data)
+ self.assertIn(
+ b'<Description>SearXNG is a metasearch engine that respects your privacy.</Description>', result.data
+ )
def test_favicon(self):
result = self.app.get('/favicon.ico')