/*بـسـم الله الـرحـمـن الـرحـیـم*/




*{font-family: vazir;}


.delete-task{
    width: 25px !important;
    height: 25px !important;
}

.close-modal , .delete-task{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 35px;
    height: 35px;
    border: 0;
    border-radius: 10px;
    border: 1px solid red;
    background-color: rgb(88, 0, 0);
    color: #d5dde6;
}

.close-modal:hover , .delete-task:hover{
    box-shadow: 2px 2px 4px red , -2px -2px 4px red ;
}

.task-modal{

    position:fixed;

    inset:0;

    display:flex;

    justify-content:center;

    align-items:center;

    background:rgba(2,6,23,.45);

    backdrop-filter:blur(10px);

    -webkit-backdrop-filter:blur(10px);

    opacity:0;

    visibility:hidden;

    transition:.35s;

    z-index:9999;

}

.task-modal.show{

    opacity:1;

    visibility:visible;

}

.task-box{

    width:92%;

    max-width:430px;

    background:linear-gradient(
        145deg,
        rgba(15,23,42,.96),
        rgba(2,6,23,.97)
    );

    border:1px solid rgba(34,197,94,.25);

    border-radius:22px;

    padding:30px;

    box-shadow:
        0 20px 50px rgba(0,0,0,.5),
        0 0 35px rgba(34,197,94,.08);

    transform:translateY(25px) scale(.96);

    transition:.35s;

}

.task-modal.show .task-box{

    transform:translateY(0) scale(1);

}

.task-box h3{

    margin:0;

    color:#fff;

    font-size:24px;

}

.task-box p{

    margin:10px 0 22px;

    color:#94a3b8;

    font-size:14px;

}

.task-box input{

    width:100%;

    height:55px;

    background:#0f172a;

    border:1px solid rgba(255,255,255,.08);

    border-radius:14px;

    padding:0 18px;

    color:#fff;

    font-size:15px;

    transition:.3s;

}

.task-box input:focus{

    outline:none;

    border-color:#22c55e;

    box-shadow:0 0 0 4px rgba(34,197,94,.15);

}

.task-buttons{

    display:flex;

    justify-content:flex-end;

    gap:12px;

    margin-top:25px;

}

.task-buttons button{

    border:none;

    cursor:pointer;

    border-radius:12px;

    padding:12px 22px;

    font-size:14px;

    transition:.3s;

}

.cancel-task{

    background:#1e293b;

    color:#cbd5e1;

}

.cancel-task:hover{

    background:#334155;

}

.save-task{

    background:#22c55e;

    color:#fff;

    font-weight:600;

}

.save-task:hover{

    background:#16a34a;

    transform:translateY(-2px);

}






/* ===========================
   Weekly Planner
=========================== */

.weekly-planner{

    width:95%;

    margin:30px auto 20px auto;

}

/* ===========================
   Header
=========================== */

.planner-header{

    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:20px;
    flex-wrap:wrap;

    margin-bottom:25px;

}

.planner-title h2 {
    display: flex;
    justify-content: space-around;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    flex-direction: row-reverse;
}

.planner-title h2{

    margin:0;
    font-size:28px;
    color:#fff;
    font-weight:700;

}

.planner-title p{

    margin-top:8px;
    color:#94a3b8;
    font-size:14px;

}

.planner-actions{
    margin-top: 8px;
    border: 1px solid #22c55e ;
    border-radius: 10px;
    background-color: #22c55e42;
    padding: 6px;

    display:flex;
    gap:12px;
    flex-wrap:wrap;

}

.week-btn,
.add-task-btn{

    border:none;
    cursor:pointer;

    padding:12px 18px;

    border-radius:12px;

    transition:.3s;

    font-size:14px;

}

.week-btn{

    background:#0f172a;
    color:#cbd5e1;

}

.week-btn:hover{

    background:#1e293b;

}

.add-task-btn{

    background:#22c55e;
    color:#fff;
    font-weight:600;

}

.add-task-btn:hover{

    background:#16a34a;
    transform:translateY(-2px);

}

/* ===========================
   Week Grid
=========================== */

.week-grid{

    display:flex;

    justify-content: center;
    gap:18px;
    align-items: center;
    flex-wrap: wrap;

}

/* ===========================
   Day Card
=========================== */

.day-card{

    background:linear-gradient(145deg,#07111d,#020617);

    border:1px solid rgba(34,197,94,.18);

    border-radius:18px;

    padding:18px;

    display:flex;

    flex-direction:column;

    min-height:430px;

    transition:.35s;

    position:relative;

    overflow:hidden;

    width: 300px;

}

.day-card::before{

    content:"";

    position:absolute;

    top:0;
    left:0;

    width:100%;
    height:4px;

    background:transparent;

    transition:.3s;

}

.day-card:hover{

    transform:translateY(-6px);

    border-color:#22c55e;

    box-shadow:0 18px 35px rgba(34,197,94,.15);

}

.day-card:hover::before{

    background:#22c55e;

}

/* ===========================
   Today
=========================== */

.today{

    border:1px solid #22c55e;

    box-shadow:0 0 25px rgba(34,197,94,.18);

}

.today::before{

    background:#22c55e;

}

.today-badge{

    background:#22c55e;

    color:#fff;

    padding:5px 12px;

    border-radius:30px;

    font-size:12px;

    font-weight:700;

}

/* ===========================
   Day Header
=========================== */

.day-header{

    display:flex;

    justify-content:space-between;

    align-items:flex-start;

    margin-bottom:18px;

}

.day-header h3{

    margin:0;

    color:#fff;

    font-size:20px;

}

.day-header span{

    color:#94a3b8;

    font-size:13px;

}

/* ===========================
   Tasks
=========================== */

.task-list{

    display:flex;

    flex-direction:column;

    gap:12px;

    flex:1;

}

.task{

    display:flex;

    align-items:center;

    gap:10px;

    background:#0f172a;

    border:1px solid rgba(255,255,255,.05);

    border-radius:12px;

    padding:12px;

    transition:.3s;


}

.task:hover{

    background:#162234;

    border-color: #22c55e;

}

.task span{

    font-size:18px;

}

.task p{

    margin:0;

    color:#e2e8f0;

    font-size:14px;

    line-height:1.5;

}

.done{

    opacity:.65;

}

.done p{

    text-decoration:line-through;

}

/* ===========================
   Empty Day
=========================== */

.empty-day{

    flex:1;

    display:flex;

    flex-direction:column;

    justify-content:center;

    align-items:center;

    text-align:center;

    color:#64748b;

}

.empty-icon{

    font-size:42px;

    margin-bottom:15px;

}

/* ===========================
   Add Task
=========================== */

.add-day-task{

    width:100%;

    margin-top:18px;

    background:transparent;

    border:2px dashed rgba(34,197,94,.35);

    color:#22c55e;

    padding:13px;

    border-radius:12px;

    cursor:pointer;

    font-size:14px;

    font-weight:600;

    transition:.3s;

}

.add-day-task:hover{

    background:#22c55e;

    color:#fff;

    border-color:#22c55e;

}

/* ===========================
   Scroll Task List
=========================== */

.task-list{

    max-height:260px;

    overflow-y:auto;

    padding-right:4px;

    flex-direction: column-reverse;

}

.task-list::-webkit-scrollbar{

    width:6px;

}

.task-list::-webkit-scrollbar-thumb{

    background:#22c55e;

    border-radius:20px;

}

.task-list::-webkit-scrollbar-track{

    background:#07111d;

}

/* ===========================
   Tablet
=========================== */

@media(max-width:1300px){

    .week-grid{

        grid-template-columns:repeat(4,1fr);

    }

}

@media(max-width:900px){

    .week-grid{

        grid-template-columns:repeat(2,1fr);

    }

}

/* ===========================
   Mobile
=========================== */

@media(max-width:650px){

    .planner-header{

        flex-direction:column;
        align-items:flex-start;

    }

    .planner-actions{

        width:100%;

    }

    .planner-actions button{

        flex:1;

    }

    .week-grid{

        grid-template-columns:1fr;

    }

    .day-card{

        width: 97%;
        min-height:340px;

    }

    .planner-title h2{

        font-size:24px;

    }

}