/* Date selection opens one native task surface. The shared dialog owns its
   top layer, inert background and scrim. This sheet follows primary-hub.css;
   canonical text actions remain in action-controls.css, loaded last. */
.primary-hub-day-dialog {
  box-sizing: border-box;
  width: min(var(--layout-width), calc(var(--control-height) * 26), calc(100vw - var(--space-16)));
  max-width: calc(100vw - var(--space-16));
  max-height: calc(100dvh - var(--space-16));
  min-width: 0;
  overflow-y: auto;
  overscroll-behavior: contain;
  font: var(--type-body)/var(--type-body-lh) var(--font-sans);
}
.primary-hub-day-dialog:has(.primary-hub-day-task.is-single) {
  width: min(calc(var(--control-height) * 18), calc(100vw - var(--space-16)));
}
.primary-hub-day-dialog .dlg-x {
  box-sizing: border-box;
  width: var(--control-height);
  height: var(--control-height);
  min-width: var(--control-height);
  min-height: var(--control-height);
  margin: var(--space-4) var(--space-4) 0 0;
  font: inherit;
  transform: none;
  box-shadow: none;
}
.primary-hub-day-dialog .dlg-x:is(:hover, :active) {
  transform: none;
  box-shadow: none;
}
.primary-hub-day-dialog .btn {
  min-width: var(--control-height);
  min-height: var(--control-height);
  max-width: 100%;
  font-size: var(--type-body);
  white-space: normal;
  overflow-wrap: anywhere;
}
.primary-hub-day-dialog-body {
  display: grid;
  min-width: 0;
  gap: var(--space-12);
  padding: var(--pad-dialog);
}
.primary-hub-day-dialog-body > .primary-hub-state {
  margin: 0;
}
.primary-hub-day-status:not([hidden]) {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-6);
  padding: var(--space-6);
  border: 1px solid var(--border);
  color: var(--ink);
  background: var(--surface);
}
.primary-hub-day-heading {
  display: grid;
  grid-template-columns: minmax(0, 1fr) max-content;
  align-items: start;
  gap: var(--space-8);
  min-width: 0;
  padding-inline-end: calc(var(--control-height) + var(--space-4));
}
.primary-hub-day-title {
  display: grid;
  min-width: 0;
  gap: var(--space-4);
}
.primary-hub-day-title > h2 {
  width: fit-content;
  max-width: 100%;
  margin: 0;
  color: var(--ink);
  font-family: var(--font-display);
  font-size: var(--type-h2);
  line-height: var(--type-h2-lh);
  font-weight: var(--weight-display);
  overflow-wrap: anywhere;
}
.primary-hub-day-total {
  margin: 0;
  color: var(--ink-muted);
  font-size: var(--type-body);
  font-variant-numeric: tabular-nums;
  overflow-wrap: anywhere;
}
.primary-hub-day-navigation {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--space-4);
  min-width: 0;
}
/* The dialog lives under body, outside .primary-hub and its icon rules. */
.primary-hub-day-dialog [data-primary-day-step] {
  appearance: none;
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 var(--control-height);
  width: var(--control-height);
  height: var(--control-height);
  min-width: var(--control-height);
  min-height: var(--control-height);
  padding: var(--space-4);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  background: transparent;
  color: var(--ink);
  font: inherit;
  cursor: pointer;
  transition: border-color var(--motion-fast) var(--ease-ui), background-color var(--motion-fast) var(--ease-ui);
}
.primary-hub-day-dialog [data-primary-day-step] > svg {
  display: block;
  width: var(--icon-size);
  height: var(--icon-size);
}
.primary-hub-day-dialog [data-primary-day-step]:not(:disabled):hover {
  border-color: var(--action-ink);
  background: var(--surface-hover);
}
.primary-hub-day-dialog [data-primary-day-step]:not(:disabled):active {
  box-shadow: inset 0 0 0 var(--space-1) var(--action-ink);
}
.primary-hub-day-dialog [data-primary-day-step]:focus-visible {
  outline: var(--space-1) solid var(--ring);
  outline-offset: var(--space-2);
}
.primary-hub-day-dialog [data-primary-day-step]:disabled {
  color: var(--ink-muted);
  cursor: not-allowed;
}
.primary-hub-day-task {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(0, 3fr);
  align-items: start;
  gap: var(--space-12);
  min-width: 0;
}
.primary-hub-day-task.is-single {
  grid-template-columns: minmax(0, 1fr);
}
.primary-hub-day-detail {
  display: grid;
  align-content: start;
  min-width: 0;
  gap: var(--space-8);
}
/* Each request owns one complete row; bounded overflow keeps the selected
   detail close even when the day's inventory contains many requests. */
.primary-hub-act-list {
  display: grid;
  box-sizing: border-box;
  grid-template-columns: minmax(0, 1fr);
  grid-auto-rows: max-content;
  align-content: start;
  gap: var(--space-4);
  min-width: 0;
  max-height: min(calc(var(--control-height) * 10), calc(100dvh - var(--control-height) * 4));
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  margin: 0;
  padding: var(--space-3);
  border: 0;
}
.primary-hub-act-list > legend {
  margin-block-end: var(--space-4);
  padding: 0;
  color: var(--ink);
  font-size: var(--type-body);
  font-weight: 600;
  overflow-wrap: anywhere;
}
.primary-hub-act-choice {
  display: grid;
  box-sizing: border-box;
  grid-template-columns: calc(var(--control-height) / 2) minmax(0, 1fr);
  align-items: start;
  gap: var(--space-6);
  min-width: 0;
  min-height: var(--control-height);
  padding: var(--space-6);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  background: var(--surface);
  color: var(--ink);
  font-size: var(--type-body);
  cursor: pointer;
  scroll-margin-block: var(--space-3);
  transition: border-color var(--motion-fast) var(--ease-ui), background-color var(--motion-fast) var(--ease-ui);
}
.primary-hub-act-choice:has(input:not(:disabled)):hover {
  border-color: var(--action-ink);
  background: var(--surface-hover);
}
.primary-hub-act-choice:has(input:not(:disabled)):active {
  box-shadow: inset 0 0 0 var(--space-1) var(--action-ink);
}
.primary-hub-act-choice:has(input:checked) {
  border-color: var(--action-ink);
  background: var(--action-tint);
  box-shadow: inset var(--space-1) 0 0 var(--action-ink);
}
.primary-hub-act-choice:has(input:focus-visible) {
  outline: var(--space-1) solid var(--ring);
  outline-offset: var(--space-2);
}
.primary-hub-act-choice > input[type='radio'] {
  width: calc(var(--control-height) / 2);
  height: calc(var(--control-height) / 2);
  min-height: 0;
  margin: var(--space-2) 0 0;
  accent-color: var(--action-ink);
}
.primary-hub-act-choice > input[type='radio']:focus {
  box-shadow: none;
}
.primary-hub-act-choice:has(input:disabled) {
  cursor: not-allowed;
}
.primary-hub-act-choice > span {
  display: grid;
  grid-template-columns: minmax(0, 1fr) max-content;
  align-items: baseline;
  gap: var(--space-2) var(--space-4);
  min-width: 0;
  overflow-wrap: anywhere;
}
.primary-hub-act-choice-name {
  min-width: 0;
  color: var(--ink);
  font-weight: 600;
}
.primary-hub-act-choice-amount {
  color: var(--ink);
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  text-align: end;
  white-space: nowrap;
}
.primary-hub-act-choice-meta {
  grid-column: 1 / -1;
  color: var(--ink-muted);
  font-size: var(--type-h4);
  line-height: var(--type-h4-lh);
}
.primary-hub-act-choice:has(input:checked) .primary-hub-act-choice-name {
  font-weight: 700;
}
.primary-hub-day-dialog .primary-hub-offer {
  box-sizing: border-box;
  width: 100%;
  padding: var(--space-12);
}
.primary-hub-day-detail .primary-hub-offer-head {
  gap: var(--space-4) var(--space-8);
}
.primary-hub-day-detail .primary-hub-offer > .help {
  margin-block: var(--space-4);
}
.primary-hub-day-detail .primary-hub-offer-facts {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, calc(var(--control-height) * 6)), 1fr));
  gap: var(--space-8);
  margin-block: var(--space-12);
}
.primary-hub-day-detail .primary-hub-facts dt {
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
}
.primary-hub-day-detail .primary-hub-offer-actions {
  gap: var(--space-4);
}
.primary-hub-day-ranges {
  min-width: 0;
  border-block-start: 1px solid var(--border);
}
.primary-hub-day-ranges > summary {
  display: list-item;
  list-style-position: inside;
  box-sizing: border-box;
  min-height: var(--control-height);
  padding-block: var(--space-6);
  color: var(--ink);
  font-size: var(--type-body);
  cursor: pointer;
}
.primary-hub-day-ranges > summary:hover {
  color: var(--action-ink);
  text-decoration: underline;
  text-underline-offset: var(--space-2);
}
.primary-hub-day-ranges > summary:focus-visible {
  outline: var(--space-1) solid var(--ring);
  outline-offset: var(--space-2);
}
.primary-hub-day-ranges .primary-hub-day-services {
  gap: var(--space-8);
  margin-block: var(--space-8);
}
.primary-hub-day-ranges .primary-hub-day-service {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: baseline;
  gap: var(--space-4);
  padding-inline-start: var(--space-4);
}
.primary-hub-day-ranges .primary-hub-day-service > :nth-child(2) {
  text-align: end;
}
.primary-hub-day-ranges .primary-hub-day-service > span {
  font-variant-numeric: tabular-nums;
  overflow-wrap: anywhere;
}
.primary-hub-day-ranges > p {
  margin-block: var(--space-4);
  color: var(--ink-muted);
}
@media (max-width: 899.98px) {
  .primary-hub-day-task {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-8);
  }
  .primary-hub-act-list {
    max-height: min(calc(var(--control-height) * 6), 40dvh);
  }
}
@media (max-width: 600px) {
  .primary-hub-day-dialog-body {
    gap: var(--space-8);
    padding: var(--space-8);
  }
  .primary-hub-day-heading {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-6);
    padding-inline-end: 0;
  }
  .primary-hub-day-title {
    padding-inline-end: calc(var(--control-height) + var(--space-4));
  }
  .primary-hub-day-dialog .primary-hub-offer {
    padding: var(--space-8);
  }
  .primary-hub-day-detail .primary-hub-offer-facts {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-6);
    margin-block: var(--space-8);
  }
}
@media (prefers-reduced-motion: reduce) {
  .primary-hub-act-choice,
  .primary-hub-day-dialog [data-primary-day-step] {
    transition: none;
  }
}
