/* ==========================================================================
   Cookie Consent Bar
   ========================================================================== */

.cookie-consent-bar {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  top: auto;
  z-index: 3000;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.5rem;
  padding: 0.5rem var(--container-padding);
  padding-bottom: calc(0.5rem + env(safe-area-inset-bottom, 0px));
  background: rgba(3, 3, 3, 0.85);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.3s ease;
}

.cookie-consent-bar.hidden {
  transform: translateY(120%);
  opacity: 0;
  pointer-events: none;
}

.cookie-consent-text {
  font-size: 0.6875rem;
  color: rgba(255, 255, 255, 0.7);
  letter-spacing: 0.02em;
}

.cookie-consent-actions {
  display: flex;
  gap: 0.5rem;
}

.cookie-btn {
  padding: 0.25rem 0.65rem;
  font-size: 0.625rem;
  font-weight: 500;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  border-radius: 3px;
  border: none;
  cursor: pointer;
  transition: all 0.2s ease;
  font-family: inherit;
}

.cookie-btn-accept {
  background: #d4c5ab;
  color: #030303;
}

.cookie-btn-accept:hover {
  background: #e8dcc6;
  transform: translateY(-1px);
}

.cookie-btn-decline {
  background: rgba(255, 255, 255, 0.05);
  color: rgba(255, 255, 255, 0.7);
  border: 1px solid rgba(255, 255, 255, 0.1);
}

.cookie-btn-decline:hover {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 255, 255, 0.15);
}

@media (max-width: 640px) {
  .cookie-consent-bar {
    flex-direction: column;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    padding-bottom: calc(0.5rem + env(safe-area-inset-bottom, 0px));
    text-align: center;
  }
  
  .cookie-consent-text {
    font-size: 0.625rem;
  }
  
  .cookie-consent-actions {
    width: 100%;
    justify-content: center;
  }
  
  .cookie-btn {
    flex: 1;
    max-width: 120px;
    padding: 0.3rem 0.75rem;
  }
}
