/*
   KORTALAN FORMA — Cookiebot consent dialog
   ==========================================================================
   Cookiebot is injected by Google Tag Manager (container GTM-KP5XTLFV) at
   runtime, so its own stylesheet lands in the document AFTER this file. At
   equal specificity the later sheet wins, which is why every rule below is
   anchored on #CybotCookiebotDialog — that outranks their class selectors
   without needing !important. The exceptions are marked: Cookiebot writes the
   dashboard's colour choices as inline styles, and inline can only be beaten
   by !important.

   Selectors were read off the live dialog (culture HU, multilevel layout), not
   from Cookiebot's docs — if they ship a markup change this file needs a
   re-check rather than a guess.

   Colours come from the :root tokens in style.css, so the banner follows the
   theme instead of keeping its own copy of the palette.
   ========================================================================== */

/* 1. Shell ================================================================= */

#CybotCookiebotDialogBodyUnderlay {
  background: var(--bg-invert) !important; /* inline colour from the dashboard */
}

/* The underlay is never removed: Cookiebot parks it at opacity 0 with
   pointer-events none, and raises it only while the dialog (or its wrapper)
   carries .CybotCookiebotDialogActive. An unscoped opacity keeps it visible
   after consent — dimmed page, clicks passing through. The body prefix
   outranks their equal-specificity active rule without !important. */
body #CybotCookiebotDialog.CybotCookiebotDialogActive + #CybotCookiebotDialogBodyUnderlay,
body #CybotCookiebotDialogWrapper.CybotCookiebotDialogActive + #CybotCookiebotDialogBodyUnderlay {
  opacity: 0.55;
}

#CybotCookiebotDialog,
#CybotCookiebotDialog * {
  font-family: 'Neue Haas Grotesk Display Pro', 'Helvetica Neue', Helvetica, Arial, sans-serif !important;
}

#CybotCookiebotDialog {
  color: var(--fg);
  background: var(--bg);
  border: 1px solid var(--fg);
  border-radius: 0;
  box-shadow: none;
  max-width: 88rem;
}

/* Nothing on this site is rounded; Cookiebot rounds a dozen inner elements. */
#CybotCookiebotDialog,
#CybotCookiebotDialog *,
#CybotCookiebotDialog *::before,
#CybotCookiebotDialog *::after {
  border-radius: 0 !important;
}

#CybotCookiebotDialog .CybotCookiebotDialogContentWrapper { gap: 0; }

/* 2. Header — the Cookiebot mark ========================================== */

/* Dimmed rather than hidden: removing the "powered by" mark is a paid-tier
   entitlement, so display:none here could breach the plan's terms. */
#CybotCookiebotDialog #CybotCookiebotDialogHeader {
  border-bottom: 1px solid rgba(40, 40, 42, 0.18);
  padding: 1.6rem 2.4rem;
}
#CybotCookiebotDialog #CybotCookiebotDialogPoweredbyImage,
#CybotCookiebotDialog #CybotCookiebotDialogPoweredByText { opacity: 0.3; }
#CybotCookiebotDialog #CybotCookiebotDialogPoweredbyLink { filter: grayscale(1); }

/* 3. Tabs ================================================================== */

#CybotCookiebotDialog #CybotCookiebotDialogNav {
  border-bottom: 1px solid rgba(40, 40, 42, 0.18);
}
#CybotCookiebotDialog .CybotCookiebotDialogNavItemLink {
  font-family: 'ABC Monument Grotesk Mono', 'Roboto Mono', ui-monospace, 'SFMono-Regular', Menlo, monospace !important;
  font-size: 1.1rem;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--fg);
  opacity: 0.45;
  border-bottom: 1px solid transparent;
  padding: 1.4rem 0;
  transition: opacity 0.16s ease;
}
#CybotCookiebotDialog .CybotCookiebotDialogNavItemLink:hover { opacity: 0.8; }
#CybotCookiebotDialog .CybotCookiebotDialogNavItemLink.CybotCookiebotDialogActive {
  color: var(--fg) !important; /* their active blue is set at equal specificity, later */
  opacity: 1;
  border-bottom: 1px solid var(--fg) !important;
}

/* The scroll faders are white-to-transparent gradients; the panel is white. */
#CybotCookiebotDialog .CybotCookiebotFader { display: none; }

/* 4. Copy ================================================================== */

#CybotCookiebotDialog #CybotCookiebotDialogBodyContent { padding: 2.4rem; }

#CybotCookiebotDialog #CybotCookiebotDialogBodyContentTitle {
  font-size: 2rem;
  line-height: 1.15;
  font-weight: 300;
  letter-spacing: -0.02em;
  color: var(--fg);
  margin-bottom: 1.2rem;
  text-wrap: balance;
}

#CybotCookiebotDialog #CybotCookiebotDialogBodyContentText,
#CybotCookiebotDialog #CybotCookiebotDialogBodyContentText p {
  font-size: 1.4rem;
  line-height: 1.6;
  color: var(--fg);
  opacity: 0.75;
}

#CybotCookiebotDialog a { color: var(--fg); text-underline-offset: 0.25em; }
#CybotCookiebotDialog a:hover { opacity: 0.6; }

/* 5. Consent toggles ======================================================= */

#CybotCookiebotDialog #CybotCookiebotDialogBodyLevelButtonsSelectPane {
  border-top: 1px solid rgba(40, 40, 42, 0.18);
  background: var(--index-text-view);
}

#CybotCookiebotDialog .CybotCookiebotDialogBodyLevelButtonDescription {
  font-family: 'ABC Monument Grotesk Mono', 'Roboto Mono', ui-monospace, 'SFMono-Regular', Menlo, monospace !important;
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--fg);
  opacity: 0.55;
}

/* Recolour only. Cookiebot sizes the track and positions the knob against its
   own geometry, including the travel distance — overriding width/height here
   detaches the knob from the track, so the switch is left at its own size and
   just loses the pill radius (§1) and the blue. */
#CybotCookiebotDialog .CybotCookiebotDialogBodyLevelButtonSlider {
  background: rgba(40, 40, 42, 0.22) !important;
  transition: background-color 0.18s ease;
}
#CybotCookiebotDialog .CybotCookiebotDialogBodyLevelButtonSlider::before {
  background: var(--bg) !important;
}
#CybotCookiebotDialog input:checked + .CybotCookiebotDialogBodyLevelButtonSlider {
  background: var(--fg) !important;
}
/* "Elengedhetetlen" is checked and disabled. Dimming it far enough to read as
   locked also dropped its dark track to the same grey as the unchecked ones, so
   always-on looked off; the cursor carries the locked signal instead. */
#CybotCookiebotDialog .CybotCookiebotDialogBodyLevelButtonSliderWrapperDisabled {
  opacity: 0.75;
  cursor: not-allowed;
}

#CybotCookiebotDialog input:focus-visible + .CybotCookiebotDialogBodyLevelButtonSlider {
  outline: 2px solid var(--fg);
  outline-offset: 2px;
}

/* 6. Buttons =============================================================== */

#CybotCookiebotDialog #CybotCookiebotDialogBodyLevelButtonsRow,
#CybotCookiebotDialog .CybotCookiebotDialogBodyBottomWrapper { gap: 1rem; }

#CybotCookiebotDialog .CybotCookiebotDialogBodyButton {
  font-family: 'ABC Monument Grotesk Mono', 'Roboto Mono', ui-monospace, 'SFMono-Regular', Menlo, monospace !important;
  font-size: 1.1rem;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  padding: 1.6rem 2.4rem;
  border: 1px solid var(--fg) !important;
  background: transparent !important;
  color: var(--fg) !important;
  transition: background-color 0.24s ease, color 0.24s ease;
}
#CybotCookiebotDialog .CybotCookiebotDialogBodyButton:hover {
  background: var(--bg-invert) !important;
  color: var(--fg-invert) !important;
}

/* Accept carries the filled treatment, like the Forminator submit button. */
#CybotCookiebotDialog #CybotCookiebotDialogBodyLevelButtonLevelOptinAllowAll {
  background: var(--bg-invert) !important;
  color: var(--fg-invert) !important;
  border-color: var(--bg-invert) !important;
}
#CybotCookiebotDialog #CybotCookiebotDialogBodyLevelButtonLevelOptinAllowAll:hover {
  opacity: 0.82;
}

#CybotCookiebotDialog .CybotCookiebotDialogBodyButton:focus-visible {
  outline: 2px solid var(--fg);
  outline-offset: 2px;
}

/* 7. Details tab =========================================================== */

#CybotCookiebotDialog .CybotCookiebotDialogDetailBodyContentCookieContainerButton {
  font-family: 'ABC Monument Grotesk Mono', 'Roboto Mono', ui-monospace, 'SFMono-Regular', Menlo, monospace !important;
  font-size: 1.1rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--fg);
  border-bottom: 1px solid rgba(40, 40, 42, 0.18);
}
#CybotCookiebotDialog .CybotCookiebotDialogDetailBodyContentCookieProvider,
#CybotCookiebotDialog .CybotCookiebotDialogDetailBodyContentCookieTypeTableContainer {
  font-size: 1.3rem;
  color: var(--fg);
}
#CybotCookiebotDialog #CybotCookiebotDialogDetailBodyContentTextAbout { font-size: 1.4rem; line-height: 1.6; }

/* 8. Narrow screens ======================================================== */

/* Bottom-anchored and full width below the theme's own breakpoint, with the
   three buttons stacked so none of them truncates. */
@media (max-width: 600px) {
  #CybotCookiebotDialog {
    top: auto !important;
    bottom: 0 !important;
    left: 0 !important;
    transform: none !important;
    width: 100% !important;
    max-width: 100% !important;
    max-height: 88vh;
    border-left: 0;
    border-right: 0;
    border-bottom: 0;
  }
  #CybotCookiebotDialog #CybotCookiebotDialogBodyContent,
  #CybotCookiebotDialog #CybotCookiebotDialogBodyLevelButtonsSelectPane { padding: 1.8rem 1.6rem; }

  #CybotCookiebotDialog #CybotCookiebotDialogBodyLevelButtonsRow,
  #CybotCookiebotDialog .CybotCookiebotDialogBodyBottomWrapper {
    flex-direction: column;
  }
  #CybotCookiebotDialog .CybotCookiebotDialogBodyButton { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  #CybotCookiebotDialog *,
  #CybotCookiebotDialog *::before { transition: none !important; }
}
