/* Cookie consent banner — platform marketing / app shells */
.djep-cookie-banner {
   position: fixed;
   left: var(--ep-space-4, 16px);
   right: var(--ep-space-4, 16px);
   bottom: var(--ep-space-4, 16px);
   z-index: 100000;
   max-width: 420px;
   margin-inline: auto;
   padding: var(--ep-space-5, 20px);
   border-radius: var(--ep-radius-lg, 12px);
   border: 1px solid var(--ep-border-color, #3A3A3A);
   background: var(--ep-bg-card, #2C2C2C);
   color: var(--ep-text-primary, #F0F0F0);
   box-shadow: 0 12px 40px rgba(0, 0, 0, 0.35);
   font-family: var(--ep-font-family, 'Inter', system-ui, sans-serif);
}

@media (min-width: 640px) {
   .djep-cookie-banner {
      left: auto;
      right: var(--ep-space-6, 24px);
      bottom: var(--ep-space-6, 24px);
      margin-inline: 0;
   }
}

.djep-cookie-banner__title {
   margin: 0 0 var(--ep-space-2, 8px);
   font-size: var(--ep-font-size-md, 16px);
   font-weight: var(--ep-fw-semi, 600);
   color: var(--ep-text-heading, #FFFFFF);
}

.djep-cookie-banner__text {
   margin: 0 0 var(--ep-space-4, 16px);
   font-size: var(--ep-font-size-sm, 14px);
   line-height: 1.5;
   color: var(--ep-text-secondary, #B0B0B0);
}

.djep-cookie-banner__text a {
   color: var(--ep-text-link, #F87A58);
   text-decoration: underline;
}

.djep-cookie-banner__actions {
   display: flex;
   flex-wrap: wrap;
   gap: var(--ep-space-2, 8px);
}

.djep-cookie-banner__btn {
   appearance: none;
   border: 1px solid transparent;
   border-radius: var(--ep-radius-md, 8px);
   padding: 0.55rem 0.9rem;
   font-size: var(--ep-font-size-sm, 14px);
   font-weight: var(--ep-fw-medium, 500);
   cursor: pointer;
   line-height: 1.2;
}

.djep-cookie-banner__btn--accept {
   background: var(--ep-brand-gradient, linear-gradient(90deg, #F7426F, #F87A58));
   color: #fff;
}

.djep-cookie-banner__btn--reject {
   background: transparent;
   border-color: var(--ep-border-color, #3A3A3A);
   color: var(--ep-text-primary, #F0F0F0);
}

.djep-cookie-banner__btn--manage {
   background: transparent;
   border-color: transparent;
   color: var(--ep-text-muted, #A3A3A3);
   text-decoration: underline;
   padding-left: 0.35rem;
   padding-right: 0.35rem;
}

.djep-cookie-banner__manage {
   display: none;
   margin: 0 0 var(--ep-space-4, 16px);
   padding: var(--ep-space-3, 12px);
   border-radius: var(--ep-radius-md, 8px);
   background: var(--ep-bg-elevated, #414141);
}

.djep-cookie-banner__manage.is-open {
   display: block;
}

.djep-cookie-banner__manage label {
   display: flex;
   align-items: center;
   gap: var(--ep-space-2, 8px);
   margin: 0 0 var(--ep-space-2, 8px);
   font-size: var(--ep-font-size-sm, 14px);
   color: var(--ep-text-secondary, #B0B0B0);
   cursor: pointer;
}

.djep-cookie-banner__manage label:last-child {
   margin-bottom: 0;
}
