.fvi-player {
  margin: 1.5rem 0;
  padding: 1.25rem;
  border: 1px solid rgba(20, 20, 20, 0.08);
  border-radius: 18px;
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
  box-shadow: 0 12px 36px rgba(15, 23, 42, 0.08);
}
.fvi-player__header {
  display: flex;
  gap: 1rem;
  align-items: flex-start;
  justify-content: space-between;
  margin-bottom: 1rem;
}
.fvi-player__header h3 { margin: 0 0 .35rem; font-size: 1.1rem; }
.fvi-player__header p { margin: 0; opacity: .8; }
.fvi-player__badge {
  white-space: nowrap;
  font-size: .85rem;
  padding: .45rem .7rem;
  border-radius: 999px;
  background: #eef2ff;
}
.fvi-player__controls,
.fvi-player__secondary {
  display: flex;
  flex-wrap: wrap;
  gap: .75rem;
  align-items: center;
}
.fvi-player__controls { margin-bottom: .9rem; }
.fvi-player__secondary label {
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  font-size: .95rem;
}
.fvi-player__secondary select,
.fvi-player__secondary input[type="range"] {
  min-width: 160px;
}
.fvi-progress-wrap { flex: 1 1 240px; }
.fvi-progress {
  position: relative;
  width: 100%;
  height: 10px;
  background: #e5e7eb;
  border-radius: 999px;
  overflow: hidden;
  margin-bottom: .35rem;
}
.fvi-progress__bar {
  display: block;
  width: 0%;
  height: 100%;
  background: linear-gradient(90deg, #2563eb, #7c3aed);
}
.fvi-status { display: block; font-size: .86rem; opacity: .85; }

.fvi-player .button { min-height: 42px; }
.fvi-player__secondary { margin-top: .35rem; }
@media (max-width: 640px) {
  .fvi-player { padding: 1rem; border-radius: 16px; }
  .fvi-player__header { flex-direction: column; align-items: stretch; }
  .fvi-player__badge { align-self: flex-start; }
  .fvi-player__controls { display: grid; grid-template-columns: 1fr 1fr; }
  .fvi-player__controls .button { width: 100%; justify-content: center; }
  .fvi-player__secondary { flex-direction: column; align-items: stretch; }
  .fvi-player__secondary label { width: 100%; justify-content: space-between; }
  .fvi-player__secondary select,
  .fvi-player__secondary input[type="range"] { min-width: 0; width: 100%; }
}


.fvi-player .button,
.fvi-player button.button {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  visibility: visible !important;
  opacity: 1 !important;
  gap: .35rem;
}
.fvi-player__controls .button {
  flex: 0 1 auto;
}
.fvi-player__controls .button.button-primary {
  font-weight: 600;
}
@media (max-width: 640px) {
  .fvi-player__controls {
    display: grid !important;
    grid-template-columns: 1fr 1fr;
  }
  .fvi-player__controls .button {
    width: 100% !important;
    min-height: 46px;
  }
}

section.fvi-player, .fvi-player { display:block !important; visibility:visible !important; width:100%; max-width:100%; }
.fvi-player * { box-sizing:border-box; }
@media (max-width: 480px) { .fvi-player__controls { grid-template-columns: 1fr !important; } }
