:root {
    --main: #ea385c;
    --main-dark: #d13252;
    --dark: #212529;
    --gray: #f4f4f4;
    --white: #fff;
}
.mvab-register-form {
    padding: 20px;
    border: 1px solid #dedede;
    border-radius: 8px;
    max-width: 400px;
}

.mvab-register-form input {
    display: block;
    width: 100%;
    margin-bottom: 12px;
    padding: 10px;
    border: 1px solid #bbb;
    border-radius: 4px;
}

.mvab-register-form button {
    padding: 12px 18px;
    background: #0073aa;
    color: #fff;
    border: none;
    border-radius: 4px;
    cursor: pointer;
}

.mvab-register-form button:hover {
    background: #005d8b;
}
.mvab-register-widget{
    font-family: "Roboto", sans-serif;
    border-radius: 20px;
    background: linear-gradient(225deg, #ea385c 0%, #d13252 100%);
    padding: 10px;
}
.mvab-register-widget .mvab-top-content{
    
}
.mvab-register-widget .mvab-top-picture{
    padding-top: 20px;
    width: 100%;
    height: 140px;
    border-radius: 20px;
}
.mvab-register-widget .mvab-bottom-content{
    padding: 20px;
}
.mvab-register-widget .mvab-title{
    font-weight: 700;
    font-size: 30px;
    line-height: 113%;
    margin: 0;
    color: var(--white);
    padding-bottom: 15px;
    border-bottom: 1px #ffffff33 solid;
}

.mvab-register-widget .columns {
    display: flex;
    justify-content: space-between;
    margin: 15px 0 12px;
    gap: 20px;
}

.mvab-register-widget .columns>div{
    width: 150px;
}

.mvab-register-widget .columns .title {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 16px;
    line-height: 125%;
    color: var(--white);
    margin-bottom: 10px;
}

.mvab-register-widget .custom-radio {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 10px;
    cursor: pointer;
    position: relative;
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 14px;
    line-height: 143%;
    color: var(--white);
}

.mvab-register-widget .custom-radio input {
    display: none;
}

.mvab-register-widget .checkmark {
    width: 20px;
    height: 20px;
    border-radius: 5px;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 16px;
    color: #e4306d;
    transition: 0.15s;
    background: var(--white);
}

/* коли radio вибраний — показуємо галочку */
.mvab-register-widget .custom-radio input:checked + .checkmark::after {
    content: "";
    background: url(img/check.svg)center no-repeat;
    width: 12px;
    height: 10px;
    position: absolute;
}

/* фон стає білим при checked */
.mvab-register-widget .custom-radio input:checked + .checkmark {
    background: white;
}

.mvab-register-widget .input-wrap {
    position: relative;
    margin-bottom: 10px;
}
.mvab-register-widget .input-wrap.error{
    color: var(--main);
}
/*.mvab-register-widget .input-wrap input {
    width: 100%;
    padding: 12px 45px 12px 12px;
    border-radius: 8px;
    border: none;
    font-size: 16px;
}*/

/* Іконки email + пасс */
.mvab-register-widget .input-wrap .icon {
    position: absolute;
    right: 20px;
    top: 24px;
    width: 20px;
    height: 20px;
    transform: translateY(-50%);
    background: url(img/mail.svg)center no-repeat;
    cursor: pointer;
    color: red;
}
.mvab-register-widget .input-wrap .icon_pass {
    background: url(img/key.svg)center no-repeat;
}

/* Error */
.mvab-register-widget .input-wrap.error input {
/*    border: 2px solid #ffaaaa;*/
}

.mvab-register-widget .error-text {
    color: #ffd3d3;
    font-size: 12px;
    margin-top: 4px;
}

/* -------- DATE FIELD -------- */
.mvab-register-widget .date-field {
    position: relative;
    width: 100%;
}

.mvab-register-widget .mvab-bottom-content input {
    padding: 15px 65px 15px 20px;
    border-radius: 8px;
    border: none;
    border: 0;
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 16px;
    line-height: 125%;
    color: var(--dark);
}
.mvab-register-widget .mvab-bottom-content input:placeholder{
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 16px;
    line-height: 125%;
    color: var(--dark);
}
.mvab-register-widget input:focus-visible{
    outline: none;
}

.mvab-register-widget .date-arrows {
    position: absolute;
    right: 50px;
    top: 0;
    opacity: 0;
    height: 100%;
    transition: 0.2s ease;
    display: flex;
    flex-direction: column;
    justify-content: center;
/*    gap: 2px;*/
}

.mvab-register-widget .date-field:hover .date-arrows,
.mvab-register-widget .date-field input:focus + .date-arrows {
    opacity: 1;
}

.mvab-register-widget .date-arrows div {
    width: 8px;
    height: 8px;
    border-left: 1px solid black;
    border-bottom: 1px solid black;
    cursor: pointer;
    transform-origin: center; /* точка обертання */
    transition: all 0.15s ease; /* плавний ефект hover/active */
}

/* Верхня стрілка — завжди 135° */
.mvab-register-widget .date-arrows div:first-child {
    transform: rotate(135deg);
}

/* Нижня стрілка — завжди -45° */
.mvab-register-widget .date-arrows div:nth-child(2) {
    transform: rotate(-45deg);
}

/* Hover — зміна кольору */
.mvab-register-widget .date-arrows div:hover {
    border-left-color: red;
    border-bottom-color: red;
}

/* Натискання — невеликий ефект «вдавлення» */
.mvab-register-widget .date-arrows div:active {
    transform: scale(0.9) rotate(135deg); /* верхня стрілка */
}

/* Для другої стрілки при натисканні */
.mvab-register-widget .date-arrows div:nth-child(2):active {
    transform: scale(0.9) rotate(-45deg); /* нижня стрілка */
}

/* Іконка календаря окремо від інших */
.mvab-register-widget .date-icon {
    position: absolute;
    right: 20px;
    top: 24px;
    transform: translateY(-50%);
    background: url(img/calendar.svg)center no-repeat;
    cursor: pointer;
    width: 20px;
    height: 20px;
}
.mvab-register-widget .mvab-abenteuer img{
    max-width: 100px;
    height: min-content;
}
.mvab-register-widget .mvab-abenteuer{
    display: flex;
    gap: 10px;
    align-items: center;
    padding: 15px 0;
    border-bottom: 1px #ffffff33 solid;
}
.mvab-register-widget .mvab-abenteuer p{
    font-family: var(--font-family);
     font-weight: 100; 
    font-size: 13px;
    line-height: 138%;
    color: var(--white);
    margin: 0;
}
.mvab-register-widget .mvab-abenteuer strong{
     font-weight: 700; 
}
.mvab-register-widget .mvab-bottom-content [type="submit"]{
    width: 100%;
    background: var(--dark);
    border-radius: 10px;
    padding: 17px 25px;
    transition: 0.2 all;
    margin-bottom: 15px;
}
/* Hover — зміна кольору або легке підняття */
.mvab-register-widget .mvab-bottom-content [type="submit"]:hover {
/*    transform: scale(0.95);*/
    background:#383c40;
}

/* Active — натискання кнопки */
.mvab-register-widget .mvab-bottom-content [type="submit"]:active {
    opacity: 1;
    transform: scale(0.95);
    background:var(--dark);
}
.mvab-register-widget .mvab-bottom-content .bottom_text, .mvab-register-widget .mvab-bottom-content .bottom_text p, .mvab-register-widget .mvab-bottom-content .bottom_text a{
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 12px;
    line-height: 150%;
    color: var(--white);
}
.mvab-register-widget .mvab-bottom-content .bottom_text a{
    text-decoration: underline;
}

#mvab-loading-overlay {
    position: fixed;
    inset: 0;
    z-index: 99999;

    /* Soft romantic gradient */
    background: linear-gradient(
        135deg,
        rgba(255, 214, 224, 0.95),
        rgba(255, 235, 240, 0.95)
    );

    display: flex;
    align-items: center;
    justify-content: center;

    /* Background blur for premium feel */
    backdrop-filter: blur(4px);
}

/* Center card */
.mvab-loader-card {
    background: #fff;
    border-radius: 20px;
    padding: 40px 32px;
    max-width: 360px;
    width: 90%;
    text-align: center;

    box-shadow:
        0 10px 30px rgba(0, 0, 0, 0.08),
        0 0 0 1px rgba(255, 80, 120, 0.05);

    animation: mvab-fade-up 0.4s ease-out;
}

.mvab-loader-text {
    font-size: 18px;
    font-weight: 600;
    color: #c81e5b;
    margin: 12px 0 6px;
}

.mvab-loader-sub {
    font-size: 13px;
    color: #888;
}

/* Spinner */
.mvab-spinner {
    width: 56px;
    height: 56px;
    margin: 0 auto 16px;

    border-radius: 50%;
    border: 4px solid #f3c1d1;
    border-top-color: #e91e63;

    animation: mvab-spin 1s linear infinite;
}

/* Animations */
@keyframes mvab-spin {
    to { transform: rotate(360deg); }
}

@keyframes mvab-fade-up {
    from {
        opacity: 0;
        transform: translateY(10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@media (max-width: 1024px) {
  .elementor-element-c03246f{
        display: flex!important;
        flex-direction: column-reverse!important;
    }
}

@media (max-width: 1024px) {
    .mvab-top-picture {
        display: none !important;
    }
}
