/* epd video — cookie notice + preferences panel.
   Pattern adapted from iDATER/DATENPORTAL "ds_cookie_consent" (informational
   notice for functional-only cookies), reimplemented in vanilla CSS/JS and
   themed to the coral/cream palette. No opt-in gating: every cookie listed is
   strictly necessary (session/CSRF/login), so there is nothing to block behind
   consent. Dismissal is stored in localStorage, never in a cookie. */

/* ---- bottom notice bar ---- */
.epdcc-notice{
  position: fixed; left: 0; right: 0; bottom: 0; z-index: 1200;
  background: #16242e; color: rgba(244,241,236,0.92);
  border-top: 1px solid rgba(255,255,255,0.08);
  font: 400 13.5px/1.5 'Inter', system-ui, sans-serif;
  padding: 12px clamp(16px, 4vw, 48px);
  display: flex; align-items: center; gap: 14px; flex-wrap: wrap;
  box-shadow: 0 -6px 24px rgba(0,0,0,0.22);
}
.epdcc-notice-text{ flex: 1 1 320px; }
.epdcc-notice a{ color: var(--accent, #e23a2c); text-decoration: none; font-weight: 600; }
.epdcc-notice a:hover{ text-decoration: underline; }
.epdcc-notice-btn{
  flex: 0 0 auto;
  background: var(--accent, #e23a2c); color: #fff; border: 0;
  border-radius: 8px; padding: 9px 18px; cursor: pointer;
  font: 600 13.5px/1 'Inter', system-ui, sans-serif;
}
.epdcc-notice-btn:hover{ background: #c8301f; }

/* The preferences panel is opened from the footer link (data-cc-open) — no
   floating widget, to keep the portal visually calm. */

/* ---- preferences panel ---- */
.epdcc-panel{
  position: fixed; left: 16px; bottom: 16px; z-index: 1210;
  width: min(420px, calc(100vw - 32px));
  max-height: min(70vh, 560px); overflow-y: auto;
  background: #16242e; color: rgba(244,241,236,0.92);
  border: 1px solid rgba(255,255,255,0.12); border-radius: 14px;
  padding: 20px 22px;
  box-shadow: 0 18px 48px rgba(0,0,0,0.40);
  font: 400 14px/1.55 'Inter', system-ui, sans-serif;
}
.epdcc-panel[hidden]{ display: none; }
.epdcc-panel-head{ display: flex; align-items: center; justify-content: space-between; margin-bottom: 6px; }
.epdcc-panel h2{ font: 400 19px/1.25 'DM Serif Display', Georgia, serif; color: #fff; margin: 0; }
.epdcc-close{ background: none; border: 0; color: rgba(244,241,236,0.6); cursor: pointer; font-size: 20px; line-height: 1; padding: 4px; }
.epdcc-close:hover{ color: #fff; }
.epdcc-panel-lead{ font-size: 13px; color: rgba(244,241,236,0.7); margin: 0 0 14px; }
.epdcc-list{ list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 14px; }
.epdcc-item{ border: 1px solid rgba(255,255,255,0.08); border-radius: 10px; padding: 12px 14px; background: rgba(255,255,255,0.03); }
.epdcc-item-top{ display: flex; align-items: center; gap: 9px; }
.epdcc-item-top input{ accent-color: var(--accent, #e23a2c); width: 15px; height: 15px; }
.epdcc-item-top label{ font-weight: 600; color: #fff; }
.epdcc-item-desc{ font-size: 12.5px; color: rgba(244,241,236,0.72); margin: 6px 0 0; }
.epdcc-item-mand{ font-size: 11.5px; color: rgba(244,241,236,0.5); margin-top: 4px; font-style: italic; }
.epdcc-panel-foot{ margin-top: 16px; font-size: 12.5px; }
.epdcc-panel-foot a{ color: var(--accent, #e23a2c); text-decoration: none; font-weight: 600; }
.epdcc-panel-foot a:hover{ text-decoration: underline; }
.epdcc-ls-warning{ display: block; margin-top: 10px; font-size: 12px; color: #ffb4ab; }

@media (max-width: 520px){
  .epdcc-tab{ bottom: 10px; }
  .epdcc-panel{ left: 8px; bottom: 8px; }
}
