.crp-wrap{
    position:relative;
    display:inline-block;
}

.crp-input{
    min-width:240px;
    height:42px;
    border:1px solid #ced4da;
    border-radius:12px;
    font-size:13px;
    color:#333;
    background:#fff;
    cursor:pointer;
}

.crp-input:focus{
    border-color:var(--main-orange) !important;
    box-shadow:0 0 0 .2rem rgba(235,119,25,.18) !important;
}

.crp-popup{
    position:absolute;
    top:calc(100% + 6px);
    left:0;
    z-index:3000;
    width:560px;
    background:#fff;
    border:1px solid #f0d4bc;
    border-radius:10px;
    box-shadow:0 8px 18px rgba(0,0,0,.10);
    overflow:hidden;
}

.crp-top-inputs{
    display:grid;
    grid-template-columns:1fr 16px 1fr;
    align-items:center;
    gap:4px;
    padding:8px 10px;
    border-bottom:1px solid #f3e4d7;
    background:#fff;
}

.crp-top-input{
    height:30px;
    border:1px solid #ced4da;
    border-radius:8px;
    padding:0 8px;
    font-size:12px;
    color:#333;
    outline:none;
}

.crp-top-input:focus{
    border-color:var(--main-orange);
    box-shadow:0 0 0 .15rem rgba(235,119,25,.18);
}

.crp-top-sep{
    text-align:center;
    color:#777;
    font-weight:600;
}

.crp-calendars{
    display:grid;
    grid-template-columns:1fr 1fr;
}

.crp-panel + .crp-panel{
    border-left:1px solid #f3e4d7;
}

.crp-head{
    height:34px;
    background:#ff8c2f;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:0 6px;
}

.crp-title{
    flex:1;
    text-align:center;
    font-size:11px;
    font-weight:700;
}

.crp-nav{
    width:20px;
    height:20px;
    border:none;
    background:transparent;
    color:#fff;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    transition:.15s;
}

.crp-nav:hover{
    background:rgba(255,255,255,.18);
}

.crp-weekdays{
    display:grid;
    grid-template-columns:repeat(7,1fr);
    gap:1px;
    padding:6px 6px 2px;
}

.crp-weekday{
    text-align:center;
    font-size:10px;
    font-weight:600;
    color:#666;
    padding:1px 0;
}

.crp-days{
    display:grid;
    grid-template-columns:repeat(7,1fr);
    gap:1px;
    padding:0 7px 9px;
    min-height:166px;
}

.crp-day{
    height:27px;
    border:none;
    background:transparent;
    color:#333;
    font-size:11px;
    border-radius:0;
    transition:.15s;
    position:relative;
}

.crp-day:hover:not(.is-other-month){
    background:#fff2e6;
    color:var(--main-orange);
}

.crp-day.is-other-month{
    color:#c7c7c7;
}

.crp-day.is-today{
    box-shadow:inset 0 0 0 1px #ffb37c;
    border-radius:999px;
}

.crp-day.is-start,
.crp-day.is-end{
    background:var(--main-orange) !important;
    color:#fff !important;
    border-radius:999px !important;
    font-weight:700;
    z-index:2;
}

.crp-day.is-in-range{
    background:#ffe7d1;
    color:#333;
}

.crp-day.is-in-range.range-left{
    border-top-left-radius:999px;
    border-bottom-left-radius:999px;
}

.crp-day.is-in-range.range-right{
    border-top-right-radius:999px;
    border-bottom-right-radius:999px;
}

.crp-presets{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:4px;
    padding:6px;
    border-top:1px solid #f3e4d7;
    background:#fff;
}

.crp-preset-btn{
    height:24px;
    border:1px solid #efc9a7;
    border-radius:999px;
    background:#fff8f2;
    color:var(--main-orange);
    font-size:10px;
    font-weight:600;
    transition:.15s;
}

.crp-preset-btn:hover,
.crp-preset-btn.is-active{
    background:var(--main-orange);
    border-color:var(--main-orange);
    color:#fff;
}
.crp-wrap{
    position: relative;
}

.crp-wrap .crp-input{
    padding-right: 40px;
}
.crp-clear-btn{
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
    width: 20px;
    height: 20px;
    border: 0;
    border-radius: 999px;
    background: #f1f3f5;
    color: #6b7280;
    font-size: 14px;
    line-height: 20px;
    text-align: center;
    cursor: pointer;
    padding: 0;
    z-index: 3;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: .15s ease;
}

.crp-wrap.has-value:hover .crp-clear-btn,
.crp-wrap.has-value:focus-within .crp-clear-btn{
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.crp-clear-btn:hover{
    background: #eb7719;
    color: #fff;
}