/* Jalali date picker (Figma DatePicker/Day 15:247, Input/Date 15:278, popup 15:226). Enhances <input data-jalali>. */
.jdp { position: relative; display: block; }
.jdp > .input { width: 100%; padding-inline-end: 40px; }
.jdp__icon { position: absolute; inset-inline-end: 8px; top: 50%; transform: translateY(-50%); width: 28px; height: 28px; display: grid; place-items: center;
  padding: 0; border: 0; border-radius: 6px; background: none; color: var(--color-gray-500); cursor: pointer; }
.jdp__icon .icon { width: 18px; height: 18px; }
.jdp__icon:hover, .jdp:focus-within .jdp__icon { color: var(--color-text-brand); }
.field.has-error .jdp > .input { border-color: var(--color-danger); }

.jdp__pop { position: fixed; z-index: 1000; width: 312px; padding: 16px; background: var(--color-surface-card);
  border: 1px solid var(--color-border); border-radius: var(--radius-lg); box-shadow: var(--shadow-lg); }
.dt-field { position: relative; }
.jdp__head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 12px; }
.jdp__title { font: var(--text-h3); color: var(--color-text-primary); }
.jdp__nav { width: 32px; height: 32px; display: grid; place-items: center; padding: 0; border: 0; border-radius: var(--radius-md); background: none;
  color: var(--color-gray-600); cursor: pointer; }
.jdp__nav:hover { background: var(--color-gray-100); color: var(--color-text-primary); }
.jdp__nav .icon { width: 18px; height: 18px; }
.jdp__week, .jdp__grid { display: grid; grid-template-columns: repeat(7, 40px); justify-content: space-between; row-gap: 0; }
.jdp__week span { height: 28px; display: grid; place-items: center; font: var(--text-small); color: var(--color-text-muted); }
.jdp__day { width: 40px; height: 40px; display: grid; place-items: center; padding: 0; border: 1.5px solid transparent; border-radius: var(--radius-md);
  background: none; font: var(--text-body); color: var(--color-text-primary); cursor: pointer; }
.jdp__day:hover { background: var(--color-gray-100); }
.jdp__day:focus-visible { outline: 0; box-shadow: var(--focus-ring); }
.jdp__day.is-today { border-color: var(--color-brand-amber); }
.jdp__day.is-selected { background: var(--color-brand-navy); border-color: var(--color-brand-navy); color: #fff; }
.jdp__day.is-outside { color: var(--color-gray-300); cursor: default; }
.jdp__day.is-outside:hover { background: none; }
.jdp__foot { display: flex; align-items: center; justify-content: space-between; margin-top: 12px; }
.jdp__clear { border: 0; background: none; padding: 0 4px; font: var(--text-body-strong); color: var(--color-text-primary); cursor: pointer; }
.jdp__clear:hover { color: var(--color-danger); }
