/* 0.9.399 — Liseré de priorité élargi à 10 px ; couleurs existantes conservées.
   L'ancien CSS impose background !important sur le cadre : une animation de
   background-position sur cet élément ne peut pas passer cette déclaration.
   Particules et Flash Pulse se déplacent désormais sur ::before, indépendamment. */
.unpnc-app .unpnc-home-bento > .unpnc-bento-flash,
.unpnc-app[data-theme='light'] .unpnc-home-bento > .unpnc-bento-flash {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background-image:
    repeating-linear-gradient(112deg, transparent 0 88px, rgba(18, 112, 180, .15) 89px 91px, transparent 92px 180px),
    radial-gradient(circle, rgba(235, 97, 11, .07) 0 1px, transparent 2px),
    radial-gradient(circle, rgba(9, 107, 180, .07) 0 1px, transparent 2px) !important;
  background-size: 460px 380px, 64px 57px, 82px 71px !important;
  background-repeat: repeat !important;
}

/* Les couches décoratives restent sous le texte et les contrôles. */
.unpnc-app .unpnc-home-bento > .unpnc-bento-flash::before,
.unpnc-app .unpnc-home-bento > .unpnc-bento-flash::after {
  content: '';
  position: absolute;
  display: block;
  pointer-events: none;
  user-select: none;
  z-index: 0;
}

.unpnc-app .unpnc-home-bento > .unpnc-bento-flash::before {
  inset: -28%;
  background:
    /* Flash Pulse : véritable balayage, 6 secondes, indépendant du fond racine. */
    linear-gradient(105deg, transparent 0%, rgba(24, 150, 225, .025) 21%, rgba(38, 156, 229, .17) 40%, rgba(235, 97, 11, .19) 52%, rgba(29, 150, 224, .15) 62%, transparent 100%),
    /* Flux : une trace de particules presque imperceptible, sans supprimer le mouvement. */
    radial-gradient(circle, rgba(235, 97, 11, .14) 0 1.35px, transparent 2.3px),
    radial-gradient(circle, rgba(9, 107, 180, .13) 0 1.3px, transparent 2.2px),
    repeating-linear-gradient(112deg, transparent 0 88px, rgba(18, 112, 180, .16) 89px 91px, transparent 92px 180px),
    radial-gradient(ellipse at 15% 38%, rgba(235, 97, 11, .30), transparent 49%),
    radial-gradient(ellipse at 79% 72%, rgba(34, 143, 226, .32), transparent 56%),
    radial-gradient(ellipse at 59% 15%, rgba(0, 50, 100, .13), transparent 55%);
  background-size: 38% 100%, 64px 57px, 82px 71px, 460px 380px, 100% 100%, 100% 100%, 100% 100%;
  background-repeat: no-repeat, repeat, repeat, repeat, no-repeat, no-repeat, no-repeat;
  background-position: -160% 0, 0 0, 0 0, 0 0, center, center, center;
  opacity: .96;
  transform: translate3d(-6%, 3%, 0) scale(1);
  transform-origin: center;
  animation: unpnc-flash-aurora-0395 10s ease-in-out infinite alternate,
             unpnc-flash-flow-pulse-0395 6s linear infinite;
}

/* Radar : anneaux et cône plus contrastés, toujours au second plan. */
.unpnc-app .unpnc-home-bento > .unpnc-bento-flash::after {
  width: min(760px, 150%);
  aspect-ratio: 1;
  left: 65%;
  top: 50%;
  border-radius: 50%;
  background:
    repeating-radial-gradient(circle, transparent 0 47px, rgba(0, 83, 143, .35) 48px 50px, transparent 51px 96px),
    conic-gradient(from 0deg, transparent 0deg 295deg, rgba(39, 158, 223, .00) 304deg, rgba(39, 158, 223, .42) 341deg, rgba(235, 97, 11, .34) 351deg, transparent 360deg);
  opacity: .62;
  transform: translate3d(-50%, -50%, 0) rotate(0deg);
  animation: unpnc-flash-radar-0395 18s linear infinite;
}

/* L'ancienne couleur opaque de chaque colonne masquerait les deux couches. */
.unpnc-app .unpnc-home-bento > .unpnc-bento-flash > .unpnc-feature-media,
.unpnc-app .unpnc-home-bento > .unpnc-bento-flash > .unpnc-feature-body,
.unpnc-app[data-theme='light'] .unpnc-home-bento > .unpnc-bento-flash > .unpnc-feature-media,
.unpnc-app[data-theme='light'] .unpnc-home-bento > .unpnc-bento-flash > .unpnc-feature-body,
.unpnc-app[data-theme='dark'] .unpnc-home-bento > .unpnc-bento-flash > .unpnc-feature-media,
.unpnc-app[data-theme='dark'] .unpnc-home-bento > .unpnc-bento-flash > .unpnc-feature-body {
  position: relative;
  z-index: 1;
  background: transparent !important;
}

/* La fermeture du Flash demeure au-dessus des couches décoratives. */
.unpnc-app .unpnc-home-bento > .unpnc-bento-flash > .unpnc-home-widget-close {
  z-index: 4 !important;
}

.unpnc-app[data-theme='dark'] .unpnc-home-bento > .unpnc-bento-flash::before {
  /* Ne pas réinitialiser background-size/position/repeat de la couche animée. */
  background-image:
    linear-gradient(105deg, transparent 0%, rgba(24, 150, 225, .04) 21%, rgba(59, 172, 248, .22) 40%, rgba(235, 97, 11, .24) 52%, rgba(29, 150, 224, .21) 62%, transparent 100%),
    radial-gradient(circle, rgba(235, 97, 11, .19) 0 1.35px, transparent 2.3px),
    radial-gradient(circle, rgba(110, 197, 250, .18) 0 1.3px, transparent 2.2px),
    repeating-linear-gradient(112deg, transparent 0 88px, rgba(61, 177, 246, .19) 89px 91px, transparent 92px 180px),
    radial-gradient(ellipse at 18% 36%, rgba(235, 97, 11, .35), transparent 49%),
    radial-gradient(ellipse at 79% 73%, rgba(53, 165, 251, .39), transparent 54%),
    radial-gradient(ellipse at 54% 17%, rgba(0, 95, 171, .21), transparent 55%);
  opacity: .95;
}

.unpnc-app[data-theme='dark'] .unpnc-home-bento > .unpnc-bento-flash {
  background-image:
    repeating-linear-gradient(112deg, transparent 0 88px, rgba(61, 177, 246, .19) 89px 91px, transparent 92px 180px),
    radial-gradient(circle, rgba(235, 97, 11, .09) 0 1px, transparent 2px),
    radial-gradient(circle, rgba(110, 197, 250, .09) 0 1px, transparent 2px) !important;
}

.unpnc-app[data-theme='dark'] .unpnc-home-bento > .unpnc-bento-flash::after {
  opacity: .75;
}

@keyframes unpnc-flash-aurora-0395 {
  0%   { transform: translate3d(-6%, 3%, 0) scale(1); }
  50%  { transform: translate3d(5%, -4%, 0) scale(1.10); }
  100% { transform: translate3d(-2%, 5%, 0) scale(1.14); }
}

@keyframes unpnc-flash-radar-0395 {
  from { transform: translate3d(-50%, -50%, 0) rotate(0deg); }
  to   { transform: translate3d(-50%, -50%, 0) rotate(360deg); }
}

@keyframes unpnc-flash-flow-pulse-0395 {
  /* Le faisceau revient hors champ ; les particules bouclent sans saut. */
  0%   { background-position: -160% 0, 0 0, 0 0, 0 0, center, center, center; }
  42%  { background-position: 270% 0, 53.76px -47.88px, -68.88px 59.64px, 193.2px -159.6px, center, center, center; }
  100% { background-position: 270% 0, 128px -114px, -164px 142px, 460px -380px, center, center, center; }
}

/* Capsule FLASH INFO : deux éclats doux toutes les cinq secondes, jamais de disparition.
   Les badges de priorité et de visibilité ne sont pas concernés. */
.unpnc-app[data-theme] .unpnc-home-bento > .unpnc-bento-flash .unpnc-feature-label {
  padding: 7px 13px !important;
  font-size: 11px !important;
  min-height: 32px;
  gap: 7px !important;
  border-radius: 999px !important;
  transform-origin: center;
  animation: unpnc-flash-badge-premium-0397 5s ease-in-out infinite !important;
}

@keyframes unpnc-flash-badge-premium-0397 {
  0%, 57%, 66%, 76%, 100% {
    opacity: 1;
    filter: brightness(1);
    box-shadow: 0 2px 8px rgba(235, 97, 11, .12);
    transform: scale(1);
  }
  62%, 71% {
    opacity: 1;
    filter: brightness(1.13);
    box-shadow: 0 0 0 3px rgba(235, 97, 11, .10), 0 0 15px rgba(235, 97, 11, .30);
    transform: scale(1.025);
  }
}

/* Liseré gauche : 4 → 10 px. La couleur reste pilotée par les quatre classes
   de priorité existantes (vert, orange, rouge, noir), sans doublon de barème. */
.unpnc-app .unpnc-home-bento > .unpnc-bento-flash.unpnc-flash-priority-frame--normal,
.unpnc-app .unpnc-home-bento > .unpnc-bento-flash.unpnc-flash-priority-frame--important,
.unpnc-app .unpnc-home-bento > .unpnc-bento-flash.unpnc-flash-priority-frame--urgent,
.unpnc-app .unpnc-home-bento > .unpnc-bento-flash.unpnc-flash-priority-frame--critical {
  border-left-width: 10px !important;
}

@media (max-width: 430px) {
  .unpnc-app[data-theme] .unpnc-home-bento > .unpnc-bento-flash .unpnc-feature-label {
    padding: 6px 8px !important;
    font-size: 8.6px !important;
    min-height: 27px;
    gap: 4px !important;
  }
}

@media (max-width: 740px) {
  .unpnc-app .unpnc-home-bento > .unpnc-bento-flash::before {
    inset: -12%;
    opacity: .88;
  }
  .unpnc-app .unpnc-home-bento > .unpnc-bento-flash::after {
    width: 135%;
    left: 63%;
    opacity: .49;
  }
  .unpnc-app[data-theme='dark'] .unpnc-home-bento > .unpnc-bento-flash::after {
    opacity: .64;
  }
}

@media (prefers-reduced-motion: reduce) {
  .unpnc-app[data-theme] .unpnc-home-bento > .unpnc-bento-flash .unpnc-feature-label {
    animation: none !important;
  }
  .unpnc-app .unpnc-home-bento > .unpnc-bento-flash {
    animation: none !important;
  }
  .unpnc-app .unpnc-home-bento > .unpnc-bento-flash::before,
  .unpnc-app .unpnc-home-bento > .unpnc-bento-flash::after {
    animation: none !important;
    transform: none;
  }
  .unpnc-app .unpnc-home-bento > .unpnc-bento-flash::before {
    background-position: -160% 0, 0 0, 0 0, 0 0, center, center, center;
  }
  .unpnc-app .unpnc-home-bento > .unpnc-bento-flash::after {
    transform: translate3d(-50%, -50%, 0);
  }
}
