:root {
    --background-button: color-mix(in srgb, var(--background-main) 75%, rgb(0, 0, 0));
    --background-buttonShade: color-mix(in srgb, var(--background-main) 60%, rgb(0, 0, 0));
    --background-button-DT: color-mix(in srgb, var(--background-main-DT) 78%, rgb(255, 255, 255));
    --background-buttonShade-DT: color-mix(in srgb, var(--background-main-DT) 68%, rgb(255, 255, 255));

    --background-buttonAlert: #cc4848;
    --background-buttonAlertShade: #b32b2b;
    --background-buttonAlert-DT: #cc4848;
    --background-buttonAlertShade-DT: #b32b2b;
}
 

.label {
    margin-bottom: 12px;
}

INPUT[type="text"], INPUT[type="password"], INPUT[type="email"], SELECT, TEXTAREA {
  font-size: 18px;
  padding: 12px;
  border: 1px solid rgba(127, 127, 127, 0.34);
  box-sizing: content-box;
  border-radius: 4px;
  transition: all 0.2s linear;	
  outline: none;
  width: 100%;
  box-sizing: border-box;
  background-color: #fff;
  color: var(--color-black);
}



/* Кнопки */
BUTTON, INPUT[type="submit"], .button {
    background: var(--background-button);
    border: none;
    color: var(--color-white);
    padding: 10px;
    font-weight: 700;
    cursor: pointer;
    transition: 0.5s;
    border-radius: 4px;
    font-size: 13px;
    text-decoration: none;
    display: inline-block;
    box-sizing: border-box;
    text-align: center;
}
BUTTON, INPUT[type="submit"], .button:hover {
    background: var(--background-buttonShade);
}
.button-big {
    padding: 18px 40px;
    font-size: 18px;
    font-weight: normal;
}
.button-alert {background-color: var(--background-buttonAlert);}
.button-alert:hover {background-color: var(--background-buttonAlertShade);}



.buttonTabs {
    flex: 1;
    padding: 12px 6px;
    text-align: center;
    cursor: pointer;
    font-size: 12px;
    background-color: var(--background-block);
    color: var(--color-gray);
    border-radius: 8px;
    border: 1px solid #80808087;
}
.buttonTabs:hover {
    background-color: var(--background-main);
    color: var(--color-white);
}
.buttonTabs[data-status="active"] {
    background-color: var(--background-main);
    color: var(--color-white);
}





.buttonSend {
    background-color: var(--background-main);
    border-radius: 6px;
    cursor: pointer;
    background-image: url('/public/img/site/buttonSend.png');
    background-size: 24px;
    background-repeat: no-repeat;
    background-position: center;
    width: 50px;
}
.buttonSend:hover {background-color: var(--background-mainShade);}








/* checkbox & radio*/
.checkbox, 
.radio {cursor: pointer;}

.checkbox > INPUT, 
.radio > INPUT {display: none;}

.checkbox > SPAN, 
.radio > SPAN {display: inline-block; vertical-align: middle;}

.checkbox:hover > INPUT + SPAN,
.radio:hover > INPUT + SPAN {background-color: #dadada;}

.checkbox > INPUT + SPAN {
    box-sizing: border-box;
    height: 16px;
    width: 16px;
    background-color: #fff;
    border: 1px solid #747474;
    border-radius: 4px;
    transition: all 0.3s;
}

.checkbox > INPUT:checked + SPAN {
    background-color: var(--background-main);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z'/%3E%3C/svg%3E");
}

.radio > INPUT + SPAN {
    box-sizing: border-box;
    height: 14px;
    width: 14px;
    background-color: #fff;
    border: 1px solid #747474;
    border-radius: 20px;
    transition: all 0.2s;
}
.radio > INPUT:checked + SPAN {
    background-color: var(--background-main);
}





/*/////////////////////////////////*/
/*////////// ТЁМНАЯ ТЕМА //////////*/
/*/////////////////////////////////*/
body.dark-theme BUTTON, 
body.dark-theme INPUT[type="submit"], 
body.dark-theme .button {background: var(--background-button-DT);}

body.dark-theme BUTTON:hover, 
body.dark-theme INPUT[type="submit"]:hover, 
body.dark-theme .button:hover {background: var(--background-buttonShade-DT);}

body.dark-theme .buttonTabs {
    background-color: var(--background-block-DT);
    color: var(--color-grayLight);
}
body.dark-theme .buttonTabs:hover {
    background-color: var(--background-main-DT);
    color: var(--color-white);
}
body.dark-theme .buttonTabs[data-status="active"] {
    background-color: var(--background-main-DT);
    color: var(--color-white);
}

body.dark-theme .buttonSend {background-color: var(--background-main-DT);}
body.dark-theme .buttonSend:hover {background-color: var(--background-mainShade-DT);}

body.dark-theme .button-alert {background-color: var(--background-buttonAlert-DT);}
body.dark-theme .button-alert:hover {background-color: var(--background-buttonAlertShade-DT);}

body.dark-theme INPUT[type="text"], 
body.dark-theme INPUT[type="password"], 
body.dark-theme INPUT[type="email"], 
body.dark-theme SELECT,
body.dark-theme TEXTAREA {
    background-color: #313131;
    box-shadow: none;
    color: var(--color-white);
}


body.dark-theme .checkbox > INPUT + SPAN,
body.dark-theme .radio > INPUT + SPAN {background-color: #313131; border: 1px solid #fff;}

body.dark-theme .checkbox:hover > INPUT + SPAN, 
body.dark-theme .radio:hover > INPUT + SPAN {background-color: #1b1b1b;}

body.dark-theme .checkbox > INPUT:checked + SPAN,
body.dark-theme .radio > INPUT:checked + SPAN {background-color: var(--background-main);}



/*/////////////////////////////////*/
/*////////// АДАПТИВНОСТЬ //////////*/
/*/////////////////////////////////*/
@media screen and (max-width: 640px) {
    INPUT[type="text"], INPUT[type="password"], INPUT[type="email"], SELECT, TEXTAREA {padding: 10px;}
    .button-big {padding: 16px 36px;font-size: 17px;}
    .buttonTabs {padding: 10px 5px;}
    .buttonSend {background-size: 22px;}
}

@media screen and (max-width: 480px) {
    INPUT[type="text"], INPUT[type="password"], INPUT[type="email"], SELECT, TEXTAREA {padding: 8px;}
    BUTTON, INPUT[type="submit"], .button {padding: 8px;}
    .button-big {padding: 14px 32px;font-size: 16px;}
    .buttonTabs {padding: 8px 4px;}
    .buttonSend {background-size: 20px;}
}