/* Text responsive: wrap + rămâne în cadran (inclusiv flex/grid/tabele) */
html {
  overflow-wrap: anywhere;
  word-wrap: break-word;
}
body {
  word-break: break-word;
}
.flex,
.inline-flex {
  min-width: 0;
}
.flex > *:not(svg):not([id^="overlay-"]),
.inline-flex > *:not(svg):not([id^="overlay-"]) {
  min-width: 0;
}
.flex svg,
.inline-flex svg {
  flex-shrink: 0;
}
.grid > * {
  min-width: 0;
}
table {
  width: 100%;
  max-width: 100%;
}
th,
td {
  overflow-wrap: anywhere;
  word-break: break-word;
}

@keyframes float-slow {
  0%, 100% { transform: translateY(0) rotate(0deg); }
  50% { transform: translateY(-20px) rotate(15deg); }
}
@keyframes float-slower {
  0%, 100% { transform: translateY(0) rotate(0deg); }
  50% { transform: translateY(20px) rotate(-15deg); }
}
.animate-float-slow {
  animation: float-slow 6s ease-in-out infinite;
}
.animate-float-slower {
  animation: float-slower 7s ease-in-out infinite;
  animation-delay: 1s;
}
details > summary {
  list-style: none;
}
details > summary::-webkit-details-marker {
  display: none;
}

/* Overlay full-screen backdrop */
.crm-overlay-backdrop {
  position: fixed;
  inset: 0;
  width: 100vw;
  height: 100vh;
  z-index: 2147483647;
  background: rgba(15, 23, 42, 0.7);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem;
}
