1. Customising your gift message widget

How to customize the gift message widget's wording and CSS styling, including where each setting lives since the September update.

Written By Giftnote Team

Last updated About 1 hour ago

You can change the wording, the colours and the layout of the gift message widget without touching your theme code. Most of it lives in the Giftnote app. A few options live in your Shopify theme editor, on the Giftnote Control Panel app embed.

What you want to changeWhere to do it
The words shown to customersGiftnote app: Settings β†’ Gift Orders β†’ Configure (open the design live on that surface, then its Theme, Checkout or Order status tab)
Which delivery methods customers can choose (Send Now, Send Later, On Delivery, On Fulfillment)Giftnote app: Settings β†’ Gift Orders β†’ Advanced settings β†’ Delivery Methods. The widget follows these settings.
Which delivery method is selected first, hiding On Delivery or the phone fieldGiftnote app: your widget design (Settings β†’ Gift Orders β†’ Configure)
Colours, font and light or dark styleTheme editor: App embeds β†’ Giftnote Control Panel β†’ Style settings
Spacing, borders, hiding elementsTheme editor: App embeds β†’ Giftnote Control Panel β†’ Modal Styling (CSS)
Where the widget appearsTheme editor: add or move the Giftnote app blocks

Changing the wording

Every piece of customer-facing text in the widget is editable in your widget design. This includes the widget title and description, the add and edit button labels, the pop-up title, field labels and example text, and the delivery-method labels.

Edit the wording here rather than overriding it with CSS. Text set in the design stays correct across widget updates; text faked with CSS breaks the moment the markup changes.

Write for your own customers. The default copy is deliberately generic. Merchants get better completion rates when the button says something specific to their store, such as Add a handwritten-style note or Send this as a gift.

If you are not on Shopify Plus, use the design's text fields to explain shipping and contact expectations on the earlier step, since you cannot edit the checkout itself.

Changing colours and styling

Your theme settings include a Modal Styling (CSS) field, described as Apply custom CSS rules to the modal. Anything you put here applies to the gift message modal.

The modal's root element is #giftnote-modal. Target elements inside it from there.

A worked example

/* Match the modal to your brand */
#giftnote-modal {
  font-family: "Your Brand Font", -apple-system, sans-serif;
}

#giftnote-modal button[type="submit"] {
  background-color: #101219 !important;
  border-radius: 4px !important;
}

Let an AI assistant write the CSS for you

Copy this prompt into ChatGPT or Claude, fill in the bracketed parts, and paste what it returns into Modal Styling (CSS).

I sell on Shopify and use the Giftnote app. I want to restyle Giftnote's gift message
pop-up to match my brand. I'll paste your CSS into the "Modal Styling (CSS)" field on the
Giftnote Control Panel app embed in my Shopify theme editor.

My brand:
- Store URL: [your store URL] (if you can browse, look at my store for fonts and colours)
- Font: [font name, only one my store already loads]
- Button colour: [hex], button text colour: [hex]
- Corner style: [square / slightly rounded / rounded]

How the pop-up is built:
- Everything sits inside #giftnote-modal. The card is #content.
- Heading #giftnote-modal-title, intro text #giftnote-modal-description.
- Field boxes: #to-field, #from-field, #message-field, #email-field, #phone-field,
  #date-field, #time-field. Inputs are inside them.
- Delivery method tabs: #method button. The selected one has .active.
- Save button: #content #save-button. Close: #close-button.

Rules:
- Only use the IDs above. Don't target generated utility classes.
- Add !important to every declaration.
- If you draw a border on a field box, also set outline: none and box-shadow: none on
  the input inside it, or a blue box appears inside the field when it's selected.
- Keep text contrast at WCAG AA or better.
- Don't hide or restyle #powered (the "Powered by Giftnote" line).

Give me one complete CSS block I can paste in, with a short comment above each part.

Paste the complete block each time you make a change, rather than appending fragments. Keep a copy outside the admin field so you always have the current version.

Rules that will save you time

Use !important liberally. The widget carries its own utility classes, and specificity conflicts are the most common reason a rule appears to do nothing.

Test in a private window. Settings are cached, so a stale page is the second most common reason a change looks like it failed.

Check your rule actually applied. View the page source and look for your CSS in the injected style block. If it is missing, the field did not save it. If it is present but not applying, it is a specificity problem.

Settings in your theme editor (Giftnote Control Panel)

In Shopify, go to Online Store β†’ Themes β†’ Customize, open App embeds and expand Giftnote Control Panel. The toggle next to it turns Giftnote on for the whole theme. If it's off, no gift message widget shows anywhere in your store.

Shopify theme editor App embeds panel: Giftnote Control Panel toggled on and expanded, showing the Title, Description, Image (optional) and Image Height settings, with Style settings starting below
SettingWhat it does
Title, Description, Image, Image HeightThe heading, short text and optional image at the top of the gift pop-up.
Theme (Light or Dark), Background, Primary color, Title color, Button font color, Font FamilyThe pop-up's colours and font. Pick colours and a font that match your store.
Widget designOptional. Uses a different Giftnote design on this theme only. Leave it empty to use the design set in the Giftnote app.
Order default method, Gift card default method, Hide "On Delivery" option, Hide phone inputThese are also in your widget design in the Giftnote app (Settings β†’ Gift Orders β†’ Configure), and the Giftnote app's settings are the ones that apply. Set them in the app. Giftnote detects carriers automatically, so most stores leave On Delivery showing.
Giftnote Control Panel app embed settings: Background, Primary color, Title color, Button font color and Font Family, then the Configuration section with Widget design, Order default method and Gift card default method

Seeing "The metaobject definition required for this setting is not available" under Widget design? Leave Widget design empty. Your widget uses the design from the Giftnote app, which is what most stores want. If you need a different design on one theme, email support@giftnote.com.

Developer options

Leave these alone unless a developer asked you to change them.

Giftnote Control Panel app embed, lower settings: Hide "On Delivery" Option, Hide phone input, Disable Focus Trap, Force Modal Open, Gift Message Event (Javascript), Gift Card Event (Javascript) and Modal Styling (CSS)
SettingWhat it does
Disable Focus TrapStops the pop-up capturing keyboard focus. Only for themes that manage focus themselves.
Force Modal OpenKeeps the pop-up open so you can see your changes while styling it. Turn it off again before you save.
Gift Message Event (Javascript), Gift Card Event (Javascript)The name of a JavaScript event Giftnote fires when a gift message, or a gift card with a message, is added. Your theme or another app can listen for it, for example to refresh the cart.
Modal Styling (CSS)Your own CSS for the pop-up. See "Changing colours and styling" above.

Can I remove the "Powered by Giftnote" branding?

It depends on the surface.

On the checkout extension: no. Shopify controls that surface, so the branding there cannot be removed.

On the popup widget and the Multi Gift portal: removing "Powered by Giftnote" is available on the Professional plan. If you're not sure what's possible on your setup, chat with us using the chat button in the help centre or in the app, or email support@giftnote.com, and tell us which widget version you are running.

Changing where the widget appears

Widget placement is set in your theme editor rather than in CSS. Common placements are the product page, the cart drawer and, on Shopify Plus, the checkout itself.

Placement is worth more attention than styling. Moving the widget into the cart drawer has resolved conflicts with other apps for several merchants, and it often lifts completion because the customer has already decided to buy.

If another app's widget is colliding with Giftnote's on the product page, changing placement usually fixes it faster than CSS.

Frequently asked questions

Will my CSS survive a Giftnote update?
Rules targeting #giftnote-modal and stable ids are reliable. Rules targeting generated utility classes can break when the widget updates. Re-check your styling after any significant release.

Can I change the widget layout, not just its appearance?
No. CSS restyles what is there. Structural changes need the custom widget implementation, which is a developer route.

Can I use different styling on mobile?
Yes. Standard media queries work inside the Modal Styling field.

Nothing I put in Modal Styling has any effect. What should I check?
Confirm you saved the theme settings, clear your cache, test in a private window, and check the injected style block in the page source. If your CSS is absent from that block, the field is not receiving it and support should look.

Can I hide the widget on certain products with CSS?
Use product exclusions instead. See the separate article.