/* Harmony Duo consent banner. Nu afecteaza layoutul celorlalte elemente. */
#hda-consent { position: fixed; inset: 0; z-index: 2147483000; display: flex; align-items: flex-end; justify-content: center; padding: 14px; background: rgba(0, 0, 0, .38); font: 400 14px/1.5 system-ui, -apple-system, 'Segoe UI', sans-serif; box-sizing: border-box; }
#hda-consent *, #hda-consent *:before, #hda-consent *:after { box-sizing: border-box; }
#hda-consent .hda-panel { width: min(100%, 700px); max-height: 90vh; overflow-y: auto; color: #f5f2eb; border: 1px solid #b6a17b; border-radius: 14px; background: #171a1d; padding: 20px 24px; box-shadow: 0 14px 42px rgba(0,0,0,.43); }
#hda-consent .hda-topline { color: #d9c59b; font-size: 11px; font-weight: 700; letter-spacing: .13em; }
#hda-consent h2 { margin: 6px 0 8px; font-size: 21px; line-height: 1.25; color: #fff; }
#hda-consent p { margin: 0 0 13px; color: #dfdfdd; }
#hda-consent .hda-actions { display: flex; flex-wrap: wrap; gap: 8px; justify-content: flex-end; }
#hda-consent button { min-height: 39px; cursor: pointer; padding: 8px 15px; border-radius: 8px; border: 1px solid #b8a98a; background: transparent; color: #fff; font: inherit; }
#hda-consent button:hover, #hda-consent button:focus-visible { border-color: #f5dfae; outline-offset: 2px; }
#hda-consent button.hda-primary { border-color: #c9b181; background: #c9b181; color: #131313; font-weight: 700; }
#hda-consent .hda-settings { padding: 13px; border: 1px solid #646057; border-radius: 10px; margin-bottom: 14px; }
#hda-consent .hda-settings[hidden] { display: none; }
#hda-consent .hda-settings label { display: block; margin-bottom: 10px; }
#hda-consent input { accent-color: #c9b181; }
#hda-consent .hda-bottom { margin-top: 12px; font-size: 12px; color: #c5c5c5; }
#hda-consent a { color: #e3c994; text-decoration: underline; }
@media (max-width: 480px) { #hda-consent .hda-panel { padding: 17px; } #hda-consent .hda-actions { justify-content: stretch; } #hda-consent .hda-actions button { flex: 1 1 120px; } }


/* Harmony Duo v2 — corectie responsive pentru tableta si telefon.
   Reguli limitate la banner; nu schimba stilul celorlalte pagini. */
#hda-consent {
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  max-width: 100vw !important;
  min-width: 0 !important;
  overflow-x: hidden;
}
#hda-consent .hda-panel {
  width: min(700px, 100%) !important;
  max-width: calc(100vw - 28px) !important;
  min-width: 0 !important;
  flex-shrink: 1;
  overflow-x: hidden;
  overflow-y: auto;
  overflow-wrap: anywhere;
  white-space: normal !important;
  max-height: min(90vh, 90dvh);
}
#hda-consent .hda-panel h2,
#hda-consent .hda-panel p,
#hda-consent .hda-bottom,
#hda-consent .hda-settings {
  max-width: 100%;
  min-width: 0;
  white-space: normal !important;
  overflow-wrap: anywhere;
}
#hda-consent .hda-actions {
  max-width: 100%;
  min-width: 0;
}
#hda-consent .hda-actions button {
  max-width: 100%;
  min-width: 0;
  white-space: normal !important;
}
@media (max-width: 1024px) {
  #hda-consent { padding: 10px !important; }
  #hda-consent .hda-panel {
    max-width: calc(100vw - 20px) !important;
    padding: 17px 18px !important;
  }
  #hda-consent .hda-actions {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }
  #hda-consent .hda-actions button {
    width: 100% !important;
    padding: 9px 10px;
    margin: 0;
  }
  #hda-consent .hda-actions button.hda-primary {
    grid-column: 1 / -1;
  }
}
@media (max-width: 520px) {
  #hda-consent { padding: 8px !important; }
  #hda-consent .hda-panel {
    max-width: calc(100vw - 16px) !important;
    padding: 14px !important;
    border-radius: 12px;
    max-height: min(86vh, 86dvh);
  }
  #hda-consent h2 { font-size: clamp(18px, 5vw, 21px) !important; }
  #hda-consent .hda-actions { grid-template-columns: 1fr; }
  #hda-consent .hda-actions button.hda-primary { grid-column: auto; }
}
