/* eEvidence custom datepicker (cross-browser identical replacement for input[type=date]) */

/* Field-level styling matches EDE Library component "EdeInputDate" (node 35:2790):
   1px solid #95a9c0 border, 2px radius, 34px-wide calendar button with
   left-border separator, italic dd-mm-jjjj placeholder in #64748b. */
.ee-datepicker {
    position: relative;
    display: block;
}

.ee-datepicker .form-control {
    padding-right: 42px;
    border-color: #95a9c0;
    border-radius: 2px;
}

.ee-datepicker .form-control:focus {
    border-color: #007bc7;
    box-shadow: 0 0 0 1px #007bc7;
}

.ee-datepicker .form-control::placeholder {
    color: #64748b;
    font-style: italic;
    opacity: 1;
}

.ee-datepicker-toggle {
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    width: 34px;
    background: transparent;
    border: 0;
    border-left: 1px solid #95a9c0;
    border-radius: 0;
    padding: 0;
    color: var(--ee-text, #0f172a);
    line-height: 1;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.ee-datepicker-toggle:hover {
    color: var(--ee-blue, #154273);
}

.ee-datepicker-toggle:focus-visible {
    outline: 2px solid #007bc7;
    outline-offset: -2px;
}

.ee-datepicker-popup {
    position: absolute;
    z-index: 1080;
    top: calc(100% + 4px);
    left: 0;
    min-width: 260px;
    background: #fff;
    border: 1px solid var(--ee-gray-200, #d3d3d3);
    border-radius: 6px;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.12);
    padding: 0.6rem;
    display: none;
}

.ee-datepicker-popup.is-open {
    display: block;
}

.ee-datepicker-nav {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0.4rem;
}

.ee-datepicker-nav button {
    background: transparent;
    border: 0;
    width: 28px;
    height: 28px;
    font-size: 1.1rem;
    line-height: 1;
    color: var(--ee-blue, #154273);
    cursor: pointer;
    border-radius: 4px;
}

.ee-datepicker-nav button:hover {
    background: var(--ee-gray-5, #f3f5f7);
}

.ee-datepicker-label {
    font-weight: 600;
    color: var(--ee-blue, #154273);
    font-size: 0.9rem;
}

.ee-datepicker-weekdays,
.ee-datepicker-grid {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 2px;
}

.ee-datepicker-weekdays {
    margin-bottom: 2px;
}

.ee-datepicker-weekdays span {
    text-align: center;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--ee-text-subtle, #6c757d);
    padding: 0.25rem 0;
}

.ee-datepicker-day {
    background: transparent;
    border: 0;
    border-radius: 4px;
    padding: 0.35rem 0;
    font-size: 0.85rem;
    color: var(--ee-text, #212529);
    cursor: pointer;
    text-align: center;
}

.ee-datepicker-day-blank {
    visibility: hidden;
}

.ee-datepicker-day:hover {
    background: var(--ee-gray-5, #f3f5f7);
}

.ee-datepicker-day.is-today {
    border: 1px solid var(--ee-blue, #154273);
}

.ee-datepicker-day.is-selected {
    background: var(--ee-blue, #154273);
    color: #fff;
}

.ee-datepicker-day.is-selected:hover {
    background: var(--ee-blue, #154273);
}
