body {
    line-height: 1.6;
    margin: 0;
    padding: 0;
    width: 100%;
    background: #191919;
    font-family: 'Montserrat', sans-serif !important;

}
input textarea{

    /* Сброс внешнего вида */
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;

    /* Сброс отступов и границ */
    margin: 0;
    padding: 0;
    border: none;
    outline: none;
    background: none;

    /* Сброс шрифтов */
    font-family: inherit;
    font-size: inherit;
    color: inherit;

    /* Сброс дополнительных свойств */
    box-shadow: none;
    border-radius: 0;
}
h1, h2, h3, h4, h5, span, p{
    color: #E6E6E6;
    font-family: 'Montserrat', sans-serif !important;
}
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Убирает стрелки для Firefox */
input[type="number"] {
    -moz-appearance: textfield;
}
a  {
    text-decoration: none;
    cursor: pointer;
    color: #E6E6E6;
}
ul{
    list-style: none;
    color: #E6E6E6;
}

a:hover {

    text-decoration: underline;
}
.hidden{
    display: none !important;
}

.container {
    width: 80%;
    margin: 0 auto;
    padding: 20px;
}

input, textarea {
    display: block;
    margin: 10px 0;
    padding: 8px;
    width: 100%;
    max-width: 400px;
    font-family: 'Montserrat', sans-serif !important;
    border: none;
    outline: none;
}
input:focus-visible {
    border-bottom: 1px solid #9eff00 !important;
}
button {
    background: #333;
    color: white;
    border: none;
    cursor: pointer;
    font-family: 'Montserrat', sans-serif !important;
}
header{
    max-width: 1596px;
    height: 100px;
    margin: 0 auto;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;

}
footer{
    width: 100%;
    border-top: 1px solid #262626;
}
p{
    color: #E6E6E6;
}
.error {
    color: #e74c3c;
    font-size: 14px;
    margin-top: 5px;
    display: block;
    min-height: 18px;
}
.header_logo{
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
}
.header_logo img{
    width: 60px;
    margin-right: 10px;
}
.header_logo p{
    font-size: 24px;
    font-weight: bold;
}
.header_buttons {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-end;


}
.pay_box{
    width: 250px;
}
.user_name_header{
    margin-right: 10px;
}
.user_name_header i{
    color: #9eff00;
}
.green_button{
    color: #262626;
    background-color: #9EFF00;
    font-size: 16px;
    padding: 15px 20px;
    border-radius: 10px;
    text-align: center;
}
.green_button:hover{
    color: #E6E6E6;
    background: linear-gradient(to top, #2e2e2e00, #2E2E2E);
    border: 1px solid #2E2E2E;
}
.gray_button{
    color: #E6E6E6;
    border-radius: 10px;
    font-size: 16px;
    font-weight: bold;
    padding: 15px 20px;
}
.gray_button:hover{
    background: linear-gradient(to top, #2e2e2e00, #2E2E2E);
    border: 1px solid #2E2E2E;
}
.content{
    max-width: 1596px;
    margin: 0 auto;
}
.banner{
    background-image: url(../img/banner.png);
    background-position: center;
    height: 785px;
    border: 1px solid #262626;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 0 20%;
    align-items: center;
}
.banner h2{
    font-size: 50px;
    color: #E6E6E6;
    text-align: center;
    font-weight: bold;
}
.footer_block{
    max-width: 1596px;
    margin: 0 auto;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid #262626;

}
.social_footer{
    border: 1px solid #262626;
    border-radius: 10px;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    padding: 10px;

}
.social_footer i{
    margin: 0 5px;
}
.green_icon{
    color: #9EFF00;
    font-size: 30px !important;
    padding: 15px;
    border-radius: 10px;
    border: 1px solid #2E2E2E;
    background: linear-gradient(to top, #2e2e2e00, #2E2E2E);
}
.green_icon_smale{
    color: #9EFF00;
    font-size: 25px !important;

    padding: 15px 20px;
    border-radius: 10px;
    border: 1px solid #2E2E2E;
    background: linear-gradient(to top, #2e2e2e00, #2E2E2E);
}
.loader_block{
    width: 150px;
    height: 150px;
}
.loader{

    transform: translateX(0);
    animation: jump 1.5s cubic-bezier(0.28, 0.84, 0.42, 1) infinite;
}
@keyframes jump {
    0% {
        transform: translateX(0) translateY(0) scale(1, 1);
        animation-timing-function: cubic-bezier(0.28, 0.84, 0.42, 1);
    }
    20% {
        transform: translateX(0) translateY(-120px) scale(1, 1);
        animation-timing-function: cubic-bezier(0.28, 0.84, 0.42, 1);
    }
    40% {
        transform: translateX(0) translateY(-60px) scale(1.1, 0.9);
        animation-timing-function: cubic-bezier(0.28, 0.84, 0.42, 1);
    }
    60% {
        transform: translateX(0) translateY(-90px) scale(1, 1);
    }
    75% {
        transform: translateX(0) translateY(-30px) scale(1.05, 0.95);
    }
    90% {
        transform: translateX(0) translateY(-10px) scale(1, 1);
    }
    100% {
        transform: translateX(0) translateY(0) scale(1, 1);
    }
}
.green_icon_ex_smale{
    color: #9EFF00;
    font-size: 15px !important;
    padding: 10px 10px;
    border-radius: 10px;
    border: 1px solid #2E2E2E;
    background: linear-gradient(to top, #2e2e2e00, #2E2E2E);
}
.footer_block_bottom{
    max-width: 1596px;
    margin: 0 auto;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
}
.footer_contacts{
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
}
.contact_line{
    display: flex;
    flex-direction: row;
    align-items: center;
    margin-right: 10px;
}
.contact_line i {
    color: #9EFF00;
    margin-right: 10px;
}
.contact_box {
    display: flex;
    flex-direction: row;
    align-items: center;
    margin-right: 10px;
    background: #242424;
    padding: 20px;
    border-radius: 10px;
}
.contact_box i {
    font-size: 25px;
    color: #9EFF00;
    margin-right: 10px;
}
.contacts_line{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
}

.auth_form{
    max-width: 850px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    border: 1px solid #2E2E2E;
    padding: 20px;
    height: 470px;
}
.gay_box{
    background: #242424;
    padding: 20px;
    max-width: 100%;
    border-radius: 10px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
}
.gay_box p{
    margin: 10px;
    font-weight: 600;
}
.gay_box input{
    background: #242424;
    color: #E6E6E6;
    border-bottom: 1px solid #656567;
}

.gay_box textarea{
    resize: none;
    display: block;
    box-sizing: border-box; /* Учитывает padding и border в ширине */
    max-width: none;
    background: #242424;
    color: #E6E6E6;
    border: 1px solid #656567;
    border-radius: 10px;
    width: 100%;
    min-height: 200px;
}
.gay_box textarea:focus{
    outline: none;
    border: 2px solid #9EFF00 !important;
}
.med_box{
    width: 43%;
    margin-bottom: 20px;
}
.large_box{
    width: 100%;
    margin-bottom: 10px;
}

.google-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #E6E6E6;
    color: #5f6368;
    border: 1px solid #dadce0;
    border-radius: 4px;
    padding: 10px 16px;

    font-size: 14px;
    font-weight: 500;
    text-decoration: none;
    cursor: pointer;
    transition: background-color 0.3s, box-shadow 0.3s;
    box-shadow: 0 1px 2px 0 rgba(0,0,0,0.1);
}

/* Стили при наведении */
.google-btn:hover {
    background-color: #f8f9fa;
    box-shadow: 0 1px 3px 0 rgba(0,0,0,0.2);
}

/* Стили при нажатии */
.google-btn:active {
    background-color: #f1f3f4;
}

/* Стили для иконки Google */
.google-icon {
    display: inline-block;
    margin-right: 12px;
    width: 18px;
    height: 18px;
}

/* Стили для текста */
.google-text {
    white-space: nowrap;
}

/* Контейнер для центрирования */
.container {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
}
.generator_block{
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    align-content: center;
    margin-top: 20px;
    margin-bottom: 20px;
}
.left_gen_block{
    width: 45%;
}
.right_gen_block{
    width: 45%;
}
.sw_buttons {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    width: 100%;
    margin-bottom: 15px;

}
.sw_buttons button{
    width: 250px;
    margin-right: 10px;
}
.green_box{
    background: #9eff0026;
    border-radius: 10px;
    padding: 0px 10px 10px 10px;
    border: 1px solid #9EFF00;
    margin-bottom: 10px;
}
video{

    border: none;
}
:root {
    --plyr-video-background: #19191900;
    --plyr-color-main: #9EFF00;          /* Основной цвет (кнопки, прогресс-бар) */
    --plyr-control-radius: 8px;          /* Закругление элементов */
}
.video_set{
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    flex-wrap: wrap;
}



.upload-container {
    max-width: 100%;
    padding: 20px;
    background: #242424;
    border-radius: 10px;
    text-align: center;
    margin-bottom: 10px;
}

.drop-area {
    border: 2px dashed #9eff00;
    border-radius: 10px;
    padding: 40px;
    margin-bottom: 20px;
    transition: all 0.3s;
    cursor: pointer;
    display: flex;
    flex-wrap: nowrap;
    flex-direction: column;
    align-items: center;

}

.drop-area.highlight {
    border-color: #4CAF50;
    background-color: #f0fff0;
}

.drop-area p {
    margin: 0;
    font-size: 18px;
    color: #666;
}

.drop-area .icon {
    font-size: 48px;
    color: #999;
    margin-bottom: 15px;
}

#fileInput {
    display: none;
}

.button {
    background: #4CAF50;
    color: white;
    border: none;
    padding: 12px 24px;
    border-radius: 4px;
    cursor: pointer;
    font-size: 16px;
    transition: background 0.3s;
}

.button:hover {
    background: #45a049;
}

.preview-container {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    margin-top: 20px;
}

.preview-item {
    position: relative;
    width: 120px;
    height: 120px;
    border-radius: 6px;
    overflow: hidden;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

.preview-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.preview-item .remove-btn {
    position: absolute;
    top: 5px;
    right: 5px;
    background: #9eff00;
    color: black;
    border: none;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    cursor: pointer;
    font-size: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.status {
    margin-top: 20px;
    padding: 10px;
    border-radius: 4px;
    display: none;
}

.status.success {
    background: #dff0d8;
    color: #3c763d;
    display: block;
}

.status.error {
    background: #f2dede;
    color: #a94442;
    display: block;
}
.pop_up{
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 1000;
    background-color: rgba(0, 0, 0, 0.8);
    cursor: pointer;
    flex-direction: column;
}
.pop_up_header{
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}
.pop_up_box{
    background: #242424;
    padding: 20px;
    border-radius: 10px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    width: 350px;

}
.pop_up_box p {
    margin: 5px 0;
    text-align: center;
}
.pop_up_box span {
    margin: 10px 0 5px 0;
    font-weight: bold;
    font-size: 24px;
}

.closeButton{
    width: 35px;
    height: 35px;
    border-radius: 10px;
    background: #9EFF00;
    color: #2E2E2E;

}
.balanceHistoryBlock button{
    float: right;
    margin: 0 0 10px 0;
}
.vertical{
    flex-direction: column !important;
    align-items: flex-start !important;
    width: 100% !important;
}
.horizontal{
    display: flex;
    flex-direction: row !important;
    align-items: center;
    justify-content: space-between !important;
    width: 100% !important;
}
.horizontal p{
    width: 95%;
}
.big_pop{
    width: 70%;
}
.politic p {
    font-size: 14px;
}
.block_header_text{
    font-size: 48px;
    font-weight: bold;
    margin: 0;
}
.block_reg_text{
    font-size: 16px;
    margin: 0;
}
.ref_prog{
    align-items: flex-start !important;
    width: auto !important;
}
.ref_prog span{
    font-size: 20px;
    font-weight: 600;
}
#preloader_block{
    align-items: center !important;
    text-align: center;
}

.img_back_block{
    background-image: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)),url(../img/background.jpg);
    max-width: 100%;
    max-height: 300px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    padding: 40px 0;
    margin: 0 0 20px 0;
    border: 1px solid #1E1E1E;
}
.img_back_block p{
    margin:10px;
    text-align: center;
}
.prices{
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: center;
    max-width: 100%;

    margin-bottom: 20px;

}

.price_box{
    max-width: 30%;
    width: 300px;
    background: #2E2E2E;
    padding: 20px;
    margin: 0 10px;
    border-radius: 10px;
    border: 1px solid #9eff0096;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: flex-start;
    align-items: flex-start;
}
.price_box p{
    margin: 0;
}
.tarifPrice{
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 10px;
}
.price_box button{
    margin: 0 auto;
}
.promt_box{
    width: 100%;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
}
.cost_box{
    width: 35%;
    text-align: right;
}
.promt_box_button{
    width: 60%;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
}
.green_list{
    list-style: none;
    color: #9EFF00;
    padding-left:10px;
    margin-top: 5px;
}
.green_list i {
    color: #9EFF00;
    margin-right: 5px;
    font-size: 20px;
    width: 20px;
    text-align: center;
}
.green_list li{
    color: #E6E6E6;
    margin: 10px 0

}
.heder_text_green{
    margin: 0;
    color: #9eff00;
    font-size: 24px;
    font-weight: bold;
}
.news_block{
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
    max-width: 100%;
    flex-wrap: wrap;
    margin-bottom: 20px;
}
.news_item{
    width: 49%;
    border: 1px solid #1e1e1e;
}
.video_block{
    padding: 20px;
    text-align: center;

}
.news_header_text{
    font-size: 20px;
    color: #E6E6E6;
}
.news_reg_text{
    font-size: 16px;
    color: #98989A;
}
.news_item p{
    margin: 0;
    padding: 5px 20px;
}
.mobile_nav{
    display: none !important;
}
#close_menu{
    display: none;
}
.mobile_user{
    display:none;
}
.user_data{
    display: block;
}
.user_data p{
    margin: 0;
}
.user_profile{
    display: block;
}
.user_balace{
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    width: 100%;
    margin-bottom: 10px;
}
.user_balace i{
    color: #9EFF00;
    margin-right: 5px;
}
.user_balace p{
    font-size: 18px;
    margin-right: 5px;
}
.user_balace button{
    margin-right: 10px;
}
.user_data i{
    color: #9eff00;
    text-align: left;
    margin-right: 10px;
}
.news_data{
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
    height: 110px;
    overflow: hidden;
}
.news_data a{
    margin-right: 20px;
}
.contacts_block{
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
}
.contact_form{
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-top: 20px;
}
.checkbox-custom {
    width: 20px; /* или любой нужный размер */
    height: 20px;
    border: 1px solid #9eff00; /* зеленая граница */
    border-radius: 5px; /* скругление углов */
    background: #242424; /* темный фон */
    appearance: none; /* убирает стандартный стиль */
    outline: none; /* убирает обводку при фокусе */
    cursor: pointer;
    transition: background 0.2s, border-color 0.2s;
}

/* Стиль для отмеченного чекбокса */
.checkbox-custom:checked {
    background: #9eff00; /* зеленый фон при выборе */
    border-color: #9eff00;
}

/* Стиль для галочки (можно заменить на кастомную) */
.checkbox-custom:checked::before {
    content: "";
    display: block;
    color: #242424;
    text-align: left;
    line-height: 0px;
    font-size: 20px;
}
.inline_block_left{
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
}
.inline_block_left input {
    margin-right: 10px;
}
.gen_control{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    width: 100%;
}
.gen_control button{
    width: 250px;
    margin-right: 10px;
}
.tableBlock{
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.tableRow{
    width: 100%;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
}
.tableCol{
    width: 33%;
    display: block;
    padding: 10px 15px;
    border: 1px solid #1e1e1e;
}
.tableCol p {
    margin: 0;
}
.gen_buttons{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
}
.headerBlock{
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    margin: 70px 0;
}
.gif_block{
    padding: 20px;
}
.gif_block img{
    width: 100%;
}
.button_block{
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content:space-between;

}
.imgButton {
    width: 130px;
    height: 60px;
    margin: 0 5px;
    border-radius: 5px;
}
.imgButton:hover{
    border: 1px solid #9eff00;
}
.cart{
   // border: 1px solid #00b456;
}
.sbp{
    background-image: url(../img/sbp4.webp);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}
.cart{
    background-image: url(../img/mir3.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}
.imgButton img{
    width: 100%;
}
.selected{
    width: 150px;
    height: 70px;
    border: 2px solid #9eff00;
}
.reqBox{
    width: 100%;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
}
.headerLogoText{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    height: 60px;
}
.headerLogoText p{
    margin: 0;
}
@media (max-width: 1595px) {
    header{
        padding: 0 20px;
    }
    .footer_block{
        padding: 0 20px;
    }
    .footer_block_bottom{
        padding: 0 20px;
    }
    .content{
        padding: 0 20px;
    }
}
@media (min-width: 980px) and (max-width:1246px) {
    .desktop_nav a{
        font-size: 14px;
        padding: 15px 5px;
    }
}
@media (max-width: 980px) {
    .desktop_nav{
        overflow-y: hidden;
        display: none;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: #242424c7;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        z-index: 9999;
    }
    .mobile_nav{
        display: block !important;
        cursor: pointer;
        color: #E6E6E6;
        font-size: 30px !important;
    }
}

@media (max-width: 767px) {
    .promt_box{
        flex-direction: column;
    }
    .promt_box_button{
        width: 100%;
        flex-direction: column;
    }
    .promt_box_button button{
        margin-bottom: 10px;
    }
    .cost_box{
        width: 100%;
        text-align: center;
    }
    .pop_up_box{
        width: 80%;
        overflow-y: auto ;
    }
    .contact_box{
        width: 180px;
        text-align: center;
    }
    .contacts_line{
        flex-direction: column;
        justify-content: space-between;
        height: 220px;
    }
    .gen_buttons{
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        width: 100%;

    }
    .gen_control{
        border: 1px solid #1e1e1e;
        width: 45%;
        flex-direction: column;
        height: 220px;
        border: 1px solid #1e1e1e;
        padding: 10px;
    }
    .gen_control button{
        width: 100%;
    }
    .sw_buttons{
        border: 1px solid #1e1e1e;
        padding: 10px;
        width: 45%;
        flex-direction: column;
        justify-content: space-between;
        height: 220px;
        margin: 0;
    }
    .sw_buttons button{
        width: 100%;
    }
    .video_set p{
        width: 45%;


    }

    .med_box{
        width: 100% !important;
    }
    .loader{
        width: 50px;
        height: 50px;
    }
    .user_data{
       display: none;
    }
    .mobile_user{
        display:block;
    }

    .news_block{
        flex-direction: column;
    }
    .news_item{
        width: 100%;
    }
    .prices{
        flex-direction: column;
        align-items: center;
    }
    .price_box{
        max-width: 100%;

        margin: 10px 0;
    }
    .generator_block{
        flex-direction: column;
    }
    .left_gen_block{
        width: 100%;
    }
    .right_gen_block{
        width: 100%;
    }
    .desktop_nav{
        overflow-y: hidden;
        display: none;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: #242424c7;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        z-index: 9999;
    }
    #close_menu{
        display: block;
    }
    .desktop_nav a{
        font-size: 24px;
    }
    .footer_block_bottom{
        flex-direction: column;
        margin: 10px 0 0 0;
        text-align: center;
    }
    .social_footer p{
        display: none;
    }
    .banner h2{
        font-size: 40px;
    }
}