    .ds-modal-close {
      position: absolute;
      top: var(--ds-space-4);
      right: var(--ds-space-5);
      width: 2rem;
      height: 2rem;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      border: none;
      border-radius: var(--ds-radius-sm);
      background: transparent;
      color: var(--ds-text-muted);
      font-size: 1.35rem;
      line-height: 1;
      cursor: pointer;
      transition: color 0.12s ease, background-color 0.12s ease;
    }
    .ds-modal-close:hover {
      color: var(--ds-text-secondary);
      background: var(--ds-surface-inset);
    }
    .ds-modal-body {
      flex: 1 1 auto;
      min-height: 0;
      min-width: 0;
      overflow-x: hidden;
      overflow-y: auto;
      -webkit-overflow-scrolling: touch;
      padding: var(--ds-space-5) var(--ds-space-6);
    }
    .ds-modal-footer {
      display: flex;
      justify-content: flex-end;
      gap: var(--ds-space-3);
      flex-shrink: 0;
      padding: var(--ds-space-4) var(--ds-space-6) var(--ds-space-5);
      background: var(--ds-surface);
    }
    .ds-modal-field { margin-bottom: var(--ds-space-5); }
    .ds-field-label {
      display: block;
      margin-bottom: var(--ds-space-2);
      font-size: var(--ds-text-caption);
      font-weight: var(--ds-weight-medium);
      color: var(--ds-text-secondary);
    }
