/* Écran d'ouverture (10/11/2026) : vidéo 3D de l'agenda violet, titre, puis zoom dans l'app.
   Affiché une fois par lancement (voir lancement.js). Fichier à part : app.css n'est pas touché. */
.lancement{display:none}
html[data-lancement] .lancement{
  display:block;position:fixed;inset:0;z-index:9999;overflow:hidden;background:#09081a;
  cursor:pointer;-webkit-tap-highlight-color:transparent;user-select:none;-webkit-user-select:none;
  transition:transform .55s cubic-bezier(.5,0,.9,.4),opacity .55s ease-in;will-change:transform,opacity;
}
.lancement.sortie{transform:scale(1.5);opacity:0;pointer-events:none}

.lancement-image,.lancement video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none}
.lancement-image{background:url("lancement.jpg?v=1") center/cover no-repeat;animation:lancement-zoom 5s ease-out .9s both}
.lancement video{opacity:0;transition:opacity .25s linear}
.lancement.video video{opacity:1}
@keyframes lancement-zoom{from{transform:scale(1)}to{transform:scale(1.09)}}

.lancement-voile{position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(180deg,rgba(9,8,26,.45) 0%,rgba(9,8,26,0) 22%,rgba(9,8,26,0) 56%,rgba(9,8,26,.9) 100%)}

.lancement-titre{
  position:absolute;left:0;right:0;bottom:calc(74px + env(safe-area-inset-bottom));text-align:center;color:#fff;
  font-family:ui-rounded,"SF Pro Rounded",-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif;
  opacity:0;transform:translateY(12px);letter-spacing:.28em;
  transition:opacity .9s ease-out .5s,transform .9s ease-out .5s,letter-spacing .9s ease-out .5s;
}
.lancement.pret .lancement-titre{opacity:1;transform:none;letter-spacing:.03em}
.lancement-titre strong{display:block;font-size:42px;line-height:1.05;font-weight:800;text-shadow:0 6px 28px rgba(0,0,0,.55)}
.lancement-titre strong span{background:linear-gradient(135deg,#d5ccff 0%,#a394ff 45%,#7c6cf5 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.lancement-titre small{display:block;margin-top:10px;font-size:15px;font-weight:500;letter-spacing:.02em;color:rgba(228,222,255,.74)}

/* écran large (ordinateur) : la vidéo verticale reste entière, bords fondus dans le fond */
@media (min-aspect-ratio:1/1){
  .lancement-image{background-size:contain}
  .lancement video{object-fit:contain}
  .lancement-image,.lancement video{
    -webkit-mask-image:linear-gradient(90deg,transparent 30%,#000 42%,#000 58%,transparent 70%);
    mask-image:linear-gradient(90deg,transparent 30%,#000 42%,#000 58%,transparent 70%)}
}
/* « Réduire les animations » : image fixe, sortie en simple fondu */
@media (prefers-reduced-motion:reduce){
  .lancement-image{animation:none}
  .lancement.sortie{transform:none}
  .lancement-titre{transition:opacity .4s linear;transform:none;letter-spacing:.03em}
}
