A sophisticated universal search interface featuring intelligent search routing, advanced responsive typography, and organic animated backgrounds. The application provides seamless search across multiple engines with automatic URL detection and theme switching capabilities.
search/
├── index.html # Main search application
└── LF-Serif-Roman-Var.woff2 # Variable font file
@font-face {
font-family: 'LF-Serif';
src: url('LF-Serif-Roman-Var.woff2') format('woff2');
font-weight: 400;
font-style: normal;
font-display: block;
}
/* LoveFrom-inspired fluid typography system */
:root {
/* Breakpoint definitions */
--bp-sm: 640;
--bp-md: 768;
--bp-lg: 1024;
--bp-xl: 1366;
/* Font size scales */
--font-sm: 6;
--font-md: 4.5;
--font-lg: 3.5;
--font-xl: 2.8;
}
/* Base responsive font calculation */
:root {
--font-size-1: min(calc(var(--font-sm) * 1vw), 80px);
--font-size: max(18px, min(var(--font-size-1), 10vh));
}
/* Advanced breakpoint-based scaling */
@media (min-width: 640px) {
:root {
--min-f-d: calc(var(--font-sm) * var(--bp-sm) / 100);
--max-f-d: calc(var(--font-md) * var(--bp-md) / 100);
--f-range-d: calc(var(--max-f-d) - var(--min-f-d));
--b-range-d: calc(var(--bp-md) - var(--bp-sm));
--breakpoint: var(--bp-sm);
--font-size-1: calc(
calc(var(--min-f-d) * 1px) +
var(--f-range-d) * ((100vw - calc(var(--breakpoint) * 1px)) / var(--b-range-d))
);
}
}
:root {
/* Light theme (default) */
--color-primary: #ffffff;
--color-background: #000000;
--color-input-bg: rgba(255, 255, 255, 0.1);
--color-input-border: rgba(255, 255, 255, 0.2);
--color-input-focus: rgba(255, 255, 255, 0.3);
--color-placeholder: rgba(255, 255, 255, 0.5);
/* Organic gradient colors */
--google-red: #ea4335;
--google-yellow: #fbbc05;
--google-green: #34a853;
--google-blue: #4285f4;
/* Alternative theme colors */
--color-light-bg: #fafafa;
--color-light-text: #000000;
}
/* Animated gradient blobs */
.organic-bg {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: -2;
opacity: 1;
transition: opacity 0.8s ease;
}
.gradient-blob {
position: absolute;
border-radius: 50%;
filter: blur(180px);
mix-blend-mode: multiply;
}
/* Individual blob animations */
.gradient-blob:nth-child(1) {
animation: float1 70s ease-in-out infinite;
width: 70vw;
height: 25vw;
background: radial-gradient(circle, var(--google-red) 0%, transparent 65%);
animation-delay: -7s;
}
/* Complex floating animations */
@keyframes float1 {
0% { transform: translate(0px, 0px) scale(1); }
11% { transform: translate(8vw, -15px) scale(1.03); }
19% { transform: translate(16vw, 35px) scale(0.95); }
31% { transform: translate(-25px, 50px) scale(1.07); }
43% { transform: translate(22vw, -30px) scale(0.91); }
57% { transform: translate(-70px, 25px) scale(1.05); }
68% { transform: translate(14vw, 45px) scale(0.98); }
82% { transform: translate(-40px, -20px) scale(1.02); }
100% { transform: translate(0px, 0px) scale(1); }
}
function isURL(input) {
// Protocol detection
if (input.startsWith('http://') || input.startsWith('https://')) {
return true;
}
// Domain pattern detection
const domainPattern = /^([a-zA-Z0-9-]+\.)+[a-zA-Z]{2,}(\/.*)?$/;
if (domainPattern.test(input)) {
return true;
}
// Common patterns
if (input.includes('.com') || input.includes('.org') || input.includes('.net')) {
return true;
}
return false;
}
function normalizeURL(input) {
if (!input.startsWith('http://') && !input.startsWith('https://')) {
return 'https://' + input;
}
return input;
}
function handleSearch(query) {
const trimmedQuery = query.trim();
if (!trimmedQuery) {
return;
}
// Direct URL navigation
if (isURL(trimmedQuery)) {
window.location.href = normalizeURL(trimmedQuery);
return;
}
// Search engine selection
const searchEngine = detectOptimalEngine(trimmedQuery);
const searchURL = buildSearchURL(searchEngine, trimmedQuery);
window.location.href = searchURL;
}
function detectOptimalEngine(query) {
// Default to Google for most queries
// Could be enhanced with query analysis
return 'google';
}
function buildSearchURL(engine, query) {
const encodedQuery = encodeURIComponent(query);
const engines = {
google: `https://www.google.com/search?q=${encodedQuery}`,
duckduckgo: `https://duckduckgo.com/?q=${encodedQuery}`,
bing: `https://www.bing.com/search?q=${encodedQuery}`
};
return engines[engine] || engines.google;
}
html {
font-size: var(--font-size);
font-family: var(--font-family-primary);
font-weight: var(--font-weight-normal);
line-height: var(--line-height-base);
overflow: hidden;
overscroll-behavior: none;
}
body {
color: var(--color-primary);
background-color: var(--color-background);
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
height: 100vh;
width: 100vw;
user-select: none;
-webkit-user-select: none;
overflow: hidden;
position: relative;
}
.search-input {
width: 100%;
max-width: 600px;
padding: 1em 1.5em;
font-size: 1.2em;
font-family: var(--font-family-primary);
background: var(--color-input-bg);
border: 2px solid var(--color-input-border);
border-radius: 50px;
color: var(--color-primary);
outline: none;
transition: all 0.3s ease;
backdrop-filter: blur(20px);
-webkit-backdrop-filter: blur(20px);
}
.search-input:focus {
border-color: var(--color-input-focus);
background: var(--color-input-focus);
transform: scale(1.02);
box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);
}
.search-input::placeholder {
color: var(--color-placeholder);
font-style: italic;
}
/* LoveFrom-inspired info button */
.info-button {
position: fixed;
top: var(--info-button-top);
right: var(--info-button-right);
width: var(--info-button-size);
height: var(--info-button-size);
border-radius: 50%;
background: var(--color-input-bg);
border: 1px solid var(--color-input-border);
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
transition: all 0.3s ease;
backdrop-filter: blur(20px);
-webkit-backdrop-filter: blur(20px);
}
.info-button:hover {
background: var(--color-input-focus);
transform: scale(1.1);
}
// Enhanced keyboard support
document.addEventListener('keydown', (e) => {
if (e.key === 'Enter') {
e.preventDefault();
const searchInput = document.querySelector('.search-input');
if (searchInput && searchInput.value.trim()) {
handleSearch(searchInput.value);
}
} else if (e.key === 'Escape') {
// Clear search or close modals
clearSearch();
} else if (e.key === '/' && !e.ctrlKey && !e.metaKey) {
// Focus search input
e.preventDefault();
focusSearchInput();
}
});
function focusSearchInput() {
const searchInput = document.querySelector('.search-input');
if (searchInput) {
searchInput.focus();
searchInput.select();
}
}
function toggleTheme() {
const body = document.body;
const isLightMode = body.classList.contains('light-mode');
if (isLightMode) {
body.classList.remove('light-mode');
localStorage.setItem('theme', 'dark');
} else {
body.classList.add('light-mode');
localStorage.setItem('theme', 'light');
}
// Update gradient colors for new theme
updateGradientTheme();
}
function initializeTheme() {
const savedTheme = localStorage.getItem('theme');
const prefersDark = window.matchMedia('(prefers-color-scheme: dark)').matches;
if (savedTheme === 'light' || (!savedTheme && !prefersDark)) {
document.body.classList.add('light-mode');
}
}
/* Optimized font loading */
@font-face {
font-family: 'LF-Serif';
src: url('LF-Serif-Roman-Var.woff2') format('woff2');
font-display: block; /* Ensures text visibility during font loading */
}
/* GPU-accelerated animations */
.gradient-blob {
will-change: transform;
transform: translateZ(0); /* Force GPU layer */
}
/* Optimized backdrop filters */
.blur-element {
backdrop-filter: blur(20px);
-webkit-backdrop-filter: blur(20px);
/* Fallback for unsupported browsers */
background: rgba(255, 255, 255, 0.1);
}
// Efficient event handling
const debouncedResize = debounce(() => {
updateResponsiveElements();
}, 250);
window.addEventListener('resize', debouncedResize);
function debounce(func, wait) {
let timeout;
return function executedFunction(...args) {
const later = () => {
clearTimeout(timeout);
func(...args);
};
clearTimeout(timeout);
timeout = setTimeout(later, wait);
};
}
<!-- Semantic HTML structure -->
<main role="main" aria-label="Universal Search Interface">
<div class="search-container">
<input type="search"
class="search-input"
placeholder="Search the web or enter a URL"
aria-label="Search the web or enter a URL"
autocomplete="off"
spellcheck="false">
</div>
</main>
/* Focus indicators */
.search-input:focus {
outline: 2px solid var(--color-primary);
outline-offset: 2px;
}
.info-button:focus {
outline: 2px solid var(--color-primary);
outline-offset: 2px;
}
@media (prefers-contrast: high) {
:root {
--color-input-border: var(--color-primary);
--color-input-bg: transparent;
}
.gradient-blob {
opacity: 0.3; /* Reduce background distractions */
}
}
/* Large touch targets */
.search-input {
min-height: 44px; /* iOS minimum touch target */
touch-action: manipulation;
}
.info-button {
min-width: 44px;
min-height: 44px;
}
/* Prevent zoom on input focus */
@media (max-width: 768px) {
.search-input {
font-size: 16px; /* Prevents zoom on iOS */
}
}
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no, viewport-fit=cover">
/* Fallbacks for older browsers */
.blur-element {
background: rgba(255, 255, 255, 0.1);
backdrop-filter: blur(20px);
}
/* Feature detection */
@supports not (backdrop-filter: blur(20px)) {
.blur-element {
background: rgba(255, 255, 255, 0.3);
}
}
function sanitizeInput(input) {
// Remove potentially dangerous characters
return input
.replace(/[<>]/g, '')
.trim()
.substring(0, 1000); // Limit length
}
function handleSearch(query) {
const sanitizedQuery = sanitizeInput(query);
// Continue with search logic
}
function isValidURL(url) {
try {
const urlObj = new URL(url);
// Only allow http and https protocols
return ['http:', 'https:'].includes(urlObj.protocol);
} catch {
return false;
}
}
The Universal Search Interface represents a sophisticated approach to web search, combining advanced typography, intelligent routing, and beautiful visual design. The LoveFrom-inspired responsive system and organic animations create a premium user experience while maintaining excellent performance and accessibility.
Technical Rating: 9.0/10