<aside class="note beta">
<h4>Developer preview</h4>
<p>Style settings are currently only available as part of the <a href="/docs/storefronts/themes/architecture/blocks/theme-blocks/developer-preview">Flex sections developer preview</a>.</p>
</aside>

Style settings are a new category of [input settings](/docs/storefronts/themes/architecture/settings/input-settings) that can hold values that map to CSS properties. Style settings can hold values for different breakpoints, unlike other input settings which share the same value across breakpoints.

There are two categories of Style settings:

<table>
  <thead>
    <tr>
      <th>Category</th>
      <th>Description</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>
        <a href="#style-panel-settings">Style panel settings</a>
      </td>
      <td>
        Shopify-organized settings that map to categories of CSS properties, such as layout, size, and spacing.
      </td>
    </tr>
     <tr>
      <td>
        Style input settings<br/> (coming soon)
      </td>
      <td>
        Input settings that can hold a value adaptable by breakpoint tied to the CSS property it can control.
      </td>
    </tr>
  </tbody>
</table>

To learn how to access the values of these settings for use in your theme, refer to [usage](#usage).

## Standard attributes

The following are standard attributes across all style settings:

<table>
  <thead>
    <tr>
      <th>Attribute</th>
      <th>Description</th>
      <th>Required</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>
        <code>type</code>
      </td>
      <td>
        The setting type, which can be any of the <a href="#style-panel-settings">style panel</a> setting types or input setting types (coming soon).
      </td>
      <td>
        Yes
      </td>
    </tr>
    <tr>
      <td>
        <code>id</code>
      </td>
      <td>
        The setting ID, which is used to access the setting value.
      </td>
      <td>
        Yes
      </td>
    </tr>
    <tr>
      <td>
        <code>label</code>
      </td>
      <td>
        The setting label, which will show in the theme editor.
      </td>
      <td>
        Yes
      </td>
    </tr>
    <tr>
      <td>
        <code>default</code>
      </td>
      <td>
        The default value(s) for the setting.
      </td>
      <td>
        No
      </td>
    </tr>
    <tr>
      <td>
        <code>info</code>
      </td>
      <td>
        An option for informational text about the setting.
      </td>
      <td>
        No
      </td>
    </tr>
  </tbody>
</table>

## Style panel settings

Style panel settings combine multiple inputs into a single panel, simplifying the setup of merchant-editable style settings in your theme. By adding a single style panel setting, you get a full set of related style settings that map to CSS properties. Style panel settings are evergreen, which means that additional CSS properties will be added to them over time.

The available types of panel settings are:

- [Size](#size)
- [Spacing](#spacing)
- [Layout](#layout)

More types of panel settings will be introduced in the future.

## Size

The style setting panel of type `style.size_panel` outputs settings to control the width and height of an element.

For example, the following setting generates the following output:

<p>
<div class="react-code-block" data-preset="file">
<div class="react-code-block-preload ThemeMode-dim">
<div class="react-code-block-preload-bar "></div>
<div class="react-code-block-preload-placeholder-container">
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>

</div>
</div>

<script data-option="filename" data-value="Setting"></script>

<script type="text/plain" data-language="json">
{
  "type": "style.size_panel",
  "id": "size",
  "label": "Size",
  "default": {
    "width": "25%",
    "height": "auto"
  }
}
</script>

</div>
</p>


<p>
<div class="react-code-block" data-preset="output">
<div class="react-code-block-preload ">
<div class="react-code-block-preload-bar "></div>
<div class="react-code-block-preload-placeholder-container">

</div>
</div>


<script type="text/plain" data-image="/assets/themes/settings/style/size.png">Size panel setting</script>

</div>
</p>


The following properties and corresponding values are supported:

<div class="table-container">
  <table>
    <thead>
      <tr>
        <th>Properties</th>
        <th>Supported values</th>
        <th>Default</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td>
          <code>width</code>, <code>min-width</code>
        </td>
        <td>
          <code>auto</code>, <code>%</code>, <code>px</code>
        </td>
        <td>
          <code>auto</code>
        </td>
      </tr>
      <tr>
        <td>
          <code>height</code>, <code>min-height</code>
        </td>
        <td>
          <code>auto</code>, <code>%</code>, <code>px</code>
        </td>
        <td>
          <code>auto</code>
        </td>
      </tr>
      <tr>
        <td>
          <code>max-width</code>, <code>max-height</code>
        </td>
        <td>
          <code>%</code>, <code>px</code>, <code>none</code>
        </td>
        <td>
          <code>none</code>
        </td>
      </tr>
      <tr>
        <td>
          <code>flex-grow</code>
        </td>
        <td>
          <code>number</code>
        </td>
        <td>
          <code>0</code>
        </td>
      </tr>
      <tr>
        <td>
          <code>flex-shrink</code>
        </td>
        <td>
          <code>number</code>
        </td>
        <td>
          <code>1</code>
        </td>
      </tr>
      <tr>
        <td>
          <code>flex-basis</code>
        </td>
        <td>
          <code>auto</code>, <code>%</code>, <code>px</code>
        </td>
        <td>
          <code>auto</code>
        </td>
      </tr>
    </tbody>
  </table>
</div>

## Spacing

The style setting panel of type `style.spacing_panel` outputs settings to control the padding and margin of an element.

For example, the following setting generates the following output:

<p>
<div class="react-code-block" data-preset="file">
<div class="react-code-block-preload ThemeMode-dim">
<div class="react-code-block-preload-bar "></div>
<div class="react-code-block-preload-placeholder-container">
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>

</div>
</div>

<script data-option="filename" data-value="Setting"></script>

<script type="text/plain" data-language="json">
{
  "type": "style.spacing_panel",
  "id": "spacing",
  "label": "Spacing",
  "default": {
    "padding": "16px 2px",
    "margin": "0px"
  }
}
</script>

</div>
</p>


<p>
<div class="react-code-block" data-preset="output">
<div class="react-code-block-preload ">
<div class="react-code-block-preload-bar "></div>
<div class="react-code-block-preload-placeholder-container">

</div>
</div>


<script type="text/plain" data-image="/assets/themes/settings/style/spacing.png">Spacing panel setting</script>

</div>
</p>


The following properties and corresponding values are supported:

<div class="table-container">
  <table>
    <thead>
      <tr>
        <th>Properties</th>
        <th>Supported values</th>
        <th>Default</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td>
          <div>
            <code>padding</code>
            <ul>
              <li><code>padding-left</code></li>
              <li><code>padding-right</code></li>
              <li><code>padding-top</code></li>
              <li><code>padding-bottom</code></li>
            </ul>
          </div>
          <div>
            <code>padding-block</code>
            <ul>
              <li><code>padding-block-start</code></li>
              <li><code>padding-block-end</code></li>
            </ul>
          </div>
          <div>
            <code>padding-inline</code>
            <ul>
              <li><code>padding-inline-start</code></li>
              <li><code>padding-inline-end</code></li>
            </ul>
          </div>
        </td>
        <td>
          <code>%</code>, <code>px</code>
        </td>
        <td>
          <code>0px</code>
        </td>
      </tr>
      <tr>
        <td>
          <div>
            <code>margin</code>
            <ul>
              <li><code>margin-left</code></li>
              <li><code>margin-right</code></li>
              <li><code>margin-top</code></li>
              <li><code>margin-bottom</code></li>
            </ul>
          </div>
          <div>
            <code>margin-block</code>
            <ul>
              <li><code>margin-block-start</code></li>
              <li><code>margin-block-end</code></li>
            </ul>
          </div>
          <div>
            <code>margin-inline</code>
            <ul>
              <li><code>margin-inline-start</code></li>
              <li><code>margin-inline-end</code></li>
            </ul>
          </div>
        </td>
        <td>
          <code>%</code>, <code>px</code>
        </td>
        <td>
          <code>0px</code>
        </td>
      </tr>
    </tbody>
  </table>
</div>

> Note
> The `style.spacing_panel` setting supports shorthand and longhand properties as input for `margin` and `padding`. It also supports a combination of longhand and shorthand properties, in which case declarations are merged in the order they are encountered and the theme editor will show the resulting computed values for the longhand properties.
>
> [Physical properties](https://developer.mozilla.org/en-US/docs/Glossary/Physical_properties) are supported as input, but the storefront output will always be mapped to the corresponding [logical properties](https://developer.mozilla.org/en-US/docs/Glossary/Logical_properties).

## Layout

The style setting panel of type `style.layout_panel` outputs settings to control the direction, positioning, and alignment of items inside a container.

For example, the following setting generates the following output:

<p>
<div class="react-code-block" data-preset="file">
<div class="react-code-block-preload ThemeMode-dim">
<div class="react-code-block-preload-bar "></div>
<div class="react-code-block-preload-placeholder-container">
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>

</div>
</div>

<script data-option="filename" data-value="Setting"></script>

<script type="text/plain" data-language="json">
{
  "type": "style.layout_panel",
  "id": "layout",
  "label": "Layout",
  "default": {
    "display": "flex",
    "flex-direction": "row",
    "flex-wrap": "wrap",
    "gap": "20px",
    "justify-items": "flex-start",
    "align-items": "center"
  }
}
</script>

</div>
</p>


<p>
<div class="react-code-block" data-preset="output">
<div class="react-code-block-preload ">
<div class="react-code-block-preload-bar "></div>
<div class="react-code-block-preload-placeholder-container">

</div>
</div>


<script type="text/plain" data-image="/assets/themes/settings/style/layout.png">Layout panel setting</script>

</div>
</p>


The following properties and corresponding values are supported:

<div class="table-container">
<table>
  <thead>
    <tr>
      <th>Properties</th>
      <th>Supported values</th>
      <th>Default</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>
        <code>display</code>
      </td>
      <td>
        <code>flex</code>
      </td>
      <td>
        <code>flex</code>
      </td>
    </tr>
    <tr>
      <td>
        <code>flex-direction</code>
      </td>
      <td>
        <code>row</code>, <code>column</code>
      </td>
      <td>
        <code>row</code>
      </td>
    </tr>
    <tr>
      <td>
        <code>flex-wrap</code>
      </td>
      <td>
        <code>wrap</code>, <code>no-wrap</code>
      </td>
      <td>
        <code>no-wrap</code>
      </td>
    </tr>
    <tr>
      <td>
        <code>align-items</code>
      </td>
      <td>
        <code>flex-start</code>, <code>center</code>, <code>flex-end</code>, <code>baseline</code>, <code>stretch</code>
      </td>
      <td>
        <code>flex-start</code>
      </td>
    </tr>
    <tr>
      <td>
        <code>justify-content</code>
      </td>
      <td>
        <code>flex-start</code>, <code>center</code>, <code>flex-end</code>, <code>space-around</code>, <code>space-between</code>, <code>space-evenly</code>
      </td>
      <td>
        <code>flex-start</code>
      </td>
    </tr>
    <tr>
      <td>
        <code>align-content</code>
      </td>
      <td>
        <code>flex-start</code>, <code>center</code>, <code>flex-end</code>, <code>space-around</code>, <code>space-between</code>, <code>space-evenly</code>, <code>baseline</code>, <code>normal</code>
      </td>
      <td>
        <code>normal</code>
      </td>
    </tr>
    <tr>
      <td>
        <div>
          <code>gap</code>
          <ul>
            <li><code>column-gap</code></li>
            <li><code>row-gap</code></li>
          </ul>
        </div>
      </td>
      <td>
        <code>%</code>, <code>px</code>
      </td>
      <td>
        <code>0px</code>
      </td>
    </tr>
  </tbody>
</table>
</div>

## Usage

When working with style settings, you should familiarize yourself with the following:

- [Using style settings](#using-style-settings)
- [Accessing style settings](#accessing-style-settings)
- [Applying style settings on elements](#applying-style-settings-on-elements)
- [Providing breakpoint-specific values for style settings](#providing-breakpoint-specific-values-for-style-settings)
- [Overriding default style setting values](#overriding-default-style-setting-values)

### Using style settings

You can currently use style settings in the following places:

- [Sections](/docs/storefronts/themes/architecture/sections/section-schema#settings)
- [Theme blocks](/docs/storefronts/themes/architecture/blocks/theme-blocks/schema#settings)
- [Theme settings](/docs/storefronts/themes/architecture/sections/section-schema#settings)
- [Section-defined blocks](/docs/storefronts/themes/architecture/blocks/section-blocks)

And you'll also soon be able to use them in:

- [App blocks](/docs/storefronts/themes/architecture/blocks/app-blocks)

### Accessing style settings

Like other [input settings](/docs/storefronts/themes/architecture/settings/input-settings), style settings can be accessed in Liquid using the `id` attribute of their associated setting. For example, given a setting with an `id` of `"layout"`:

```liquid
Theme settings: {{ settings.layout }}

Section: {{ section.settings.layout }}

Block: {{ block.settings.layout }}
```

### Applying style settings on elements

Style settings can be applied on any given element using the `class_list` filter in Liquid:

<p>
<div class="react-code-block" data-preset="file">
<div class="react-code-block-preload ThemeMode-dim">
<div class="react-code-block-preload-bar "></div>
<div class="react-code-block-preload-placeholder-container">
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>

</div>
</div>

<script data-option="filename" data-value="/blocks/group.liquid"></script>

<script type="text/plain" data-language="liquid">
<div class="group {{ block.settings.layout | class_list }}">
  {% content_for "blocks" %}
</div>

{% schema %}
{
  "name": "Group",
  "blocks": [{"type": "@theme"}, {"type": "@app"}],
  "settings": [
    {
      "type": "style.layout_panel",
      "id": "layout",
      "label": "Layout",
      "default": {
        "flex-direction": "column"
      }
    }
  ]
}
{% endschema %}
</script>

</div>
</p>


This will apply all of the default values for this style setting to this element, and any merchant edits made in the theme editor.

You can apply style settings on multiple different elements, or apply multiple different style settings to the same element. For example:

<p>
<div class="react-code-block" data-preset="file">
<div class="react-code-block-preload ThemeMode-dim">
<div class="react-code-block-preload-bar "></div>
<div class="react-code-block-preload-placeholder-container">
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>

</div>
</div>

<script data-option="filename" data-value="/blocks/group.liquid"></script>

<script type="text/plain" data-language="liquid">
<div class=”wrapper {{ block.settings.spacing | class_list }}”>
  <div class="group {{ block.settings.layout | class_list }}">
    {% content_for “blocks” %}
  </div>
</div>

{% schema %}
{
  "name": "Group",
  "blocks": [{"type": "@theme"}, {"type": "@app"}],
  "settings": [
    {
      "type": "style.layout_panel",
      "id": "layout",
      "label": "Layout",
      "default": {
        "flex-direction": "column"
      }
    },
    {
      "type": "style.spacing_panel",
      "id": "spacing",
      "label": "Spacing",
      "default": {
        "padding": "20px"
      }
    }
  ]
}
{% endschema %}
</script>

</div>
</p>


If you want to apply all the style settings in a section or block on the same element, you can use the `class_list` filter directly on `block.settings` or `section.settings`:

<p>
<div class="react-code-block" data-preset="file">
<div class="react-code-block-preload ThemeMode-dim">
<div class="react-code-block-preload-bar "></div>
<div class="react-code-block-preload-placeholder-container">
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>

</div>
</div>

<script data-option="filename" data-value="/blocks/group.liquid"></script>

<script type="text/plain" data-language="liquid">
<div class="group {{ block.settings | class_list }}">
  {% content_for “blocks” %}
</div>

{% schema %}
{
  "name": "Group",
  "blocks": [{"type": "@theme"}, {"type": "@app"}],
  "settings": [
    {
      "type": "style.layout_panel",
      "id": "layout",
      "label": "Layout",
      "default": {
        "flex-direction": "column"
      }
    },
    {
      "type": "style.spacing_panel",
      "id": "spacing",
      "label": "Spacing",
      "default": {
        "padding": "20px"
      }
    }
  ]
}
{% endschema %}
</script>

</div>
</p>


> Caution
> You can apply multiple [style panel settings](#style-panel-settings) of different types on the same element, but applying multiple style panel settings of the _same type_ on the _same element_ will result in them overriding one another.

#### Applying style settings on the appropriate element

You can use style settings as many times as you wish, and apply them on any element. However, it’s important to note that where you apply style settings can have an impact.

For example, here are some recommendations on where to apply style settings:

- We recommend applying the `style.layout_panel` setting on the element that wraps the `{% content_for "blocks" %}` tag in situations where you want to provide merchants with complete layout flexibility.
- We recommend that the `style.size_panel` setting be applied on the outermost element if you plan on using it to allow merchants to control the size of blocks. This requirement is due to the fact that some properties, like `flex-grow`, `flex-shrink` and `flex-basis` only have an effect if they are applied on the direct descendants of the flexbox container element, which will typically be the wrapper of the `{% content_for "blocks" %}` tag.


With these recommendations in mind, here is an example of applying the `style.size_panel` setting on the outermost element of a theme block:

<p>
<div class="react-code-block" data-preset="file">
<div class="react-code-block-preload ThemeMode-dim">
<div class="react-code-block-preload-bar "></div>
<div class="react-code-block-preload-placeholder-container">
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>

</div>
</div>

<script data-option="filename" data-value="/blocks/button.liquid"></script>

<script type="text/plain" data-language="liquid">
<button class="button {{ block.settings.size | class_list }}" {{ block.shopify_attributes }}>
  {{ block.settings.text }}
</button>

{% schema %}
{
  "name": "Button",
  "tag": null,
  "settings": [
    {
      "type": "text",
      "id": "text",
      "label": "Content",
      "default": "Shop now"
    },
    {
      "type": "style.size_panel",
      "id": "size",
      "label": "Size",
      "default": {
        "flex-grow": "1"
      }
    }
  ]
}
{% endschema %}
</script>

</div>
</p>


> Note
> Shopify automatically wraps the contents of theme blocks in a wrapper element. To opt-out of this behavior, you can set the tag attribute to `null`. When the tag attribute is set to `null`, Shopify will no longer wrap the contents of the block in a wrapper element, and instead directly output the contents of the block.
>
> It’s important that the block be tagged with `{{ block.shopify_attributes }}` for it to be detected by the theme editor. For additional details, refer to [Rendering blocks without a wrapper](/docs/storefronts/themes/architecture/blocks/theme-blocks/schema#rendering-blocks-without-a-wrapper).

### Providing breakpoint-specific values for style settings

Style settings support storing values for different breakpoints. You can specify values specific to each breakpoint in the default settings and presets.

To author breakpoint-specific values for styles, you can override a specific style property for a given breakpoint using `@media` queries

For example, here is how you can update the default value for the `padding` and `margin` properties in a `style.spacing_panel` setting:

<p>
<div class="react-code-block" data-preset="file">
<div class="react-code-block-preload ThemeMode-dim">
<div class="react-code-block-preload-bar "></div>
<div class="react-code-block-preload-placeholder-container">
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>

</div>
</div>

<script data-option="filename" data-value="Setting"></script>

<script type="text/plain" data-language="json">
{
  "type": "style.spacing_panel",
  "id": "spacing",
  "label": "Spacing",
  "default": {
    "padding": "20px",
    "margin": "10px",
    "@media (--mobile)": {
      "padding": "10px",
      "margin": "0px"
    }
  }
}
</script>

</div>
</p>


In the theme editor, these values will appear as overrides in the sidebar when a merchant switches over to the mobile breakpoint.

> Note
> Currently, only the mobile breakpoint is available, but you can expect more breakpoints to be introduced in the future, such as a tablet breakpoint.
> The default value for the mobile breakpoint is set to `750` pixels and below. In a future release, themes will be able to configure this value and the value of other breakpoints introduced in the future.

### Overriding default style setting values

You can override default values for style settings in presets. Merchant overrides will be stored in JSON templates.

Here is an example of providing a `Columns` preset that flows horizontally and a `Rows` preset that flows vertically:

<p>
<div class="react-code-block" data-preset="file">
<div class="react-code-block-preload ThemeMode-dim">
<div class="react-code-block-preload-bar "></div>
<div class="react-code-block-preload-placeholder-container">
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>

</div>
</div>

<script data-option="filename" data-value="/blocks/group.liquid"></script>

<script type="text/plain" data-language="liquid">
<div class="
  group
  {{ block.settings.layout | class_list }}
  {{ block.settings.spacing | class_list }}
">
  {% content_for "blocks" %}
</div>

{% schema %}
{
  "name": "Group",
  "blocks": [{"type": "@theme"}, {"type": "@app"}],
  "settings": [
    {
      "type": "style.layout_panel",
      "id": "layout",
      "label": "Layout",
      "default": {
        "display": "flex",
        "gap": "20px"
        "flex-direction": "row",
        "flex-wrap": "wrap"
      }
    }
  ],
  "presets": [
    {
      "name": "Columns",
    },
    {
      "name": "Rows",
      "settings": {
        "flex-direction": "column"
      }
    }
  ]
}
{% endschema %}
</script>

</div>
</p>


As you can see, only the `flex-direction` property needs to be overridden, while other properties will remain set to their default values.

Merchant overrides made in the theme editor will be stored in the corresponding template file that the merchant is editing:

<p>
<div class="react-code-block" data-preset="file">
<div class="react-code-block-preload ThemeMode-dim">
<div class="react-code-block-preload-bar "></div>
<div class="react-code-block-preload-placeholder-container">
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>
<div class="react-code-block-preload-code-container">
<div class="react-code-block-preload-codeline-number"></div>
<div class="react-code-block-preload-codeline"></div>
</div>

</div>
</div>

<script data-option="filename" data-value="/templates/index.json"></script>

<script type="text/plain" data-language="json">
{
  "sections": {
    "section-id": {
      "type": "section",
      "block_order": ["block-id"],
      "blocks": {
        "block-id": {
          "type": "group",
          "settings": {
            "layout": {
              "flex-direction": "column",
              "@media (--mobile)": {
                "column-gap": "0px",
                "row-gap": "0px"
              }
            }
          }
        }
      }
    }
  },
  "order": [
    "section-id"
  ]
}
</script>

</div>
</p>