/* ===== Banner GDPR – modern, compact, accesibil ===== */
#gdpr-cookie-message {
  /* poziționare */
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 2147483647;

  /* dimensiuni & layout */
  width: min(92vw, 420px);
  max-height: calc(100vh - 40px);
  overflow: auto;
  display: flex;
  flex-direction: column;
  gap: 14px;

  /* paletă (scoped) */
  --bg: #3F51B5;
  --text: #ffffff;
  --muted: rgba(255,255,255,0.75);
  --outline: rgba(255,255,255,0.35);
  --primary: #ff5252;
  --primary-text: #ffffff;

  /* look & feel */
  background: var(--bg);
  color: var(--text);
  padding: 20px 22px;
  border-radius: 14px;
  box-shadow: 0 10px 28px rgba(0,0,0,0.28);
}

/* Titluri */
#gdpr-cookie-message h4 {
  margin: 0;
  font: 700 18px/1.25 'Roboto', system-ui, -apple-system, Segoe UI, Arial, sans-serif;
  color: var(--text);
}
#gdpr-cookie-message h5 {
  margin: 8px 0 6px;
  font: 500 15px/1.25 'Roboto', system-ui, -apple-system, Segoe UI, Arial, sans-serif;
  color: var(--muted);
}

/* Text + link */
#gdpr-cookie-message p,
#gdpr-cookie-message ul {
  margin: 0;
  color: var(--muted);
  font: 400 14px/1.5 'Roboto', system-ui, -apple-system, Segoe UI, Arial, sans-serif;
}
#gdpr-cookie-message a {
  color: var(--text);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 600;
}
#gdpr-cookie-message a:hover { opacity: .9; }

/* Lista de categorii – grilă pe 2 coloane, aliniată frumos */
#gdpr-cookie-types { margin-top: 4px; }
#gdpr-cookie-message ul {
  list-style: none;
  padding: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px 16px;
}
#gdpr-cookie-message li {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  width: auto;       /* înlocuiește vechiul 48% */
  position: relative;
}

/* ✅ Checkbox custom (stabil pe orice temă/reset) */
#gdpr-cookie-message input[type="checkbox"]{
  position: absolute !important;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 18px;
  height: 18px;
  margin: 0;
  opacity: 0;                 /* ascuns vizual, păstrează accesibilitatea */
  pointer-events: none;       /* clickurile merg pe label */
}

#gdpr-cookie-message label{
  position: relative;
  padding-left: 28px;         /* spațiu pentru casetă */
  cursor: pointer;
  line-height: 1.2;
  color: var(--muted);
}

/* caseta golă */
#gdpr-cookie-message input[type="checkbox"] + label::before{
  content: "";
  position: absolute;
  left: 0; top: 50%;
  transform: translateY(-50%);
  width: 18px; height: 18px;
  border: 2px solid rgba(255,255,255,0.85);
  border-radius: 4px;
  background: transparent;
  box-sizing: border-box;
}

/* bifa (vizibilă când e checked) */
#gdpr-cookie-message input[type="checkbox"]:checked + label::after{
  content: "";
  position: absolute;
  left: 4px; top: 50%;
  transform: translateY(-62%) rotate(45deg);
  width: 10px; height: 5px;
  border-right: 3px solid #ffffff;
  border-bottom: 3px solid #ffffff;
  opacity: 1;
}

/* hover/focus accesibil */
#gdpr-cookie-message label:hover::before{
  background: rgba(255,255,255,0.08);
}
#gdpr-cookie-message input[type="checkbox"]:focus + label::before{
  box-shadow: 0 0 0 3px rgba(255,255,255,.35);
}

/* necesare (disabled) */
#gdpr-cookie-message input[type="checkbox"][disabled] + label{
  opacity: .7;
  cursor: default;
}

/* Bara de acțiuni – flex; stil pentru ultimul <p> (compatibil cu markup-ul) */
#gdpr-cookie-message > p:last-of-type,
#gdpr-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-end;
  margin-top: 6px;
}

/* Butoane (stil de bază) */
#gdpr-cookie-message button,
button#ihavecookiesBtn {
  appearance: none;
  border: 1px solid transparent;
  border-radius: 10px;
  padding: 10px 14px;
  cursor: pointer;
  font: 600 14px/1 'Roboto', system-ui, -apple-system, Segoe UI, Arial, sans-serif;
  transition: transform .08s ease, box-shadow .2s ease, background-color .2s ease, color .2s ease;
}
#gdpr-cookie-message button:hover { transform: translateY(-1px); }
#gdpr-cookie-message button:active { transform: translateY(0); }
#gdpr-cookie-message button:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px rgba(255,255,255,.35);
}

/* Varianta primară – „Acceptă toate” / „Salvează preferințele” / „Respinge toate” (egal vizibile) */
#gdpr-cookie-accept,
#gdpr-accept-all,
#gdpr-reject-all {
  background: var(--primary);
  color: var(--primary-text);
  border-color: transparent;
  min-width: 160px;            /* egalizare vizuală */
  flex: 0 0 auto;
}
#gdpr-cookie-accept:hover,
#gdpr-accept-all:hover,
#gdpr-reject-all:hover { filter: brightness(1.05); }

/* „Preferințe” – ghost/outline (secundar) */
#gdpr-cookie-advanced {
  background: transparent;
  color: var(--text);
  border-color: var(--outline);
}
#gdpr-cookie-advanced:hover {
  background: rgba(255,255,255,0.08);
}

/* Stări */
#gdpr-cookie-message button:disabled { opacity: .55; cursor: not-allowed; }

/* Mobile */
@media (max-width: 576px) {
  #gdpr-cookie-message {
    right: 12px;
    bottom: 12px;
    width: calc(100vw - 24px);
    padding: 16px;
    border-radius: 12px;
    gap: 12px;
  }
  #gdpr-cookie-message ul {
    grid-template-columns: 1fr;  /* 1 col pe ecrane mici */
    gap: 8px 0;
  }
  #gdpr-cookie-message > p:last-of-type,
  #gdpr-actions {
    justify-content: stretch;
  }
  #gdpr-cookie-message button {
    flex: 1 1 auto;              /* butoanele se întind frumos pe lățime */
  }
}

/* Preferință de accesibilitate */
@media (prefers-reduced-motion: reduce) {
  #gdpr-cookie-message,
  #gdpr-cookie-message * { transition: none !important; }
}
