/* platform.date-field — calendar popover for a date/datetime field. Tokens only. */
.uidf { position: relative; }
.uidf .uidf__input { cursor: pointer; }

.uidf__pop {
  position: absolute; top: 100%; left: 0; z-index: 40; margin-top: 6px;
  width: 268px; padding: 10px;
  background: var(--ui-surface-panel, #fff);
  border: 1px solid var(--ui-border-subtle, rgba(148,163,184,.24));
  border-radius: var(--ui-radius-lg, 14px);
  box-shadow: 0 18px 48px rgba(2,8,23,.28);
  color: var(--ui-text-primary, #1f2937);
  font-family: var(--ui-font-sans, system-ui, sans-serif);
}
.uidf__head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 6px; }
.uidf__title { font-size: 13px; font-weight: 600; }
.uidf__nav {
  font: inherit; cursor: pointer; width: 26px; height: 26px; line-height: 1;
  border-radius: var(--ui-radius-md, 8px); border: 1px solid var(--ui-border-subtle, rgba(148,163,184,.24));
  background: var(--ui-surface-raised, #f8fafc); color: var(--ui-text-primary, #1f2937);
}
.uidf__nav:hover { border-color: var(--ui-accent-brand, #37b7ff); }
.uidf__wd, .uidf__grid { display: grid; grid-template-columns: repeat(7, 1fr); gap: 2px; }
.uidf__wd > div { text-align: center; font-size: 10px; color: var(--ui-text-muted, #6b7280); padding: 3px 0; }
.uidf__day {
  font: inherit; font-size: 12px; cursor: pointer; aspect-ratio: 1 / 1;
  border: none; border-radius: var(--ui-radius-md, 8px); background: transparent;
  color: var(--ui-text-primary, #1f2937);
}
.uidf__day:hover { background: var(--ui-surface-raised, rgba(148,163,184,.16)); }
.uidf__day.is-other { color: var(--ui-text-muted, #9aa4b2); }
.uidf__day.is-today { box-shadow: inset 0 0 0 1px var(--ui-accent-brand, #37b7ff); }
.uidf__day.is-sel { background: var(--ui-accent-brand, #37b7ff); color: #04121f; font-weight: 600; }
.uidf__timerow { margin-top: 8px; }
.uidf__time {
  width: 100%; font: inherit; font-size: 13px; padding: 7px 9px;
  border-radius: var(--ui-radius-md, 8px); border: 1px solid var(--ui-border-subtle, rgba(148,163,184,.24));
  background: var(--ui-surface-page, #fff); color: var(--ui-text-primary, #1f2937); outline: none;
}
.uidf__time:focus { border-color: var(--ui-accent-brand, #37b7ff); }
.uidf__foot { display: flex; align-items: center; gap: 8px; margin-top: 10px; }
.uidf__link {
  font: inherit; font-size: 12px; cursor: pointer; background: none; border: none; padding: 4px 2px;
  color: var(--ui-text-muted, #6b7280);
}
.uidf__link:hover { color: var(--ui-accent-brand, #37b7ff); }
.uidf__done {
  font: inherit; font-size: 12px; font-weight: 600; cursor: pointer; margin-left: auto;
  padding: 6px 14px; border-radius: var(--ui-radius-md, 8px); border: none;
  background: var(--ui-accent-brand, #37b7ff); color: #04121f;
}
