/* =====================================
   Persian Date Picker
   Elevorian Luxury Black
===================================== */

.pdp-modal{

    position:fixed;

    inset:0;

    display:none;

    justify-content:center;

    align-items:center;

    background:rgba(0,0,0,.75);

    backdrop-filter:blur(8px);

    z-index:999999;

    animation:pdpFade .25s ease;

}

.pdp-modal.show{

    display:flex;

}

.pdp-container{

    width:760px;

    max-width:95%;

    background:#171717;

    border:1px solid rgba(255,255,255,.08);

    border-radius:22px;

    overflow:hidden;

    box-shadow:
        0 25px 80px rgba(0,0,0,.65),
        0 0 35px rgba(200,167,78,.12);

    animation:pdpScale .25s ease;

}

.pdp-header{

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:22px 24px;

    border-bottom:1px solid rgba(255,255,255,.06);

    background:#1b1b1b;

}

.pdp-title{

    color:#C8A74E;

    font-size:22px;

    font-weight:700;

    letter-spacing:.5px;

}

.pdp-header button{

    width:46px;

    height:46px;

    border:none;

    border-radius:14px;

    cursor:pointer;

    background:#242424;

    color:#C8A74E;

    font-size:18px;

    transition:.25s;

}

.pdp-header button:hover{

    background:#C8A74E;

    color:#111;

    transform:translateY(-2px);

}

@keyframes pdpFade{

    from{

        opacity:0;

    }

    to{

        opacity:1;

    }

}

@keyframes pdpScale{

    from{

        transform:scale(.92);

        opacity:0;

    }

    to{

        transform:scale(1);

        opacity:1;

    }

}
/* =====================================
   Week Days
===================================== */

.pdp-weekdays{

    display:grid;

    grid-template-columns:repeat(7,1fr);

    gap:10px;

    padding:20px 22px 8px;

}

.pdp-weekdays span{

    text-align:center;

    color:#8a8a8a;

    font-size:14px;

    font-weight:700;

    user-select:none;

}

/* =====================================
   Calendar Grid
===================================== */

.pdp-grid{

    display:grid;

    grid-template-columns:repeat(7,1fr);

    gap:10px;

    padding:18px 22px 25px;

}

.pdp-empty{

    visibility:hidden;

}

/* =====================================
   Day
===================================== */

.pdp-day{

    height:58px;

    display:flex;

    justify-content:center;

    align-items:center;

    background:#1F1F1F;

    border:1px solid rgba(255,255,255,.06);

    border-radius:16px;

    color:#ECECEC;

    cursor:pointer;

    font-size:15px;

    font-weight:600;

    transition:all .25s ease;

    user-select:none;

}

.pdp-day:hover{

    transform:translateY(-3px);

    background:#272727;

    border-color:#C8A74E;

    color:#C8A74E;

    box-shadow:0 10px 25px rgba(200,167,78,.18);

}

.pdp-day.today{

    border:2px solid #C8A74E;

    color:#C8A74E;

    font-weight:700;

}

.pdp-day.selected{

    background:#C8A74E;

    color:#111;

    border-color:#C8A74E;

    font-weight:700;

    box-shadow:0 0 25px rgba(200,167,78,.35);

}
/* =====================================
   Footer (Optional)
===================================== */

.pdp-footer{

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:18px 22px;

    border-top:1px solid rgba(255,255,255,.06);

    background:#1b1b1b;

}

.pdp-footer button{

    height:44px;

    padding:0 18px;

    border:none;

    border-radius:14px;

    cursor:pointer;

    font-size:14px;

    font-weight:700;

    transition:.25s;

}

.pdp-btn-cancel{

    background:#2A2A2A;

    color:#DDD;

}

.pdp-btn-cancel:hover{

    background:#3A3A3A;

}

.pdp-btn-today{

    background:#C8A74E;

    color:#111;

}

.pdp-btn-today:hover{

    transform:translateY(-2px);

    box-shadow:0 8px 20px rgba(200,167,78,.35);

}

/* =====================================
   Scroll
===================================== */

.pdp-container::-webkit-scrollbar{

    width:8px;

}

.pdp-container::-webkit-scrollbar-track{

    background:#1B1B1B;

}

.pdp-container::-webkit-scrollbar-thumb{

    background:#C8A74E;

    border-radius:20px;

}

/* =====================================
   Responsive
===================================== */

@media(max-width:768px){

    .pdp-container{

        width:95%;

        border-radius:18px;

    }

    .pdp-header{

        padding:18px;

    }

    .pdp-title{

        font-size:18px;

    }

    .pdp-grid{

        gap:6px;

        padding:15px;

    }

    .pdp-weekdays{

        gap:6px;

        padding:15px 15px 8px;

    }

    .pdp-day{

        height:48px;

        font-size:14px;

        border-radius:12px;

    }

}

@media(max-width:480px){

    .pdp-day{

        height:42px;

        font-size:13px;

    }

}