.dnc-dialog-form {
  display: flex;
  flex-direction: column;
  gap: @spacing-md;
}

.dnc-roll-dialog,
.dnc-roll-dialog .window-content,
.dnc-dialog-form,
.dnc-dialog-form p,
.dnc-dialog-form label,
.dnc-dialog-form label > span {
  color: @color-ink;
}

.dnc-dialog-form p {
  margin: 0;
}

.dnc-dialog-form label {
  display: flex;
  flex-direction: column;
  gap: @spacing-sm;
  font-weight: 700;
}

.dnc-dialog-form label > span {
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.dnc-roll-dialog .window-content {
  background: linear-gradient(180deg, #f7efe0 0%, #e3d0b1 100%);
}

.dnc-mission-pack-mode,
.dnc-mission-pack-note {
  font-size: 0.9rem;
}

.dnc-mission-pack-campaign {
  gap: @spacing-lg;
}

.dnc-mission-pack-hero {
  padding: @spacing-lg;
  border: 1px solid fade(@color-border, 35%);
  border-radius: @radius-md;
  background:
    linear-gradient(180deg, fade(#ffffff, 65%) 0%, fade(@color-panel, 68%) 100%),
    linear-gradient(135deg, fade(@color-accent, 8%) 0%, fade(@color-accent, 0%) 100%);
  box-shadow: 0 8px 18px fade(@color-shadow, 10%);
}

.dnc-mission-pack-kicker {
  margin: 0 0 0.25rem;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: fade(@color-accent, 82%);
}

.dnc-mission-pack-hero h2 {
  margin: 0;
  font-family: @font-display;
  font-size: 1.4rem;
  line-height: 1.1;
  color: @color-accent;
}

.dnc-mission-pack-subtitle {
  margin-top: 0.2rem;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: fade(@color-border, 78%);
}

.dnc-mission-pack-intro {
  margin-top: @spacing-sm;
  color: @color-muted;
}

.dnc-mission-pack-meta-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: @spacing-md;
}

.dnc-mission-pack-meta-card {
  display: grid;
  gap: 0.2rem;
  padding: @spacing-md;
  border: 1px solid fade(@color-border, 30%);
  border-radius: @radius-md;
  background: fade(#ffffff, 42%);
}

.dnc-mission-pack-meta-card span {
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: @color-muted;
}

.dnc-mission-pack-meta-card strong {
  font-size: 1rem;
}

.dnc-mission-pack-section {
  display: grid;
  gap: @spacing-md;
}

.dnc-mission-pack-select {
  padding: @spacing-md;
  border: 1px solid fade(@color-border, 32%);
  border-radius: @radius-md;
  background: fade(#ffffff, 36%);
}

.dnc-mission-pack-assignments {
  display: grid;
  gap: @spacing-md;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.dnc-mission-pack-assignment {
  display: grid;
  gap: @spacing-sm;
  padding: @spacing-md;
  border: 1px solid fade(@color-border, 35%);
  border-radius: @radius-md;
  background: fade(#ffffff, 38%);
  box-shadow: inset 0 1px 0 fade(#ffffff, 55%);
}

.dnc-mission-pack-assignment span {
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.dnc-mission-pack-note {
  color: @color-muted;
}

.dnc-mission-pack-note-foot {
  padding: @spacing-md;
  border-top: 1px solid fade(@color-border, 24%);
}

.dnc-mission-pack-dialog .window-header {
  background:
    linear-gradient(180deg, fade(#fdf6e7, 96%) 0%, fade(#ead4aa, 96%) 100%),
    linear-gradient(90deg, fade(@color-accent, 12%) 0%, fade(@color-accent, 0%) 100%);
  border-bottom: 1px solid fade(@color-border, 35%);
}

.dnc-mission-pack-dialog .window-title {
  color: @color-accent;
  font-family: @font-display;
  letter-spacing: 0.03em;
  text-shadow: none;
}

.dnc-mission-pack-dialog .window-header button {
  color: @color-ink;
}

@media (max-width: 640px) {
  .dnc-mission-pack-meta-grid,
  .dnc-mission-pack-assignments {
    grid-template-columns: 1fr;
  }
}
