/* Cookie consent bar — paired with assets/consent.js */
#dim-consent{
  position:fixed;
  left:16px; right:16px;
  bottom:16px;
  bottom:calc(16px + env(safe-area-inset-bottom, 0px));
  z-index:9999;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  max-width:760px;
  margin:0 auto;
  padding:16px 20px;
  border-radius:10px;
  background:rgba(0,45,77,.97);
  -webkit-backdrop-filter:blur(8px);
  backdrop-filter:blur(8px);
  box-shadow:0 8px 32px rgba(0,20,38,.32);
  color:#fff;
  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  opacity:0;
  transform:translateY(14px);
  transition:opacity 240ms ease, transform 240ms ease;
}
#dim-consent.is-in{ opacity:1; transform:none; }
#dim-consent.is-out{ opacity:0; transform:translateY(14px); }

#dim-consent p{
  margin:0;
  flex:1 1 320px;
  font-size:13.5px;
  line-height:1.5;
  color:rgba(255,255,255,.9);
}
#dim-consent a{
  color:#33c4ce;
  text-decoration:underline;
  text-underline-offset:2px;
}
#dim-consent a:hover{ color:#fff; }

.dim-consent-actions{
  display:flex;
  gap:10px;
  flex:0 0 auto;
}
.dim-consent-btn{
  min-height:44px;               /* touch target */
  padding:11px 20px;
  border-radius:5px;
  font-family:inherit;
  font-size:11.5px;
  font-weight:700;
  letter-spacing:1.3px;
  text-transform:uppercase;
  cursor:pointer;
  transition:background 150ms ease, border-color 150ms ease;
}
.dim-consent-btn--solid{
  background:#00ACB8;
  border:1.5px solid #00ACB8;
  color:#fff;
}
.dim-consent-btn--solid:hover{ background:#009ca8; border-color:#009ca8; }
.dim-consent-btn--ghost{
  background:transparent;
  border:1.5px solid rgba(255,255,255,.45);
  color:#fff;
}
.dim-consent-btn--ghost:hover{ background:rgba(255,255,255,.12); border-color:#fff; }
.dim-consent-btn:focus-visible{ outline:2px solid #33c4ce; outline-offset:3px; }

@media (max-width:520px){
  #dim-consent{ padding:14px 16px; gap:12px; }
  #dim-consent p{ flex:1 1 100%; font-size:13px; }
  .dim-consent-actions{ flex:1 1 100%; }
  .dim-consent-btn{ flex:1 1 0; }
}
@media (prefers-reduced-motion:reduce){
  #dim-consent{ transition:none; }
}
