/* =============================================================================
   ALEGEREA UNEI PERIOADE (partial: partials/date_range_field.php)

   Cele doua campuri native raman in pagina, dar ascunse: ele duc valorile la
   server. Vizibil e butonul cu perioada aleasa, iar calendarul se deschide
   langa el.
   ========================================================================== */

.bt-dr { position: relative; }

/* Ascunse, dar nu `display:none`: asa raman in formular si pot primi focus daca
   validarea nativa le cere. */
.bt-dr-native {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
    border: 0;
    padding: 0;
}

.bt-dr-trigger {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    padding: 11px 14px;
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    background: #fff;
    color: #94a3b8;              /* pana la alegere textul e de tip sugestie */
    font: inherit;
    font-size: 15px;
    text-align: left;
    cursor: pointer;
    transition: border-color .15s ease;
}
.bt-dr.has-value .bt-dr-trigger { color: #0f172a; }
.bt-dr-trigger:hover { border-color: #cbd5e1; }
.bt-dr-trigger:focus-visible { outline: 2px solid #0066AB; outline-offset: 1px; }
.bt-dr-icon { color: #94a3b8; font-size: 14px; flex-shrink: 0; }
.bt-dr-label { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

/* ---------- Calendarul ---------- */
.bt-dr-panel {
    position: fixed;
    /* Ca la bt-select: calendarul se agata de <body>, deci trebuie sa stea
       peste orice fereastra din care poate fi deschis, nu doar peste bara
       plutitoare si sertar. */
    z-index: 2100;
    width: 300px;
    padding: 14px;
    border-radius: 16px;
    background: #fff;
    border: 1px solid #e2e8f0;
    box-shadow: 0 18px 44px rgba(15, 23, 42, .18);
}
.bt-dr-panel[hidden] { display: none; }

.bt-dr-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 10px;
}
.bt-dr-month {
    font-size: 14px;
    font-weight: 700;
    color: #0f172a;
    text-transform: capitalize;
}
.bt-dr-nav {
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 8px;
    background: #f1f5f9;
    color: #475569;
    font-size: 12px;
    cursor: pointer;
}
.bt-dr-nav:hover { background: #e2e8f0; color: #0f172a; }

.bt-dr-grid {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 2px;
}
.bt-dr-wd {
    padding: 4px 0;
    text-align: center;
    font-size: 11px;
    font-weight: 700;
    color: #94a3b8;
    text-transform: uppercase;
}

.bt-dr-day {
    aspect-ratio: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: #334155;
    font: inherit;
    font-size: 13px;
    cursor: pointer;
}
.bt-dr-day:hover:not(:disabled) { background: #f1f5f9; }
.bt-dr-day.is-today { font-weight: 700; color: #0066AB; }

/* Zilele dintre capete se leaga vizual, capetele sunt pline */
.bt-dr-day.is-between { background: #e6f4ec; border-radius: 0; }
.bt-dr-day.is-edge {
    background: #00991a;
    color: #fff;
    font-weight: 700;
}
.bt-dr-day.is-past {
    color: #cbd5e1;
    cursor: default;
}
/* Zi in afara disponibilitatii programului ales. Se deosebeste de trecut: nu e
   „prea tarziu", e „nu se ține atunci" — de aici linia tăiată. */
.bt-dr-day.is-off {
    color: #cbd5e1;
    cursor: default;
    text-decoration: line-through;
}

.bt-dr-foot {
    display: flex;
    justify-content: flex-end;
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px solid #eef2f6;
}
.bt-dr-clear {
    border: 0;
    background: transparent;
    color: #64748b;
    font: inherit;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    padding: 4px 8px;
    border-radius: 8px;
}
.bt-dr-clear:hover { background: #f1f5f9; color: #0f172a; }

/* Pe fundal inchis (formularul din bara plutitoare, hero) */
.bt-search--hero .bt-dr-trigger,
.bt-float-panel .bt-dr-trigger {
    background: transparent;
    border: 0;
    padding: 0;
    color: rgba(255, 255, 255, .65);
}
.bt-search--hero .bt-dr.has-value .bt-dr-trigger,
.bt-float-panel .bt-dr.has-value .bt-dr-trigger { color: #fff; }
.bt-search--hero .bt-dr-icon,
.bt-float-panel .bt-dr-icon { color: rgba(255, 255, 255, .7); }
