/* One compact date chooser, using the existing Engineering Bay modal language. */
#delivery-date-dialog.hc-delivery-date-dialog { box-sizing: border-box; width: min(420px, 100%); max-width: 420px; max-height: calc(100dvh - 16px); margin: auto; padding: 0; border: 0; border-radius: var(--r-lg, 10px); overflow: hidden; }
#delivery-date-dialog .hc-date-card { box-sizing: border-box; display: flex; flex-direction: column; max-height: calc(100dvh - 16px); padding: 20px 24px; overflow: hidden; background: var(--c-bg, #fff); color: var(--c-ink, #10161a); }
#delivery-date-dialog .hc-date-head { flex: 0 0 auto; min-height: 44px; align-items: center; gap: 12px; }
#delivery-date-dialog .hc-date-head h2 { margin: 0; font-size: 1.375rem; line-height: 1.3; font-weight: 650; letter-spacing: -.01em; }
#delivery-date-dialog .hc-icon-button { box-sizing: border-box; flex: 0 0 44px; width: 44px; height: 44px; min-width: 44px; min-height: 44px; touch-action: manipulation; }
#delivery-date-dialog .hc-date-description { flex: 0 0 auto; margin: 8px 0 12px; color: var(--c-ink-2, #48555e); font-size: .875rem; line-height: 1.5; }
#delivery-date-dialog .hc-date-month-nav { flex: 0 0 auto; display: grid; grid-template-columns: 44px minmax(0, 1fr) 44px; align-items: center; gap: 8px; margin-bottom: 4px; }
#delivery-date-dialog .hc-date-month-nav h3 { margin: 0; color: var(--c-ink, #10161a); font-size: 1rem; line-height: 1.4; font-weight: 600; text-align: center; text-transform: capitalize; }
#delivery-date-dialog .hc-date-prev svg { transform: rotate(90deg); }
#delivery-date-dialog .hc-date-next svg { transform: rotate(-90deg); }
#delivery-date-dialog .hc-date-month-nav button:disabled { opacity: .4; cursor: default; }
#delivery-date-dialog .hc-date-calendar-scroll { flex: 1 1 auto; min-height: 0; max-height: 340px; overflow-x: hidden; overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; scrollbar-color: var(--c-line, #d8dfe2) transparent; }
#delivery-date-dialog .hc-date-table { width: 100%; table-layout: fixed; margin: 0; border: 0; border-collapse: collapse; border-spacing: 0; }
#delivery-date-dialog .hc-date-table th { position: sticky; top: 0; z-index: 1; height: 28px; margin: 0; padding: 0; border: 0; background: var(--c-bg, #fff); color: var(--c-ink-2, #48555e); font-size: .75rem; line-height: 1.5; font-weight: 500; text-align: center; }
#delivery-date-dialog .hc-date-table th.hc-date-weekend { color: var(--c-ink-3, #68747c); }
#delivery-date-dialog .hc-date-table td { margin: 0; padding: 0; border: 0; text-align: center; vertical-align: middle; }
#delivery-date-dialog [data-delivery-day] { box-sizing: border-box; display: block; width: 100%; min-width: 44px; min-height: 44px; margin: 0; padding: 10px 0; border: 1px solid transparent; border-radius: var(--r-sm, 6px); background: transparent; color: var(--c-ink, #10161a); font: inherit; font-size: .875rem; line-height: 1.4; font-variant-numeric: tabular-nums; font-weight: 500; text-align: center; cursor: pointer; touch-action: manipulation; }
#delivery-date-dialog [data-delivery-day]:hover:not(:disabled) { background: var(--c-bg-soft, #f4f6f7); }
#delivery-date-dialog [data-delivery-day]:disabled { color: var(--c-ink-3, #68747c); font-weight: 400; cursor: default; }
#delivery-date-dialog td[aria-selected="true"] [data-delivery-day] { border-color: var(--c-ink, #10161a); background: var(--c-ink, #10161a); color: var(--c-bg, #fff); font-weight: 650; }
#delivery-date-dialog .hc-date-summary { flex: 0 0 auto; margin: 10px 0 0; color: var(--c-ink-2, #48555e); font-size: .8125rem; line-height: 1.5; font-variant-numeric: tabular-nums; }
#delivery-date-dialog .hc-date-error { flex: 0 0 auto; margin: 8px 0 0; color: var(--c-accent, #c8102e); font-size: .8125rem; line-height: 1.5; }
#delivery-date-dialog .hc-date-actions { flex: 0 0 auto; display: flex; align-items: stretch; gap: 8px; margin-top: 12px; padding-top: 12px; border-top: 1px solid var(--c-line, #d8dfe2); }
#delivery-date-dialog .hc-date-reset { flex: 0 0 auto; min-height: 44px; margin: 0; padding: 10px 8px; border: 0; border-radius: var(--r-sm, 6px); background: transparent; color: var(--c-ink-2, #48555e); font: inherit; font-size: .8125rem; line-height: 1.5; text-decoration: underline dotted; text-underline-offset: 4px; cursor: pointer; touch-action: manipulation; }
#delivery-date-dialog .hc-date-reset:hover { color: var(--c-ink, #10161a); text-decoration-style: solid; }
#delivery-date-dialog .hc-date-actions .hc-button { flex: 1 1 auto; min-width: 0; min-height: 44px; padding: 10px 12px; font-size: .875rem; line-height: 1.5; }
#delivery-date-dialog button:focus-visible { position: relative; z-index: 2; outline: 2px solid var(--c-focus, #1f6feb); outline-offset: -2px; }
#delivery-date-dialog [hidden] { display: none; }
@media (max-width: 479px) { #delivery-date-dialog .hc-date-card { padding: 16px; } }
@media (max-width: 359px) {
  #delivery-date-dialog .hc-date-card { padding-inline: 6px; }
  #delivery-date-dialog .hc-date-head, #delivery-date-dialog .hc-date-description, #delivery-date-dialog .hc-date-summary, #delivery-date-dialog .hc-date-error { margin-inline: 10px; }
  #delivery-date-dialog .hc-date-calendar-scroll { scrollbar-width: none; }
  #delivery-date-dialog .hc-date-calendar-scroll::-webkit-scrollbar { display: none; }
}
@media print { #delivery-date-dialog { display: none; } }
