.dmp-subscribe-wrap{
    max-width:900px;
    margin:40px auto;
    padding:30px;
    border:1px solid #ddd;
    border-radius:16px;
    background:#fff;
}

.dmp-subscribe-wrap h2{
    margin-bottom:25px;
}

.dmp-subscribe-wrap input[type=text],
.dmp-subscribe-wrap input[type=email]{
    width:100%;
    padding:12px;
    border:1px solid #ccc;
    border-radius:8px;
}

.dmp-subscribe-wrap label{
    display:block;
    margin-bottom:10px;
}

.dmp-subscribe-section{
    margin:25px 0;
}

.dmp-subscribe-wrap button{
    background:#2271b1;
    color:#fff;
    border:0;
    padding:12px 20px;
    border-radius:8px;
    cursor:pointer;
}

.dmp-subscribe-success{
    background:#e7f7e7;
    color:#156b15;
    padding:12px;
    border-radius:8px;
    margin-bottom:20px;
}

.dmp-subscribe-error{
    background:#ffe7e7;
    color:#a00;
    padding:12px;
    border-radius:8px;
    margin-bottom:20px;
}

.dmp-telegram-connect{
    margin-top:20px;
    padding:20px;
    background:#f6f7f7;
    border-radius:12px;
}

/* ==========================================
   LANGUAGE BUTTONS
========================================== */

.dmp-language-buttons {

    display: flex;

    flex-wrap: wrap;

    gap: 10px;

    margin-top: 10px;
}

.dmp-language-button {

    position: relative;

    cursor: pointer;
}

.dmp-language-button input {

    position: absolute;

    opacity: 0;

    pointer-events: none;
}

.dmp-language-button span {

    display: inline-block;

    padding: 10px 16px;

    border: 1px solid #d0d7de;

    border-radius: 8px;

    background: #ffffff;

    color: #333;

    font-size: 14px;

    font-weight: 500;

    transition: all 0.2s ease;
}

/* Selected */

.dmp-language-button input:checked + span {

    background: #2271b1;

    border-color: #2271b1;

    color: #ffffff;

    font-weight: 600;
}

.dmp-language-button input:checked + span::before {

    content: "✓ ";

    font-weight: 700;
}

/* Hover */

.dmp-language-button:hover span {

    border-color: #2271b1;
}

/* Mobile */

@media (max-width: 767px) {

    .dmp-language-button {

        flex: 1 1 calc(50% - 10px);
    }

    .dmp-language-button span {

        width: 100%;

        text-align: center;

        box-sizing: border-box;
    }
}

/* ==========================================
   LANGUAGE ACTION BUTTONS
========================================== */

.dmp-language-actions {

    display:flex;

    flex-wrap:wrap;

    gap:10px;

    margin-bottom:12px;
}

.dmp-select-all,
.dmp-clear-all {

    border:none;

    cursor:pointer;

    padding:8px 14px;

    border-radius:6px;

    font-size:13px;

    font-weight:600;

    transition:all .2s ease;
}

.dmp-select-all {

    background:#2271b1;

    color:#fff;
}

.dmp-select-all:hover {

    opacity:.9;
}

.dmp-clear-all {

    background:#f0f0f1;

    color:#333;
}

.dmp-clear-all:hover {

    background:#e5e5e5;
}