/* Rozwijany kalendarz (datepicker.js), wspólny dla strony i panelu. */
.dp-host { position: relative; }
.dp-input { padding-right: 38px !important; cursor: pointer; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='none' stroke='%2355666d' stroke-width='1.8' stroke-linecap='round'%3E%3Crect x='2.5' y='3.5' width='13' height='12' rx='2'/%3E%3Cpath d='M2.5 7.5h13M6 2v3M12 2v3'/%3E%3C/svg%3E") no-repeat right 12px center !important; }
.dp { position: absolute; top: calc(100% + 8px); left: 0; z-index: 30; width: 304px; max-width: calc(100vw - 32px); padding: 14px; background: #fffdf8; color: #172a33; border: 1px solid #dfd5c1; border-radius: 12px; box-shadow: 0 18px 50px -20px rgba(14, 47, 63, .35); font-weight: 500; text-align: left; }
.dp.dp-end { left: auto; right: 0; }
.dp-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 8px; font-size: .98rem; color: #0e2f3f; }
.dp-arrow { width: 34px; height: 34px; border-radius: 50%; border: 1px solid #dfd5c1; background: #fff; color: #172a33; cursor: pointer; padding: 0; }
.dp-arrow:disabled { opacity: .35; cursor: default; }
.dp-grid { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 3px; }
.dp-wd { text-align: center; font-size: .7rem; font-weight: 700; color: #55666d; padding-bottom: 3px; }
.dp-day { aspect-ratio: 1; border: 0; border-radius: 7px; background: #e4f1ec; color: #0e2f3f; font: inherit; font-size: .88rem; font-weight: 600; cursor: pointer; padding: 0; }
.dp-day:hover:not(:disabled) { box-shadow: inset 0 0 0 2px #1b7283; }
.dp-day.is-today { text-decoration: underline; }
.dp-day:disabled { background: transparent; color: #b4bcbe; cursor: not-allowed; }
.dp-day.is-from { background: #a9d7dc; color: #0e2f3f; }
.dp-day.is-selected { background: #0e2f3f; color: #fff; }
.dp-note { margin: 10px 0 0; font-size: .76rem; color: #55666d; }
