/* Selector de fecha morado reutilizable; mismos valores que el calendario de Cierres y entregables. */
.kja-date-picker{position:relative;min-width:0}
#portal .attendance-export-period input.sr-only{
  position:absolute;width:1px;height:1px;min-height:0;padding:0;margin:-1px;border:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;opacity:0;pointer-events:none;
}
.kja-date-picker .kja-date-trigger{
  position:relative;display:flex;align-items:center;gap:8px;width:100%;height:44px;padding:0 12px;
  border:1px solid #e0ddea;border-radius:12px;background:#f1eff7;color:#403955;
  font:500 14px/1 Inter,system-ui,sans-serif;text-align:left;box-sizing:border-box;cursor:pointer;
  transition:all .18s cubic-bezier(.16,1,.3,1);user-select:none;
}
.kja-date-picker .kja-date-trigger:hover:not(:disabled){background:#eae5f4;border-color:#beb4cf}
.kja-date-picker .kja-date-trigger:is([aria-expanded="true"],:focus-visible){outline:none;background:#fff;border-color:#766498;box-shadow:0 0 0 3px #eee8f7}
.kja-date-picker .kja-date-trigger:disabled{cursor:not-allowed;opacity:.6}
.kja-date-trigger svg,.kja-date-popup svg{width:16px;height:16px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.kja-date-trigger>svg:first-child{color:#807391}
.kja-date-trigger .kja-date-text{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.kja-date-trigger .kja-date-chevron{color:#807391;transition:transform .2s ease}
.kja-date-trigger[aria-expanded="true"] .kja-date-chevron{transform:rotate(180deg);color:#655083}

.kja-date-popup{
  position:fixed;inset:auto;margin:0;box-sizing:border-box;z-index:99999;
  display:flex;flex-direction:column;gap:12px;padding:16px;
  border:1px solid #e2dde9;border-radius:18px;background:#fff;color:#403955;
  box-shadow:0 16px 42px rgba(64,57,85,.16),0 2px 8px rgba(64,57,85,.05);
  font:400 13px/1.5 Inter,system-ui,sans-serif;
  animation:kjaDateFadeIn .18s cubic-bezier(.16,1,.3,1);
}
.kja-date-popup[hidden]{display:none!important}
@keyframes kjaDateFadeIn{from{opacity:0;transform:translateY(-4px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}
.kja-date-head{display:flex;align-items:center;justify-content:space-between;gap:8px}
.kja-date-title{font-size:14.5px;font-weight:700;color:#403955;letter-spacing:-.01em;text-transform:capitalize}
.kja-date-nav{
  width:40px;height:40px;min-width:40px;min-height:40px;
  border:0;border-radius:10px;background:#f1eff7;color:#655083;
  display:grid;place-items:center;cursor:pointer;
  transition:background-color .15s ease, color .15s ease;line-height:1;padding:0;
  touch-action:manipulation;-webkit-tap-highlight-color:transparent;
  user-select:none;-webkit-user-select:none;
}
.kja-date-nav:hover:not(:disabled){background:#e6ddf1;color:#403955}
.kja-date-nav:active:not(:disabled){background:#dcd0eb;color:#403955}
.kja-date-nav:disabled{opacity:.3;cursor:not-allowed}
.kja-date-nav svg{width:18px;height:18px;pointer-events:none;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.kja-date-weekdays,.kja-date-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}
.kja-date-weekdays{text-align:center}
.kja-date-weekdays span{font-size:10.5px;font-weight:700;color:#8c839d;text-transform:uppercase;letter-spacing:.03em;padding:3px 0}
.kja-date-empty{height:34px}
.kja-date-day{height:34px;border:0;border-radius:9px;background:transparent;color:#403955;font-size:12.5px;font-weight:600;cursor:pointer;display:grid;place-items:center;transition:all .15s ease;font-variant-numeric:tabular-nums;padding:0;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.kja-date-day:hover:not(:disabled):not(.is-selected){background:#f1eff7;color:#655083;transform:translateY(-1px)}
.kja-date-day.is-today:not(.is-selected){border:1.5px solid #655083;color:#655083;font-weight:700;background:#faf8fd}
.kja-date-day.is-selected{background:#655083!important;color:#fff!important;font-weight:700;box-shadow:0 4px 12px rgba(101,80,131,.32)}
.kja-date-day:disabled{color:#ccc7d5;cursor:not-allowed;background:transparent!important;transform:none!important}
.kja-date-popup :is(button):focus-visible{outline:2px solid #766498;outline-offset:2px}
.kja-date-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:10px;border-top:1px solid #eeeaf5}
.kja-date-today,.kja-date-close{height:29px;border:0;border-radius:8px;font-size:11.5px;font-weight:600;cursor:pointer;transition:all .15s ease}
.kja-date-today{padding:0 12px;background:#f1eff7;color:#655083}
.kja-date-today:hover:not(:disabled){background:#e6ddf1;color:#403955}
.kja-date-today:disabled{opacity:.4;cursor:not-allowed}
.kja-date-close{padding:0 10px;background:transparent;color:#8c839d}
.kja-date-close:hover{color:#403955;background:#f1eff7}
