:root {
  --primary-color: #004AAD; /* QDEX Modrá - Důvěra */
  --accent-color: #4AD900; /* QDEX Zelená - Krypto/Soukromí */
  --text-dark: #202124;
  --bg-light: #fff;
  --bg-hover: #f1f3f4;
}

/* Globální oprava pro zajištění šířky */
* {
    box-sizing: border-box;
}
body {
  font-family: 'Roboto', sans-serif;
  margin: 0;
  padding: 0;
  background: var(--bg-light); 
  text-align: center;
  overflow-x: hidden; /* Pojistka proti horizontálnímu posuvníku */
}
.visually-hidden {
  position: absolute !important; overflow: hidden !important; width: 1px !important; 
  height: 1px !important; padding: 0 !important; margin: -1px !important; 
  border: 0 !important; clip: rect(0 0 0 0) !important; clip-path: inset(100%) !important; 
  white-space: nowrap !important; color: transparent !important; font-size: 1px !important; 
  opacity: 0 !important; pointer-events: none !important; user-select: none !important;
}

/* --- Hlavní Kontejner a Logo --- */
.main-container {
  max-width: 800px;
  margin: 80px auto 0;
  padding: 20px;
  transition: margin-top 0.4s;
}
.logo-container { margin-bottom: 20px; }
.main-logo { font-size: 50px; font-weight: 700; letter-spacing: -2px; color: var(--text-dark); }
.dot-qdex { color: var(--accent-color); }
.dot-cz { color: var(--primary-color); font-size: 0.7em; font-weight: 400; }

/* --- Ruční Vyhledávací Box --- */
.search-box {
  max-width: 700px;
  width: 100%;
  margin: 0 auto;
  display: flex;
  align-items: center;
  border: 1px solid #ccc;
  border-radius: 25px;
  overflow: hidden;
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
  background: var(--bg-light);
}
.search-box input {
  flex: 1;
  padding: 12px 20px;
  font-size: 16px;
  border: none;
  outline: none;
  min-width: 0;
}
.search-box button {
  padding: 12px 20px;
  font-size: 16px;
  background: var(--primary-color); 
  color: var(--bg-light);
  border: none;
  cursor: pointer;
  transition: background 0.3s;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.search-box button:hover {
  background: #003d8f;
}
.search-box button i {
    font-size: 18px;
}
.privacy-note { color: var(--text-dark); margin-top: 15px; }
.privacy-note i { color: var(--accent-color); margin-right: 5px; }

/* --- Menu --- */
.menu-container { position: fixed; top: 20px; right: 20px; z-index: 1000; }
.menu-icon { width: 30px; height: 30px; cursor: pointer; }
.menu-icon path { stroke: var(--primary-color); }
.menu { 
    display: none; 
    position: absolute; top: 40px; right: 0; 
    background: var(--bg-light); border-radius: 4px; 
    box-shadow: 0 2px 10px rgba(0,0,0,0.2); 
    padding: 8px 0; min-width: 200px; 
}
.menu.active { display: block; }
.menu a { display: block; padding: 12px 16px; color: var(--text-dark); text-decoration: none; }
.menu a:hover { background: var(--bg-hover); color: var(--primary-color); }
.menu a i { margin-right: 8px; color: var(--primary-color); }


/* --- Kontejner pro Výsledky --- */
.results-container {
  max-width: 1050px;
  margin: 20px auto;
  text-align: left;
}
#search-results {
  width: 100%;
}

/* --- KLÍČOVÉ PRAVIDLO: Skrytí pole CSE uvnitř výsledků --- */
#search-results .gsc-search-box {
    display: none !important;
}

/* ------------------------------------------------------------------ */
/* --- CSE VÝSLEDKY - PŘEKRESLENÍ BAREV (NADPISY A ODKAZY) --- */
/* ------------------------------------------------------------------ */

/* Hlavní nadpis výsledku (odkaz) */
.gsc-results .gs-webResult .gs-title a.gs-title,
.gsc-results .gs-webResult .gs-title a.gs-title:link,
.gsc-results .gs-webResult .gs-title a.gs-title:visited {
    color: var(--primary-color) !important; /* QDEX Modrá */
    text-decoration: none !important;
}
.gsc-results .gs-webResult .gs-title a.gs-title:hover {
    color: #003d8f !important; /* Tmavší modrá při hoveru */
    text-decoration: underline !important;
}

/* URL adresa zobrazená pod nadpisem (zelená) */
.gsc-url-top {
    color: var(--accent-color) !important; /* QDEX Zelená */
}

/* Textové zvýraznění v popisu výsledku (tučné) */
.gsc-results .gs-webResult b {
    color: var(--text-dark) !important;
    font-weight: 700;
}

/* ------------------------------------------------------------------ */
/* --- CSE BRANDING (VYHLEDAT NA GOOGLU) & STRÁNKOVÁNÍ (PAGINATION) --- */
/* ------------------------------------------------------------------ */

/* Branding: Cílí na celou oblast brandingu */
.gsc-branding {
    padding-top: 20px !important;
    font-size: 13px !important;
    text-align: right !important;
    border-top: 1px solid #eee;
}
/* Branding: Odkaz s textem "Vyhledat... na Googlu" */
.gsc-branding a {
    color: var(--primary-color) !important; /* QDEX Modrá */
    text-decoration: none !important;
}
.gsc-branding a:hover {
    color: #003d8f !important; /* Tmavší modrá při hoveru */
    text-decoration: underline !important;
}

/* Stránkování: Kontejner pro čísla */
.gsc-cursor-box {
    margin-top: 20px;
    padding: 10px 0;
    text-align: center;
}

/* ------------------------------------------------------------------ */
/* --- OPRAVA: NEJSILNĚJŠÍ PŘEPSÁNÍ STRÁNKOVÁNÍ (Velké a Klikatelné) --- */
/* ------------------------------------------------------------------ */

/* Obecný styl pro VŠECHNA tlačítka stránkování (1, 2, 3, Next, Previous) */
.gsc-cursor-box .gsc-cursor-page, 
.gsc-cursor-box .gsc-cursor-page.gsc-cursor-current-page {
    /* ZVĚTŠENÍ PLOCHY */
    font-size: 16px !important; 
    padding: 12px 20px !important; 
    
    border-radius: 25px !important; 
    margin: 0 6px !important;
    font-weight: 500 !important;
    transition: all 0.2s ease-in-out;
    
    /* Vzhled (barvy jsou přepsány níže pro jistotu) */
    text-decoration: none !important;
}

/* Stránkování: Aktivní stránka */
.gsc-cursor-box .gsc-cursor-page.gsc-cursor-current-page {
    color: var(--bg-light) !important; 
    background-color: var(--primary-color) !important; 
    border-color: var(--primary-color) !important; 
}

/* Stránkování: Stránky při najetí myší */
.gsc-cursor-box .gsc-cursor-page:hover:not(.gsc-cursor-current-page) {
    background-color: var(--bg-hover) !important;
    cursor: pointer;
}


/* --- SILNÁ OPRAVA: BRANDING A PAGINACE (Priorita barvy) --- */
/* Tato sekce zajistí, že barvy jsou správně, aniž by přepisovala velikost */

/* 1. Barva textu brandingu ("Vyhledat ... na Googlu") */
.gsc-control-cse a.gsc-branding-text,
.gsc-branding-text {
    color: var(--primary-color) !important; 
}

/* 2. Stránkování - Normální barva a rámeček */
.gsc-cursor-box .gsc-cursor-page {
    color: var(--primary-color) !important; 
    border: 1px solid var(--primary-color) !important;
    background-color: var(--bg-light) !important;
}

/* --- Responzivita --- */
@media (max-width: 480px) {
  .search-box {
    flex-direction: column;
    align-items: stretch;
    border: none;
    box-shadow: none;
    gap: 10px;
  }
  .search-box input {
    width: 87%;
    padding: 14px 16px;
    border: 1px solid #ccc;
    border-radius: 25px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
  }
  .search-box button {
    width: 100%;
    padding: 14px;
    border-radius: 25px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
  }
  
  /* Zmenšení stránek na mobilu pro úsporu místa */
  .gsc-cursor-box .gsc-cursor-page, 
  .gsc-cursor-box .gsc-cursor-page.gsc-cursor-current-page {
      padding: 8px 14px !important;
  }
}
