/* Cookie lišta v barvách Refresh Salonu (proměnné vanilla-cookieconsent v3).
   Tlačítka inkoustová kvůli kontrastu, magenta jako akcent.
   Rozložení podle davidzelenka.cz: karta uprostřed ztmavené stránky, odkaz v textu,
   „Souhlasím“ vždy vpravo (modul nastavuje flipButtons). */
#cc-main {
  --cc-font-family: 'Poppins', system-ui, sans-serif;
  --cc-modal-border-radius: 20px;
  --cc-btn-border-radius: 50px;
  --cc-bg: #ffffff;
  --cc-primary-color: var(--ink);
  --cc-secondary-color: var(--grey);
  --cc-link-color: var(--purple);
  --cc-btn-primary-bg: var(--ink);
  --cc-btn-primary-color: #ffffff;
  --cc-btn-primary-border-color: var(--ink);
  --cc-btn-primary-hover-bg: var(--pink);
  --cc-btn-primary-hover-color: #ffffff;
  --cc-btn-primary-hover-border-color: var(--pink);
  --cc-btn-secondary-bg: #ffffff;
  --cc-btn-secondary-color: var(--ink);
  --cc-btn-secondary-border-color: #e4e0ea;
  --cc-btn-secondary-hover-bg: var(--soft);
  --cc-btn-secondary-hover-color: var(--ink);
  --cc-btn-secondary-hover-border-color: var(--pink);
  --cc-separator-border-color: #f0eef2;
  --cc-toggle-on-bg: var(--pink);
  --cc-toggle-off-bg: var(--grey);
  --cc-toggle-readonly-bg: #f0eef2;
  --cc-cookie-category-block-bg: transparent;
  --cc-cookie-category-block-border: transparent;
  --cc-cookie-category-block-hover-bg: transparent;
  --cc-cookie-category-block-hover-border: transparent;
  --cc-overlay-bg: rgba(36, 31, 43, 0.55);
}
#cc-main .cm__title,
#cc-main .pm__title {
  font-family: 'Poppins', system-ui, sans-serif;
  font-weight: 800;
  letter-spacing: -0.02em;
  line-height: 1.15;
}
#cc-main .pm__title { font-size: 1.35rem; }
#cc-main .cm__btn,
#cc-main .pm__btn { min-height: 48px; font-size: 0.95rem; }

/* První vrstva: karta, nadpis, text s odkazem, dvě tlačítka vedle sebe. */
#cc-main .cm--box.cm--wide { max-width: 28rem; }
#cc-main .cm { box-shadow: 0 40px 90px -30px rgba(36, 31, 43, 0.5); }
#cc-main .cm__texts { padding-top: 1.75rem; }
#cc-main .cm__title,
#cc-main .cm__desc { padding-left: 1.75rem; padding-right: 1.75rem; }
#cc-main .cm__title { font-size: 1.45rem; }
#cc-main .cm__title + .cm__desc { margin-top: 0.75rem; }
#cc-main .cm__desc { font-size: 0.95rem; line-height: 1.65; padding-bottom: 0.5rem; }
#cc-main .cm__desc a {
  display: inline-block;
  margin-top: 0.75rem;
  color: var(--purple);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
  background: none;
}
#cc-main .cm__desc a:hover { color: var(--pink); }
#cc-main .cm__btns { border-top: 0; padding: 1rem 1.75rem 1.75rem; gap: 0.6rem; }
#cc-main .cm--box.cm--wide .cm__btn-group { flex: 1 1 0; margin: 0; }
#cc-main .cm--box.cm--wide .cm__btn { width: 100%; padding-left: 1em; padding-right: 1em; }

/* Nastavení: plochý seznam jako na předloze, bez rámečků a šipek. */
#cc-main .pm__section,
#cc-main .pm__section--toggle {
  margin: 0;
  padding: 1rem 0;
  border: 0;
  border-bottom: 1px solid var(--cc-separator-border-color);
  border-radius: 0;
  background: transparent;
}
#cc-main .pm__section:last-child { border-bottom: 0; }
#cc-main .pm__section-title { padding: 0 !important; border: 0 !important; background: transparent !important; font-size: 1rem; }
#cc-main .pm__section--expandable .pm__section-arrow { display: none !important; }
#cc-main .pm__section--expandable .pm__section-desc-wrapper { display: flex !important; }
#cc-main .pm__section-desc-wrapper { margin: 0 !important; padding: 0.35rem 0 0 !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; }
#cc-main .pm__section-desc { margin: 0 !important; padding: 0 !important; line-height: 1.6; }

/* Nastavení: vlevo Odmítnout a Uložit výběr (vedlejší), vpravo Souhlasím (hlavní).
   Knihovna dává Odmítnout do skupiny se Souhlasím, proto skupiny rozpouštíme (display: contents)
   a pořadí určuje data-role tlačítek. */
#cc-main .pm__footer,
#cc-main .pm--flip .pm__footer { display: flex; flex-direction: row !important; align-items: center; gap: 0.6rem; }
#cc-main .pm__btn-group { display: contents; }
#cc-main .pm__btn { margin: 0 !important; flex: 0 0 auto; min-width: 9rem; }
#cc-main .pm__btn[data-role="necessary"] { order: 1; }
#cc-main .pm__btn[data-role="save"] { order: 2; }
#cc-main .pm__btn[data-role="all"] { order: 3; margin-left: auto !important; }
#cc-main .pm__btn[data-role="necessary"] {
  background: var(--cc-btn-secondary-bg);
  border-color: var(--cc-btn-secondary-border-color);
  color: var(--cc-btn-secondary-color);
}
#cc-main .pm__btn[data-role="necessary"]:hover {
  background: var(--cc-btn-secondary-hover-bg);
  border-color: var(--cc-btn-secondary-hover-border-color);
  color: var(--cc-btn-secondary-hover-color);
}

/* Mobil: tlačítka pod sebou, „Souhlasím“ dole na dosah palce. */
@media (max-width: 640px) {
  #cc-main .pm__footer,
  #cc-main .pm--flip .pm__footer { flex-direction: column !important; align-items: stretch; gap: 0.5rem; }
  #cc-main .pm__btn-group { display: contents !important; }
  #cc-main .pm__btn[data-role="all"] { margin-left: 0 !important; }
  #cc-main .pm__btn { min-width: 0; }
  #cc-main .cm__btns { gap: 0.5rem; border-top: 0 !important; }
  #cc-main .cm--flip .cm__btn-group + .cm__btn-group { margin: 0 !important; }
  #cc-main .cm__title { font-size: 1.3rem; }
}

/* Mapa až po kliknutí: zástupný blok má stejnou velikost jako mapa. */
.map-consent {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 16px;
  height: 360px;
  padding: 24px;
  text-align: center;
  line-height: 1.5;
  background: var(--soft);
  color: var(--ink);
}
.map-consent__text {
  max-width: 36ch;
  margin: 0;
  font-size: 15px;
  color: var(--grey);
}
@media (max-width: 820px) {
  .map-consent { height: 300px; }
}

/* Tlačítko v patičce vypadá jako ostatní odkazy v .legal. */
.legal .sr-cookie-settings {
  font: inherit;
  line-height: 1.6;
  color: #b7b0c0;
  background: none;
  border: 0;
  padding: 0;
  cursor: pointer;
}
.legal .sr-cookie-settings:hover { color: #ffffff; }
.legal .sr-cookie-settings:focus-visible { outline: 2px solid var(--pink); outline-offset: 3px; }
