/* DD/MM/YYYY date picker */
.dp-wrap { position: relative; display: block; }
.dp-wrap > input[type=text] { padding-right: 40px; }
.dp-btn { position: absolute; right: 6px; top: 50%; transform: translateY(-50%); width: 32px; height: 32px; border: 0; background: none; color: #6b7194; cursor: pointer; border-radius: 8px; display: grid; place-items: center; }
.dp-btn:hover { background: #f1f3fa; color: #1b2462; }
.dp-pop { position: fixed; z-index: 2000; top: 0; left: 0; width: 292px; background: #fff; border: 1px solid #e3e6f2; border-radius: 14px; box-shadow: 0 18px 44px rgba(27, 36, 98, .2); padding: 12px; font: 500 14px "Plus Jakarta Sans", system-ui, sans-serif; color: #1f2547; }
.dp-head { display: flex; gap: 6px; align-items: center; margin-bottom: 10px; }
.dp-head select { flex: 1; min-width: 0; height: 34px; border: 1px solid #e3e6f2; border-radius: 8px; padding: 0 6px; font: 600 13px "Plus Jakarta Sans", system-ui, sans-serif; color: #1b2462; background: #fff; -webkit-appearance: menulist; appearance: auto; }
.dp-head .dp-year { flex: 0 0 82px; }
.dp-nav { width: 32px; height: 34px; border: 1px solid #e3e6f2; background: #fff; border-radius: 8px; font-size: 18px; line-height: 1; cursor: pointer; color: #1b2462; }
.dp-nav:hover { background: #f1f3fa; }
.dp-grid { display: grid; grid-template-columns: repeat(7, 1fr); gap: 2px; }
.dp-dow { text-align: center; font-size: 11px; font-weight: 700; color: #8a8fae; padding: 4px 0; }
.dp-day { height: 34px; border: 0; background: none; border-radius: 8px; font: 600 13px "Plus Jakarta Sans", system-ui, sans-serif; color: #1f2547; cursor: pointer; }
.dp-day:hover:not(:disabled) { background: #fff3ec; color: #d94e14; }
.dp-day.is-today { box-shadow: inset 0 0 0 1.5px #3d4da1; }
.dp-day.is-sel { background: #f15f22; color: #fff; }
.dp-day:disabled { color: #c9ccdc; cursor: default; }
.dp-foot { display: flex; justify-content: space-between; margin-top: 8px; padding-top: 8px; border-top: 1px solid #eef0f6; }
.dp-foot button { border: 0; background: none; color: #3d4da1; font: 700 13px "Plus Jakarta Sans", system-ui, sans-serif; cursor: pointer; padding: 6px 8px; border-radius: 6px; }
.dp-foot button:hover { background: #f1f3fa; }
@media (max-width: 420px) { .dp-pop { width: min(292px, calc(100vw - 32px)); } }
