/* CF7 Custom DateTimePicker – Stylesheet */

/* ── Wrapper ── */
.wpcf7-form-control-wrap input[data-cf7cdp-type] {
    cursor: pointer;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'%3E%3C/rect%3E%3Cline x1='16' y1='2' x2='16' y2='6'%3E%3C/line%3E%3Cline x1='8' y1='2' x2='8' y2='6'%3E%3C/line%3E%3Cline x1='3' y1='10' x2='21' y2='10'%3E%3C/line%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 10px center;
    padding-right: 36px !important;
}

.wpcf7-form-control-wrap input[data-cf7cdp-type="time"] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cpolyline points='12 6 12 12 16 14'%3E%3C/polyline%3E%3C/svg%3E");
}

/* ── Inline calendar container ── */
.cf7cdp-inline-calendar {
    margin-top: 6px;
}

/* ── Flatpickr calendar overrides ── */
.flatpickr-calendar {
    border-radius: 8px;
    box-shadow: 0 4px 24px rgba(0,0,0,0.12);
    border: 1px solid #dde;
    font-family: inherit;
    font-size: 14px;
}

.flatpickr-months .flatpickr-month {
    background: #1a73e8;
    border-radius: 8px 8px 0 0;
}

.flatpickr-current-month .flatpickr-monthDropdown-months,
.flatpickr-current-month input.cur-year {
    color: #fff;
    font-weight: 600;
}

.flatpickr-months .flatpickr-prev-month,
.flatpickr-months .flatpickr-next-month {
    color: #fff;
    fill: #fff;
}

.flatpickr-months .flatpickr-prev-month:hover,
.flatpickr-months .flatpickr-next-month:hover {
    color: #fff;
    fill: #fff;
    opacity: .8;
}

.flatpickr-weekday {
    color: #555;
    font-weight: 600;
    font-size: 12px;
}

.flatpickr-day.selected,
.flatpickr-day.selected:hover {
    background: #1a73e8;
    border-color: #1a73e8;
    color: #fff;
    border-radius: 50%;
}

.flatpickr-day:hover {
    background: #e8f0fe;
    border-radius: 50%;
}

.flatpickr-day.today {
    border-color: #1a73e8;
    color: #1a73e8;
    border-radius: 50%;
}

.flatpickr-day.today:hover {
    background: #e8f0fe;
}

.flatpickr-day.flatpickr-disabled,
.flatpickr-day.flatpickr-disabled:hover {
    color: #ccc;
    cursor: not-allowed;
}

/* ── Time picker ── */
.flatpickr-time {
    border-top: 1px solid #eee;
}

.flatpickr-time input:hover,
.flatpickr-time .flatpickr-am-pm:hover {
    background: #e8f0fe;
}

/* ── Validation error state ── */
.wpcf7-not-valid[data-cf7cdp-type] {
    border-color: #c0392b !important;
}
