/* Finitions modernes : surfaces légères et interactions, identité conservée. */
.bc-dating-ui {
  --bc-ease: cubic-bezier(.2, .75, .25, 1);
  --bc-surface-shadow: 0 4px 6px -4px #512c3b0a, 0 18px 42px -24px #512c3b24;
  background-color: #fcf8f5;
  background-image:
    radial-gradient(ellipse at 0 0, #f4dce54d, transparent 48rem),
    radial-gradient(ellipse at 100% 30rem, #f7e6d84d, transparent 40rem);
}

/* En-tête translucide et navigation en capsules. */
.bc-dating-ui .bc-navbar {
  background: #fcf8f5ed;
  border-bottom-color: #ead8de99;
  box-shadow: 0 8px 30px -25px #512c3b50;
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}
.bc-dating-ui .bc-member-nav { background: #fcf8f5ed; }
.bc-dating-ui .bc-member-nav a {
  transition: color .2s, background-color .2s, box-shadow .2s;
}
.bc-dating-ui .bc-member-nav a.is-active {
  background: linear-gradient(135deg, #f8e5ec, #f4dde3);
  box-shadow: inset 0 1px #ffffffb3, 0 3px 10px -7px #ad3c5866;
}

/* Relief des boutons, sans animation permanente. */
.bc-dating-ui .bc-button {
  transition: transform .2s var(--bc-ease), box-shadow .2s var(--bc-ease),
    background-color .2s, border-color .2s;
}
.bc-dating-ui .bc-button-primary {
  background: linear-gradient(120deg, #b64060, #a52f50);
  border: 1px solid #ffffff1a;
  box-shadow: inset 0 1px #ffffff26, 0 5px 14px -6px #ad3c5870;
}
.bc-dating-ui .bc-button-secondary {
  background: linear-gradient(180deg, #fff, #fffafc);
  border-color: #e8ccd5;
  box-shadow: inset 0 1px #fff, 0 3px 8px -6px #512c3b30;
}
.bc-dating-ui .bc-button:active:not(:disabled) {
  transform: translateY(1px) scale(.985);
  box-shadow: inset 0 2px 5px #512c3b16;
}
.bc-dating-ui .bc-button:disabled {
  cursor: not-allowed;
  opacity: .6;
  transform: none;
}
.bc-dating-ui .bc-text-link .bc-icon,
.bc-dating-ui .bc-person-story span .bc-icon {
  transition: transform .2s var(--bc-ease);
}

/* Lumière et profondeur de l’accueil. */
.bc-love-intro h1 em {
  color: #a63354;
  background: linear-gradient(115deg, #a63354 15%, #bf4e70 58%, #8f3156);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.bc-love-scene {
  background:
    radial-gradient(ellipse at 25% 10%, #fff7edc9, transparent 70%),
    linear-gradient(145deg, #f0d8ca, #ebc9ca 70%, #f3d9cb);
  box-shadow: inset 0 1px 0 #ffffffc9, 0 28px 65px -38px #92526c55;
  border: 1px solid #ffffffb3;
}
.bc-love-note, .bc-love-sticker {
  background: #fffcf5ed;
  border: 1px solid #ffffffb3;
  box-shadow: 0 10px 30px -17px #6e3d5066;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}
.bc-love-trust {
  background: linear-gradient(125deg, #f1e9e0, #f5e8e5);
  border: 1px solid #ffffffc9;
  box-shadow: inset 0 1px #fff, 0 18px 40px -35px #512c3b40;
}
.bc-love-invitation {
  background: linear-gradient(125deg, #ffffffb3, #fff5f8b3);
  border-color: #dcb3c3;
}
.bc-love-how li>span {
  display: grid;
  place-items: center;
  flex: 0 0 44px;
  height: 44px;
  border-radius: 15px;
  font-size: 1.1rem;
  background: linear-gradient(135deg, #f7e0e9, #fbece6);
  box-shadow: inset 0 1px #ffffffb3;
}

/* Cartes et portraits : souligner l’interaction, garder les textes nets. */
.bc-dating-ui .bc-page-card,
.bc-dating-ui .bc-panel,
.bc-dating-ui .bc-user-card,
.bc-dating-ui .bc-person-card,
.bc-dating-ui .bc-member-card-v2 {
  border-color: #ebdce2;
  box-shadow: var(--bc-surface-shadow);
  transition: transform .25s var(--bc-ease), box-shadow .25s var(--bc-ease), border-color .25s;
}
.bc-dating-ui .bc-person-image>img,
.bc-dating-ui .bc-member-card-v2-photo img {
  transition: transform .55s var(--bc-ease);
}
.bc-dating-ui .bc-interest-tags span {
  background: linear-gradient(135deg, #f9eaf0, #f9eeeb);
  border: 1px solid #eddae1;
  box-shadow: inset 0 1px #ffffffb3;
}
.bc-profile-invitation {
  background:
    radial-gradient(ellipse at 95% 0, #fff6eeb3, transparent 70%),
    linear-gradient(120deg, #f3e3e2, #f5dfe8);
  border: 1px solid #ffffffb3;
  box-shadow: var(--bc-surface-shadow);
}
.bc-profile-extra, .bc-conversation-settings {
  box-shadow: 0 5px 20px -15px #512c3b26;
  transition: border-color .2s, box-shadow .2s;
}
.bc-profile-extra[open], .bc-conversation-settings[open],
.bc-discovery-onboarding[open] {
  border-color: #c98a9e;
}
.bc-conversation-settings[open]>#bc-push-settings {
  padding-top: .25rem;
}

/* Formulaires : un focus lisible, cohérent avec la marque. */
.bc-dating-ui .bc-input {
  border-color: #e3d5dc;
  background-color: #fffefd;
  box-shadow: inset 0 1px 2px #512c3b05;
  transition: border-color .2s, box-shadow .2s, background-color .2s;
}
.bc-dating-ui .bc-input:focus {
  background-color: #fff;
  border-color: #b64060;
  box-shadow: 0 0 0 4px #ad3c5814, 0 3px 10px -6px #ad3c5826;
}
.bc-dating-ui .bc-input::placeholder { color: #89717d; }
.bc-dating-ui .bc-bubble-mine {
  background: linear-gradient(135deg, #b64060, #a52f50);
  box-shadow: 0 4px 10px -6px #ad3c5850;
}
.bc-dating-ui .bc-bubble-other {
  background: linear-gradient(160deg, #fff, #fff9fa);
  border-color: #ebdce2;
}

@media (hover: hover) and (pointer: fine) {
  .bc-dating-ui .bc-button-primary:hover:not(:disabled) {
    transform: translateY(-2px);
    box-shadow: inset 0 1px #ffffff33, 0 10px 24px -10px #ad3c5880;
  }
  .bc-dating-ui .bc-button-secondary:hover:not(:disabled) {
    transform: translateY(-2px);
    border-color: #d498ab;
    box-shadow: 0 8px 18px -12px #512c3b40;
  }
  .bc-dating-ui .bc-person-card:hover,
  .bc-dating-ui .bc-member-card-v2:hover,
  .bc-dating-ui a.bc-page-card:hover,
  .bc-dating-ui .bc-user-card:hover {
    transform: translateY(-5px);
    border-color: #dba9ba;
    box-shadow: 0 6px 10px -7px #512c3b14, 0 24px 45px -25px #92526c50;
  }
  .bc-dating-ui .bc-person-card:hover .bc-person-image>img,
  .bc-dating-ui .bc-member-card-v2:hover .bc-member-card-v2-photo img {
    transform: scale(1.045);
  }
  .bc-dating-ui .bc-text-link:hover .bc-icon,
  .bc-dating-ui .bc-person-card:hover .bc-person-story span .bc-icon {
    transform: translateX(3px);
  }
}

/* Entrée courte ; le contenu reste visible si les animations sont désactivées. */
@keyframes bc-soft-enter {
  from { opacity: .55; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}
@media (prefers-reduced-motion: no-preference) {
  .bc-love-intro { animation: bc-soft-enter .5s var(--bc-ease) both; }
  .bc-love-scene { animation: bc-soft-enter .65s var(--bc-ease) both; }
}
@media (max-width: 700px) {
  .bc-dating-ui .bc-member-nav {
    background: #fffcfaf5;
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    box-shadow: 0 -8px 28px -22px #512c3b55;
  }
}
@media (hover: none) {
  .bc-dating-ui .bc-button:hover,
  .bc-dating-ui .bc-person-card:hover,
  .bc-dating-ui .bc-member-card-v2:hover,
  .bc-dating-ui .bc-user-card:hover { transform: none; }
  .bc-dating-ui .bc-member-card-v2:hover .bc-member-card-v2-photo img { transform: none; }
}
@media (prefers-reduced-motion: reduce) {
  .bc-dating-ui *, .bc-dating-ui *::before, .bc-dating-ui *::after {
    animation: none!important;
    transition: none!important;
    scroll-behavior: auto!important;
  }
}
@media (forced-colors: active) {
  .bc-love-intro h1 em {
    background: none;
    color: CanvasText;
    -webkit-text-fill-color: currentColor;
  }
}
/* Préserver le débord optique des lettres italiques dans le texte en dégradé. */
.bc-love-intro h1 em { padding-right: .14em; }
@media (prefers-reduced-motion: reduce) {
  .bc-dating-ui .bc-button:hover,
  .bc-dating-ui .bc-person-card:hover,
  .bc-dating-ui .bc-member-card-v2:hover,
  .bc-dating-ui .bc-user-card:hover,
  .bc-dating-ui .bc-member-card-v2:hover .bc-member-card-v2-photo img,
  .bc-dating-ui .bc-person-card:hover .bc-person-image>img { transform: none; }
}
