/**
* /var/www/pavel-gorin/public/css/components/modal.css
* ВСЁ оформление модальных окон — JS только открывает/закрывает
*/
/* === BACKDROP === */
.modal-backdrop {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 999990;
opacity: 0;
visibility: hidden;
transition: opacity 0.3s ease, visibility 0.3s ease;
background-color: rgba(6, 25, 52, 0.05);
backdrop-filter: blur(10px);
}
.modal-backdrop.active {
opacity: 1;
visibility: visible;
}
/* === БАЗОВОЕ МОДАЛЬНОЕ ОКНО === */
.modal-window {
position: fixed;
top: 50%;
left: 50%;
transform: translate(-50%, -50%) scale(0.9);
background: rgba(6, 25, 52, 0.95);
border: 1px solid rgba(42, 87, 199, 0.8);
border-radius: 15px;
box-shadow: 0 15px 50px rgba(42, 87, 199, 0.45);
backdrop-filter: blur(10px);
z-index: 999991;
padding: 15px;
opacity: 0;
visibility: hidden;
transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s ease;
overflow: auto;
max-width: calc(100% - 40px);
max-height: calc(100vh - 40px);
}
.modal-window.active {
opacity: 1;
visibility: visible;
transform: translate(-50%, -50%) scale(1);
}
/* === РАЗМЕРЫ ПО ID — УНИФИКАЦИЯ === */
#audioModal {
width: 500px;
max-width: 550px;
min-width: 320px;
height: 600px !important;
max-height: 700px;
}
#loginModal {
width: 500px;
max-width: 550px;
min-width: 320px;
height: 380px !important;
max-height: 420px;
}
#chatModal {
width: 500px;
max-width: 550px;
min-width: 320px;
height: 580px !important;
max-height: 620px;
padding: 0;
overflow: hidden;
display: flex;
flex-direction: column;
}
/* === HEADER === */
.modal-header {
display: flex;
align-items: center;
justify-content: space-between;
margin-bottom: 12px;
padding-bottom: 10px;
border-bottom: 1px solid rgba(149, 196, 250, 0.2);
}
.modal-title {
color: var(--color-primary-light);
font-size: 16px;
font-weight: 700;
margin: 0;
display: flex;
align-items: center;
gap: 6px;
text-transform: uppercase;
letter-spacing: 1.2px;
}
.modal-title i {
display: none;
}
.modal-title span {
display: inline-block;
}
.modal-close {
background: transparent;
border: none;
color: var(--color-primary-light);
font-size: 18px;
cursor: pointer;
transition: all 0.3s ease;
padding: 4px;
display: flex;
align-items: center;
justify-content: center;
}
.modal-close:hover {
color: var(--color-white);
}
.modal-body {
padding: 10px 0;
}
/* === АДАПТИВ === */
@media (max-width: 768px) {
.modal-window {
padding: 12px;
width: calc(100% - 40px);
height: auto;
max-height: calc(100vh - 40px);
}
#audioModal,
#loginModal,
#chatModal {
width: calc(100% - 40px);
height: 500px;
max-width: none;
min-width: auto;
}
.modal-title {
font-size: 15px;
}
}
@media (max-width: 576px) {
.modal-window {
padding: 10px;
width: calc(100% - 20px);
}
#audioModal,
#loginModal,
#chatModal {
width: calc(100% - 20px);
height: 450px;
}
.modal-title {
font-size: 14px;
}
.modal-close {
font-size: 16px;
}
}