:root {
    --backgroud: #333333;
    --sigment_color: #444444;
    --akcent: #FFBE1B;
}

::-webkit-calendar-picker-indicator {
    filter: invert(1)
}

.mt-50 {
    margin-top: 50px;
}

.w-100 {
    width: 100%;
}

.w-50 {
    width: 50%;
}

.w-32 {
    width: 32%;
}

@keyframes open_down {
    from {
        margin-top: 50px;
        opacity: 0;
    }

    to {
        margin-top: 0px;
        opacity: 1;
    }

}
@keyframes open_right {
    from {
        margin-right: -50px;
        opacity: 0;
    }

    to {
        margin-right: 0px;
        opacity: 1;
    }

}




body {
    padding: 0px;
    margin: 0px;
    /* background-color: var(--backgroud); */
    background-color: #222222;
    min-height: 100vh;
    font-family: Arial, Helvetica, sans-serif;
}

main {
    width: 100%;
    height: 100svh;
}

/* log in page start */

.login_container {
    width: 100%;
    height: 100vh;
    display: flex;
    flex-direction: column;
    /* justify-content: center; */
    align-items: center;
}

.login_container form {
    width: 60%;
    display: flex;
    flex-direction: column;
}

.registration_container .logotype {
    align-self: flex-start;
    padding: 0 3%;
    margin-bottom: 50px;
}

.logotype p {
    font-size: 64px;
    font-weight: 500;
    color: white;
}

.logotype p span {
    color: var(--akcent);
    font-weight: bold;
}

.input_group {
    display: flex;
    flex-direction: column;
    gap: 35px;
}

.input_group fieldset {
    height: 45px;
    padding: 0 15px 20px;
    border-radius: 10px;
    border: 3px solid var(--sigment_color);
}

.input_group input,
.input_group select {
    background: none;
    border: none;
    width: 100%;
    height: 40px;
    font-size: 18px;
    color: white;
    font-weight: 200;
    transition: all 0.3s ease;
}

.input_group input,
.input_group select:focus {
    outline: none;
    border-color: var(--akcent);
}

.input_group legend {
    color: white;
    font-size: 18px;
}

.btn {
    background-color: var(--backgroud);
    color: var(--akcent);
    border-radius: 10px;
    width: 100%;
    height: 60px;
    border: 1px solid var(--akcent);
    font-size: 18px;
    padding: 10px 50px 10px 50px;
    cursor: pointer;
    transition: all 0.3s ease;
}

.btn:hover {
    background-color: var(--akcent);
    color: var(--backgroud);
}

.link_create_account {
    color: white;
    font-size: 14px;
    font-weight: 200;
    text-decoration: none;
    text-align: center;
    margin-top: 25px;
    cursor: default;
}

.link_create_account span {
    color: var(--akcent);
    border-bottom: 1px solid var(--akcent);
    cursor: pointer;
}

@media (max-width: 768px) {

    .login_container fieldset {
        height: 40px;
    }
}

@media (max-width: 480px) {
    .logotype p {
        font-size: 48px;
    }

    .input_group input {
        height: 20px;
    }

    .btn {
        height: 45px;
    }


}

/* log in page end */

/* registration page start */
.registration_container {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.registration_container form {
    width: 95%;
    display: flex;
    gap: 50px;
    margin-bottom: 100px;
}

.con {
    text-align: center;
}

.registration_container .input_group input[type='checkbox'] {
    width: 20px;
    appearance: none;
    -webkit-appearance: none;
    width: 28px;
    height: 28px;
    border-radius: 6px;
    border: 2px solid var(--sigment_color);
    background-color: var(--backgroud);
    display: grid;
    place-items: center;
    cursor: pointer;
    transition: all .2s ease;
}

input[type="checkbox"]:before {
    content: "";
    width: 14px;
    height: 14px;
    transform: scale(0);
    transition: 0.2s ease;
    background-image: url("data:image/svg+xml;utf8,\<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' stroke='black' stroke-width='4' fill='none' stroke-linecap='round' stroke-linejoin='round'>\<polyline points='20 6 9 17 4 12'/>\</svg>");
    background-size: contain;
    background-repeat: no-repeat;
}

.registration_container .input_group input[type='checkbox']:checked {
    background-color: white;
    border-color: white;
}

.registration_container .input_group input[type='checkbox']:checked::before {
    transform: scale(1);
}

.title_busy_day p {
    font-size: 24px;
    color: white;
}

.busy_day_list {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.hhh {
    display: flex;
    align-items: center;
    gap: 20px;
}

.busy_day_list_element {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 25px;
    color: white;
    font-size: 18px;
    height: 56px;
}

.personal_data {
    display: flex;
    align-items: center;
    gap: 10px;
    color: white;
    font-size: 14px;
}

.input_group .personal_data input[type='checkbox'] {
    appearance: none;
    -webkit-appearance: none;
    width: 28px;
    height: 28px;
    border-radius: 6px;
    border: 1px solid var(--akcent);
    background-color: var(--backgroud);
    display: grid;
    place-items: center;
    cursor: pointer;
    transition: all .2s ease;
}

.input_group .personal_data input[type="checkbox"]::before {
    content: "";
    width: 14px;
    height: 14px;
    transform: scale(0);
    transition: 0.2s ease;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' stroke='black' stroke-width='4' fill='none' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>");
    background-size: contain;
    background-repeat: no-repeat;
}

.input_group .personal_data input[type='checkbox']:checked {
    background-color: var(--akcent);
    border-color: var(--akcent);
}

.input_group .personal_data input[type='checkbox']:checked::before {
    transform: scale(1);
}

.busy_day_list_element {
    position: relative;
    overflow: hidden;
}

.busy_day_list_element input[type="text"] {
    display: block;
    width: 350px;
    height: 35px;
    padding: 8px;
    margin-top: 5px;
    transform: translateX(-100%);
    opacity: 0;
    transition: all 0.5s ease-in-out;
    position: absolute;
    left: 0;
}

.busy_day_list_element input[type="text"].visible {
    transform: translateX(0);
    opacity: 1;
    position: relative;
}

@media (max-width: 580px) {
    .logotype p {
        font-size: 48px;
    }

    .registration_container form {
        flex-direction: column;
        align-items: center;
    }

    .registration_container form .input_group {
        width: 90%;
    }
}

/* registration page end */

/* add graphic page start */

.add_work {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.add_work form {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.button_group {
    width: 100%;
    display: flex;
    justify-content: space-between;
}

.button_group .btn {
    width: 45%;
}

.button_group .add_form {
    background-color: white;
    color: var(--backgroud);
    border-radius: 10px;
    width: 30%;
    height: 60px;
    border: 1px solid white;
    font-size: 18px;
    padding: 10px 50px 10px 50px;
    cursor: pointer;
    transition: all 0.3s ease;
    text-align: center;
}

.button_group .add_form:hover {
    background-color: var(--backgroud);
    color: white;
}

.add_work .input_group {
    margin-bottom: 65px;
}

@media (max-width: 880px) {
    .button_group {
        width: 100%;
        display: flex;
        flex-direction: column;
        gap: 20px;
    }

    .button_group .btn {
        width: 100%;
    }

}

/* add graphic page end */

/* calendar(home) page start */

.calendar_page {
    width: 100%;
    /* height: 100vh; */
    background-color: var(--backgroud);
    display: flex;
}

main aside {
    width: 80px;
    height: 450px;
    background-color: #222222;
    border-radius: 0 0 50px 0;
    position: fixed;
    z-index: 999;
}

aside nav ul li {
    list-style-type: none;
}


aside nav {
    width: 100%;
    height: 100%;
}

aside nav ul {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    gap: 35px;
    justify-content: center;
    align-items: center;
    padding: 0;
    margin: 0;
}

aside nav ul li a {
    font-size: 24px;
    color: var(--sigment_color);
    transition: all 0.3s ease;
    padding: 10px 0;
}

aside nav ul li {
    transition: all 0.3s ease;
}

aside nav ul li:hover {
    transform: translateY(-2px) scale(1.02);
}

aside nav ul li a:hover {
    color: var(--akcent);
    transform: translateY(-2px) scale(1.02);
}

.active {
    color: var(--akcent);
    border-bottom: 1px solid var(--akcent);
}

.calendar {
    margin-left: 80px;
    height: 100%;
    background-color: var(--backgroud);
    animation-duration: 1s;
    animation-name: open_right;

}



.tasks {
    display: flex;
    flex-direction: column;
    align-items: center;
    height: 100vh;
    background-color: var(--sigment_color);
    /* animation-duration: 2s;
    animation-name: open_down; */


}

.calendar_head {
    width: 100%;
    height: 40px;
    display: flex;
    justify-content: center;
    gap: 30px;
    align-items: center;
    color: white;
    font-size: 24px;
    padding: 50px 0;
}

.calendar_head p {
    margin: 0;
}

.calendar_head button {
    border: 0px;
    background: none;
    transition: 0.3s ease;
    color: white;
}

.back{
    rotate: -90deg;
}
.next{
    rotate: 90deg;
}

.back:hover {
    transform: translateX(2px) scale(1.02);
}
.next:hover {
    transform: translateX(-2px) scale(1.02);
}

.week_days {
    color: white;
    width: 100%;
    display: flex;
    gap: 8%;
    justify-content: center;
    border-bottom: 1px solid white;
}

.w-50 .week_days {
    gap: 5.5%;
}

.calendar_table {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    /* padding: 20px 20px; */

}


.calendar_table table {
    border-collapse: separate;
    border-spacing: 12px;
    /* расстояние между ячейками как на картинке */
}

.calendar_table table td {
    width: 40px;
    height: 40px;
    background-color: var(--sigment_color);
    /* как серые квадраты в примере */
    border-radius: 10px;
    color: white;
    font-size: 18px;
    text-align: center;
    vertical-align: middle;
    font-weight: 500;
    transition: all 0.2s ease;
    cursor: pointer;
}

.calendar_table table td:hover {
    transform: translateY(-2px) scale(1.02);
    background-color: #545454;
}



/* маленький кружок-уведомление как у «4.» */
.calendar_table .day-orange::after {
    content: "1";
    position: absolute;
    top: -6px;
    right: -6px;
    width: 22px;
    height: 22px;
    background-color: #FFBE1B;
    color: black;
    border-radius: 50%;
    font-size: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
}

.clue {
    width: 100%;
    padding: 10% 6%;
}

.clue p {
    font-size: 24px;
    color: white;
    margin: 0;
}

.ttle_clue {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 50px;
}
.ttle_clue  {
   color: white
}
.black_arrow{
    display: none;
}
.ttle_clue img {
    rotate: 90deg;
}

.clue ul {
    display: flex;
    flex-direction: column;
    gap: 25px;
    padding: 0;
}

.clue ul .ul_item {
    display: flex;
    align-items: center;
    gap: 25px;
}

.circle {
    width: 15px;
    height: 15px;
    border: 1px solid white;
    border-radius: 50%;
    background-color: red;
}

.clue ul .ul_item li {
    color: white;
    font-size: 18px;
    list-style-type: none;
}

.clue ul .ul_item li::before {
    content: "—";
    margin-right: 10px;
    left: 0;
}

.task_title {
    width: 70%;
    font-size: 24px;
    color: white;
    text-align: center;
    padding: 30px 0;
    border-bottom: 1px solid white;
}

.tasks_list {
    width: 100%;
    padding: 50px 45px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.task {
    display: flex;
    gap: 20px;
    width: 100%;
    align-items: center;
    color: white;
    font-size: 18px;
    cursor: pointer;
}

.task p {
    margin: 0;
}

/* скрываем стандартный чекбокс */
.task input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

/* кастомный круг */
.task .ircle {
    width: 20px;
    height: 20px;
    border: 2px solid var(--akcent);
    border-radius: 50%;
    transition: .2s;
}

/* текст задачи */
.task .text {
    font-size: 16px;
    color: #ffffff;
    transition: .2s;
}

.task input:checked+.ircle {
    background: var(--akcent);
    border-color: var(--akcent);
}

.task input:checked~.text {
    text-decoration: line-through;
    color: var(--akcent);
}

.add_task {
    width: 160px;
    height: 39px;
    background-color: var(--akcent);
    font-size: 16px;
    color: var(--sigment_color);
    padding: 0;
    margin-top: 60px;
    display: none;
}

.add_task:hover {
    background-color: var(--sigment_color);
    border: 1px solid var(--akcent);
    color: var(--akcent);
}

.add_task:active {
    margin-top: 62px;
}

.create_task {
    position: fixed;
    top: 0;
    right: 0;
    width: 32%;
    height: 100vh;
    padding: 30px;
    background: var(--backgroud);
    /* скрыта, но на правильной позиции */
    transition: transform 0.4s ease;
    animation-duration: 2s;
    animation-name: open_right;
}

.create_task.show {
    transform: translateX(100%);
    /* скрыта, но на правильной позиции */
    /* position: fixed; */
}

.create_task_head {
    display: flex;
    width: 100%;
    color: var(--akcent);
    justify-content: space-between;
    align-items: center;
    margin-bottom: 60px;

}

.create_task p {
    margin: 0;
    font-size: 24px;
    text-align: center;
}

.stub {
    height: auto;
}

.create_task_body {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.create_task_head button {
    width: 24px;
    height: 24px;
    background: none;
    color: white;
    border: none;
}

.create_task_body form {
    width: 100%;
}

.create_task_body form textarea {
    width: 100%;
    min-height: 200px;
    height: 260px;
    max-height: 500px;
    background: none;
    border: 1px solid var(--sigment_color);
    border-radius: 10px;
    padding: 15px;
    color: white;
    margin-bottom: 50px;
    transition: all 0.3s ease;
}

.create_task_body form textarea:focus {
    outline: none;
    border-color: var(--akcent);
}

.create_task_body form button {
    background-color: var(--akcent);
    color: var(--backgroud);
    padding: 0;
    height: 42px;
}

.create_task_body form button:hover {
    background-color: var(--backgroud);
    color: var(--akcent);
    border: 1px solid var(--akcent);

}

.create_task_body form button:active {
    margin-top: 1px;
}

@media (max-width: 768px) {
    .calendar_page {
        flex-direction: column;
        align-items: center;
        height: 100%;
    }

    main aside {
        width: 100%;
        height: 65px;
        border-radius: 0;
        z-index: 1000;
    }

    aside nav ul {
        flex-direction: row;

    }

    aside nav ul {
        gap: 65px;
    }

    .calendar {
        margin-left: 0;
        width: 90%;
        order: 3;
        animation-duration: 2s;
        animation-name: open_down;
    }

    .week_days {
        gap: 5%;
    }

    .tasks {
        order: 1;
        width: 100%;
        height: auto;
        margin-top: 65px;
    }

    .w-50 {
        width: 100% !important;
    }

    .create_task {
        position: relative;
        width: 100%;
        order: 2;
        height: auto;
    }

    .create_task.show {
        position: fixed;
    }

    .calendar_table {
        padding: 0;
    }
}

@media (max-width:490px) {
    .week_days {
        gap: 8%;
    }
}

/* home page end */

/* frined page start */

.friends_page {
    width: 100%;
    height: 100vh;
    background-color: var(--backgroud);
}

.friends_page section {
    margin-left: 80px;
    width: 100%-80px;
    height: 100vh;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.search_friend {
    width: 100%;
    height: auto;
    padding: 50px 0;
    display: flex;
    justify-content: center;
}

.search_friend form {
    width: 80%;
    display: flex;
    gap: 20px;
}

.search_friend form input {
    width: 85%;
    border: 1px solid var(--sigment_color);
    background: none;
    height: 45px;
    border-radius: 10px;
    padding: 0 20px;
    color: white;
    transition: all 0.3s ease;
}

.search_friend form input:focus {
    outline: none;
    border-color: var(--akcent);
}

.search_friend form .btn {
    width: 10%;
    height: 45px;
    background-color: var(--akcent);
    color: var(--sigment_color);
    padding: 0;
}

.search_friend form .btn:hover {
    background-color: var(--sigment_color);
    color: var(--akcent);
    border-color: var(--akcent);
}

.friend_list {
    width: 80%;
    display: flex;
    flex-direction: column;
    align-items: start;
}

.friend_info {
    width: 100%;
    justify-content: space-between;
    align-items: center;
    display: flex;
    gap: 10px;
}

.friend_list .title {
    width: 100%;
    font-size: 24px;
    color: white;
    height: 60px;
    border-bottom: 1px solid var(--akcent);
    margin-bottom: 65px;
}

.friend_list .title span {
    color: var(--akcent);
    font-weight: 600;
}

.card_friend {
    display: flex;
    width: 100%;
    align-items: center;
    font-size: 18px;
    color: white;
    width: 100%;
    height: 65px;
    gap: 30px;
    margin-bottom: 25px;
    animation-duration: 2s;
    animation-name: open_down;
}

.card_friend p {
    margin: 0;
    min-width: 80%;
}

.card_friend button {
    text-decoration: none;
    color: white;
    width: 30px;
    height: 30px;
    background-color: #E32424;
    border-radius: 5px;
    text-align: center;
    border: 0;
    transition: all 0.3s ease;
}

.card_friend button:hover {

    background-color: #b31c1c;

}

@media (max-width: 768px) {
    .friends_page section {
        width: 100%;
        height: 100%;
        margin-left: 0;
        padding: 65px 0 0 0;
    }

    .card_friend p {
        min-width: 70%;
    }

    .search_friend form .btn {
        font-size: 14px;
        width: 25%;
    }

    .friends_page{
        height: 100vh;
    }
}

@media (max-width:659px) {
    .card_friend p {
        min-width: 40%;
        font-size: 12px;
    }

    .card_friend img {
        width: 15%;
    }

    .card_friend img {
        width: 15%;
    }
}

/* friiend page end */

/* notification_page start */

.notification_page {
    width: 100%;
    background-color: var(--backgroud);
    height: 100vh;
}

.notification_page section {
    width: 100%;
    /* margin-left: 80px; */
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 50px 15%;
}

.notification_page section .title {
    width: 100%;
    color: white;
    height: 45px;
    border-bottom: 1px solid var(--akcent);
    font-size: 24px;
    margin-bottom: 60px;
}

.notification_card {
    width: 100%;
    display: block;
    margin-bottom: 25px;
    border: 1px solid var(--sigment_color);
    border-radius: 10px;
    cursor: pointer;
    padding: 15px;
    animation-duration: 2s;
    animation-name: open_down;
}

.info {
    width: 100%;
    height: auto;
}

.info .descrption {
    color: white;
    margin-bottom: 30px;
}

.button_group {
    width: 100%;
    display: flex;
    height: auto;
    justify-content: flex-end;
    gap: 10px;
}

.add_friend {
    border-radius: 5px;
    background-color: #3FC84B;
    color: white;
    border: 1px solid #3FC84B;
    width: 100px;
    height: 35px;
    transition: all 0.3s ease;
}

.remove_friend {
    border: 1px solid #DC2727;
    border-radius: 5px;
    background: none;
    width: 100px;
    height: 35px;
    color: #DC2727;
    transition: all 0.3s ease;
}

.ready {
    border-radius: 5px;
    background-color: var(--akcent);
    color: var(--sigment_color);
    border: 1px solid var(--akcent);
    width: 210px;
    height: 35px;
    transition: all 0.3s ease;
}

.ready:hover {
    background-color: var(--backgroud);
    color: var(--akcent);
}

.add_friend:hover {
    background-color: #30a139;
    border-color: #30a139;
}

.remove_friend:hover {
    background-color: #DC2727;
    color: white;
}

.notification_card .title_card {
    font-size: 18px;
    color: var(--akcent);
    margin-bottom: 30px;
}

.close_notification {
    background: none;
}





@media (max-width: 768px) {
    .notification_page section .title {
        margin-top: 80px;
    }

    .descrption {
        font-size: 10px;
    }

    .notification_card .button_group {
        flex-direction: row;
    }

    .add_friend {
        font-size: 10px;
        width: 65px;
        height: 30px;
    }

    .remove_friend {
        font-size: 10px;
        width: 65px;
        height: 30px;
    }

    .ready {
        font-size: 10px;
        width: 100px;
        height: 30px;
    }

}

/* notification page end */

/* settings page start */

.settings_page {
    width: 100%;
    background-color: var(--backgroud);
    height: 100vh;
}

.settings_page section {
    width: 70%;
    /* margin-left: 80px; */
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 50px 15%;
    background-color: var(--backgroud);
}


.settings_page section .title {
    width: 100%;
    color: white;
    height: 65px;
    border-bottom: 1px solid var(--akcent);
    font-size: 24px;
    margin-bottom: 40px;
    display: flex;
   justify-content: space-between;
   align-items: center;
}

.profile_info form {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 35px;
}

.profile {
    width: 100%;
    height: auto;
    display: flex;
}

.profile_info {
    width: 68%;
    display: flex;
    flex-direction: column;
    gap: 35px;
    animation-duration: 2s;
    animation-name: open_down;
}

.profile_info form .input_group {
    gap: 30px;
}

.profile_info .button_group {
    width: 100%;
    display: flex;
    justify-content: space-between;
}

.update_graphics {
    border: 1px solid white;
    border-radius: 10px;
    font-size: 18px;
    padding: 10px;
    color: white;
    text-decoration: none;
    font-size: 14px;
    text-align: center;
    transition: all 0.3s ease;
}

.update_graphics:hover {
    background-color: white;
    color: var(--sigment_color);
}

.save {
    background-color: var(--akcent);
    color: var(--sigment_color);
    padding: 10px 50px;
    font-size: 16px;
    border: 1px solid var(--akcent);
    border-radius: 10px;
    transition: all 0.3s ease;
    cursor: pointer;
}

.save:hover {
    background: none;
    color: var(--akcent);
}

.settings_page aside nav ul {
    gap: 41px;
    margin-top: 5px;
}

/* === avatar update (settings) — исправленная версия === */

.avatar_user {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 18px;
}

/* изображение */
.avatar_user img {
    width: 100%;
    max-width: 220px;
    height: 220px;
    border-radius: 50%;
    border: 3px solid var(--sigment_color);
    background-color: #1e1e1e;
    object-fit: cover;
    display: block;
}

.avatar_user form {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
}

.avatar_user form .btn {
    width: 70%;
    font-size: 14px;
}

/* #updateAvatar{
    display: none;
} */

/* скрываем стандартный file input, но оставляем доступным */
.avatar_user input[type="file"] {
    position: absolute;
    left: -9999px;
    width: 1px;
    height: 1px;
    overflow: hidden;
    opacity: 0;
    pointer-events: none;
}

/* кнопка-лейбл в стиле проекта */
.avatar_btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 90%;
    max-width: 220px;
    height: 35px;
    border-radius: 10px;
    background-color: var(--backgroud);
    /* border: 1px solid var(--akcent); */
    color: var(--akcent);
    font-size: 16px;
    padding: 8px 16px;
    cursor: pointer;
    transition: all 0.22s ease;
    text-align: center;
    user-select: none;
    text-overflow: ellipsis;
}

/* hover / active — в стиле проекта */
.avatar_btn:hover {
    border: 1px solid var(--akcent);
    color: var(--akcent);
    transform: translateY(-2px) scale(1.01);
}

.avatar_btn:active {
    transform: translateY(1px);
}

.avatar_filename {
    color: var(--akcent);
    white-space: normal;
    /* Разрешаем перенос */
    word-wrap: break-word;
    /* Перенос длинных слов */
    word-break: break-all;
    /* Разрыв длинных слов */
    max-width: 200px;
}

@media (max-width: 768px) {
    .settings_page section .title {
        margin-top: 80px;
    }

    .profile {
        flex-direction: column;
        align-items: center;
        gap: 50px;
    }

    .profile_info {
        width: 100%;
    }

    .settings_page aside nav ul {
        gap: 65px;
        margin-top: 5px;
    }

    .settings_page aside nav ul li a {
        padding: 5px 0;
    }

    .avatar_user img {
        max-width: 180px;
        height: 180px;
    }

    .avatar_btn,
    .avatar_meta {
        max-width: 180px;
        height: 40px;
    }

    .avatar_meta {
        gap: 6px;
    }

    .avatar_user {
        width: 100%;
    }
}
/* =========================
   LIGHT THEME FIXES
   ========================= */

/* Правильное применение светлой темы через атрибут data-theme */
html[data-theme="light"] {
    /* Обновляем переменные для светлой темы */
    --backgroud: #f5f6f8;
    --sigment_color: #e4e6eb;
    --akcent: #ffbe1b;
    --text-main: #1e1e1e;
    --text-secondary: #555555;
    --border-color: #d0d0d0;
}

/* Основные стили для светлой темы */
html[data-theme="light"] body {
    background-color: var(--backgroud);
    color: var(--text-main);
}

/* === Исправление инвертированного календаря === */
html[data-theme="light"] ::-webkit-calendar-picker-indicator {
    filter: invert(0);
}

/* === Текст === */
html[data-theme="light"] .logotype p,
html[data-theme="light"] .logotype p span,
html[data-theme="light"] .title_busy_day p,
html[data-theme="light"] .clue p,
html[data-theme="light"] .calendar_head,
html[data-theme="light"] .week_days,
html[data-theme="light"] .card_friend p,
html[data-theme="light"] .notification_page section .title,
html[data-theme="light"] .descrption,
html[data-theme="light"] .title_card,
html[data-theme="light"] .busy_day_list_element,
html[data-theme="light"] .personal_data,
html[data-theme="light"] .link_create_account,
html[data-theme="light"] .link_create_account span,
html[data-theme="light"] .clue ul .ul_item li,
html[data-theme="light"] .task .text,
html[data-theme="light"] .friend_list .title,
html[data-theme="light"] .search_friend form input,
html[data-theme="light"] .create_task_head p,
html[data-theme="light"] .create_task_body form textarea {
    color: var(--text-main);
}

/* === Формы и инпуты === */
html[data-theme="light"] .input_group input,
html[data-theme="light"] .input_group select,
html[data-theme="light"] .search_friend form input,
html[data-theme="light"] .create_task_body form textarea {
    color: var(--text-main);
    background-color: transparent;
}

html[data-theme="light"] .input_group legend {
    color: var(--text-main);
}

html[data-theme="light"] .input_group fieldset {
    border-color: var(--border-color);
}

html[data-theme="light"] .input_group input:focus,
html[data-theme="light"] .input_group select:focus,
html[data-theme="light"] .search_friend form input:focus,
html[data-theme="light"] .create_task_body form textarea:focus {
    border-color: var(--akcent);
}

/* === Кнопки === */
html[data-theme="light"] .btn {
    background-color: var(--akcent);
    color: white;
    border-color: var(--akcent);
}

html[data-theme="light"] .btn:hover {
    background-color: none;
    color: var(--akcent);
    border-color: var(--akcent);
}

/* Блоки и контейнеры */
html[data-theme="light"] .login_container,
html[data-theme="light"] .registration_container,
html[data-theme="light"] .add_work,
html[data-theme="light"] .calendar,
html[data-theme="light"] .calendar_table table td,
html[data-theme="light"] .tasks,
html[data-theme="light"] .create_task,
html[data-theme="light"] .notification_card,
html[data-theme="light"] .friends_page,
html[data-theme="light"] .notification_page,
html[data-theme="light"] .settings_page,
html[data-theme="light"] .settings_page section,
html[data-theme="light"] .profile_info {
    background-color: var(--backgroud);
}

/* Календарь */
html[data-theme="light"] .calendar_table table td {
    background-color: white;
    color: var(--text-main);
    border: 1px solid var(--border-color);
}
html[data-theme="light"] .task_title {
    color: var(--text-main);
}
html[data-theme="light"] .tasks {
    background-color: #ededed;
}

html[data-theme="light"] .calendar_table table td:hover {
    background-color: var(--sigment_color);
}

/* Чекбоксы */
html[data-theme="light"] .registration_container .input_group input[type='checkbox'],
html[data-theme="light"] .input_group .personal_data input[type='checkbox'] {
    background-color: white;
    border-color: var(--border-color);
}

/* Боковое меню */
html[data-theme="light"] main aside {
    background-color: white;
}

html[data-theme="light"] aside nav ul li a {
    color: var(--text-secondary);
}

html[data-theme="light"] aside nav ul li a:hover,
html[data-theme="light"] aside nav ul li a.active {
    color: var(--akcent);
}

/* Границы и разделители */
html[data-theme="light"] .week_days,
html[data-theme="light"] .task_title,
html[data-theme="light"] .friend_list .title,
html[data-theme="light"] .notification_page section .title,
html[data-theme="light"] .settings_page section .title {
    border-color: var(--border-color);
}

/* Аватар */
html[data-theme="light"] .avatar_user img {
    border-color: var(--border-color);
}

/* === Дополнительные фиксы === */

/* Задачи */
html[data-theme="light"] .task .circle {
    border-color: var(--text-main);
}

/* Кнопки с акцентом */
html[data-theme="light"] .button_group .add_form {
    background-color: var(--akcent);
    color: var(--backgroud);
    border-color: var(--text-main);
}

html[data-theme="light"] .button_group .add_form:hover {
    background-color: var(--backgroud);
    color: var(--text-main);
}

/* Кнопка добавления задачи */
html[data-theme="light"] .add_task {
    background-color: var(--akcent);
    color: var(--text-main);
}
html[data-theme="light"] .update_graphics {
    border-color: #222222;
    color: #222222;
}
html[data-theme="light"] .update_graphics:hover {
    background-color: #222222;
    border-color: #222222;
    color: #ffffff;
}
html[data-theme="light"] .search_friend form .btn {
    border-color: var(--akcent);
}
html[data-theme="light"] .search_friend form .btn:hover {
    background: none;
    color: var(--akcent);
}
html[data-theme="light"] .calendar_head button {
   color: var(--text-main);
}
html[data-theme="light"] .black_arrow {
   display: block;
}
html[data-theme="light"] .white_arrow {
   display: none;
}
html[data-theme="light"] .settings_page section .title {
   color: var(--text-main);
}

/* === Медиа-запросы для светлой темы === */
@media (max-width: 768px) {
    html[data-theme="light"] main aside {
        background-color: white;
        border-bottom: 1px solid var(--border-color);
    }
}

/* Исправление для переключателя темы */
.theme-toggle {
    top: 20px;
    right: 20px;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: none;
    /* background: var(--akcent); */
    /* color: var(--backgroud); */
    color: var(--akcent);
    border: 2px solid var(--akcent);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    transition: all 0.3s ease;
}

.theme-toggle:hover {
    transform: scale(1.1);
}


/* =========================
   ТЁМНАЯ ТЕМА
   ========================= */

/* Переменные тёмной темы */
html[data-theme="dark"] {
    --backgroud: #0f1115;
    --sigment_color: #1e222b;
    --akcent: #ffbe1b;
    --text-main: #f1f1f1;
    --text-secondary: #9aa0a6;
    --border-color: #2a2f3a;
}

/* Основные стили */
html[data-theme="dark"] body {
    background-color: var(--backgroud);
    color: var(--text-main);
}

/* === Календарь (иконка даты) === */
html[data-theme="dark"] ::-webkit-calendar-picker-indicator {
    filter: invert(1);
}

/* === Текст === */
html[data-theme="dark"] .logotype p,
html[data-theme="dark"] .logotype p span,
html[data-theme="dark"] .title_busy_day p,
html[data-theme="dark"] .clue p,
html[data-theme="dark"] .calendar_head,
html[data-theme="dark"] .week_days,
html[data-theme="dark"] .card_friend p,
html[data-theme="dark"] .notification_page section .title,
html[data-theme="dark"] .descrption,
html[data-theme="dark"] .title_card,
html[data-theme="dark"] .busy_day_list_element,
html[data-theme="dark"] .personal_data,
html[data-theme="dark"] .link_create_account,
html[data-theme="dark"] .link_create_account span,
html[data-theme="dark"] .clue ul .ul_item li,
html[data-theme="dark"] .task .text,
html[data-theme="dark"] .friend_list .title,
html[data-theme="dark"] .search_friend form input,
html[data-theme="dark"] .create_task_head p,
html[data-theme="dark"] .create_task_body form textarea {
    color: var(--text-main);
}

/* === Формы и инпуты === */
html[data-theme="dark"] .input_group input,
html[data-theme="dark"] .input_group select,
html[data-theme="dark"] .search_friend form input,
html[data-theme="dark"] .create_task_body form textarea {
    color: var(--text-main);
    background-color: transparent;
}

html[data-theme="dark"] .input_group legend {
    color: var(--text-secondary);
}

html[data-theme="dark"] .input_group fieldset {
    border-color: var(--border-color);
}

html[data-theme="dark"] .input_group input:focus,
html[data-theme="dark"] .input_group select:focus,
html[data-theme="dark"] .search_friend form input:focus,
html[data-theme="dark"] .create_task_body form textarea:focus {
    border-color: var(--akcent);
}

/* === Кнопки === */
html[data-theme="dark"] .btn {
    background-color: var(--akcent);
    color: #000;
    border-color: var(--akcent);
}

html[data-theme="dark"] .btn:hover {
    background-color: transparent;
    color: var(--akcent);
}

/* === Блоки и контейнеры ===
html[data-theme="dark"] .login_container,
html[data-theme="dark"] .registration_container,
html[data-theme="dark"] .add_work,
html[data-theme="dark"] .calendar,
html[data-theme="dark"] .calendar_table table td,
html[data-theme="dark"] .tasks,
html[data-theme="dark"] .create_task,
html[data-theme="dark"] .notification_card,
html[data-theme="dark"] .friends_page,
html[data-theme="dark"] .notification_page,
html[data-theme="dark"] .settings_page,
html[data-theme="dark"] .settings_page section,
html[data-theme="dark"] .profile_info {
    background-color: var(--sigment_color);
} */

/* === Календарь === */
.calendar_table table td {
    background-color: #161a22;
    color: var(--text-main);
    border: 1px solid var(--border-color);
}

 .tasks {
    background-color: #141822;
}

 .calendar_table table td:hover {
    background-color: var(--sigment_color);
}

 .task_title {
    color: var(--text-main);
}

/* === Чекбоксы === */
 .registration_container .input_group input[type='checkbox'],
 .input_group .personal_data input[type='checkbox'] {
    background-color: #161a22;
    border-color: var(--border-color);
}

/* === Боковое меню === */
 main aside {
    background-color: #161a22;
}

 aside nav ul li a {
    color: var(--text-secondary);
}

 aside nav ul li a:hover,
 aside nav ul li a.active {
    color: var(--akcent);
}

/* === Границы === */
 .week_days,
 .task_title,
 .friend_list .title,
 .notification_page section .title,
 .settings_page section .title {
    border-color: var(--border-color);
}

/* === Аватар === */
 .avatar_user img {
    border-color: var(--border-color);
}

/* === Задачи === */
 .task .circle {
    border-color: var(--text-main);
}

/* === Кнопки с акцентом === */
 .button_group .add_form {
    background-color: var(--akcent);
    color: #000;
    border-color: var(--akcent);
}

 .button_group .add_form:hover {
    background-color: transparent;
    color: var(--akcent);
}

/* === Кнопка добавления задачи === */
 .add_task {
    background-color: var(--akcent);
    color: #000;
}

/* === Кнопка обновления графика === */
 .update_graphics {
    border-color: var(--text-main);
    color: var(--text-main);
}

 .update_graphics:hover {
    background-color: var(--text-main);
    color: #000;
}

/* === Поиск друзей === */
 .search_friend form .btn {
    border-color: var(--akcent);
}

 .search_friend form .btn:hover {
    background: none;
    color: var(--akcent);
}

/* === Навигация календаря === */
 .calendar_head button {
   color: var(--text-main);
}

/* === Стрелки === */
 .black_arrow {
   display: none;
}

 .white_arrow {
   display: block;
}

/* === Заголовки настроек === */
 .settings_page section .title {
   color: var(--text-main);
}
