@import url(https://fonts.googleapis.com/css?family=Inter); :root { --text-light: rgb(0, 0, 0); --text-dark: rgb(255, 255, 255); --text: var(--text-light); --text-font: 'SF Pro', 'Inter', system-ui, sans-serif; --primary: var(--text); --blue: rgb(14, 122, 254); --bg-dark: rgb(22, 22, 22); --bg-light: rgb(240, 240, 240); --bg: 248, 248, 248; --pinstripe1-light: rgba(255, 255, 255, 0.7); --pinstripe2-light: rgba(240, 240, 240, 0.7); --pinstripe1-dark: rgba(34, 34, 34, 0.6); --pinstripe2-dark: rgba(44, 44, 44, 0.6); --btn-scale: 0.6; --pinstripe-gradient: repeating-linear-gradient( var(--pinstripe1) 0%, var(--pinstripe1) 2px, var(--pinstripe2) 2px, var(--pinstripe2) 4px ); } @media (prefers-color-scheme: dark) { :root { --bg: var(--bg-dark); --text: var(--text-dark); --pinstripe1: var(--pinstripe1-dark); --pinstripe2: var(--pinstripe2-dark); } } @media (prefers-color-scheme: light) { :root { --bg: var(--bg-light); --text: var(--text-light); --pinstripe1: var(--pinstripe1-light); --pinstripe2: var(--pinstripe2-light); } } hr { display: none; } a:hover, button:hover, label:hover, span:hover { color: var(--blue) !important; } a.nav-item-link.--active { color: var(--blue) !important; } /* Base */ body { background-color: var(--bg); font-family: var(--text-font); } /* Homepage only */ .body-content { background-image: var(--pinstripe-gradient); } /* copyright */ .copyright::after { content: "© Visnes. Themenize the Kagi."; } /* Header (*/ .app-header { /* Removed these, and nothing seems to have happened OPTIMIZED: header, .app-header, .top-bar, .spt */ display: flex; align-items: center; justify-content: flex-start; gap: 1em; position: fixed; top: 0; left: 0; width: 100%; z-index: 9999; padding: 1em 1em 1em 0; backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); background-image: var(--pinstripe-gradient); } header::before, .app-header::before { content: ""; position: absolute; inset: 0; background: linear-gradient( to bottom, rgba(255, 255, 255, 0.15), transparent ); opacity: 0.5; pointer-events: none; z-index: -1; } .app-logo { padding-inline-start: 1em; top: 10px; } @media (prefers-color-scheme: light) { .app-header { border-bottom: 1px solid rgba(0, 0, 0, 0.1); box-shadow: 0 0 30px rgba(0, 0, 0, 0.1); } .app-header::before { background: linear-gradient( to bottom, rgba(255, 255, 255, 0.3), transparent ); opacity: 0.3; } } /* Navigation */ .app-nav { border-bottom: 0; } .landing_cat_buttons { border-bottom: 0; } /* Search suggestions */ .suggestions_area { background: linear-gradient(to bottom, rgba(255, 255, 255, 0.8), transparent); box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3) !important; } .auto_suggestions--visble { position: absolute; z-index: 10000 !important; top: 100%; left: 0; right: 0; box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3) !important; } /* Page content spacing */ .app-box-center { padding-top: 180px; z-index: 1; } /* Small additions */ /* Shadow on logo and doggo */ .logo, .doggo_sit_a { filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.2)); } /* Transparancy, blur and shadow on lists */ ._0_k_ui_dropdown_data_list, ._0_more_search_box, .k_ui_dropdown_data_list, .dd-list { background-color: rgba(var(--bg), 0.6) !important; backdrop-filter: blur(10px) !important; filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.2)); } /* Scene Right Content Box */ .scene { background-image: var(--pinstripe-gradient) !important; padding: 15px; border: 1px solid var(--bg); border-radius: 20px; box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3) !important; } /* Suggestions */ .auto_suggestions { background-color: rgba(var(--bg), 0.9) !important; backdrop-filter: blur(10px); } .auto_suggestions_footer { background-image: var(--pinstripe-gradient) !important; } .advanced-search-modal { background-color: rgba(var(--bg), 0.6); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); } .advanced-search-modal-backdrop::before { background-color: rgba(255, 255, 255, 0) !important; } .as-footer { background-image: var(--pinstripe-gradient) !important; } .search-form:focus { box-shadow: none !important; filter: none !important; backdrop-filter: none !important; } /* Button */ /* Coded by Andrew Millen https://codepen.io/andrewmillen/ */ /* Code located at https://codepen.io/andrewmillen/pen/RwqBMrO */ .btn { font-size: calc(1.5rem * var(--btn-scale)); height: calc(1.5em * var(--btn-scale)); padding: 0 calc(1.5em * var(--btn-scale)); grid-row: 1; font-family: var(--text-font); font-weight: 500; min-width: 6em; border-radius: 1000px; position: relative; overflow: hidden; cursor: pointer; color: #000; outline: none; } @mixin pseudo-positioning { content: ""; position: absolute; left: 50%; transform: translateX(-50%); height: 33%; } .btn.--primary { color: #000; background: linear-gradient( rgba(0, 65, 184, 0.325), rgba(45, 115, 199, 0.625), rgba(33, 160, 196, 0.325) ); box-shadow: 0 0.375em 0.5em rgba(0, 0, 0, 0.3), 0 0.125em 0.125em rgba(0, 78, 187, 0.5), inset 0 0.25em 0.5em rgba(0, 17, 49, 0.8), inset 0 0.375em 0.5em 0.25em rgba(0, 78, 187, 0.75); } .btn.--primary:focus, .btn.--primary:active { box-shadow: 0 0.375em 0.5em rgba(0, 0, 0, 0.3), 0 0.125em 0.125em rgba(0, 78, 187, 0.5), inset 0 0.25em 0.5em rgba(0, 17, 49, 0.8), inset 0 0.375em 0.5em 0.25em rgba(0, 78, 187, 0.75), 0 0 0.5em rgba(52, 106, 227, 0.5); } .btn { background: linear-gradient( rgba(160, 160, 160, 0.625), rgba(255, 255, 255, 0.625) ); box-shadow: 0 0.375em 0.5em rgba(0, 0, 0, 0.2), 0 0.125em 0.125em rgba(0, 0, 0, 0.3), inset 0 0.25em 0.25em rgba(0, 0, 0, 0.4), inset 0 0.375em 0.5em 0.25em #bbbbbb; } .btn:focus, .btn:active { box-shadow: 0 0.375em 0.5em rgba(0, 0, 0, 0.2), 0 0.125em 0.125em rgba(0, 0, 0, 0.3), inset 0 0.25em 0.25em rgba(0, 0, 0, 0.4), inset 0 0.375em 0.5em 0.25em #bbbbbb, 0 0 0.5em rgba(0, 0, 0, 0.25); } // top shine .btn:before { @include pseudo-positioning; background: linear-gradient( rgba(255, 255, 255, 0.9), rgba(255, 255, 255, 0.3) ); width: calc(100% - 0.875em); border-radius: 2em 2em 0.5em 0.5em; top: 5%; /* filter: blur(1px); */ z-index: 2; } // bottom glow .btn:after { @include pseudo-positioning; background: linear-gradient( rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0.5) ); width: calc(100% - 1.25em); border-radius: 0.75em; bottom: 10%; /* filter: blur(3px); */ } // text .btn span { position: relative; top: -1px; z-index: 1; letter-spacing: 0.0375em; -webkit-text-stroke-width: 0.025em; -webkit-text-stroke-color: #000000; } .btn.--primary span { text-shadow: 0 0.25em 0.2em rgba(30, 77, 161, 0.5); } .btn span { text-shadow: 0 0.25em 0.2em rgba(0, 0, 0, 0.1); } /* Hover button */ .btn.--primary:hover { color: rgb(255, 255, 255) !important; box-shadow: 0 0.375em 0.5em rgba(0, 0, 0, 0.3), 0 0.125em 0.125em rgba(0, 78, 187, 0.5), inset 0 0.25em 0.5em rgba(0, 17, 49, 0.8), inset 0 0.375em 0.5em 0.25em rgba(0, 78, 187, 0.75), 0 0 1em rgba(84, 159, 236, 0.7); /* blue glow */ transition: box-shadow 0.2s ease-in-out; } /* Ignore these elements */ button#searchFormSubmit { all: unset; } /* Toggle switches */ /* Toggle switch when ON */ .k_ui_toggle_switch input:checked ~ .k_ui_toggle_switch_bar { position: relative; background: linear-gradient( rgba(0, 65, 184, 0.625), rgba(45, 115, 199, 0.625), rgba(33, 160, 196, 0.625) ); box-shadow: 0 0.375em 0.5em rgba(0, 0, 0, 0.3), 0 0.125em 0.125em rgba(0, 78, 187, 0.5), inset 0 0.25em 0.5em rgba(0, 17, 49, 0.8), inset 0 0.375em 0.5em 0.25em rgba(0, 78, 187, 0.75); border: none; transition: background 0.3s ease, box-shadow 0.3s ease; } /* Top shine */ .k_ui_toggle_switch input:checked ~ .k_ui_toggle_switch_bar::before { content: ""; position: absolute; left: 50%; top: 5%; transform: translateX(-50%); height: 33%; width: calc(100% - 0.875em); border-radius: 2em 2em 0.5em 0.5em; background: linear-gradient( rgba(255, 255, 255, 0.9), rgba(255, 255, 255, 0.3) ); filter: blur(1px); z-index: 2; transition: background 0.3s ease, box-shadow 0.3s ease; } /* Bottom glow */ .k_ui_toggle_switch input:checked ~ .k_ui_toggle_switch_bar::after { content: ""; position: absolute; left: 50%; bottom: 10%; transform: translateX(-50%); height: 33%; width: calc(100% - 1.25em); border-radius: 0.75em; background: linear-gradient( rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0.5) ); filter: blur(3px); z-index: 1; } /* Remove default border on ::after */ .k_ui_toggle_switch_bar::after { border: none !important; } /* Toggle switches */ /* Toggle switch when ON */ .k_ui_toggle_switch input:checked ~ ._0_lensToggler { position: relative; background: linear-gradient( rgba(0, 65, 184, 0.625), rgba(45, 115, 199, 0.625), rgba(33, 160, 196, 0.625) ) !important; box-shadow: 0 0.375em 0.5em rgba(0, 0, 0, 0.3), 0 0.125em 0.125em rgba(0, 78, 187, 0.5), inset 0 0.25em 0.5em rgba(0, 17, 49, 0.8), inset 0 0.375em 0.5em 0.25em rgba(0, 78, 187, 0.75) !important; border: none; transition: background 0.3s ease, box-shadow 0.3s ease; } /* Top shine */ .k_ui_toggle_switch input:checked ~ ._0_lensToggler::before { content: ""; position: absolute; left: 50%; top: 5%; transform: translateX(-50%); height: 33%; width: calc(100% - 0.875em); border-radius: 2em 2em 0.5em 0.5em; background: #fff !important; filter: blur(1px); z-index: 2; transition: background 0.3s ease, box-shadow 0.3s ease; } /* Bottom glow */ .k_ui_toggle_switch.--enabled .k_ui_toggle_switch_bar::after { content: ""; position: absolute; top: 0; left: 0; height: 100%; width: 100%; border-radius: inherit; background: linear-gradient( rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0.5) ) !important; filter: blur(3px); z-index: 1; } .k_ui_toggle_switch input:checked ~ .k_ui_toggle_switch_bar, .k_ui_toggle_switch.--enabled .k_ui_toggle_switch_bar { background: linear-gradient( rgba(0, 65, 184, 0.625), rgba(45, 115, 199, 0.625), rgba(33, 160, 196, 0.625) ) !important; } /* Remove default border on ::after */ ._0_lensToggler::after { border: none !important; } /* Hover toggle */ .k_ui_toggle_switch input:checked:hover ~ .k_ui_toggle_switch_bar, .k_ui_toggle_switch input:checked:hover ~ ._0_lensToggler { box-shadow: 0 0.375em 0.5em rgba(0, 0, 0, 0.3), 0 0.125em 0.125em rgba(0, 78, 187, 0.5), inset 0 0.25em 0.5em rgba(0, 17, 49, 0.8), inset 0 0.375em 0.5em 0.25em rgba(0, 78, 187, 0.75), 0 0 1em rgba(84, 159, 236, 0.7); /* blue glow */ transition: box-shadow 0.2s ease-in-out; } .k_ui_toggle_switch input:not(:checked):hover ~ .k_ui_toggle_switch_bar, .k_ui_toggle_switch input:not(:checked):hover ~ ._0_lensToggler { box-shadow: 0 0.375em 0.5em rgba(0, 0, 0, 0.2), 0 0 1em rgba(84, 159, 236, 0.4); /* muted blue glow */ transition: box-shadow 0.2s ease-in-out; } /* Mobile adjustments */ @media (max-width: 600px) { body { color: var(--text); } .spt { display: none; } .content-area, .mob { background: var(--bg) !important; } .a-w { background-image: var(--pinstripe-gradient); } ._0_filters-panel, .serp-nav { background: none !important; } .m-h { position: fixed; top: 0; left: 0; width: 100%; z-index: 99; padding: 1em; backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); background-image: var(--pinstripe-gradient); transition: transform 0.3s ease; } .top-nav { padding-top: 150px !important; z-index: 1; } .quick-settings, .quick-settings-footer { background-color: rgba(var(--bg), 0.2) !important; backdrop-filter: blur(5px) !important; } .quick-settings --open { z-index: 999 !important; } .d, .description { color: var(--text) !important; } .app-box-center { padding-top: 8vh; /* adaptive spacing */ } :root { --btn-scale: 0.5; } .btn { font-size: calc(1.5rem * var(--btn-scale)); padding: 0 calc(1rem * var(--btn-scale)); min-width: 4em; } header, .app-header, .top-bar, .spt { padding: 0.5em; backdrop-filter: blur(6px); z-index: 99; } .body-content { background-size: 4px 4px; } .auto_suggestions { max-width: 100vw; left: 0; right: 0; } .m-app-logo { color: var(--text) !important; } .logo { display: none !important; filter: none !important; } .doggo_sit_a { width: 100%; height: auto; } .sri-group, .search-result { border-bottom: 0px !important; } .s-f-w.--active { background-image: var(--pinstripe-gradient) !important; } .main-footer::after { content: "© Kagi. Humanize the Web.\A© Visnes. Themenize the Kagi."; font-size: calc(1.2rem * var(--btn-scale)); display: block; text-align: center; white-space: pre; } } /* Tooltips */ .trigger > .tooltip.top { bottom: auto !important; top: 100% !important; /* Move tooltip above trigger, anchored at bottom */ right: 0 !important; /* Align left edge with trigger */ left: auto !important; transform: none !important; margin-bottom: var(--offset, 10px) !important; } /* Mobile adjustments */ @media (max-width: 600px) { body { color: var(--text); } .spt { display: none; } .content-area, .mob { background: var(--bg) !important; } .a-w { background-image: var(--pinstripe-gradient); } ._0_filters-panel, .serp-nav { background: none !important; } .m-h { position: fixed; top: 0; left: 0; width: 100%; z-index: 99; padding: 1em; backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); background-image: var(--pinstripe-gradient); transition: transform 0.3s ease; } .top-nav { padding-top: 150px !important; z-index: 1; } .quick-settings, .quick-settings-footer { background-color: rgba(var(--bg), 0.2) !important; backdrop-filter: blur(10px) !important; } .quick-settings --open { z-index: 999 !important; } .d, .description { color: var(--text) !important; } .app-box-center { padding-top: 8vh; /* adaptive spacing */ } :root { --btn-scale: 0.5; } .btn { font-size: calc(1.5rem * var(--btn-scale)); padding: 0 calc(1rem * var(--btn-scale)); min-width: 4em; } header, .app-header, .top-bar, .spt { padding: 0.5em; backdrop-filter: blur(6px); z-index: 99; } .body-content { background-size: 4px 4px; } .auto_suggestions { max-width: 100vw; left: 0; right: 0; } .m-app-logo { color: var(--text) !important; } .logo { display: none !important; filter: none !important; } .doggo_sit_a { width: 100%; height: auto; } .sri-group, .search-result { border-bottom: 0px !important; } .s-f-w.--active { background-image: var(--pinstripe-gradient) !important; } .main-footer::after { content: "© Kagi. Humanize the Web.\A© Visnes. Themenize the Kagi."; font-size: calc(1.2rem * var(--btn-scale)); display: block; text-align: center; white-space: pre; } /* Mobile landing_cat_buttons styles */ .landing_cat_buttons > button { font-family: var(--text-font) !important; border-radius: 1000px; position: relative; overflow: visible; gap: 12px !important; cursor: pointer; color: #000; background: linear-gradient( rgba(160, 160, 160, 0.625), rgba(255, 255, 255, 0.625) ); box-shadow: 0 0.375em 0.5em rgba(0, 0, 0, 0.2), 0 0.125em 0.125em rgba(0, 0, 0, 0.3), inset 0 0.25em 0.25em rgba(0, 0, 0, 0.4), inset 0 0.375em 0.5em 0.25em #bbb; transition: box-shadow 0.2s ease, background 0.2s ease, color 0.2s ease; } .landing_cat_buttons > button.--active { color: #000 !important; background: linear-gradient( rgba(0, 65, 184, 0.625), rgba(45, 115, 199, 0.625), rgba(33, 160, 196, 0.625) ) !important; border-color: transparent !important; box-shadow: 0 0.375em 0.5em rgba(0, 0, 0, 0.3), 0 0.125em 0.125em rgba(0, 78, 187, 0.5), inset 0 0.25em 0.5em rgba(0, 17, 49, 0.8), inset 0 0.375em 0.5em 0.25em rgba(0, 78, 187, 0.75) !important; } .landing_cat_buttons > button.--active::before, .landing_cat_buttons > button.--active::after { background: transparent !important; box-shadow: none !important; } .landing_cat_buttons { padding: 0.5em 20px 0.75em !important; overflow-x: auto !important; overflow-y: visible !important; } }