.variableList {
  background: var(--base-muted, #f5f5f5);
  padding: 6px 16px;
  max-height: 236px;
  overflow: auto;
  border-bottom: 1px solid #e5e5e5;
  position: sticky;
  top: 0;
  z-index: 20;

  .header {
    display: flex;
    flex-direction: column;
    gap: 6px;
  }

  .titleWrapper {
    display: flex;
    align-items: baseline;
    gap: 8px;
    flex: 1;
    min-width: 0;
  }

  .title {
    font-size: 16px;
    font-weight: 600;
    color: #0a0a0a;
    flex-shrink: 0;
    white-space: nowrap;
  }

  .description {
    font-size: 12px;
    margin-left: 8px;
    color: rgba(0, 0, 0, 0.45);
    flex: 1;
    min-width: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .link {
    color: #2563eb;
    cursor: pointer;
  }

  .toggle {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 14px;
    color: #111827;
    cursor: pointer;
  }

  .addButton {
    border: 1px solid #e5e7eb;
    border-radius: 999px;
    background: #fff;
    padding: 6px 12px;
    font-size: 12px;
    color: #111827;
    cursor: pointer;
  }

  .actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    flex-wrap: wrap;
    width: 100%;
  }

  .topRow {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 6px;
    flex-wrap: nowrap;
  }

  .actionsCompact {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
  }

  .actionButton {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    color: #111827;
    cursor: pointer;
    border: 1px solid #e5e7eb;
    border-radius: var(--border-radius-rounded-md, 8px);
    background: #fff;
    padding: 6px 12px;
    transition: all 0.2s ease;

    &:disabled {
      cursor: not-allowed;
      color: rgba(0, 0, 0, 0.35);
      border-color: #f0f0f0;
      background: #fafafa;
    }
  }

  .grid {
    margin-top: 8px;
    display: grid;
    grid-template-columns: repeat(2, minmax(140px, 1fr));
    grid-auto-rows: minmax(0, auto);
    gap: 8px;
  }

  .collapsed {
    display: none;
  }

  .item {
    display: flex;
    position: relative;

    &:hover .hideBadge {
      opacity: 1;
    }

    &:focus-within .hideBadge {
      opacity: 1;
    }
  }

  .name {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    color: var(--base-secondary-foreground, #171717);
    font-size: var(--text-xs-font-size, 12px);
    font-style: normal;
    font-weight: bold;
    line-height: var(--text-xs-line-height, 16px); /* 133.333% */
    border-radius: var(--border-radius-rounded-md, 8px) 0 0
      var(--border-radius-rounded-md, 8px);
    background: #fff;
    box-shadow: var(--shadow-xs-offset-x, 0) var(--shadow-xs-offset-y, 1px)
      var(--shadow-xs-blur-radius, 2px) var(--shadow-xs-spread-radius, 0)
      var(--shadow-xs-color, rgba(0, 0, 0, 0.05));
    padding: 7px 12px;
    width: 50%;
    text-align: center;
    border: var(--border-width-border, 1px) solid var(--base-input, #e5e5e5);
    border-right: none;
  }

  .hideBadge {
    position: absolute;
    top: -6px;
    right: -4px;
    width: 14px;
    height: 14px;
    padding: 0;
    border: none;
    background: transparent;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    opacity: 0;
    transition: opacity 0.15s ease;
    color: var(--muted-foreground, #9ca3af);

    &:hover {
      color: var(--secondary-foreground, #111827);
    }

    &:focus-visible {
      opacity: 1;
      outline: 2px solid var(--primary, #0f63ee);
      outline-offset: 2px;
    }
  }

  .value {
    position: relative;
    font-size: 13px;
    font-weight: 600;
    white-space: nowrap;
    overflow: visible;
    color: #171717;

    font-size: var(--text-sm-font-size, 14px);
    font-style: normal;
    font-weight: var(--font-weight-normal, 400);
    line-height: var(--text-sm-line-height, 20px); /* 142.857% */
    input {
      border-radius: 0 var(--border-radius-rounded-md, 8px)
        var(--border-radius-rounded-md, 8px) 0;
      border: var(--border-width-border, 1px) solid var(--base-input, #e5e5e5);
      background: var(--custom-background-dark-input-30, #fff);
      padding: 8px 12px;
      box-shadow: var(--shadow-xs-offset-x, 0) var(--shadow-xs-offset-y, 1px)
        var(--shadow-xs-blur-radius, 2px) var(--shadow-xs-spread-radius, 0)
        var(--shadow-xs-color, rgba(0, 0, 0, 0.05));
    }
  }

  .hiddenSection {
    margin-top: 12px;
    padding: 0;
  }

  .hiddenHeader {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-bottom: 8px;
  }

  .hiddenTitle {
    font-size: 14px;
    font-weight: 600;
    color: #0a0a0a;
  }

  .hiddenList {
    margin-top: 0;
    display: grid;
    grid-template-columns: repeat(2, minmax(140px, 1fr));
    grid-auto-rows: minmax(0, auto);
    gap: 8px;
  }

  .hiddenItem {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    align-items: center;
  }

  .hiddenEmpty {
    font-size: 12px;
    color: rgba(0, 0, 0, 0.45);
    margin-top: 4px;
    padding-left: 16px;
  }
}
