/* V57 · selector de fecha propio, coherente con los desplegables de la aplicación */
.gtic-date-control{
  position:relative;
  display:block;
  width:100%;
  min-width:0;
}
.gtic-native-date-source{
  position:absolute!important;
  left:0!important;
  bottom:0!important;
  width:1px!important;
  height:1px!important;
  min-width:1px!important;
  min-height:1px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  opacity:.001!important;
  pointer-events:none!important;
  box-shadow:none!important;
  overflow:hidden!important;
}
.gtic-date-button{
  position:relative;
  display:flex;
  align-items:center;
  width:100%;
  min-width:0;
  min-height:40px!important;
  height:40px!important;
  padding:0 42px 0 12px!important;
  border:1px solid #d5e1e9!important;
  border-radius:14px!important;
  background:linear-gradient(180deg,#fff,#fbfdff)!important;
  color:var(--gtic-text,#233044)!important;
  box-shadow:0 1px 2px rgba(18,58,87,.04),0 7px 18px rgba(23,50,74,.035)!important;
  font-family:inherit!important;
  font-size:13px!important;
  font-weight:750!important;
  line-height:1.2!important;
  letter-spacing:-.01em!important;
  text-align:left!important;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  cursor:pointer;
  transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease!important;
}
.gtic-date-button::after{
  content:"";
  position:absolute;
  right:12px;
  top:50%;
  width:18px;
  height:18px;
  transform:translateY(-50%);
  background-color:#64778a;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M7 2a1 1 0 0 1 1 1v1h8V3a1 1 0 1 1 2 0v1h1a3 3 0 0 1 3 3v12a3 3 0 0 1-3 3H5a3 3 0 0 1-3-3V7a3 3 0 0 1 3-3h1V3a1 1 0 0 1 1-1Zm12 8H5v9a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-9ZM6 6a1 1 0 0 0-1 1v1h14V7a1 1 0 0 0-1-1H6Z'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M7 2a1 1 0 0 1 1 1v1h8V3a1 1 0 1 1 2 0v1h1a3 3 0 0 1 3 3v12a3 3 0 0 1-3 3H5a3 3 0 0 1-3-3V7a3 3 0 0 1 3-3h1V3a1 1 0 0 1 1-1Zm12 8H5v9a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-9ZM6 6a1 1 0 0 0-1 1v1h14V7a1 1 0 0 0-1-1H6Z'/%3E%3C/svg%3E") center/contain no-repeat;
}
.gtic-date-control[data-date-type="time"] .gtic-date-button::after{
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a10 10 0 1 1 0 20 10 10 0 0 1 0-20Zm0 2a8 8 0 1 0 0 16 8 8 0 0 0 0-16Zm0 3a1 1 0 0 1 1 1v3.6l2.7 1.55a1 1 0 1 1-1 1.73l-3.2-1.85A1 1 0 0 1 11 12V8a1 1 0 0 1 1-1Z'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a10 10 0 1 1 0 20 10 10 0 0 1 0-20Zm0 2a8 8 0 1 0 0 16 8 8 0 0 0 0-16Zm0 3a1 1 0 0 1 1 1v3.6l2.7 1.55a1 1 0 1 1-1 1.73l-3.2-1.85A1 1 0 0 1 11 12V8a1 1 0 0 1 1-1Z'/%3E%3C/svg%3E") center/contain no-repeat;
}
.gtic-date-button:hover{border-color:#b7cbd8!important}
.gtic-date-button:focus-visible,
.gtic-date-control.is-open .gtic-date-button{
  border-color:var(--gtic-teal,#20c6c9)!important;
  box-shadow:0 0 0 4px rgba(32,198,201,.12)!important;
  outline:0!important;
}
.gtic-date-button.is-empty{color:#748797!important;font-weight:650!important}
.gtic-date-button:disabled{cursor:not-allowed;opacity:.62}
.gtic-date-button.is-invalid{border-color:#dc5662!important;box-shadow:0 0 0 4px rgba(220,86,98,.12)!important}

.gtic-date-popover{
  position:fixed;
  z-index:2147483647;
  display:none;
  width:340px;
  max-width:calc(100vw - 24px);
  padding:14px;
  border:1px solid #d9e5eb;
  border-radius:20px;
  background:#fff;
  color:#253b4d;
  box-shadow:0 24px 65px rgba(15,48,68,.24),0 4px 14px rgba(15,48,68,.10);
  box-sizing:border-box;
  font-family:inherit;
  transform-origin:top center;
}
.gtic-date-popover.is-open{display:block;animation:gticDateOpen .15s ease-out both}
@keyframes gticDateOpen{from{opacity:0;transform:translateY(-4px) scale(.985)}to{opacity:1;transform:none}}
.gtic-date-head{
  display:grid;
  grid-template-columns:38px minmax(0,1fr) 38px 38px;
  align-items:center;
  gap:5px;
  margin-bottom:10px;
}
.gtic-date-title{
  min-width:0;
  color:#173d54;
  font-size:14px;
  font-weight:900;
  text-align:center;
  text-transform:capitalize;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.gtic-date-nav,.gtic-date-close{
  width:36px;
  height:36px;
  min-width:36px;
  display:grid;
  place-items:center;
  padding:0;
  border:1px solid #e0e9ee;
  border-radius:12px;
  background:#f7fafc;
  color:#476276;
  cursor:pointer;
  transition:background-color .14s ease,border-color .14s ease,color .14s ease;
}
.gtic-date-nav:hover,.gtic-date-close:hover{border-color:#bfd1db;background:#eef6f8;color:#123a57}
.gtic-date-nav::before,.gtic-date-close::before{
  content:"";
  width:16px;
  height:16px;
  display:block;
  background-color:currentColor;
}
.gtic-date-prev::before{
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M15.4 5.4a1 1 0 0 1 0 1.4L10.2 12l5.2 5.2a1 1 0 1 1-1.4 1.4l-5.9-5.9a1 1 0 0 1 0-1.4L14 5.4a1 1 0 0 1 1.4 0Z'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M15.4 5.4a1 1 0 0 1 0 1.4L10.2 12l5.2 5.2a1 1 0 1 1-1.4 1.4l-5.9-5.9a1 1 0 0 1 0-1.4L14 5.4a1 1 0 0 1 1.4 0Z'/%3E%3C/svg%3E") center/contain no-repeat;
}
.gtic-date-next::before{
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M8.6 5.4a1 1 0 0 0 0 1.4l5.2 5.2-5.2 5.2a1 1 0 1 0 1.4 1.4l5.9-5.9a1 1 0 0 0 0-1.4L10 5.4a1 1 0 0 0-1.4 0Z'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M8.6 5.4a1 1 0 0 0 0 1.4l5.2 5.2-5.2 5.2a1 1 0 1 0 1.4 1.4l5.9-5.9a1 1 0 0 0 0-1.4L10 5.4a1 1 0 0 0-1.4 0Z'/%3E%3C/svg%3E") center/contain no-repeat;
}
.gtic-date-close::before{
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M6.3 5.3a1 1 0 0 1 1.4 0L12 9.6l4.3-4.3a1 1 0 1 1 1.4 1.4L13.4 11l4.3 4.3a1 1 0 0 1-1.4 1.4L12 12.4l-4.3 4.3a1 1 0 0 1-1.4-1.4l4.3-4.3-4.3-4.3a1 1 0 0 1 0-1.4Z'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M6.3 5.3a1 1 0 0 1 1.4 0L12 9.6l4.3-4.3a1 1 0 1 1 1.4 1.4L13.4 11l4.3 4.3a1 1 0 0 1-1.4 1.4L12 12.4l-4.3 4.3a1 1 0 0 1-1.4-1.4l4.3-4.3-4.3-4.3a1 1 0 0 1 0-1.4Z'/%3E%3C/svg%3E") center/contain no-repeat;
}
.gtic-date-weekdays,.gtic-date-days{
  display:grid;
  grid-template-columns:repeat(7,minmax(0,1fr));
  gap:4px;
}
.gtic-date-weekdays{margin:0 0 5px}
.gtic-date-weekdays span{
  display:grid;
  place-items:center;
  height:26px;
  color:#7b8e9d;
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
}
.gtic-date-day{
  position:relative;
  aspect-ratio:1;
  min-height:36px;
  display:grid;
  place-items:center;
  padding:0;
  border:1px solid transparent;
  border-radius:12px;
  background:transparent;
  color:#2a4356;
  font-family:inherit;
  font-size:12px;
  font-weight:800;
  cursor:pointer;
  transition:background-color .13s ease,border-color .13s ease,color .13s ease,transform .13s ease;
}
.gtic-date-day:hover{border-color:#c9dce4;background:#eef7f7;color:#123a57}
.gtic-date-day:active{transform:scale(.95)}
.gtic-date-day.is-outside{color:#a7b4be;font-weight:650}
.gtic-date-day.is-today{border-color:#8bdad7;color:#08756f}
.gtic-date-day.is-selected{border-color:#123a57;background:#123a57;color:#fff;box-shadow:0 6px 14px rgba(18,58,87,.20)}
.gtic-date-day:disabled{opacity:.28;cursor:not-allowed;transform:none}
.gtic-date-months{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  padding:4px 0;
}
.gtic-date-month{
  min-height:46px;
  padding:8px;
  border:1px solid #dfe9ee;
  border-radius:13px;
  background:#f8fbfc;
  color:#365266;
  font-family:inherit;
  font-size:12px;
  font-weight:800;
  cursor:pointer;
}
.gtic-date-month:hover{border-color:#afd4d3;background:#edf8f7}
.gtic-date-month.is-selected{border-color:#123a57;background:#123a57;color:#fff}
.gtic-date-month:disabled{opacity:.35;cursor:not-allowed}
.gtic-date-time-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
  align-items:end;
  gap:8px;
  margin-top:12px;
  padding:12px;
  border:1px solid #e1eaef;
  border-radius:15px;
  background:#f8fbfc;
}
.gtic-date-time-field{display:grid;gap:5px}
.gtic-date-time-field span{color:#718595;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.gtic-date-time-separator{padding-bottom:10px;color:#527083;font-weight:900}
.gtic-date-time-select{
  width:100%;
  min-height:38px;
  height:38px;
  padding:0 30px 0 10px;
  border:1px solid #d4e1e8;
  border-radius:12px;
  background:#fff;
  color:#263f52;
  font-family:inherit;
  font-size:13px;
  font-weight:800;
}
.gtic-date-actions{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin-top:12px;
  padding-top:11px;
  border-top:1px solid #e5edf1;
}
.gtic-date-actions-left,.gtic-date-actions-right{display:flex;align-items:center;gap:7px}
.gtic-date-action{
  min-height:36px;
  padding:0 12px;
  border:1px solid #d8e4ea;
  border-radius:12px;
  background:#f7fafc;
  color:#3d5b70;
  font-family:inherit;
  font-size:11px;
  font-weight:850;
  cursor:pointer;
}
.gtic-date-action:hover{border-color:#bad0db;background:#edf5f7}
.gtic-date-action.is-primary{border-color:#123a57;background:#123a57;color:#fff}
.gtic-date-action:disabled{opacity:.35;cursor:not-allowed}

html[data-theme="dark"] .gtic-date-button{
  color:#edf4fb!important;
  border-color:#3a5065!important;
  background:linear-gradient(180deg,#122433,#0e1b28)!important;
  box-shadow:0 1px 2px rgba(0,0,0,.16)!important;
}
html[data-theme="dark"] .gtic-date-button::after{background-color:#a9bdcb}
html[data-theme="dark"] .gtic-date-button.is-empty{color:#94a8b7!important}
html[data-theme="dark"] .gtic-date-popover{border-color:#344b5f;background:#102331;color:#e8f0f5;box-shadow:0 26px 70px rgba(0,0,0,.48)}
html[data-theme="dark"] .gtic-date-title{color:#edf6fb}
html[data-theme="dark"] .gtic-date-nav,html[data-theme="dark"] .gtic-date-close{border-color:#365064;background:#172d3d;color:#b9cad4}
html[data-theme="dark"] .gtic-date-weekdays span{color:#8298a8}
html[data-theme="dark"] .gtic-date-day{color:#dce8ef}
html[data-theme="dark"] .gtic-date-day:hover{border-color:#3e6274;background:#193747;color:#fff}
html[data-theme="dark"] .gtic-date-day.is-outside{color:#62798a}
html[data-theme="dark"] .gtic-date-day.is-today{border-color:#4ebdb8;color:#84dfda}
html[data-theme="dark"] .gtic-date-day.is-selected{border-color:#2ac1bb;background:#168b86;color:#fff}
html[data-theme="dark"] .gtic-date-month{border-color:#344b5f;background:#142b3a;color:#d9e6ed}
html[data-theme="dark"] .gtic-date-month:hover{border-color:#3e7f82;background:#193747}
html[data-theme="dark"] .gtic-date-month.is-selected{border-color:#2ac1bb;background:#168b86;color:#fff}
html[data-theme="dark"] .gtic-date-time-row{border-color:#30495c;background:#142a39}
html[data-theme="dark"] .gtic-date-time-select{border-color:#3a5265;background:#0f2230;color:#edf5fa}
html[data-theme="dark"] .gtic-date-actions{border-color:#304758}
html[data-theme="dark"] .gtic-date-action{border-color:#375064;background:#172d3d;color:#c8d8e1}
html[data-theme="dark"] .gtic-date-action.is-primary{border-color:#28bcb7;background:#168b86;color:#fff}

@media(max-width:920px){
  .gtic-date-button{min-height:42px!important;height:42px!important}
}
@media(max-width:640px){
  body.gtic-date-picker-open{overflow:hidden!important}
  .gtic-date-popover{
    right:8px!important;
    bottom:max(8px,env(safe-area-inset-bottom,0px))!important;
    left:8px!important;
    top:auto!important;
    width:auto!important;
    max-width:none!important;
    max-height:calc(100dvh - max(16px,env(safe-area-inset-top,0px)) - max(16px,env(safe-area-inset-bottom,0px)))!important;
    overflow:auto;
    padding:15px;
    border-radius:24px;
    transform-origin:bottom center;
  }
  .gtic-date-popover.is-open{animation:gticDateMobileOpen .18s ease-out both}
  @keyframes gticDateMobileOpen{from{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:none}}
  .gtic-date-day{min-height:40px;border-radius:13px;font-size:13px}
  .gtic-date-head{grid-template-columns:40px minmax(0,1fr) 40px 40px}
  .gtic-date-nav,.gtic-date-close{width:40px;height:40px;min-width:40px}
  .gtic-date-time-select{min-height:42px;height:42px}
}
