.smart-holds-dashboard {
  padding: 1.5rem;
}

.smart-holds-dashboard__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  margin-bottom: 1.5rem;
}

.smart-holds-dashboard__title {
  margin: 0;
  font-size: 1.5rem;
  color: var(--wa-color-text-normal);
}

.smart-holds-dashboard__config {
  padding: 0.5rem 1rem;
  background: var(--wa-color-brand-fill-normal);
  color: var(--wa-color-brand-on-normal);
  text-decoration: none;
  border-radius: var(--wa-border-radius-s);
  font-weight: 600;
}

.smart-holds-dashboard__section-title {
  margin: 0 0 1rem;
  font-size: 1.125rem;
  color: var(--wa-color-text-normal);
}

.smart-holds-dashboard__chart {
  margin-bottom: 2rem;
}

.smart-holds-dashboard__canvas {
  display: block;
  width: 100%;
  min-width: 0;
  height: 300px;
}

.smart-holds-dashboard__grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 1rem;
}

.smart-holds-dashboard__card {
  border: 1px solid var(--wa-color-neutral-border-quiet);
  border-radius: var(--wa-border-radius-m);
  padding: 1rem;
  background: var(--wa-color-surface-raised);
}

.smart-holds-dashboard__card--risk {
  border-color: var(--wa-color-danger-border-normal);
  background: var(--wa-color-danger-fill-quiet);
}

.smart-holds-dashboard__hotel {
  margin: 0 0 0.75rem;
  font-size: 1rem;
  color: var(--wa-color-text-normal);
}

.smart-holds-dashboard__stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.5rem;
  margin: 0 0 0.75rem;
}

.smart-holds-dashboard__stats dt {
  font-size: 0.75rem;
  color: var(--wa-color-text-quiet);
}

.smart-holds-dashboard__stats dd {
  margin: 0;
  font-size: 1rem;
  font-weight: 600;
  color: var(--wa-color-text-normal);
}

.smart-holds-dashboard__alert {
  display: inline-block;
  padding: 0.125rem 0.5rem;
  border-radius: var(--wa-border-radius-s);
  background: var(--wa-color-danger-fill-quiet);
  color: var(--wa-color-danger-on-quiet);
  font-size: 0.75rem;
  font-weight: 600;
  text-transform: uppercase;
}

.smart-holds-dashboard__ok {
  display: inline-block;
  padding: 0.125rem 0.5rem;
  border-radius: var(--wa-border-radius-s);
  background: var(--wa-color-success-fill-quiet);
  color: var(--wa-color-success-fill-loud);
  font-size: 0.75rem;
  font-weight: 600;
  text-transform: uppercase;
}

.smart-holds-dashboard__empty {
  color: var(--wa-color-text-quiet);
  padding: 2rem 0;
}

/* HMS-337 — Figma 600:21884 page + 600:18885 dialog. The redesigned page uses
   .smart-holds__*; .smart-holds-dashboard__* above still serves post_event. */

.smart-holds__header { padding-bottom: var(--wa-space-l); }

.smart-holds__breadcrumb {
  color: var(--wa-color-text-quiet);
  font-size: var(--wa-font-size-s);
}
.smart-holds__breadcrumb i { font-size: var(--wa-font-size-s); color: var(--wa-color-text-quiet); }
.smart-holds__breadcrumb [aria-current="page"] { color: var(--wa-color-text-normal); }

.smart-holds__title {
  font-family: var(--wa-font-family-heading);
  font-weight: var(--wa-font-weight-heading);
  font-size: var(--wa-font-size-2xl);
  margin: var(--wa-space-2xs) 0 0;
}

.smart-holds__banner { margin-bottom: var(--wa-space-l); }

/* Top row — risk card + forecast chart, chart takes the wider track. */
.smart-holds__top {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) minmax(0, 1.6fr);
  gap: var(--wa-space-m);
  margin-bottom: var(--wa-space-l);
}
@media (max-width: 900px) {
  .smart-holds__top { grid-template-columns: 1fr; }
}

.smart-holds__risk,
.smart-holds__chart {
  border: 1px solid var(--wa-color-surface-border);
  border-radius: var(--wa-border-radius-m);
  background: var(--wa-color-surface-raised);
  padding: var(--wa-space-m);
  min-width: 0;
}

.smart-holds__section-title {
  margin: 0 0 var(--wa-space-m);
  font-family: var(--wa-font-family-heading);
  font-weight: var(--wa-font-weight-heading);
  font-size: var(--wa-font-size-l);
}

.smart-holds__risk-form wa-radio { margin-bottom: var(--wa-space-s); }

.smart-holds__canvas {
  display: block;
  width: 100%;
  min-width: 0;
  height: 300px;
}

/* Hotel cards. */
.smart-holds__grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: var(--wa-space-m);
  margin-bottom: var(--wa-space-l);
}

.smart-holds__card {
  border: 1px solid var(--wa-color-surface-border);
  border-radius: var(--wa-border-radius-m);
  background: var(--wa-color-surface-raised);
  padding: var(--wa-space-m);
}

.smart-holds__card-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--wa-space-s);
}

.smart-holds__hotel {
  margin: 0;
  font-family: var(--wa-font-family-heading);
  font-weight: var(--wa-font-weight-heading);
  font-size: var(--wa-font-size-m);
}

.smart-holds__chip {
  display: inline-flex;
  align-items: center;
  gap: var(--wa-space-2xs);
  padding: var(--wa-space-2xs) var(--wa-space-xs);
  border-radius: var(--wa-border-radius-l);
  font-size: var(--wa-font-size-s);
  font-weight: var(--wa-font-weight-semibold);
  white-space: nowrap;
}
.smart-holds__chip--success { background: var(--wa-color-success-90); color: var(--wa-color-success); }
.smart-holds__chip--warning { background: var(--wa-color-warning-90); color: var(--wa-color-warning); }

.smart-holds__stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--wa-space-s);
  margin: var(--wa-space-m) 0;
}
/* Each stat is a flex column with the label allowed to grow: a wrapping label
   ("Held (Active):" on narrow cards) pushes every value down together instead
   of dropping one value off the shared baseline. */
.smart-holds__stats > div {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.smart-holds__stats dt {
  flex: 1;
  color: var(--wa-color-text-quiet);
  font-size: var(--wa-font-size-xs);
}
.smart-holds__stats dd {
  margin: 0;
  font-weight: var(--wa-font-weight-semibold);
  font-size: var(--wa-font-size-l);
}
@media (max-width: 520px) {
  .smart-holds__stats { grid-template-columns: repeat(2, 1fr); }
}

.smart-holds__empty { color: var(--wa-color-text-quiet); }

/* Footer bar — guidance note left, Override Hold right. */
.smart-holds__footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--wa-space-m);
  flex-wrap: wrap;
  border: 1px solid var(--wa-color-surface-border);
  border-radius: var(--wa-border-radius-m);
  background: var(--wa-color-surface-lowered);
  padding: var(--wa-space-s) var(--wa-space-m);
}
.smart-holds__footer-note {
  margin: 0;
  color: var(--wa-color-text-quiet);
  font-size: var(--wa-font-size-s);
  display: flex;
  align-items: center;
  gap: var(--wa-space-xs);
}

/* Override dialog internals (600:18885). */
.hold-override__intro {
  color: var(--wa-color-text-quiet);
  font-size: var(--wa-font-size-s);
  margin: 0 0 var(--wa-space-m);
}

.hold-override__pickers {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--wa-space-s);
  margin-bottom: var(--wa-space-m);
}
@media (max-width: 520px) {
  .hold-override__pickers { grid-template-columns: 1fr; }
  .hold-override__stats { grid-template-columns: repeat(2, 1fr); }
}

.hold-override__stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--wa-space-s);
  background: var(--wa-color-surface-lowered);
  border-radius: var(--wa-border-radius-m);
  padding: var(--wa-space-s) var(--wa-space-m);
  margin: 0 0 var(--wa-space-m);
}
.hold-override__stats dt { color: var(--wa-color-text-quiet); font-size: var(--wa-font-size-s); }
.hold-override__stats dd { margin: 0; font-weight: var(--wa-font-weight-semibold); }

.hold-override wa-input,
.hold-override wa-select,
.hold-override wa-textarea { margin-bottom: var(--wa-space-m); }

.hold-override__delta { margin-bottom: var(--wa-space-m); }

.hold-override__actions {
  display: flex;
  justify-content: flex-end;
  gap: var(--wa-space-s);
  margin-top: var(--wa-space-m);
}
