Чтобы предотвратить уменьшение ширины блока с фиксированным позиционированием, можно использовать минимальную ширину (min-width) для этого блока. Например, вы можете задать минимальную ширину в пикселях или процентах:
```css
.block {
position: fixed;
min-width: 300px; /* или min-width: 50%; */
}
```
Чтобы исправить проблему с сжатием блока, чтобы он уходил за край монитора без задания фиксированной ширины родительскому блоку .bonus_window, можно использовать абсолютное позиционирование и задать правильные значения для свойств left и right. Например:
```css
.bonus_window {
position: relative;
}
.block {
position: absolute;
left: 0;
right: 0;
}
```
В этом случае блок будет растягиваться на всю доступную ширину родительского блока без фиксирования ширины.
Убедитесь, что у блока bonus_window есть заданная ширина, чтобы он не расширялся на всю доступную ему ширину экрана. Можно задать жесткие значения ширины для блока bonus_window и использовать media queries, чтобы отобразить разные размеры блока для разных размеров экрана. Рекомендуется также позиционировать блок по правому краю, чтобы избежать его вылезания за пределы экрана. Если блок bonus_window имеет внутренние элементы, учтите их размеры при определении размера блока и использовании media queries.