/* SPDX-License-Identifier: GPL-3.0-or-later */
:root{--color-base-background:var(--vt-bg)!important;--color-base-font:var(--vt-label)!important;--color-header-background:var(--vt-bg)!important;--color-url-font:var(--vt-label-2)!important;--color-result-link-font:var(--vt-tint-strong)!important;--color-result-link-visited-font:var(--vt-tint-strong)!important;--color-result-background:var(--vt-surface)!important;--color-search-background:var(--vt-surface)!important;--color-search-border:var(--vt-separator)!important;--color-btn-background:var(--vt-pink-600)!important;--color-btn-font:#fff!important;--color-settings-tr-hover:var(--vt-fill)!important}
body.vt{margin:0;font-family:var(--vt-font)!important;background:var(--vt-bg)!important;color:var(--vt-label)!important;font-synthesis:none}body.vt[data-font=system]{font-family:var(--vt-font-system)!important}.vt button,.vt input,.vt select{font-family:inherit!important}.vt a{color:var(--vt-tint-strong)}.vt input,.vt select,.vt option{color:var(--vt-label)!important;background:var(--vt-surface)!important;border-color:var(--vt-separator)!important}.vt input::placeholder{color:var(--vt-label-2)}.vt :focus-visible{outline:3px solid var(--vt-tint-strong)!important;outline-offset:3px;box-shadow:none!important}.vt .vt-menubar{position:relative;z-index:1000;display:flex;align-items:center;gap:24px;justify-content:space-between;padding:12px 24px;background:var(--vt-glass);border-bottom:1px solid var(--vt-separator);backdrop-filter:blur(18px) saturate(1.6);-webkit-backdrop-filter:blur(18px) saturate(1.6);flex-wrap:wrap}.vt .vt-brand{display:flex;align-items:center;gap:10px;font-size:17px;font-weight:700;color:var(--vt-label);text-decoration:none}.vt .vt-brand img{width:32px;height:32px}.vt .vt-menubar nav{display:flex;gap:16px;font-size:12px;flex-wrap:wrap}.vt .vt-menubar nav a{color:var(--vt-tint-strong);text-decoration:none}.vt #main_index .index{margin:0 auto!important;padding:64px 20px 48px;max-width:760px;width:100%;box-sizing:border-box}.vt #main_index .title{height:auto!important;min-height:0!important;margin:0!important;background:none!important;display:block!important}.vt #main_index .title h1{display:block!important;position:static!important;width:auto!important;height:auto!important;clip:auto!important;clip-path:none!important;overflow:visible!important;text-indent:0!important;white-space:normal!important;margin:15px 0!important;font:700 clamp(36px,6vw,58px)/1.15 var(--vt-font)!important;letter-spacing:normal!important;color:var(--vt-label)!important}.vt .vt-search-mark{width:84px;height:84px;display:block;margin:0 auto 20px;filter:none!important}.vt .vt-search-note{color:var(--vt-label-2);font-size:14px;line-height:1.8;margin:12px 0 30px}.vt #main_index #search_view{display:flex;width:100%;box-sizing:border-box}.vt .search_box,.vt #search_view{background:var(--vt-surface)!important;border:1px solid var(--vt-separator)!important;border-radius:12px;box-shadow:var(--vt-shadow-1)!important}.vt #q{font-family:inherit!important;font-size:16px!important}.vt #search_header{background:var(--vt-bg)!important;grid-template-columns:190px minmax(0,1fr)!important;padding-inline:24px;column-gap:16px}.vt #search_logo{width:190px!important;min-width:190px!important;margin:0!important;display:flex;align-items:center;white-space:nowrap}.vt #search_logo img{width:28px;height:28px;margin-right:8px}.vt .vt-wordmark{font:700 16px var(--vt-font)!important;color:var(--vt-label)!important;white-space:nowrap;letter-spacing:normal}.vt .result-default{padding:22px!important;border-radius:12px!important;background:var(--vt-surface)!important;border:1px solid var(--vt-separator)!important;box-shadow:var(--vt-shadow-1)!important;margin-bottom:16px!important}.vt .result h3 a,.vt .result_header a{color:var(--vt-tint-strong)!important}.vt .result-default .content{line-height:1.7!important;color:var(--vt-label)!important}.vt .result-default .highlight{color:inherit!important;background:var(--vt-tint-soft)!important}.vt .result-default cite,.vt .result-default .url_header{color:var(--vt-label-2)!important}
.vt .vt-lenses{display:flex;align-items:center;gap:8px;flex-wrap:wrap;max-width:820px;margin:16px auto 24px;padding:5px}.vt #main_index .vt-lenses{justify-content:center}.vt .vt-lenses>span{font-size:12px;color:var(--vt-label-2);margin-right:8px}.vt .vt-lenses button,.vt .vt-tags-help button,.vt .vt-active-tags button,.vt #save-search-account,.vt .vt-ai button{border:1px solid var(--vt-separator);background:var(--vt-surface);border-radius:8px;padding:9px 14px;color:var(--vt-tint-strong);cursor:pointer;font:inherit;font-size:12px;min-height:36px}.vt .vt-lenses button[aria-pressed=true],.vt .vt-ai .vt-ai-primary{background:var(--vt-pink-600)!important;color:#fff!important;border-color:var(--vt-pink-600)!important}.vt .vt-reason{font-size:12px;color:var(--vt-label-2);margin:12px 0 4px}.vt .vt-reason summary,.vt .vt-tags-help summary{cursor:pointer}.vt .vt-reason p{font-size:12px;line-height:1.7;padding:12px;background:var(--vt-surface-2);border-radius:8px}.vt .vt-credit,.vt .vt-account-notice,.vt footer{font-size:12px;color:var(--vt-label-2)!important;line-height:1.8;overflow-wrap:anywhere}.vt .vt-tags-help,.vt .vt-active-tags{max-width:820px;margin:0 auto 18px;padding:0 5px;color:var(--vt-label-2);font-size:12px}.vt .vt-tags-help p{line-height:1.8}.vt .vt-tags-help button,.vt .vt-active-tags button{margin:4px}.vt .vt-active-tags{display:flex;flex-wrap:wrap;gap:4px}.vt .vt-ai{border:1px solid var(--vt-separator);border-radius:22px;padding:22px;background:var(--vt-surface);box-shadow:var(--vt-shadow-1);margin:8px 0 24px}.vt .vt-ai header{display:flex;justify-content:space-between;align-items:center;gap:15px}.vt .vt-ai h2{font:700 22px/1.3 var(--vt-font);margin:6px 0;color:var(--vt-label)}.vt .vt-ai small,.vt .vt-ai label,.vt .vt-ai-notice,.vt .vt-ai-status{color:var(--vt-label-2);font-size:12px;line-height:1.8}.vt .vt-ai-switch{display:flex;gap:8px;align-items:center;white-space:nowrap;cursor:pointer;min-height:44px}.vt .vt-ai-switch input{appearance:auto!important;accent-color:var(--vt-pink-600);width:20px;height:20px}.vt .vt-ai-controls[hidden],.vt .vt-ai-follow[hidden]{display:none!important}.vt .vt-ai-settings{display:grid;grid-template-columns:1fr 1.4fr;gap:12px}.vt .vt-ai-settings label{display:flex;flex-direction:column;gap:7px}.vt .vt-ai-key{grid-column:1/-1}.vt .vt-ai input,.vt .vt-ai select{box-sizing:border-box;min-width:0;width:100%;min-height:44px;border:1px solid var(--vt-separator);border-radius:8px;font:14px var(--vt-font);padding:9px 12px}.vt .vt-ai-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:15px}.vt .vt-ai button:disabled{opacity:.55;cursor:progress}.vt .vt-ai-answer{font-size:14px;line-height:1.9;color:var(--vt-label);white-space:pre-wrap;overflow-wrap:anywhere;padding:16px 0}.vt .vt-ai-question{font-size:14px;font-weight:700;color:var(--vt-label);border-top:1px solid var(--vt-separator);padding-top:17px}.vt .vt-ai-sources{display:flex;gap:8px;flex-wrap:wrap}.vt .vt-ai-sources small{width:100%}.vt .vt-ai-sources a{font-size:12px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border:1px solid var(--vt-separator);border-radius:8px;padding:7px 10px}.vt .vt-ai-follow{display:flex;gap:9px;margin-top:18px}.vt .vt-ai-follow button{flex:none}
.vigiltech-appearance{position:relative;font-size:12px;margin-left:auto;z-index:30}.vigiltech-appearance summary{cursor:pointer;list-style:none;padding:10px 12px;border:1px solid var(--vt-separator);border-radius:8px;color:var(--vt-label);background:var(--vt-surface)}.vigiltech-appearance-menu{position:absolute;right:0;top:calc(100% + 8px);width:210px;background:var(--vt-surface);box-shadow:var(--vt-shadow-2);border:1px solid var(--vt-separator);border-radius:12px;padding:6px;display:grid}.vigiltech-appearance-menu button{border:0;text-align:left;padding:12px;background:none;color:var(--vt-label);border-radius:8px;cursor:pointer}.vigiltech-appearance-menu button:hover{background:var(--vt-tint-soft)}.vigiltech-credit{display:block;font-size:12px;color:var(--vt-label-2)}
@media(max-width:700px){.vt .vt-menubar{padding:12px 16px;gap:10px}.vt .vt-menubar nav{gap:10px;font-size:12px}.vt .vt-menubar nav>a:not(:last-child){display:none}.vt #main_index .index{padding:36px 16px}.vt #search_header{grid-template-columns:32px minmax(0,1fr)!important;padding-inline:12px;column-gap:8px}.vt #search_logo{width:32px!important;min-width:32px!important}.vt .vt-wordmark{display:none}.vt .result-default{padding:16px!important;margin-inline:0!important}.vt .vt-lenses{gap:5px;margin:12px 0 18px}.vt .vt-ai{padding:17px}.vt .vt-ai header{align-items:flex-start;flex-direction:column}.vt .vt-ai-settings{grid-template-columns:1fr}.vt .vt-ai-follow{flex-wrap:wrap}.vt .vt-ai-follow input{flex-basis:100%}.vt input,.vt select{font-size:16px!important}.vt button,.vt summary,.vt select,.vt .vt-lenses button,.vt .vt-ai button{min-height:44px}}
@media(prefers-reduced-motion:reduce){.vt *,.vt *::before,.vt *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media(prefers-reduced-transparency:reduce){.vt .vt-menubar{background:var(--vt-surface);backdrop-filter:none;-webkit-backdrop-filter:none}}@media(forced-colors:active){.vt :focus-visible{outline-color:Highlight!important}.vt button,.vt .result-default,.vt input,.vt select{border:1px solid CanvasText!important}.vt .vt-lenses button[aria-pressed=true],.vt .vt-ai .vt-ai-primary{background:Highlight!important;color:HighlightText!important}}
.vt #main_index{margin:0!important;padding-top:clamp(24px,5vh,56px)!important}.vt #main_index .title h1{visibility:visible!important}
.vt #search_view:focus-within{outline:3px solid var(--vt-tint-strong);outline-offset:3px}.vt #q:focus-visible{outline:none!important;box-shadow:none!important}

/* ---- Surfaces, wallpaper, glass and explicit states (every text colour is paired with the surface it sits on) ---- */
.vt{--vt-bar:var(--vt-surface);--vt-btn:var(--vt-pink-600);--vt-btn-hover:var(--vt-pink-700);--vt-btn-active:var(--vt-pink-800)}
@supports (background:color-mix(in srgb,red 50%,transparent)){.vt{--vt-bar:color-mix(in srgb,var(--vt-surface) 88%,transparent)}}
.vt .vt-menubar,.vt #search_header{background:var(--vt-bar)!important;backdrop-filter:blur(18px) saturate(1.6);-webkit-backdrop-filter:blur(18px) saturate(1.6);border-bottom:1px solid var(--vt-separator);box-shadow:inset 0 -1px 0 var(--vt-glass-edge)}
.vt #search_header{position:sticky;top:0;z-index:900}
.vt #main_index{background:var(--vt-wallpaper);min-height:calc(100vh - 140px);padding:clamp(24px,6vh,72px) 16px!important;display:block;box-sizing:border-box}
:root[data-theme=dark] .vt #main_index,.vt.night #main_index{background:radial-gradient(70% 55% at 62% 118%,rgba(255,0,88,.38),transparent 70%),var(--vt-wallpaper)}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .vt #main_index{background:radial-gradient(70% 55% at 62% 118%,rgba(255,0,88,.38),transparent 70%),var(--vt-wallpaper)}}
.vt #main_index .index{background:var(--vt-surface);color:var(--vt-label);border:1px solid var(--vt-separator);border-radius:var(--vt-r-sheet);box-shadow:var(--vt-shadow-2);padding:40px 32px 32px!important;max-width:680px!important;text-align:center}
.vt #main_index .index .vt-lenses,.vt #main_index .index .vt-tags-help{text-align:left}
.vt .vt-search-mark{border-radius:19px;box-shadow:var(--vt-shadow-1)}
.vt .search_box,.vt #search_view{background:var(--vt-surface-2)!important}
.vt #q{background:transparent!important;color:var(--vt-label)!important}
.vt #send_search,.vt input[type=submit],.vt .vt-btn-primary{background:var(--vt-btn)!important;color:#fff!important;border:0!important;border-radius:8px;cursor:pointer;font-weight:700;min-height:36px;padding:8px 16px}
.vt #send_search:hover,.vt input[type=submit]:hover,.vt .vt-btn-primary:hover{background:var(--vt-btn-hover)!important;color:#fff!important}
.vt #send_search:active,.vt input[type=submit]:active,.vt .vt-btn-primary:active{background:var(--vt-btn-active)!important;color:#fff!important}
.vt #send_search:disabled,.vt input[type=submit]:disabled{background:var(--vt-fill-2)!important;color:var(--vt-label)!important;cursor:not-allowed}
.vt #send_search svg{fill:currentColor;stroke:currentColor}
.vt #links_on_top,.vt #links_on_top a{color:var(--vt-tint-strong)!important;font-size:12px}
.vt #categories,.vt #categories_container{display:flex;gap:6px;flex-wrap:wrap;margin:12px 0}
.vt .category label,.vt #categories .category label{display:inline-block;padding:7px 14px;border-radius:999px;background:var(--vt-fill);color:var(--vt-label)!important;border:1px solid transparent;cursor:pointer;font-size:13px}
.vt .category label:hover{background:var(--vt-fill-2);color:var(--vt-label)!important}
.vt .category input:focus-visible+label{outline:3px solid var(--vt-tint-strong);outline-offset:2px}
.vt .category input:checked+label{background:var(--vt-btn);color:#fff!important;font-weight:700}
.vt .category input:checked+label:hover{background:var(--vt-btn-hover);color:#fff!important}
.vt .category input{position:absolute;opacity:0;pointer-events:none}
.vt .category{position:relative}
.vt #main_results,.vt #results_view{background:transparent;color:var(--vt-label)}
.vt #results_view{padding:8px 24px 32px}
.vt .result-default:hover{border-color:var(--vt-tint-soft);box-shadow:var(--vt-shadow-2)!important}
.vt .result h3 a:hover,.vt .result_header a:hover,.vt a:hover{color:var(--vt-label)!important;text-decoration:underline}
.vt .result h3 a:visited{color:var(--vt-tint-strong)!important}
.vt .url_wrapper,.vt .url_o1,.vt .url_o2,.vt .url_i1,.vt .url_i2{color:var(--vt-label-2)!important}
.vt .engines,.vt .engines span,.vt .result-default .engines{color:var(--vt-label-2)!important;font-size:12px}
.vt .result .cache_link,.vt .result .proxyfied_link,.vt .result-default a.cache_link{color:var(--vt-tint-strong)!important}
.vt #sidebar,.vt #sidebar>*,.vt .infobox,.vt .answer,.vt #suggestions,.vt .suggestions{color:var(--vt-label)}
.vt .infobox,.vt .answer,.vt .suggestions{background:var(--vt-surface);border:1px solid var(--vt-separator);border-radius:12px;padding:16px 18px;box-shadow:var(--vt-shadow-1);margin-bottom:16px}
.vt .infobox h2,.vt .infobox h3,.vt .suggestions h4{color:var(--vt-label)!important}
.vt .suggestions button,.vt .pagination button,.vt #pagination button,.vt .pagination a{border:1px solid var(--vt-separator);background:var(--vt-surface);color:var(--vt-tint-strong)!important;border-radius:8px;padding:8px 16px;min-height:36px;cursor:pointer;font:inherit;font-size:13px}
.vt .suggestions button:hover,.vt .pagination button:hover,.vt #pagination button:hover{background:var(--vt-tint-soft);color:var(--vt-label)!important}
.vt .suggestions button:active,.vt .pagination button:active{background:var(--vt-fill-2);color:var(--vt-label)!important}
.vt .pagination button:disabled,.vt button:disabled:not(.vt-ai-primary){background:var(--vt-fill);color:var(--vt-label-2)!important;cursor:not-allowed}
.vt .vt-lenses button:hover,.vt .vt-tags-help button:hover,.vt .vt-active-tags button:hover,.vt #save-search-account:hover,.vt .vt-ai button:hover:not(.vt-ai-primary){background:var(--vt-tint-soft);color:var(--vt-label)}
.vt .vt-lenses button:active,.vt .vt-tags-help button:active,.vt .vt-active-tags button:active,.vt .vt-ai button:active:not(.vt-ai-primary){background:var(--vt-fill-2);color:var(--vt-label)}
.vt .vt-lenses button[aria-pressed=true]:hover,.vt .vt-ai .vt-ai-primary:hover{background:var(--vt-btn-hover)!important;color:#fff!important}
.vt .vt-lenses button[aria-pressed=true]:active,.vt .vt-ai .vt-ai-primary:active{background:var(--vt-btn-active)!important;color:#fff!important}
.vt .vt-ai .vt-ai-primary:disabled{background:var(--vt-fill-2)!important;color:var(--vt-label)!important;border-color:var(--vt-separator)!important;opacity:1}
.vt .vt-lenses>span,.vt .vt-reason,.vt .vt-credit a{color:var(--vt-label-2)}
.vt .vt-credit a{color:var(--vt-tint-strong)}
.vt .vt-lenses,.vt .vt-tags-help,.vt .vt-active-tags{background:transparent;color:var(--vt-label-2)}
body.vt:not(.index_endpoint) .vt-lenses,body.vt:not(.index_endpoint) .vt-tags-help,body.vt:not(.index_endpoint) .vt-active-tags{background:var(--vt-surface);border:1px solid var(--vt-separator);border-radius:12px;padding:10px 14px}
.vt footer{max-width:820px;margin:24px auto;padding:14px 18px;text-align:center;background:var(--vt-surface);border:1px solid var(--vt-separator);border-radius:12px;color:var(--vt-label-2)!important}
.vt footer a{color:var(--vt-tint-strong)!important}
.vt footer a:hover{color:var(--vt-label)!important}
.vt .vt-ai-switch input:focus-visible{outline:3px solid var(--vt-tint-strong);outline-offset:2px}
.vt .vt-ai input::placeholder{color:var(--vt-label-2)}
.vt .vt-ai input:disabled,.vt .vt-ai select:disabled{background:var(--vt-fill)!important;color:var(--vt-label-2)!important}
/* Preferences */
.vt #main_preferences,.vt .preferences{max-width:900px;margin:0 auto;padding:24px 16px 32px;color:var(--vt-label)}
.vt #main_preferences h1,.vt #main_preferences h2,.vt #main_preferences legend,.vt #main_preferences h3{color:var(--vt-label)!important}
.vt .tabs,.vt nav.tabs{display:flex;gap:4px;flex-wrap:wrap;padding:4px;background:var(--vt-fill);border-radius:12px;margin:0 0 20px}
.vt .tabs a,.vt .tabs label,.vt .tabs button{padding:8px 14px;border-radius:8px;color:var(--vt-label)!important;background:transparent;text-decoration:none;border:0;font:inherit;font-size:13px;cursor:pointer}
.vt .tabs a:hover,.vt .tabs button:hover{background:var(--vt-fill-2);color:var(--vt-label)!important;text-decoration:none}
.vt .tabs a[aria-selected=true],.vt .tabs a.active,.vt .tabs [aria-current=page],.vt .tabs button[aria-selected=true]{background:var(--vt-surface);color:var(--vt-label)!important;box-shadow:var(--vt-shadow-1);font-weight:700}
.vt fieldset{background:var(--vt-surface);border:1px solid var(--vt-separator);border-radius:12px;padding:16px 20px;margin:0 0 16px;color:var(--vt-label)}
.vt fieldset legend{padding:0 8px;font-weight:700}
.vt .value,.vt .description,.vt .help,.vt fieldset p,.vt .pref-description{color:var(--vt-label-2)}
.vt table.table_settings,.vt table{border-collapse:collapse;width:100%;background:var(--vt-surface);color:var(--vt-label)}
.vt th{background:var(--vt-surface-2);color:var(--vt-label);text-align:left;font-weight:700}
.vt th,.vt td{padding:10px 12px;border-bottom:1px solid var(--vt-separator)}
.vt tr:hover td,.vt tr:hover th{background:var(--vt-fill);color:var(--vt-label)}
.vt td.onoff-checkbox label,.vt .checkbox-onoff label{color:var(--vt-label)}
.vt select{border:1px solid var(--vt-separator);border-radius:8px;padding:8px 10px;min-height:36px}
.vt input[type=checkbox],.vt input[type=radio]{accent-color:var(--vt-pink-600)}
.vt .preferences_back a,.vt .preferences_back,.vt a.btn,.vt .btn{color:var(--vt-tint-strong)}
.vt .preferences_back a{display:inline-block;border:1px solid var(--vt-separator);background:var(--vt-surface);padding:8px 16px;border-radius:8px;text-decoration:none}
.vt .preferences_back a:hover{background:var(--vt-tint-soft);color:var(--vt-label)!important}
.vt .vt-star{color:var(--vt-tint-strong)}
.vt .vt-appearance-note{color:var(--vt-label-2)}
.vigiltech-appearance summary:hover{background:var(--vt-fill);color:var(--vt-label)}
.vigiltech-appearance summary:focus-visible,.vigiltech-appearance-menu button:focus-visible{outline:3px solid var(--vt-tint-strong);outline-offset:2px}
.vigiltech-appearance-menu button:hover{background:var(--vt-tint-soft);color:var(--vt-label)}
.vigiltech-appearance-menu button:active{background:var(--vt-fill-2);color:var(--vt-label)}
.vt .vt-menubar nav a:hover{color:var(--vt-label);text-decoration:underline}
.vt .vt-menubar nav a[aria-current=page]{color:var(--vt-label);font-weight:700}
.vt .vt-account-notice{color:var(--vt-label-2)}
@media(max-width:700px){.vt #main_index .index{padding:28px 18px 22px!important}.vt #results_view{padding:8px 12px 24px}.vt .tabs a,.vt .tabs button{padding:11px 14px;min-height:44px}.vt #search_header{position:static}}
.vt #search_header>.vt-lenses,.vt #search_header>.vt-tags-help,.vt #search_header>.vt-active-tags{grid-column:1/-1;max-width:none;width:100%;margin:0 0 6px}
.vt #search_header>.vt-tags-help,.vt #search_header>.vt-lenses{margin-inline:0}
.vt .result h3 a,.vt .result_header a{text-decoration:none;font-weight:700}.vt .result h3 a:hover{text-decoration:underline}
.vt #search_header form,.vt #search_view,.vt .search_box,.vt #q{min-width:0;max-width:100%}.vt #send_search{flex:none}
.vt #search_header .search_box{margin-right:0}

/* The real upstream template gives nested link spans their own color. */
.vt #links_on_top a span{color:inherit!important}
/* Utility labels need a guaranteed surface over every wallpaper gradient stop. */
.vt #links_on_top{background:var(--vt-surface)!important;color:var(--vt-label);border:1px solid var(--vt-separator);border-radius:var(--vt-r-control);padding:6px 12px}
