How to customize your preorders using CSS
STOQ lets you add custom CSS to style preorder elements on your storefront. You can change the appearance of the preorder button, badge, disclaimer, countdown timer, progress bar, payment options, modal, and more. All CSS rules are added through the CSS field in each offer's Advanced settings and apply to your live storefront.
How to Add Custom CSS
The CSS field is located inside the Advanced section of each preorder offer.
- From your Shopify admin, open the STOQ app.
- Go to Preorders > Offers tab.
- Click on the offer you want to customize.
- Click Advanced in the sidebar.
- Scroll to the Currency & custom styles section.
- Enter your CSS rules in the CSS field.
- Click Save changes at the top of the page.
- Visit your storefront and do a hard refresh (Ctrl+Shift+R or Cmd+Shift+R) to see the changes.




CSS Selectors Reference
STOQ adds specific CSS classes to preorder elements on your storefront. Use these selectors to target and style individual elements.
Product Page Elements
These selectors target preorder elements that appear on product pages.
Selector | Description |
|---|---|
| The main preorder button that replaces the "Add to cart" button. |
| The preorder description text shown below the button (shipping timeline, payment info). |
| The preorder badge shown near the product title. |
| The countdown timer element for scheduled offers. |
| The progress bar showing preorder limit usage. |
| The discount badge shown when a preorder discount is applied. |
| The discounted price element when a preorder discount is active. |
| The original price with a strikethrough when a discount is applied. |
Payment Options Elements
These selectors target the payment option elements shown on the product page when the offer has multiple payment choices.
Selector | Description |
|---|---|
| The full payment options widget container. |
| An individual payment option row. |
| The container holding the radio input and label for a payment option. |
| The radio button input for selecting a payment option. |
| The title text of a payment option. |
| The container for the payment option description. |
| The description text inside a payment option. |
Terms and Acknowledgement Elements
These selectors target the terms checkbox and acknowledgement elements.
Selector | Description |
|---|---|
| The container for the terms acknowledgement checkbox. |
| The checkbox input element. |
| The label text next to the checkbox. |
Preorder Modal Elements
The preorder modal appears when a customer clicks the preorder button and needs to confirm their order. Modal elements use the .stoq-preorder-modal parent class.
Selector | Description |
|---|---|
| The root container for the entire preorder modal. |
| The modal backdrop overlay. |
| The modal dialog box. |
| The modal header title text. |
| The product information section inside the modal. |
| The product name inside the modal. |
| The variant name inside the modal. |
| The disclaimer text inside the modal. |
| The "Continue" (accept) button in the modal. |
| The "Cancel" (reject) button in the modal. |
| The container holding the modal action buttons. |
Collection and Other Page Elements
These selectors target preorder elements on collection, search, and other pages.
Selector | Description |
|---|---|
| The preorder button on collection pages. |
| The container for the preorder button on collection pages. |
| The quick-add preorder button. |
General Container Elements
These selectors target general wrapper and container elements.
Selector | Description |
|---|---|
| The general wrapper around STOQ-injected elements. |
| The inline variant of the wrapper. |
| Hidden form input elements added by STOQ. |
CSS Examples
Here are practical examples you can copy and customize. All examples use !important to ensure styles override your theme's defaults.
Change the Preorder Button Color
.restock-rocket-preorder-button {
background-color: #000000 !important;
color: #ffffff !important;
border: none !important;
}
Change the Preorder Button on Hover
.restock-rocket-preorder-button:hover {
background-color: #333333 !important;
color: #ffffff !important;
}
Make the Preorder Button Full Width
.restock-rocket-preorder-button {
width: 100% !important;
max-width: 100% !important;
}
Add a Border Radius to the Preorder Button
.restock-rocket-preorder-button {
border-radius: 50px !important;
}
Change the Preorder Badge Style
.restock-rocket-preorder-badge {
background-color: #ff6600 !important;
color: #ffffff !important;
font-size: 12px !important;
padding: 4px 10px !important;
border-radius: 4px !important;
}
Style the Countdown Timer
.restock-rocket-preorder-countdown-timer {
background-color: #f5f5f5 !important;
border: 1px solid #e0e0e0 !important;
border-radius: 8px !important;
padding: 12px !important;
}
Customize the Progress Bar
.restock-rocket-preorder-progress-bar {
border-radius: 4px !important;
overflow: hidden !important;
height: 8px !important;
}
Style the Preorder Description Text
.restock-rocket-preorder-description {
font-size: 13px !important;
color: #666666 !important;
margin-top: 8px !important;
}
Change the Discount Badge Appearance
.restock-rocket-preorder-discount-badge {
background-color: #e60000 !important;
color: #ffffff !important;
font-weight: bold !important;
border-radius: 20px !important;
padding: 2px 8px !important;
}
Customize the Strikethrough Price
.restock-rocket-price-strike {
color: #999999 !important;
text-decoration: line-through !important;
font-size: 14px !important;
}
.restock-rocket-discounted-price {
color: #e60000 !important;
font-weight: bold !important;
}
Style the Payment Options Widget
.restock-rocket-payment-widget {
border: 1px solid #ddd !important;
border-radius: 8px !important;
}
.restock-rocket-payment-option {
padding: 12px !important;
}
.restock-rocket-payment-title {
font-weight: 600 !important;
color: #333333 !important;
}
Customize the Preorder Modal
.stoq-preorder-modal #preorderContainer {
border-radius: 16px !important;
max-width: 500px !important;
}
.stoq-preorder-modal #preorder-accept-button {
background-color: #000000 !important;
border-radius: 8px !important;
font-size: 16px !important;
}
.stoq-preorder-modal #preorder-reject-button {
border-radius: 8px !important;
color: #999999 !important;
}
Hide the Preorder Badge
.restock-rocket-preorder-badge {
display: none !important;
}
Hide the Preorder Description
.restock-rocket-preorder-description {
display: none !important;
}
Troubleshooting
Problem | Solution |
|---|---|
My CSS changes are not showing on the storefront | Make sure you clicked Save changes after entering your CSS. Then visit your storefront and do a hard refresh (Ctrl+Shift+R on Windows or Cmd+Shift+R on Mac) to bypass the browser cache. If the changes still do not appear, try adding |
My CSS works on the product page but not on collection pages | Collection pages use different selectors. Use |
My theme overrides my custom styles | Shopify themes may use more specific CSS selectors that override your styles. Add |
The preorder modal styles are not applying | Modal elements require the |
FAQs
Q: Is the CSS field per-offer or global?
A: The CSS field is per-offer. Each preorder offer can have its own custom CSS. This lets you style different preorder campaigns differently.
Q: Can I use the CSS field to hide elements?
A: Yes. Use display: none !important; on any selector to hide that element. For example, .restock-rocket-preorder-badge { display: none !important; } hides the preorder badge.
Q: How do I find additional CSS selectors on my storefront?
A: Right-click on any preorder element in your browser and select Inspect to open developer tools. This shows the HTML structure and CSS classes applied to each element, including any STOQ-specific classes not listed here.
Q: Do CSS changes affect the admin preview?
A: No. The admin preview inside STOQ may not reflect all custom CSS changes. Always check your live storefront to verify how CSS rules look to your customers.
Q: Can I add animations or transitions?
A: Yes. You can use standard CSS animations and transitions. However, be aware that users with the "prefers-reduced-motion" accessibility setting enabled may not see animations, as STOQ respects this browser preference for the preorder modal.
Updated on: 25/04/2026
Thank you!