/*
Theme Name: twentytwentyfiversg
Theme URI: https://searchengine.ramgy.com
Author: Ramgy Platform
Author URI: http://ramgy.com
Description: A custom search engine theme for local and google searches, built by Ramgy Solutions Group
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: custom-search, full-width, search-engine
Text Domain: twentytwentyfiversg
*/
body {
            font-family: 'Inter', sans-serif; 
            background-color: #0A0A2A; 
            color: #E0FFFF; 
            margin: 0;
            padding: 20px;
            display: flex;
            justify-content: center;
            align-items: flex-start; 
            min-height: 100vh;
            box-sizing: border-box;
            background-image: radial-gradient(circle at center, #0F0F3F 0%, #0A0A2A 100%);
        }
        .container {
            background-color: #0A1A3A; 
            border: 1px solid #00BFFF; 
            border-radius: 20px;
            box-shadow: 0 0 35px rgba(0, 255, 255, 0.8); 
            padding: 30px;
            width: 100%;
            max-width: 900px; 
            text-align: center;
            box-sizing: border-box;
            backdrop-filter: blur(5px); 
            -webkit-backdrop-filter: blur(5px); 
        }
        h1 {
            font-family: 'Montserrat', sans-serif; 
            color: #33FFFF; 
            margin-bottom: 30px;
            text-shadow: 0 0 20px rgba(51, 255, 255, 1); 
            font-size: 3em; 
            letter-spacing: 1px;
            animation: pulseGlow 2s infinite alternate; 
        }
        @keyframes pulseGlow {
            from { text-shadow: 0 0 15px rgba(51, 255, 255, 0.8); }
            to { text-shadow: 0 0 25px rgba(51, 255, 255, 1.2), 0 0 35px rgba(51, 255, 255, 0.7); }
        }
        .search-controls {
            display: flex;
            flex-wrap: wrap; 
            gap: 15px;
            justify-content: center;
            margin-bottom: 30px;
        }
        .search-input {
            flex-grow: 1;
            padding: 14px 25px; 
            border: 2px solid #00FFFF; 
            border-radius: 30px; 
            background-color: #000055; 
            color: #E0FFFF; 
            font-size: 1.15em; 
            box-shadow: inset 0 0 12px rgba(0, 255, 255, 0.6);
            transition: border-color 0.4s ease-in-out, box-shadow 0.4s ease-in-out;
            max-width: 400px; 
        }
        .search-input::placeholder {
            color: #87CEFA; 
            opacity: 0.7;
        }
        .search-input:focus {
            outline: none;
            border-color: #00FFCC; 
            box-shadow: inset 0 0 25px rgba(0, 255, 255, 1), 0 0 15px rgba(0, 255, 255, 0.7); 
            background-color: #000066; 
        }
        button {
            padding: 14px 15px; 
            background-color: #00BFFF;
            color: #FFFFFF;
            border: none;
            border-radius: 30px; 
            cursor: pointer;
            font-size: 1em; 
            font-weight: bold;
            transition: background-color 0.3s ease, transform 0.2s ease, box-shadow 0.3s ease;
            box-shadow: 0 0 20px rgba(0, 255, 255, 0.7); 
            letter-spacing: 0.5px;
        }
        button:hover {
            background-color: #1E90FF; 
            transform: translateY(-3px) scale(1.02); 
            box-shadow: 0 0 30px rgba(0, 255, 255, 1), 0 0 40px rgba(30, 144, 255, 0.7); 
        }
        button:active {
            transform: translateY(0); 
            box-shadow: 0 0 10px rgba(0, 255, 255, 0.5); 
        }
        .google-search-section {
            margin-top: 40px;
            padding-top: 30px;
            border-top: 1px solid #005580; 
            text-align: center;
        }
        .google-search-section h2 {
            font-family: 'Montserrat', sans-serif;
            color: #66FFFF; 
            margin-bottom: 20px;
            font-size: 1.8em;
            text-shadow: 0 0 10px rgba(102, 255, 255, 0.7);
        }
        .google-search-section form {
            display: flex;
            flex-wrap: wrap;
            justify-content: center;
            gap: 15px;
        }
        .google-search-section .search-input { 
            flex-grow: 1;
        }
        .google-search-section .search-label {
            color: #B0E0E6; 
            font-size: 0.9em;
            margin-top: 5px;
        }
        #searchResults {
            margin-top: 40px; 
            text-align: left;
            border-top: 1px solid #005580; 
            padding-top: 30px;
            display: grid; 
            grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); 
            gap: 20px;
        }
        .result-item {
            background-color: #00004d;
            border: 1px solid #0080FF; 
            border-radius: 12px; 
            padding: 20px 25px; 
            box-shadow: 0 0 15px rgba(0, 255, 255, 0.5); 
            transition: transform 0.3s ease, box-shadow 0.3s ease, background-color 0.3s ease;
            position: relative; 
            overflow: hidden; 
        }
        .result-item::before {
            content: '';
            position: absolute;
            top: -50%;
            left: -50%;
            width: 200%;
            height: 200%;
            background: radial-gradient(circle at center, rgba(0, 255, 255, 0.1) 0%, transparent 70%);
            opacity: 0;
            transition: opacity 0.4s ease;
            pointer-events: none;
        }
        .result-item:hover::before {
            opacity: 1;
        }
        .result-item:hover {
            transform: translateY(-5px); 
            box-shadow: 0 0 25px rgba(0, 255, 255, 1), 0 0 35px rgba(0, 128, 255, 0.6); 
            background-color: #00005a; 
        }
        .result-item h3 {
            color: #00FFFF; 
            margin-top: 0;
            margin-bottom: 10px;
            font-size: 1.5em;
            text-shadow: 0 0 12px rgba(0, 255, 255, 0.8);
            font-family: 'Montserrat', sans-serif;
        }
        .result-item p {
            color: #B0E0E6; 
            font-size: 1em; 
            line-height: 1.6;
        }
        .no-results {
            color: #FF8C00; 
            font-size: 1.3em;
            font-weight: bold;
            text-align: center;
            grid-column: 1 / -1; 
            padding: 20px;
            background-color: #1a0a0a; 
            border-radius: 10px;
            box-shadow: 0 0 10px rgba(255, 99, 71, 0.4);
        }
        @media (max-width: 768px) {
            .container {
                padding: 25px;
            }
            h1 {
                font-size: 2.5em;
            }
            .search-input {
                max-width: 100%; 
            }
            button {
                width: 100%; 
            }
            #searchResults {
                grid-template-columns: 1fr; 
            }
        }
        @media (max-width: 480px) {
            body {
                padding: 10px;
            }
            .container {
                padding: 15px;
            }
            h1 {
                font-size: 2em;
                margin-bottom: 20px;
            }
            .search-input, button {
                padding: 10px 15px;
                font-size: 1em;
            }
            .result-item h3 {
                font-size: 1.3em;
            }
            .result-item p {
                font-size: 0.9em;
            }
        } .close-app-button {
                top: 5px;
                right: 5px;
                padding: 5px 10px;
                font-size: 0.7em;
            }
        }