        .np-designer,
        .np-designer-overlay-wrap {
            --np-dotted-oval: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0%200%20100%20100' preserveAspectRatio='none'%3E%3Cellipse cx='50' cy='50' rx='48' ry='48' fill='none' stroke='%23000' stroke-opacity='0.55' stroke-width='2' stroke-dasharray='1%205' stroke-linecap='round'/%3E%3C/svg%3E");
        }
        .np-designer.is-dark,
        .np-designer-overlay-wrap.is-dark {
            --np-dotted-oval: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0%200%20100%20100' preserveAspectRatio='none'%3E%3Cellipse cx='50' cy='50' rx='48' ry='48' fill='none' stroke='%23fff' stroke-opacity='0.55' stroke-width='2' stroke-dasharray='1%205' stroke-linecap='round'/%3E%3C/svg%3E");
        }

        form.cart .variations {
            margin-bottom: 10px !important;
        }
        form.cart .variations + .single_variation_wrap .np-designer {
            margin-top: 0 !important;
        }
        .np-designer {
            background: #fafafa;
            border: 1px solid #e5e5e5;
            border-radius: 8px;
            padding: 13px 16px;
            margin-bottom: 5px;
        }
        .np-designer-title {
            margin: 0 0 16px;
            font-size: 14px;
            font-weight: 600;
            color: #1a1a1a;
            margin-left: 10px;
}
        .np-designer-gallery {
            position: relative;
            padding: 0 !important;
            line-height: 0;
            box-sizing: border-box;
        }
        .np-designer-gallery img {
            display: block;
            width: 100%;
            height: auto;
            margin: 0 !important;
            padding: 0 !important;
            vertical-align: top;
            max-width: 100%;
        }

        .np-designer-tabs {
            display: flex;
            gap: 19px;
            margin: 0 0 16px;
            width: 100%;
            box-sizing: border-box;
            border-bottom: 1px solid #e5e5e5;
        }

        .np-designer .np-designer-tab {
            border: none !important;
            border-bottom: 2px solid transparent !important;
            background: none !important;
            color: #999 !important;
            background-image: none !important;
            padding: 10px 14px;
            cursor: pointer;
            border-radius: 0;
            font-weight: 500;
            line-height: 1;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-width: 0;
            min-height: 38px;
            font-size: 15px;
            white-space: nowrap;
            transition: all 0.3s;
            margin-bottom: -1px;
        }
        .np-designer .np-designer-tab:hover {
            color: #666 !important;
        }
        .np-designer .np-designer-tab.is-active {
            border-color: transparent !important;
            border-bottom-color: #1a1a1a !important;
            background: none !important;
            color: #1a1a1a !important;
            background-image: none !important;
            box-shadow: none;
        }
        .np-designer .np-designer-tab:focus-visible {
            outline: 2px solid #111;
            outline-offset: 2px;
        }
        .np-designer button:hover,
        .np-designer button:focus,
        .np-designer button:focus-visible,
        .np-designer button:active,
        .np-designer .button:hover,
        .np-designer .button:focus,
        .np-designer .button:focus-visible,
        .np-designer .button:active,
        .np-designer input[type="button"]:hover,
        .np-designer input[type="button"]:focus,
        .np-designer input[type="button"]:focus-visible,
        .np-designer input[type="button"]:active,
        .np-designer input[type="submit"]:hover,
        .np-designer input[type="submit"]:focus,
        .np-designer input[type="submit"]:focus-visible,
        .np-designer input[type="submit"]:active,
        .np-designer-overlay-wrap button:hover,
        .np-designer-overlay-wrap button:focus,
        .np-designer-overlay-wrap button:focus-visible,
        .np-designer-overlay-wrap button:active {
            background-image: none !important;
            filter: none !important;
            box-shadow: none !important;
            text-shadow: none !important;
        }
        .np-designer-panel {
            display: none;

            border-radius: 5px;

            background: transparent;
            box-sizing: border-box;
        }
        .np-designer-panel.is-active { display: block; }
        .np-designer-upload-slot {
            position: relative;
            padding: 0;
        }
        .np-designer-upload-slot[data-location="logo_arm_left"],
        .np-designer-upload-slot[data-location="logo_arm_right"] {
            display: flex;
            flex-direction: column;
        }
        .np-designer-upload-slot[data-location="logo_arm_left"] .np-designer-arm-selector,
        .np-designer-upload-slot[data-location="logo_arm_right"] .np-designer-arm-selector {
            order: 0;
            width: auto;
            min-width: 0;
            max-width: none;
            margin: 0 6px 8px 6px;
        }
        .np-designer-upload-slot[data-location="logo_arm_left"] .wapf-field-container,
        .np-designer-upload-slot[data-location="logo_arm_left"] .wapf-field,
        .np-designer-upload-slot[data-location="logo_arm_right"] .wapf-field-container,
        .np-designer-upload-slot[data-location="logo_arm_right"] .wapf-field {
            order: 1;
        }
        .np-designer-arm-selector {
            display: flex;
            align-items: center;
            gap: 12px;
            margin: 0 6px 8px 6px;
        }
        .np-designer-arm-selector .np-designer-arm-option {
            flex: 1 1 0;
            min-height: 36px;
            border: 1px solid #111 !important;
            background: #fff !important;
            color: #111 !important;
            border-radius: 4px;
            padding: 8px 8px !important;
            font-size: 15px !important;
            font-weight: 500;
            line-height: 1.1;
            text-align: center;
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            box-shadow: none !important;
        }
        .np-designer-arm-selector .np-designer-arm-option.is-active {
            background: #000 !important;
            color: #fff !important;
            border-color: #000 !important;
        }
        .np-designer-upload-slot .wapf-field-label {
            margin-bottom: 4px;
            display: flex;
            flex-direction: column;
            align-items: center;
            text-align: center;
            color: #111;
        }
        .np-designer-upload-slot .wapf-field-label label,
        .np-designer-upload-slot .wapf-field-label span {
            font-size: 14px;
            font-weight: 500;
            color: #111;
        }
        .np-designer-upload-slot .np-designer-file-name {
            margin-top: 4px;
            font-size: 12px;
            font-weight: 400;
            color: #444;
            line-height: 1.2;
            word-break: break-word;
        }
        .np-designer-upload-slot .np-designer-file-name:empty {
            display: none;
        }
        .np-designer-upload-slot .wapf-field-input {
            position: relative;
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 10px;
            padding: 12px 16px;
            border: 1px solid #e0e0e0;
            border-radius: 6px;
            background: transparent;
            box-sizing: border-box;
        }
        .np-designer-upload-slot .wapf-field-input::before {
            content: '';
            width: 20px;
            height: 20px;
            background-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2020%2020'%3E%3Cpath%20fill='%23333'%20d='M10%202a.75.75%200%200%201%20.75.75v8.19l2.47-2.47a.75.75%200%201%201%201.06%201.06l-3.75%203.75a.75.75%200%200%201-1.06%200L5.72%209.53a.75.75%200%200%201%201.06-1.06l2.47%202.47V2.75A.75.75%200%200%201%2010%202Zm-6%2013a.75.75%200%200%201%20.75-.75h10.5a.75.75%200%200%201%200%201.5H4.75A.75.75%200%200%201%204%2015Z'/%3E%3C/svg%3E");
            background-repeat: no-repeat;
            background-position: center;
            background-size: 20px 20px;
            opacity: 0.7;
            pointer-events: none;
        }
        .np-designer-upload-slot .wapf-field-input input[type="file"] {
            position: absolute;
            inset: 0;
            width: 100%;
            height: 100%;
            opacity: 0;
            cursor: pointer;
            z-index: 1;
        }
        .np-designer-upload-slot .wapf-field-container.np-designer-has-add-elements .wapf-field-input,
        .np-designer-upload-slot .wapf-field.np-designer-has-add-elements .wapf-field-input {
            display: grid;
            grid-template-columns: minmax(0, 1.155fr) minmax(0, 1fr);
            align-items: stretch;
            gap: 12px;
            padding: 0;
            border: 0;
            border-radius: 0;
            background: transparent;
        }
        .np-designer-upload-slot .wapf-field-container.np-designer-has-add-elements .wapf-field-input::before,
        .np-designer-upload-slot .wapf-field.np-designer-has-add-elements .wapf-field-input::before {
            display: none;
        }
        .np-designer-upload-slot .wapf-field-container.np-designer-has-add-elements .wapf-field-label,
        .np-designer-upload-slot .wapf-field.np-designer-has-add-elements .wapf-field-label {
            margin-bottom: 0;
            display: flex;
            flex-direction: row;
            align-items: center;
            justify-content: center;
            gap: 12px;
            text-align: center;
            color: #111;
            line-height: 1;
            grid-column: 1;
            grid-row: 1;
            flex: 1 1 0;
            min-width: 0;
            width: 100%;
            min-height: 45px;
            padding: 10px 14px;
            border: 1px solid #e0e0e0;
            border-radius: 6px;
            background: transparent;
            box-sizing: border-box;
            position: relative;
            z-index: 2;
            pointer-events: none;
        }
        .np-designer-upload-slot .wapf-field-container.np-designer-has-add-elements .wapf-field-label::before,
        .np-designer-upload-slot .wapf-field.np-designer-has-add-elements .wapf-field-label::before {
            content: '';
            width: 20px;
            height: 20px;
            background-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2020%2020'%3E%3Cpath%20fill='%23333'%20d='M10%202a.75.75%200%200%201%20.75.75v8.19l2.47-2.47a.75.75%200%201%201%201.06%201.06l-3.75%203.75a.75.75%200%200%201-1.06%200L5.72%209.53a.75.75%200%200%201%201.06-1.06l2.47%202.47V2.75A.75.75%200%200%201%2010%202Zm-6%2013a.75.75%200%200%201%20.75-.75h10.5a.75.75%200%200%201%200%201.5H4.75A.75.75%200%200%201%204%2015Z'/%3E%3C/svg%3E");
            background-repeat: no-repeat;
            background-position: center;
            background-size: 20px 20px;
            opacity: 0.7;
            flex: 0 0 auto;
            margin-right: 0;
        }
        .np-designer-upload-slot .wapf-field-container.np-designer-has-add-elements .wapf-field-label label,
        .np-designer-upload-slot .wapf-field-container.np-designer-has-add-elements .wapf-field-label span,
        .np-designer-upload-slot .wapf-field.np-designer-has-add-elements .wapf-field-label label,
        .np-designer-upload-slot .wapf-field.np-designer-has-add-elements .wapf-field-label span {
            font-size: 14px;
            font-weight: 500;
            color: #111;
        }
        .np-designer-upload-slot .wapf-field-container.np-designer-has-add-elements .np-designer-file-name,
        .np-designer-upload-slot .wapf-field.np-designer-has-add-elements .np-designer-file-name {
            display: none;
        }
        .np-designer-upload-slot .np-designer-add-elements-btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 12px;
            font-size: 14px;
            font-weight: 500;
            color: #111;
            white-space: nowrap;
            position: relative;
            z-index: 3;
            grid-column: 2;
            grid-row: 1;
            flex: 1 1 0;
            min-width: 0;
            width: 100%;
            min-height: 45px;
            height: 45px;
            align-self: center;
            border: 1px solid #e0e0e0 !important;
            border-radius: 6px;
            background: transparent !important;
            background-image: none !important;
            padding: 0 8px;
            margin: 0;
            cursor: pointer;
            line-height: 1;
            box-shadow: none;
            font-family: inherit;
            box-sizing: border-box;
            text-align: center;
            transition: all 0.3s;
        }
        .np-designer-upload-slot .np-designer-add-elements-btn::before {
            display: none;
            content: none;
        }
        .np-designer-upload-slot .np-designer-add-elements-btn::after {
            content: '';
            width: 20px;
            height: 20px;
            display: inline-block;
            margin-left: 0;
            background: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2064%2064%27%3E%3Cpath%20d%3D%27M%2011%2012%20C%208.791%2012%207%2013.791%207%2016%20L%207%2048%20C%207%2050.209%208.791%2052%2011%2052%20L%2053%2052%20C%2055.209%2052%2057%2050.209%2057%2048%20L%2057%2016%20C%2057%2013.791%2055.209%2012%2053%2012%20L%2011%2012%20z%20M%2012%2016%20L%2052%2016%20C%2052.552%2016%2053%2016.448%2053%2017%20L%2053%2041.042969%20L%2044.794922%2033.501953%20C%2042.788922%2031.657953%2039.704125%2031.661766%2037.703125%2033.509766%20L%2028.951172%2041.59375%20L%2024.15625%2037.492188%20C%2022.19225%2035.812187%2019.297844%2035.816906%2017.339844%2037.503906%20L%2011%2042.964844%20L%2011%2017%20C%2011%2016.448%2011.448%2016%2012%2016%20z%20M%2023%2020%20C%2020.791%2020%2019%2021.791%2019%2024%20C%2019%2026.209%2020.791%2028%2023%2028%20C%2025.209%2028%2027%2026.209%2027%2024%20C%2027%2021.791%2025.209%2020%2023%2020%20z%27/%3E%3C/svg%3E") no-repeat center / 20px 20px;
            pointer-events: none;
            flex: 0 0 auto;
        }
        .np-designer-upload-slot .np-designer-add-elements-btn:hover,
        .np-designer-upload-slot .np-designer-add-elements-btn:focus,
        .np-designer-upload-slot .np-designer-add-elements-btn:focus-visible,
        .np-designer-upload-slot .np-designer-add-elements-btn:active {
            border: 1px solid #1a1a1a !important;
            background: #f9f9f9 !important;
            color: #111 !important;
            box-shadow: none !important;
            outline: 0 !important;
        }
        .np-designer-panel.is-active[data-location="logo_arm_left"],
        .np-designer-panel.is-active[data-location="logo_arm_right"] {
            display: flex;
            flex-direction: column;
        }
        .np-designer-panel[data-location="logo_arm_left"] .np-designer-upload-slot,
        .np-designer-panel[data-location="logo_arm_right"] .np-designer-upload-slot {
            order: 0;
        }
        .np-designer-panel[data-location="logo_arm_left"] .np-designer-text-tool,
        .np-designer-panel[data-location="logo_arm_right"] .np-designer-text-tool {
            order: 1;
        }
        .np-designer-text-tool {
            margin-top: 3px;
            margin-left: 6px;
            margin-right: 5px;
            padding: 0;
            border: 0;
            border-radius: 0;
            background: transparent;
            display: grid;
            gap: 0px;
        }
        .np-designer-text-label {
            display: flex;
            align-items: center;
            justify-content: center;
            height: 45px;
            padding: 10px 14px !important;
            border: 1px solid #e0e0e0 !important;
            border-radius: 6px;
            background: transparent;
            font-size: 14px !important;
            font-weight: 500;
            color: #111;
            width: 97.8% !important;
            margin-left: 5px !important;
            margin-right: 21px !important;
            text-align: center;
            cursor: pointer;
            appearance: none;
            -webkit-appearance: none;
            box-shadow: none;
            font-family: inherit;
            box-sizing: border-box;
            margin-top: 12px;
            position: relative;
        }
        .np-designer-text-label::before {
            content: '';
            position: absolute;
            left: 24px;
            top: 50%;
            width: 20px;
            height: 20px;
            transform: translateY(-50%);
            background: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2030%2030%27%3E%3Cpath%20fill%3D%27%23111%27%20d%3D%27M%2014.970703%203.9726562%20A%202.0002%202.0002%200%200%200%2014.685547%204%20L%207%204%20L%206%204%20C%205.448%204%205%204.448%205%205%20L%205%208%20C%205%208.552%205.448%209%206%209%20L%207%209%20C%207.552%209%208%208.552%208%208%20L%208%207%20L%2013%207%20L%2013%2023%20L%2012%2023%20C%2011.448%2023%2011%2023.448%2011%2024%20L%2011%2025%20C%2011%2025.552%2011.448%2026%2012%2026%20L%2014.675781%2026%20A%202.0002%202.0002%200%200%200%2015.324219%2026%20L%2018%2026%20C%2018.552%2026%2019%2025.552%2019%2025%20L%2019%2024%20C%2019%2023.448%2018.552%2023%2018%2023%20L%2017%2023%20L%2017%207%20L%2022%207%20L%2022%208%20C%2022%208.552%2022.448%209%2023%209%20L%2024%209%20C%2024.552%209%2025%208.552%2025%208%20L%2025%205%20C%2025%204.448%2024.552%204%2024%204%20L%2023%204%20L%2015.320312%204%20A%202.0002%202.0002%200%200%200%2014.970703%203.9726562%20z%27/%3E%3C/svg%3E") no-repeat center / 20px 20px;
            pointer-events: none;
        }
        .np-designer-text-label:hover,
        .np-designer-text-label:focus,
        .np-designer-text-label:focus-visible {
            background: #fff !important;
            color: #111 !important;
            box-shadow: none !important;
        }
        .np-designer .np-designer-text-tool button.np-designer-text-label:hover,
        .np-designer .np-designer-text-tool button.np-designer-text-label:focus,
        .np-designer .np-designer-text-tool button.np-designer-text-label:focus-visible,
        .np-designer .np-designer-text-tool button.np-designer-text-label:active {
            background-color: #fff !important;
            background-image: none !important;
            color: #111 !important;
            box-shadow: none !important;
            filter: none !important;
        }
        .np-designer-text-label::after {
            content: '';
            width: 24px;
            height: 24px;
            background-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2050%2050'%3E%3Cpath%20d='M24.8,8h-.1c-.5,0-.8.5-.8,1v29.5s-9.2-9.2-9.2-9.2c-.2-.2-.4-.3-.7-.3s-.8.2-.9.6c0,.4,0,.8.2,1.1l10.9,10.9.7.7.7-.7,10.9-10.9c.3-.2.4-.6.3-1,0-.4-.4-.7-.8-.8-.4,0-.8,0-1,.3l-9.2,9.2V9.1c0-.3-.1-.6-.3-.8-.2-.2-.5-.3-.8-.3h0Z'/%3E%3C/svg%3E");
            background-repeat: no-repeat;
            background-position: center;
            background-size: 24px 24px;
            transition: transform 0.18s ease;
            position: absolute;
            right: 14px;
            top: 50%;
            transform: translateY(-50%);
        }
        .np-designer-text-tool.is-open .np-designer-text-label::after {
            transform: translateY(-50%) rotate(180deg);
        }
        .np-designer-text-row {
            display: grid;
            gap: 2px;
        }
        .np-designer-text-tool:not(.is-open) .np-designer-text-row {
            display: none;
        }
        .np-designer-text-input {
            width: 100%;
            height: auto;
            min-height: 43px;
            border: 1px solid #bdbdbd;
            border-radius: 16px;
            background: #fff;
            font-size: 26px;
            font-weight: 400;
            color: #111;
            text-align: left;
            padding: 8px 18px 8px 13px !important;
        }
        .np-designer-text-input::placeholder {
            color: #9b9b9b;
        }
        .np-designer-text-reset {
            display: none;
            align-self: flex-start;
            margin-left: 19px !important;
            margin-top: 13px !important;
            margin-bottom: 6px !important;
            padding: 0;
            border: 0;
            background: transparent;
            color: #111;
            font-size: 12px;
            font-weight: 600;
            text-decoration: underline;
            cursor: pointer;
        }
        .np-designer-text-reset:hover,
        .np-designer-text-reset:focus,
        .np-designer-text-reset:focus-visible,
        .np-designer-text-reset:active {
            background: transparent !important;
            color: #111 !important;
        }
        .np-designer-text-tool.has-text .np-designer-text-reset {
            display: inline-flex;
        }
        .np-designer-text-controls {
            display: flex;
            flex-direction: column;
            border: 1px solid var(--np-text-controls-border);
            overflow: hidden;
            background: #fff;
            --np-text-label-height: 22px;
            --np-text-controls-border: #c7c7c7;
            --np-text-col-1: 60%;
            --np-text-col-2: 73.33%;
            --np-text-col-3: 86.66%;
            position: relative;
            z-index: 0;
            margin: 7px 5px;
            padding: 9px 0px;
        }
        .np-designer-text-controls::after {
            content: '';
            position: absolute;
            inset: 0;
            pointer-events: none;
            background-image:
                linear-gradient(var(--np-text-controls-border), var(--np-text-controls-border)),
                linear-gradient(var(--np-text-controls-border), var(--np-text-controls-border)),
                linear-gradient(var(--np-text-controls-border), var(--np-text-controls-border));
            background-size: 1px 100%;
            background-position: var(--np-text-col-1) 0, var(--np-text-col-2) 0, var(--np-text-col-3) 0;
            background-repeat: no-repeat;
            z-index: 2;
        }
        .np-designer-text-controls-labels,
        .np-designer-text-controls-body {
            display: grid;
            grid-template-columns: 60fr 13.33fr 13.33fr 13.33fr;
            background: #fff;
            position: relative;
            z-index: 1;
        }
        .np-designer-text-controls-labels {
            padding: 0;
        }
        .np-designer-text-controls-label {
            display: flex;
            align-items: center;
            justify-content: center;
            height: var(--np-text-label-height);
            padding: 0px 14px 0px;
            font-size: 12px;
            font-weight: 500;
            color: #111;
            line-height: 1;
            text-align: center;
            margin-top:6px;
        }
        .np-designer-text-controls-label:first-child {
            justify-content: flex-start;
            text-align: left;
            margin-left: 0;
            padding-left: 20px;
        }

        .np-designer-text-controls-body > .np-designer-text-control-font, .np-designer-text-controls-body
         > .np-designer-text-control-color, .np-designer-text-controls-body > button.np-designer-text-bold{
            border:none!important;
         }

        .np-designer-text-controls-body > .np-designer-text-control,
        .np-designer-text-controls-body > button.np-designer-text-style {
            min-height: 0px;
            padding: 3px 10px 10px;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            gap: 5px;
            background: #fff;
            border: 0;
            color: #111;
            text-align: center;
        }
        .np-designer-text-controls-body > .np-designer-text-control-font {
            align-items: flex-start;
            justify-content: flex-start;
        }
        .np-designer-text-controls-body > .np-designer-text-control-font .np-designer-text-control-label {
            display: none;
            align-self: flex-start;
            width: 100%;
            margin: 0 0 6px;
            text-align: left;
            padding-left: 14px;
        }
        .np-designer-text-controls-body > .np-designer-text-control-font .np-designer-text-font-wrap {
            align-self: stretch;
        }
        .np-designer-text-controls-body > .np-designer-text-control + .np-designer-text-control,
        .np-designer-text-controls-body > .np-designer-text-control + .np-designer-text-style,
        .np-designer-text-controls-body > .np-designer-text-style + .np-designer-text-control,
        .np-designer-text-controls-body > .np-designer-text-style + .np-designer-text-style {
            border-left: 1px solid var(--np-text-controls-border);
        }
        .np-designer-text-controls-body > .np-designer-text-control-font,
        .np-designer-text-controls-body > .np-designer-text-control-color,
        .np-designer-text-controls-body > button.np-designer-text-bold {
            border-left: 1px solid var(--np-text-controls-border);
        }
        .np-designer-text-controls-body > button.np-designer-text-italic {
            border-left: 0;
        }
        .np-designer-text-controls-body .np-designer-text-control-label,
        .np-designer-text-controls-body .np-designer-text-style-label {
            display: none;
        }
        .np-designer-text-color-trigger,
        .np-designer-text-style-icon,
        .np-designer-text-font-wrap {
            align-self: center;
        }
        .np-designer-text-control-color {
            position: relative;
        }
        .np-designer-text-style {
            cursor: pointer;
        }
        .np-designer-text-controls-body > button.np-designer-text-bold,
        .np-designer-text-controls-body > button.np-designer-text-italic {
            transform: translateY(-4px);
        }
        .np-designer-text-controls-body > button.np-designer-text-style:hover,
        .np-designer-text-controls-body > button.np-designer-text-style:focus,
        .np-designer-text-controls-body > button.np-designer-text-style:focus-visible {
            background: #fff !important;
            color: #111 !important;
            box-shadow: none !important;
        }
        .np-designer .np-designer-text-tool button.np-designer-text-style:hover,
        .np-designer .np-designer-text-tool button.np-designer-text-style:focus,
        .np-designer .np-designer-text-tool button.np-designer-text-style:focus-visible,
        .np-designer .np-designer-text-tool button.np-designer-text-style:active {
            background-color: #fff !important;
            background-image: none !important;
            color: #111 !important;
            box-shadow: none !important;
            filter: none !important;
        }
        .np-designer-text-style.is-active {
            background: #f3f3f3;
        }
        .np-designer-text-style.is-active:hover,
        .np-designer-text-style.is-active:focus,
        .np-designer-text-style.is-active:focus-visible {
            background: #f3f3f3;
            color: #111;
        }
        .np-designer-text-style-icon {
            font-size: 32px;
            font-weight: 700;
            line-height: 1;
        }
        .np-designer-text-italic .np-designer-text-style-icon {
            font-style: italic;
            font-weight: 600;
        }
        .np-designer-text-color-trigger {
            width: 28px;
            height: 28px;
            padding: 0;
            border: 1px solid #111;
            border-radius: 999px !important;
            background: #000;
            cursor: pointer;
        }

        .elementor-223 .elementor-element.elementor-element-b2c8e4b .cart button,
        .elementor-223 .elementor-element.elementor-element-b2c8e4b .cart .button{

            color: #000000;
            background-color: #ffffff;

        }


        .elementor-223 .elementor-element.elementor-element-b2c8e4b .cart button,
        .elementor-223 .elementor-element.elementor-element-b2c8e4b .cart .button{
            border:none;
            border-radius: 0px;
        }
        .np-designer-text-color-popover {
            position: absolute;
            top: calc(100% + 10px);
            left: 50%;
            transform: translateX(-50%);
            background: #fff;
            border: 1px solid #c7c7c7;
            border-radius: 16px;
            padding: 12px;
            box-shadow: 0 14px 28px rgba(0, 0, 0, 0.14);
            z-index: 20;
            display: none;
        }
        .np-designer-text-control-color.is-open .np-designer-text-color-popover {
            display: block;
        }
        .np-designer-text-controls.has-color-popover-open {
            overflow: visible;
        }
        .np-designer-text-controls.has-font-list-open {
            overflow: visible;
        }
        .np-designer-text-color-grid {
            display: grid;
            grid-template-columns: repeat(7, 28px);
            gap: 0;
        }
        .np-designer-text-color-swatch {
            width: 28px;
            height: 28px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            border-radius: 999px;
            border: 1px solid #c7c7c7;
            background: var(--swatch, #fff);
            padding: 0;
            position: relative;
            cursor: pointer;
        }
        .np-designer-text-color-swatch[data-color] {
            background: var(--swatch, #fff);
        }
        .np-designer-text-color-swatch[data-color]::after {
            content: '';
            position: absolute;
            inset: 0;
            border-radius: 999px;
            background: var(--swatch, #fff);
        }
        .np-designer-text-color-custom {
            background: conic-gradient(#ff5252, #ff9800, #ffeb3b, #4caf50, #00bcd4, #3f51b5, #9c27b0, #ff5252);
            border-color: #bdbdbd;
            overflow: hidden;
        }
        .np-designer-text-color-custom::after {
            content: '';
            position: absolute;
            inset: 3px;
            border-radius: 999px;
            background: #fff;
            box-shadow: inset 0 0 0 1px #c7c7c7;
        }
        .np-designer-text-color {
            position: absolute;
            inset: 0;
            width: 100%;
            height: 100%;
            opacity: 0;
            cursor: pointer;
            border: 0;
            padding: 0;
            background: transparent;
        }
        .np-designer-text-font-wrap {
            display: flex;
            align-items: center;
            justify-content: flex-start;
            gap: 0;
            width: 100%!important;
        }

        .np-designer-text-controls-body > .np-designer-text-control,
        .np-designer-text-controls-body > button.np-designer-text-style{
            color:#111;
        }

        .woocommerce .select2-container .select2-selection--single, .woocommerce select,
        .woocommerce-page .select2-container .select2-selection--single, .woocommerce-page select {
            padding: 0px 19px 0px 5px;
        }

        .np-designer-text-font {
            min-width: 0;
            height: 32px!important;
            padding: 0 40px 0 14px;
            border: 1px solid #bdbdbd !important;
            border-radius: 14px;
            background-color: #fff;
            background-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2020%2020'%3E%3Cpath%20d='M7%205l6%205-6%205' fill='none' stroke='%23111' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
            background-repeat: no-repeat;
            background-position: right 12px center;
            background-size: 14px 14px;
            font-size: 16px;
            font-weight: 600;
            text-transform: uppercase;
            appearance: none;
            -webkit-appearance: none;
            -moz-appearance: none;
        }
        .np-designer .np-designer-text-font option {
            padding-left: 6px;
            text-indent: 6px;
        }
        .np-designer-text-font.is-hidden {
            position: absolute !important;
            width: 1px !important;
            height: 1px !important;
            padding: 0 !important;
            margin: -1px !important;
            overflow: hidden !important;
            clip: rect(0, 0, 0, 0) !important;
            border: 0 !important;
        }
        .np-designer-text-font-picker {
            position: relative;
            display: flex;
            flex-direction: column;
            gap: 6px;
            width: 100%;
        }
        .np-designer-text-font-picker.is-open {
            z-index: 20;
        }
        .np-designer-text-font-trigger {
            width: 100%;
            height: 32px;
            padding: 0 40px 0 14px;
            border: 1px solid #bdbdbd !important;
            border-radius: 14px;
            background: #fff;
            color: #111;
            font-size: 16px;
            font-weight: 600;
            text-transform: uppercase;
            text-align: left;
            cursor: pointer;
            box-sizing: border-box;
            display: flex;
            align-items: center;
            gap: 0;
        }
        .np-designer-text-font-trigger:hover,
        .np-designer-text-font-trigger:focus,
        .np-designer-text-font-trigger:focus-visible,
        .np-designer-text-font-trigger:active {
            background: #fff !important;
            color: #111 !important;
            border-color: #bdbdbd !important;
        }
        .np-designer-text-font-trigger-label {
            flex: 1 1 auto;
            text-align: left;
        }
        @media (min-width: 641px) {
            .np-designer-text-controls-body > .np-designer-text-control-font .np-designer-text-font-trigger {
                width: 95%;
            }
            .np-designer-text-controls-body > .np-designer-text-control-font .np-designer-text-font-trigger-label {
                white-space: nowrap;
                overflow: hidden;
                text-overflow: ellipsis;
                min-width: 0;
            }
            .np-designer-text-controls-body > .np-designer-text-control-font .np-designer-text-font-trigger-icon svg {
                margin-right: 6px;
            }
        }
        .np-designer-text-font-trigger-icon {
            flex: 0 0 auto;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            margin-left: auto;
            color: #111;
        }
        .np-designer-text-font-trigger-icon svg {
            display: block;
            width: 14px;
            height: 14px;
            fill: currentColor;
        }
        .np-designer-text-font-list {
            display: none;
            position: absolute;
            top: calc(100% + 6px);
            left: 0;
            right: 0;
            max-height: 220px;
            overflow-y: auto;
            background: #fff;
            border: 1px solid #bdbdbd;
            border-radius: 14px;
            box-shadow: 0 10px 26px rgba(0, 0, 0, 0.15);
            z-index: 30;
        }
        .np-designer-text-font-picker.is-open .np-designer-text-font-list {
            display: block;
        }
        .np-designer .np-designer-text-font-option {
            width: 100%;
            text-align: left;
            padding: 8px 12px 8px 18px !important;
            box-sizing: border-box;
            border: 0;
            background: #fff;
            color: #111;
            font-size: 14px;
            cursor: pointer;
        }
        .np-designer-text-font-option:not(.is-selected):hover,
        .np-designer-text-font-option:not(.is-selected):focus,
        .np-designer-text-font-option:not(.is-selected):focus-visible {
            background: #f3f4f6 !important;
            color: #111 !important;
        }
        .np-designer-text-font-option.is-selected {
            background: #111;
            color: #fff;
        }
        .np-designer-text-font-option.is-placeholder {
            color: #6b7280;
            font-family: inherit !important;
        }
        .np-designer-text-control-font .np-designer-text-font {
            width: 100%;
        }
        .np-designer-text-control-font .np-designer-text-size {
            display: none;
        }
        .np-designer-text-size {
            width: 64px;
            height: 44px;
            padding: 0 8px;
            border: 1px solid #bdbdbd;
            border-radius: 12px;
            font-size: 14px;
            font-weight: 600;
            text-align: center;
        }
        .np-designer-text-bend {
            border: 1px solid #bdbdbd;
            background: #fff;
            padding: 16px 23px 15px;
            display: grid;
            gap: 3px;
            margin: 0px 5px;
        }
        .np-designer-text-bend-header {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 12px;
        }
        .np-designer-text-bend-label {
            font-size: 16px;
            font-weight: 500;
            color: #111;
        }
        .np-designer-text-bend-input {
            width: 100%;
            accent-color: #111;
            -webkit-appearance: none;
            appearance: none;
            background: transparent;
            border: 0;
            padding: 0;
            margin: 0;
            box-shadow: none;
            outline: none;
        }
        .np-designer-text-bend-input::-webkit-slider-runnable-track {
            height: 6px;
            background: #d0d0d0;
            border: 0;
            border-radius: 999px;
            box-shadow: none;
        }
        .np-designer-text-bend-input::-webkit-slider-thumb {
            -webkit-appearance: none;
            appearance: none;
            width: 16px;
            height: 16px;
            border-radius: 999px;
            background: #111;
            border: 0;
            box-shadow: none;
            margin-top: -5px;
        }
        .np-designer-text-bend-input::-moz-range-track {
            height: 6px;
            background: #d0d0d0;
            border: 0;
            border-radius: 999px;
            box-shadow: none;
        }
        .np-designer-text-bend-input::-moz-range-progress {
            height: 6px;
            background: #d0d0d0;
            border: 0;
            border-radius: 999px;
            box-shadow: none;
        }
        .np-designer-text-bend-input::-moz-range-thumb {
            width: 16px;
            height: 16px;
            border-radius: 999px;
            background: #111;
            border: 0;
            box-shadow: none;
        }
        .np-designer-text-bend-input::-ms-track {
            height: 6px;
            background: transparent;
            border-color: transparent;
            color: transparent;
            box-shadow: none;
        }
        .np-designer-text-bend-input::-ms-fill-lower,
        .np-designer-text-bend-input::-ms-fill-upper {
            background: #d0d0d0;
            border: 0;
            border-radius: 999px;
            box-shadow: none;
        }
        .np-designer-text-bend-input::-ms-thumb {
            width: 16px;
            height: 16px;
            border-radius: 999px;
            background: #111;
            border: 0;
            box-shadow: none;
        }
        .np-designer-text-bend-value {
            min-width: 48px;
            padding: 5px 6px;
            border: 1px solid #111;
            border-radius: 4px;
            font-size: 18px;
            font-weight: 600;
            color: #111;
            line-height: 1;
            text-align: center;
            background: #fff;
        }
        @media (max-width: 640px) {
            .np-designer-text-row {
                gap: 4px;
            }
            .np-designer-text-label {
                height: 47px;
                font-size: 15px !important;
            }
            .np-designer-text-input {
                font-size: 20px;
                padding: 8px 18px 8px 12px !important;
            }
            .np-designer-text-controls {
                --np-text-col-1: 50%;
                --np-text-col-2: 50%;
                --np-text-col-3: 50%;
            }
            .np-designer-text-controls::after {
                display: none;
            }
            .np-designer-text-controls-labels,
            .np-designer-text-controls-body {
                grid-template-columns: repeat(3, minmax(0, 1fr));
            }
            .np-designer-text-controls-labels {
                display: none;
            }
            .np-designer-text-controls-body > .np-designer-text-control,
            .np-designer-text-controls-body > button.np-designer-text-style {
                border-left: 0;
                min-height: 72px;
                padding-left: 2px;
                padding-right: 2px;
            }
            .np-designer-text-controls-body > .np-designer-text-control-font {
                grid-column: 1 / -1;
                flex-direction: column;
                align-items: flex-start;
                gap: 6px;
                text-align: left;
                min-height: 0;
                padding: 8px 12px 12px;
                padding-left: 2px;
                padding-right: 2px;
                border-bottom: 1px solid var(--np-text-controls-border);
            }
            .np-designer-text-controls-body .np-designer-text-control-label,
            .np-designer-text-controls-body .np-designer-text-style-label {
                display: none;
            }
            .np-designer-text-controls-body > .np-designer-text-control-font .np-designer-text-control-label {
                display: block;
                width: 100%;
                margin: 0 0 4px;
                font-size: 12px;
                font-weight: 600;
                color: #111;
                text-align: left;
                white-space: normal;
                padding-left: 35px;
            }
            .np-designer-text-controls-body > .np-designer-text-control-color .np-designer-text-control-label {
                display: block;
                width: 100%;
                margin: 0 0 6px;
                font-size: 11px;
                font-weight: 600;
                color: #111;
                text-align: center;
            }
            .np-designer-text-controls-body > button.np-designer-text-style .np-designer-text-style-label {
                display: block;
                margin: 0 0 6px;
                font-size: 11px;
                font-weight: 600;
                color: #111;
                line-height: 1;
                text-transform: none;
            }
            .np-designer-text-controls-body > .np-designer-text-control-font .np-designer-text-font-wrap {
                width: 100%;
                align-self: stretch;
                flex: 0 0 auto;
                min-width: 0;
                justify-content: flex-start;
                flex-direction: row;
            }
            .np-designer-text-controls-body > .np-designer-text-control-font .np-designer-text-font {
                width: calc(100% - 68px);
                max-width: calc(100% - 68px);
                margin-left: 32px;
                margin-right: 36px;
                box-sizing: border-box;
            }
            .np-designer .np-designer-text-controls-body > .np-designer-text-control-font .np-designer-text-font-trigger {
                padding: 10px 11px !important;
                width: 79%;
                margin-left: 33px !important;
            }
            .np-designer-text-controls-body > button.np-designer-text-bold,
            .np-designer-text-controls-body > button.np-designer-text-italic {
                border-left: 1px solid var(--np-text-controls-border);
                transform: none;
            }
            .np-designer-text-font-wrap {
                flex-direction: column;
            }
            .np-designer-text-size {
                width: 100%;
            }
            .np-designer-text-bend {
                padding: 18px 23px 19px;
            }
        }
        .np-designer-text-apply {
            border: 1px solid #111;
            background: #111;
            color: #fff;
            padding: 9px 14px;
            border-radius: 6px;
            font-size: 13px;
            font-weight: 600;
            cursor: pointer;
        }
        .np-designer-text-apply:disabled {
            opacity: 0.6;
            cursor: not-allowed;
        }
        @media (max-width: 640px) {
            .np-designer-tabs {
                gap: 10px;
                margin: 0 5px 23px;
                width: calc(100% - 10px);
            }
            .np-designer .np-designer-tabs.np-designer-tabs--two {
                display: grid !important;
                grid-template-columns: minmax(0, 1.155fr) minmax(0, 1fr) !important;
                gap: 10px !important;
            }
            .np-designer .np-designer-tabs.np-designer-tabs--two .np-designer-tab {
                width: auto !important;
                max-width: none !important;
            }
            .np-designer .np-designer-tab {
                min-width: 0;
                min-height: 45px;
                height: 45px;
                padding: 0 10px;
                font-size: 15px;
            }
            .np-designer .np-designer-action-row .np-designer-add-elements-btn,
            .np-designer .np-designer-panel:not(.is-active) .np-designer-add-elements-btn {
                display: none !important;
            }
            .np-designer-panel {
                padding: 0px 0px 17px 0px;
            }
            .np-designer-upload-slot .wapf-field-label {
                margin-bottom: 4px !important;
                align-items: center !important;
                text-align: center !important;
            }
            .np-designer-upload-slot .wapf-field-label label,
            .np-designer-upload-slot .wapf-field-label span {
                font-size: 15px !important;
                font-weight: 500 !important;
                color: #111 !important;
            }
            .np-designer-upload-slot .np-designer-file-name {
                font-size: 12px !important;
                text-align: center !important;
            }
            .np-designer-upload-slot .wapf-field-input {
                display: flex !important;
                align-items: center !important;
                justify-content: center !important;
                gap: 10px !important;
                padding: 12px 16px !important;
                border: 1px solid #e0e0e0 !important;
                border-radius: 6px !important;
                background: transparent !important;
            }
            .np-designer-upload-slot .wapf-field-input::before {
                width: 18px !important;
                height: 18px !important;
                background-size: 18px 18px !important;
                opacity: 0.7 !important;
            }
            .np-designer-upload-slot .wapf-field-input input[type="file"] {
                position: absolute !important;
                inset: 0 !important;
                width: 100% !important;
                height: 100% !important;
                margin: 0 !important;
                opacity: 0 !important;
            }
            .np-designer-upload-slot .wapf-field-container.np-designer-has-add-elements .wapf-field-label,
            .np-designer-upload-slot .wapf-field.np-designer-has-add-elements .wapf-field-label {
                margin-bottom: 0 !important;
                flex-direction: row !important;
                align-items: center !important;
                justify-content: center !important;
                gap: 6px !important;
                text-align: center !important;
                min-height: 45px !important;
                padding: 10px 14px !important;
                border: 1px solid #e0e0e0 !important;
                border-radius: 6px !important;
                background: transparent !important;
            }
            .np-designer-upload-slot .wapf-field-container.np-designer-has-add-elements .wapf-field-input,
            .np-designer-upload-slot .wapf-field.np-designer-has-add-elements .wapf-field-input {
                display: grid !important;
                grid-template-columns: minmax(0, 1.155fr) minmax(0, 1fr) !important;
                align-items: stretch !important;
                gap: 10px !important;
                padding: 0 !important;
                border: 0 !important;
                border-radius: 0 !important;
                background: transparent !important;
            }
            .np-designer-upload-slot .wapf-field-container.np-designer-has-add-elements .wapf-field-label,
            .np-designer-upload-slot .wapf-field.np-designer-has-add-elements .wapf-field-label,
            .np-designer-upload-slot .wapf-field-container.np-designer-has-add-elements .wapf-field-label label,
            .np-designer-upload-slot .wapf-field-container.np-designer-has-add-elements .wapf-field-label span,
            .np-designer-upload-slot .wapf-field.np-designer-has-add-elements .wapf-field-label label,
            .np-designer-upload-slot .wapf-field.np-designer-has-add-elements .wapf-field-label span {
                white-space: nowrap !important;
            }
            .np-designer-upload-slot .np-designer-add-elements-btn {
                font-size: 14px !important;
                min-height: 45px !important;
                height: 45px !important;
                align-self: center !important;
                padding: 0 8px !important;
                border-radius: 0 !important;
            }
            .np-designer-text-tool {
                margin-left: 5px !important;
                margin-right: 5px !important;
            }
            .np-designer-action-row {
                display: grid !important;
                grid-template-columns: minmax(0, 1.155fr) minmax(0, 1fr) !important;
                align-items: stretch !important;
                gap: 10px !important;
            }
            .np-designer-action-row .np-designer-text-label,
            .np-designer-action-row .np-designer-ai-tools {
                min-width: 0 !important;
            }
            .np-designer-action-row .np-designer-text-label {
                white-space: nowrap !important;
                width: 100% !important;
                justify-self: stretch !important;
            }
            .np-designer .np-designer-action-row .np-designer-text-label {
                width: 100% !important;
                min-width: 0 !important;
                justify-self: stretch !important;
            }
        }
        .np-designer-upload-progress {
            position: absolute;
            top: 45px;
            left: 50%;
            right: auto;
            bottom: auto;
            display: none;
            align-items: center;
            justify-content: center;
            gap: 0;
            padding: 5px;
            background: rgba(255, 255, 255, 0.9);
            border: 1px solid rgba(0, 0, 0, 0.08);
            border-radius: 999px;
            box-shadow: 0 10px 24px rgba(0, 0, 0, 0.08);
            color: #111;
            pointer-events: none;
            transform: translateX(-50%);
            z-index: 2;
        }
        .np-designer-upload-progress.is-active {
            display: flex;
        }
        .np-designer-upload-spinner {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 40px;
            height: 40px;
        }
        .np-designer-upload-spinner svg {
            width: 30px;
            height: 30px;
            display: block;
            fill: currentColor;
            transform-origin: 50% 50%;
            animation: np-designer-spin 1s linear infinite;
        }
        .np-designer-upload-spinner svg path {
            fill: currentColor;
        }
        .np-designer.is-dark .np-designer-upload-progress {
            background: rgba(17, 17, 17, 0.92);
            border-color: rgba(255, 255, 255, 0.2);
            color: #fff;
        }
        @keyframes np-designer-spin {
            to {
                transform: rotate(360deg);
            }
        }
        .np-designer-upload-slot .wapf-field-container,
        .np-designer-upload-slot .wapf-field {
            margin: 0;
        }
        .np-designer-admin-tools { display: flex; align-items: center; gap: 10px; margin-top: 12px; flex-wrap: wrap; }
        .np-designer-admin-colors { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 12px; width: 100%; }
        .np-designer-admin-color-title { font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.4px; color: #111; }
        .np-designer-admin-color-item { display: inline-flex; align-items: center; gap: 6px; font-size: 12px; }
        .np-designer-admin-color-item input { margin: 0; }
        .np-designer-admin-download {
            border: 1px solid #111;
            background: #fff;
            padding: 6px 12px;
            cursor: pointer;
            font-size: 12px;
            font-weight: 600;
            text-transform: uppercase;
            letter-spacing: 0.4px;
        }

.wapf-field-container {
    padding: 0 5px var(--apf-margin-bottom, 0px) 5px;
    box-sizing: border-box;
}

        .np-designer-admin-download.is-busy { opacity: 0.6; pointer-events: none; }
        .np-designer-admin-status { font-size: 12px; color: #555; }
        .np-designer-tools { display: flex; align-items: center; gap: 8px; margin-top: 22px; flex-wrap: wrap; }
        .np-designer-ai-tools { display: flex; flex-direction: column; align-items: stretch; gap: 6px; margin-top: 14px; width: 98%; margin-left: 5px;}
        .np-designer-action-row {
            display: flex;
            align-items: stretch;
            gap: 12px;
            margin-top: 5px;
        }
        .np-designer-action-row .np-designer-text-label {
            width: auto !important;
            margin: 0 !important;
            flex: 1 1 0;
        }
        .np-designer-action-row .np-designer-ai-tools {
            margin-top: 0;
            margin-left: 0;
            width: auto;
            flex: 1 1 0;
            gap: 4px;
        }
        .np-designer-action-row .np-designer-ai-btn {
            width: 100%;
            height: 45px;
            min-height: 45px;
            padding: 10px 3px;
            border-radius: 6px;
        }
        .np-designer-action-row .np-designer-ai-status {
            min-height: 3px;
            font-size: 12px;
            line-height: 1.2;
        }
        .np-designer-ai-btn {
            border: 1px solid #e0e0e0 !important;
            background: transparent !important;
            color: #000000 !important;
            background-image: none !important;
            padding: 18px 28px;
            cursor: pointer;
            border-radius: 6px;
            font-size: 14px;
            font-weight: 500;
            line-height: 1;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 6px;
            min-height: 44px;
            transition: border-color 120ms ease, box-shadow 120ms ease;
            width: 100%;
        }
        .np-designer-ai-btn::after {
            content: '';
            width: 20px;
            height: 20px;
            display: inline-block;
            margin-left: 6px;
            background: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2030%2030%27%20baseProfile%3D%27basic%27%3E%3Cpath%20fill%3D%27%23000%27%20d%3D%27M14.217%2C19.707l-1.112%2C2.547c-0.427%2C0.979-1.782%2C0.979-2.21%2C0l-1.112-2.547c-0.99-2.267-2.771-4.071-4.993-5.057%09L1.73%2C13.292c-0.973-0.432-0.973-1.848%2C0-2.28l2.965-1.316C6.974%2C8.684%2C8.787%2C6.813%2C9.76%2C4.47l1.126-2.714%09c0.418-1.007%2C1.81-1.007%2C2.228%2C0L14.24%2C4.47c0.973%2C2.344%2C2.786%2C4.215%2C5.065%2C5.226l2.965%2C1.316c0.973%2C0.432%2C0.973%2C1.848%2C0%2C2.28%09l-3.061%2C1.359C16.988%2C15.637%2C15.206%2C17.441%2C14.217%2C19.707z%27/%3E%3Cpath%20fill%3D%27%23000%27%20d%3D%27M24.481%2C27.796l-0.339%2C0.777c-0.248%2C0.569-1.036%2C0.569-1.284%2C0l-0.339-0.777c-0.604-1.385-1.693-2.488-3.051-3.092%09l-1.044-0.464c-0.565-0.251-0.565-1.072%2C0-1.323l0.986-0.438c1.393-0.619%2C2.501-1.763%2C3.095-3.195l0.348-0.84%09c0.243-0.585%2C1.052-0.585%2C1.294%2C0l0.348%2C0.84c0.594%2C1.432%2C1.702%2C2.576%2C3.095%2C3.195l0.986%2C0.438c0.565%2C0.251%2C0.565%2C1.072%2C0%2C1.323%09l-1.044%2C0.464C26.174%2C25.308%2C25.085%2C26.411%2C24.481%2C27.796z%27/%3E%3C/svg%3E") no-repeat center / 20px 20px;
            pointer-events: none;
        }
        .np-designer-ai-btn:active,
        .np-designer-ai-btn.is-active,
        .np-designer-ai-btn[aria-pressed="true"] {
            background: #111 !important;
            color: #fff !important;
        }
        .np-designer-ai-btn:active::after,
        .np-designer-ai-btn.is-active::after,
        .np-designer-ai-btn[aria-pressed="true"]::after {
            background: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2030%2030%27%20baseProfile%3D%27basic%27%3E%3Cpath%20fill%3D%27%23ffffff%27%20d%3D%27M14.217%2C19.707l-1.112%2C2.547c-0.427%2C0.979-1.782%2C0.979-2.21%2C0l-1.112-2.547c-0.99-2.267-2.771-4.071-4.993-5.057%09L1.73%2C13.292c-0.973-0.432-0.973-1.848%2C0-2.28l2.965-1.316C6.974%2C8.684%2C8.787%2C6.813%2C9.76%2C4.47l1.126-2.714%09c0.418-1.007%2C1.81-1.007%2C2.228%2C0L14.24%2C4.47c0.973%2C2.344%2C2.786%2C4.215%2C5.065%2C5.226l2.965%2C1.316c0.973%2C0.432%2C0.973%2C1.848%2C0%2C2.28%09l-3.061%2C1.359C16.988%2C15.637%2C15.206%2C17.441%2C14.217%2C19.707z%27/%3E%3Cpath%20fill%3D%27%23ffffff%27%20d%3D%27M24.481%2C27.796l-0.339%2C0.777c-0.248%2C0.569-1.036%2C0.569-1.284%2C0l-0.339-0.777c-0.604-1.385-1.693-2.488-3.051-3.092%09l-1.044-0.464c-0.565-0.251-0.565-1.072%2C0-1.323l0.986-0.438c1.393-0.619%2C2.501-1.763%2C3.095-3.195l0.348-0.84%09c0.243-0.585%2C1.052-0.585%2C1.294%2C0l0.348%2C0.84c0.594%2C1.432%2C1.702%2C2.576%2C3.095%2C3.195l0.986%2C0.438c0.565%2C0.251%2C0.565%2C1.072%2C0%2C1.323%09l-1.044%2C0.464C26.174%2C25.308%2C25.085%2C26.411%2C24.481%2C27.796z%27/%3E%3C/svg%3E") no-repeat center / 20px 20px;
        }
        .np-designer-ai-btn.is-busy { opacity: 0.6; pointer-events: none; }
        .np-designer-ai-btn:disabled { opacity: 0.4; cursor: not-allowed; }
        .np-designer-ai-status { font-size: 12px; color: #555; }
        .single_add_to_cart_button.np-size-needed {
            background: #ffffff !important;
            color: #000000 !important;
            border: 1px solid black !important;
        }
        form.cart .single_add_to_cart_button.button.alt:hover,
        form.cart .single_add_to_cart_button.button.alt:focus,
        form.cart .single_add_to_cart_button.button.alt:focus-visible,
        form.cart .single_add_to_cart_button.button.alt:active {
            background-color: #ffffff !important;
            color: #000000 !important;
            background-image: none !important;
        }
        .np-designer-upload-library { margin-top: 0px; padding: 10px; border: 1px dashed #cfcfcf; border-radius: 6px; background: #fff !important; background-image: none !important; margin-left: 4px; margin-right: 4px;}
        .np-designer-upload-library.is-empty { display: none; }
        .np-designer-upload-library-title { font-size: 12px; font-weight: 600; color: #111; margin-bottom: 6px; }
        .np-designer-upload-library-items { display: grid; grid-template-columns: repeat(auto-fill, minmax(70px, 1fr)); gap: 8px; }
        .np-designer-upload-library-item { border: 1px solid #d7d7d7; background: #fff !important; background-image: none !important; border-radius: 6px; padding: 6px; display: flex; flex-direction: column; align-items: center; gap: 4px; cursor: pointer; text-align: center; position: relative; }
        .np-designer-upload-library-item img { width: 100%; height: 60px; object-fit: contain; border-radius: 4px; background: #fff !important; background-image: none !important; padding: 3px;}
        .np-designer-upload-library-badge { width: 100%; height: 60px; border-radius: 4px; background: #fff !important; color: #555; display: flex; align-items: center; justify-content: center; font-size: 11px; font-weight: 600; letter-spacing: 0.4px; }
        .np-designer-upload-library-remove {
            position: absolute;
            top: -8px;
            left: -8px;
            width: 18px;
            height: 18px;
            border-radius: 50%;
            border: 0;
            background: #e10600;
            color: #fff;
            font-size: 0;
            line-height: 0;
            cursor: pointer;
            pointer-events: none;
            padding: 0;
            appearance: none;
            -webkit-appearance: none;
            box-shadow: none;
            opacity: 0;
            transition: opacity 0.12s ease;
            z-index: 2;
        }
        .np-designer-upload-library-item:hover .np-designer-upload-library-remove,
        .np-designer-upload-library-item:focus-within .np-designer-upload-library-remove {
            opacity: 1;
            pointer-events: auto;
        }
        .np-designer-upload-library-remove::before,
        .np-designer-upload-library-remove::after {
            content: '';
            position: absolute;
            top: 50%;
            left: 50%;
            width: 10px;
            height: 2px;
            background: #fff;
            transform-origin: center;
            transform: translate(-50%, -50%) rotate(45deg);
        }
        .np-designer-upload-library-remove::after {
            transform: translate(-50%, -50%) rotate(-45deg);
        }
        .np-designer-upload-library-item.is-busy { opacity: 0.6; pointer-events: none; }
        .np-designer-upload-library.is-empty .np-designer-upload-library-items { display: none; }
        .np-designer-upload-library:not(.is-empty) .np-designer-upload-library-empty { display: none; }
        .np-designer-upload-library-empty { font-size: 12px; color: #777; }
        .np-designer.is-dark .np-designer-upload-library { background: #fff !important; border-color: rgba(0, 0, 0, 0.2); }
        .np-designer.is-dark .np-designer-upload-library-title { color: #111; }
        .np-designer.is-dark .np-designer-upload-library-item { border-color: rgba(0, 0, 0, 0.2); background: #fff !important; }
        .np-designer.is-dark .np-designer-upload-library-badge { background: #fff !important; color: #555; }
        .np-designer.is-dark .np-designer-upload-library-empty { color: #777; }
        .np-designer.np-ai-disabled .np-designer-ai-btn {
            opacity: 0.55;
        }
        .np-designer.np-ai-disabled .np-designer-ai-status {
            display: block;
            color: #555;
        }
        .np-designer-tools-overlay {
            position: relative;
            display: flex;
            justify-content: center;
            width: 100%;
            margin-bottom: 0px;
            pointer-events: auto;
            margin-left: -10px;
        }
        .np-designer-tools-overlay .np-designer-tools {
            margin: 0;
        }
        .np-designer-tools.is-hidden { display: none; }
        .np-designer-removebg-btn,
        .np-designer-removebg-undo { border: 1px solid #111; background: #000000; padding: 15px 25px; cursor: pointer; font-size: 15px; font-weight: 600; text-transform: none; letter-spacing: 0.4px; }
        .np-designer-removebg-btn {
            border: 1px solid #111;
            background: #000000;
            color: #fff;
            padding: 15px 25px;
            font-size: 15px;
        }
        .np-designer-removebg-btn.is-busy,
        .np-designer-removebg-undo.is-busy { opacity: 0.6; pointer-events: none; }
        .np-designer-removebg-btn:disabled,
        .np-designer-removebg-undo:disabled { opacity: 0.4; cursor: not-allowed; }
        .np-designer-removebg-undo { display: none; }
        .np-designer-tools.is-removed .np-designer-removebg-btn { display: none; }
        .np-designer-tools.is-removed .np-designer-removebg-undo { display: inline-flex; }
        .np-designer-tools-overlay .np-designer-tools.is-removed .np-designer-removebg-undo { display: none; }
        .np-designer-removebg-status { font-size: 12px; color: #555; }
        .np-designer-removebg-modal {
            position: fixed;
            inset: 0;
            display: none;
            align-items: center;
            justify-content: center;
            padding: 20px;
            background: rgba(0, 0, 0, 0.65);
            z-index: 100000;
        }
        .np-designer-removebg-modal.is-open { display: flex; }
        .np-designer-removebg-dialog {
            background: #fff;
            border-radius: 12px;
            width: 100%;
            max-width: 960px;
            max-height: 90vh;
            display: flex;
            flex-direction: column;
            overflow: hidden;
            box-shadow: 0 24px 60px rgba(0, 0, 0, 0.35);
        }
        .np-designer-removebg-header {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 12px;
            padding: 12px 16px;
            border-bottom: 1px solid #e5e7eb;
        }
        .np-designer-removebg-title { font-size: 15px; font-weight: 600; color: #111; }
        .np-designer-removebg-close {
            border: 0;
            background: transparent;
            font-size: 18px;
            font-weight: 600;
            line-height: 1;
            cursor: pointer;
            padding: 4px 6px;
        }
        .np-designer-removebg-body { padding: 12px 16px; flex: 1 1 auto; overflow: hidden; }
        .np-designer-removebg-preview {
            width: 100%;
            height: 70vh;
            max-height: 70vh;
            overflow: hidden;
            background: #dcdcdc;
            border: 1px solid #e5e7eb;
            border-radius: 8px;
            padding: 12px;
            box-sizing: border-box;
            position: relative;
            display: block;
            touch-action: none;
        }
        .np-designer-removebg-stage {
            position: absolute;
            inset: 0;
        }
        .np-designer-removebg-box {
            display: block;
        }
        .np-designer-removebg-box.is-empty {
            display: none;
        }
        .np-designer-removebg-preview .np-designer-handle-nw {
            left: 2px;
            top: 2px;
        }
        .np-designer-removebg-preview .np-designer-handle-se {
            right: 2px;
            bottom: 2px;
        }
        .np-designer-removebg-preview img {
            display: block;
            width: 100%;
            height: 100%;
            object-fit: contain;
        }
        .np-designer-removebg-footer {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 12px;
            padding: 12px 16px 16px;
        }
        .np-designer-removebg-modal-status { font-size: 12px; color: #555; }
        .np-designer-removebg-modal-actions { display: flex; align-items: center; gap: 8px; }
        .np-designer-removebg-modal-undo,
        .np-designer-removebg-modal-close {
            border: 1px solid #111;
            padding: 10px 16px;
            cursor: pointer;
            font-size: 13px;
            font-weight: 600;
            transition: background-color 150ms ease, color 150ms ease, border-color 150ms ease;
        }
        .np-designer-removebg-modal-undo { background: #fff; color: #111; }
        .np-designer-removebg-modal-close { background: #fff; color: #111; }
        .np-designer-removebg-modal-undo:hover,
        .np-designer-removebg-modal-close:hover {
            background: #fff;
            color: #111;
            border-color: #111;
        }
        .np-designer-removebg-modal.is-busy .np-designer-removebg-modal-undo { opacity: 0.6; pointer-events: none; }
        .np-designer-removebg-modal:not(.is-removed) .np-designer-removebg-modal-undo { display: none; }
        body.np-designer-modal-open {
            overflow: hidden;
            position: fixed;
            width: 100%;
        }
        .np-designer-ai-modal {
            position: fixed;
            inset: 0;
            display: none;
            align-items: center;
            justify-content: center;
            padding: 20px;
            background: rgba(0, 0, 0, 0.65);
            z-index: 100000;
        }
        .np-designer-ai-modal.is-open { display: flex; }
        .np-designer-ai-dialog {
            background: #fff;
            border-radius: 12px;
            width: 100%;
            max-width: 760px;
            max-height: 90vh;
            display: flex;
            flex-direction: column;
            overflow: hidden;
            box-shadow: 0 24px 60px rgba(0, 0, 0, 0.35);
            position: relative;
        }
        .np-designer-ai-header {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 12px;
            padding: 12px 16px;
            border-bottom: 1px solid #e5e7eb;
        }
        .np-designer-ai-title { font-size: 16px; font-weight: 600; color: #111; }
        .np-designer-ai-close {
            border: 1px solid #111;
            background: #fff;
            color: #111;
            font-size: 18px;
            font-weight: 600;
            line-height: 1;
            cursor: pointer;
            padding: 4px 6px;
            border-radius: 6px;
        }
        .np-designer-ai-close:hover,
        .np-designer-ai-close:focus {
            background: #fff;
            color: #111;
        }
        .np-designer-ai-body {
            padding: 16px;
            display: grid;
            grid-template-columns: minmax(0, 1fr);
            gap: 16px;
            align-items: start;
            overflow-y: auto;
            min-height: 0;
            flex: 1 1 auto;
        }
        .np-designer-ai-body.has-preview {
            grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        }
        .np-designer-ai-form { display: flex; flex-direction: column; gap: 5px; }
        .np-designer-ai-form label { font-size: 12px; font-weight: 500; color: #111; margin-left: 3px;}
        .np-designer-ai-form input,
        .np-designer-ai-form select,
        .np-designer-ai-form textarea {
            width: 100%;
            padding: 10px 12px;
                border: 1px solid #000000;
            border-radius: 6px!important;
            font-size: 14px;
            background: #fff;
            box-sizing: border-box;
        }
        .np-designer-ai-form .np-designer-ai-font {
            font-size: 14px;
            margin-top: 26px;
        }
        .np-designer-ai-form .np-designer-ai-font option {
            font-size: 14px;
        }
        .np-designer-ai-font-label {
            margin-top: 6px;
        }
        .np-designer-ai-font.is-hidden {
            position: absolute !important;
            width: 1px !important;
            height: 1px !important;
            padding: 0 !important;
            margin: -1px !important;
            overflow: hidden !important;
            clip: rect(0, 0, 0, 0) !important;
            border: 0 !important;
        }
        .np-designer-ai-font-picker {
            position: relative;
            display: flex;
            flex-direction: column;
            gap: 6px;
            margin-top: 26px;
        }
        .np-designer-ai-font-picker.is-open {
            z-index: 20;
        }
        .np-designer-ai-modal.is-edit .np-designer-ai-font-picker,
        .np-designer-ai-modal.is-edit .np-designer-ai-font {
            margin-top: 0 !important;
        }
        .np-designer-ai-modal.is-edit .np-designer-ai-reference-hint {
            display: none !important;
        }
        .np-designer-ai-modal.is-edit .np-designer-ai-edit {
            display: none !important;
        }
        .np-designer-ai-modal.is-edit .np-designer-ai-use {
            width: 100%;
        }
        .np-designer-ai-font-trigger {
            width: 100%;
            padding: 10px 12px;
            border: 1px solid #000000;
            border-radius: 6px;
            font-size: 14px;
            background: #fff;
            color: #111;
            text-align: left;
            cursor: pointer;
            box-sizing: border-box;
            position: relative;
            display: flex;
            align-items: center;
            gap: 0;
        }
        .np-designer-ai-font-trigger::after {
            content: none;
            display: none;
        }
        .np-designer-ai-font-trigger-label {
            flex: 1 1 auto;
            text-align: left;
        }
        .np-designer-ai-font-trigger-icon {
            flex: 0 0 auto;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            margin-left: auto;
            color: #111;
        }
        .np-designer-ai-font-trigger-icon svg {
            display: block;
            width: 18px;
            height: 18px;
            fill: currentColor;
        }
        .np-designer-ai-font-trigger.is-placeholder {
            color: #6b7280;
            font-family: inherit !important;
        }
        .np-designer-ai-font-trigger:hover,
        .np-designer-ai-font-trigger:focus,
        .np-designer-ai-font-trigger:focus-visible {
            background: #fff !important;
            color: #111 !important;
            border-color: #000000 !important;
        }
        .np-designer-ai-font-list {
            display: none;
            position: absolute;
            top: calc(100% + 6px);
            left: 0;
            right: 0;
            max-height: 240px;
            overflow-y: auto;
            background: #fff;
            border: 1px solid #000000;
            border-radius: 6px;
            box-shadow: 0 10px 26px rgba(0, 0, 0, 0.15);
            z-index: 20;
        }
        .np-designer-ai-font-picker.is-open .np-designer-ai-font-list {
            display: block;
        }
        .np-designer-ai-font-option {
            width: 100%;
            text-align: left;
            padding: 10px 12px;
            border: 0;
            background: #fff;
            color: #111;
            font-size: 14px;
            cursor: pointer;
        }
        .np-designer-ai-font-option:not(.is-selected):hover,
        .np-designer-ai-font-option:not(.is-selected):focus,
        .np-designer-ai-font-option:not(.is-selected):focus-visible {
            background: #f3f4f6 !important;
            color: #111 !important;
        }
        .np-designer-ai-font-option.is-selected {
            background: #111;
            color: #fff;
        }
        .np-designer-ai-font-option.is-placeholder {
            color: #6b7280;
            font-family: inherit !important;
        }
        .np-designer-ai-form textarea {
            min-height: 0;
            resize: vertical;
        }
        .np-designer-ai-form input.np-designer-ai-description {
            width: calc(100% - 3px);
        }
        .np-designer-ai-field {
            position: relative;
        }
        .np-designer-ai-field .np-designer-ai-placeholder {
            position: absolute;
            left: 14px;
            top: 50%;
            transform: translateY(-50%);
            font-size: 14px;
            color: #9ca3af;
            line-height: 1;
            pointer-events: none;
            transition: all 0.15s ease;
        }
        .np-designer-ai-field.np-has-value .np-designer-ai-placeholder,
        .np-designer-ai-field:focus-within .np-designer-ai-placeholder {
            top: 8px;
            transform: none;
            font-size: 11px;
            color: #6b7280;
        }
        .np-designer-ai-field.np-placeholder-center .np-designer-ai-placeholder {
            left: 50%;
            transform: translate(-50%, -50%);
            text-align: center;
            width: 100%;
            padding: 0 12px;
        }

        input[type="text"], input[type="number"], input[type="email"], input[type="url"], input[type="password"],
        input[type="search"], input[type=reset], input[type=tel], input[type=date], select{
            height: 41px;
        }


        .np-designer-ai-field.np-placeholder-center.np-has-value .np-designer-ai-placeholder,
        .np-designer-ai-field.np-placeholder-center:focus-within .np-designer-ai-placeholder {
            left: 19px;
            transform: none;
            text-align: left;
            width: auto;
            padding: 0;
        }
        .np-designer-ai-field input,
        .np-designer-ai-field textarea {
            padding-top: 14px !important;
            padding-bottom: 0px !important;
            padding-left: 13px !important;
            color: #000;
            font-weight: 500;
        }
        .np-designer-ai-field input::placeholder,
        .np-designer-ai-field textarea::placeholder {
            color: transparent;
        }
        .np-designer-ai-hint {
            font-size: 12px;
            color: #6b7280;
            margin-top: -8px;
    margin-left: 3px;
    margin-bottom: 0px;
        }
        .np-designer-ai-edit-log {
            font-size: 12px;
            color: #4b5563;
            background: #f9fafb;
            border: 1px solid #e5e7eb;
            border-radius: 6px;
            padding: 8px 10px;
        }
        .np-designer-ai-generate {
            border: 1px solid #111;
            background: #fff;
            color: #111;
            padding: 10px 14px;
            cursor: pointer;
            font-size: 14px;
            font-weight: 600;
            border-radius: 6px;
            margin-top: 22px;
        }
        .np-designer-ai-generate:hover,
        .np-designer-ai-generate:focus {
            background: #fff;
            color: #111;
        }
        .np-designer-ai-generate:active {
            background: #111;
            color: #fff;
        }
        .np-designer-ai-generate.is-busy { opacity: 0.6; pointer-events: none; }
        .np-designer-ai-status { font-size: 12px; color: #555; min-height: 18px; }
        .np-designer-ai-preview {
            width: 100%;
            aspect-ratio: 1 / 1;
            background: #f3f4f6;
            border: 1px solid #e5e7eb;
            border-radius: 10px;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 12px;
            box-sizing: border-box;
            margin-top: 15px;
        }
        .np-designer-ai-preview-wrap {
            display: flex;
            flex-direction: column;
            gap: 10px;
        }
        .np-designer-ai-actions {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 0;
            flex-wrap: nowrap;
            width: 100%;
        }
        .np-designer-ai-actions button { white-space: nowrap; }
        .np-designer-ai-options {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 0;
        }
        .np-designer-ai-option {
            border: 2px solid #111;
            background: #fff;
            border-radius: 8px;
            padding: 4px;
            cursor: pointer;
            transition: border-color 150ms ease, box-shadow 150ms ease;
        }
        .np-designer-ai-option:hover,
        .np-designer-ai-option:focus {
            background: #fff;
            border-color: #111;
            box-shadow: none;
        }
        .np-designer-ai-option.is-active,
        .np-designer-ai-option.is-active:hover,
        .np-designer-ai-option.is-active:focus {
            background: #111;
            border-color: #111;
            box-shadow: 0 0 0 1px #111;
        }
        .np-designer-ai-option img {
            width: 100%;
            height: 96px;
            object-fit: contain;
            display: block;
            border-radius: 6px;
            background: #f8fafc;
        }
        .np-designer-ai-preview img {
            max-width: 100%;
            max-height: 100%;
            object-fit: contain;
        }
        .np-designer-ai-edit {
            border: 1px solid #111;
            background: #fff;
            color: #111;
            padding: 10px 14px;
            cursor: pointer;
            font-size: 14px;
            font-weight: 600;
            border-radius: 6px;
        }
        .np-designer-ai-edit:hover,
        .np-designer-ai-edit:focus {
            background: #fff;
            color: #111;
        }
        .np-designer-ai-edit:active {
            background: #111;
            color: #fff;
        }
        .np-designer-ai-edit:disabled {
            opacity: 0.4;
            cursor: not-allowed;
        }
        .np-designer-ai-use,
        .np-designer-ai-cancel {
            border: 1px solid #111;
            background: #fff;
            color: #111;
            padding: 10px 16px;
            cursor: pointer;
            font-size: 14px;
            font-weight: 600;
            border-radius: 6px;
        }
        .np-designer-ai-use:hover,
        .np-designer-ai-use:focus,
        .np-designer-ai-cancel:hover,
        .np-designer-ai-cancel:focus {
            background: #fff;
            color: #111;
        }
        .np-designer-ai-use:active,
        .np-designer-ai-cancel:active {
            background: #111;
            color: #fff;
        }
        .np-designer-ai-modal.is-busy .np-designer-ai-use,
        .np-designer-ai-modal.is-busy .np-designer-ai-generate { opacity: 0.6; pointer-events: none; }
        .np-designer-ai-modal.is-busy .np-designer-ai-edit { opacity: 0.6; pointer-events: none; }
        .np-designer-ai-modal.is-busy .np-designer-ai-header,
        .np-designer-ai-modal.is-busy .np-designer-ai-body {
            filter: blur(2px);
        }
        .np-designer-ai-loader {
            position: absolute;
            inset: 0;
            display: none;
            align-items: center;
            justify-content: center;
            background: rgba(255, 255, 255, 0.5);
            z-index: 2;
        }
        .np-designer-ai-modal.is-busy .np-designer-ai-loader { display: flex; }
        .np-designer-ai-loader .np-designer-upload-progress {
            position: static;
            transform: none;
            display: flex;
            gap: 10px;
            padding: 12px 18px;
        }
        .np-designer-ai-loader .np-designer-upload-meter,
        .np-designer-ai-loader .np-designer-upload-percent {
            display: none;
        }
        .np-designer-ai-progress-text {
            font-size: 14px;
            font-weight: 600;
            color: #111;
        }
        .np-designer-ai-loader-content {
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            gap: 10px;
            color: #111;
            font-size: 14px;
            font-weight: 600;
        }
        .np-designer-ai-spinner {
            width: 28px;
            height: 28px;
            border: 3px solid #111;
            border-top-color: transparent;
            border-radius: 50%;
            animation: np-designer-spin 0.8s linear infinite;
        }
        @keyframes np-designer-spin {
            to { transform: rotate(360deg); }
        }
        @media (max-width: 768px) {
            .np-designer-tools-overlay {
                margin-top: 48px;
                margin-bottom: -28px;
            }
            .np-designer-removebg-btn,
            .np-designer-removebg-undo {
                padding: 11px 6px;
                font-size: 12px;
                transform: translateY(-25px);
            }
        }
        @media (max-width: 640px) {
            .np-designer-ai-modal.is-font-open .np-designer-ai-dialog,
            .np-designer-ai-modal.is-font-open .np-designer-ai-body {
                overflow: visible;
            }
            .np-designer-removebg-dialog {
                max-width: 100%;
                max-height: 92vh;
            }
            .np-designer-removebg-preview {
                height: 60vh;
                max-height: 60vh;
                padding: 8px;
            }
            .np-designer-removebg-footer {
                flex-direction: column;
                align-items: stretch;
            }
            .np-designer-removebg-modal-actions {
                width: 100%;
                flex-direction: column;
            }
            .np-designer-removebg-modal-actions button {
                width: 100%;
            }
            .np-designer-ai-body {
                grid-template-columns: 1fr;
            }
            .np-designer-ai-body.has-preview {
                grid-template-columns: 1fr;
                margin-top: 6px;
            }
            .np-designer-ai-actions {
                gap: 0px;
                flex-wrap: wrap;
                margin-bottom: 30px;
                margin-top: 15px;
            }
            .np-designer-ai-actions .np-designer-ai-edit,
            .np-designer-ai-actions .np-designer-ai-use {
                padding: 15px 10px;
                font-size: 12px;
                flex: 1 1 100%;
                width: 100%;
                white-space: normal;
                margin: 15px 0px 0px 0px;
            }
            .np-designer-ai-font-list {
                max-height: 50vh;
            }
            .np-designer-ai-field.np-placeholder-split .np-designer-ai-placeholder {
                white-space: normal;
                line-height: 1.25;
            }
            .np-designer-ai-field.np-placeholder-split .np-designer-ai-placeholder-line {
                display: block;
            }
            .np-designer-ai-field.np-placeholder-split.np-has-value .np-designer-ai-placeholder-secondary,
            .np-designer-ai-field.np-placeholder-split:focus-within .np-designer-ai-placeholder-secondary {
                display: none;
            }
            .np-designer-ai-modal {
                padding: 12px 14px;
                padding: calc(12px + env(safe-area-inset-top)) calc(14px + env(safe-area-inset-right)) calc(12px + env(safe-area-inset-bottom)) calc(14px + env(safe-area-inset-left));
                box-sizing: border-box;
                overflow-x: hidden;
            }
            .np-designer-ai-dialog {
                width: 100%;
                max-width: 540px;
                max-width: calc(100vw - 28px);
                max-height: calc(100svh - 24px);
                border-radius: 12px;
                box-sizing: border-box;
                min-width: 0;
                overflow-x: hidden;
            }
            .np-designer-ai-body {
                padding: 12px;
                overflow-x: hidden;
                min-width: 0;
            }
            .np-designer-ai-form {
                min-width: 0;
                max-width: 100%;
                overflow-x: hidden;
            }
            .np-designer-ai-form input,
            .np-designer-ai-form select,
            .np-designer-ai-form textarea {
                max-width: 100%;
            }
            .np-designer-ai-form input,
            .np-designer-ai-form select,
            .np-designer-ai-form textarea,
            .np-designer-ai-font-trigger {
                font-size: 16px;
            }
            .np-designer-ai-form .np-designer-ai-font,
            .np-designer-ai-form .np-designer-ai-font option,
            .np-designer-ai-font-trigger,
            .np-designer-ai-font-option {
                font-size: 12px;
            }
            .np-designer-ai-form * {
                max-width: 100%;
                min-width: 0;
                box-sizing: border-box;
            }
            .np-designer-ai-font-picker,
            .np-designer-ai-font-trigger,
            .np-designer-ai-font-list,
            .np-designer-ai-preview-wrap,
            .np-designer-ai-options {
                max-width: 100%;
                overflow-x: hidden;
                min-width: 0;
            }
        }
        .np-designer.np-removebg-disabled .np-designer-tools { display: none; }
        .woocommerce-product-gallery { position: relative; }
        .np-designer-overlay-wrap { position: absolute; inset: 0; z-index: 5; pointer-events: none; }
        .np-designer-overlay-wrap.is-active { pointer-events: auto; }
        .np-designer-overlay { position: absolute; display: none; box-sizing: border-box; }
        .np-designer-overlay.is-active { display: block; border: 2px solid transparent; }
        .np-designer-overlay.is-active.has-preview { border-color: transparent; border-radius: 0; }
        .np-designer-overlay.has-preview { touch-action: none; }
        .np-designer-overlay.is-linked-visible {
            pointer-events: none;
            z-index: 1;
        }
        .np-designer-overlay.is-active:not(.is-linked-visible) {
            z-index: 2;
        }
        .np-designer-overlay.is-linked-visible .np-designer-box {
            pointer-events: none;
        }
        .np-designer-overlay[data-location="logo_hette"],
        .np-designer-overlay[data-location="hette"],
        .np-designer-overlay[data-location="hood"] {
            clip-path: polygon(0 0, 100% 0, 78% 100%, 22% 100%);
        }
        .np-designer-overlay.has-preview.show-controls,
        .np-designer-overlay.has-preview.hover-controls { border-color: #fff; }
        .np-designer-overlay.is-active:not(.has-preview)::before {
            content: '';
            position: absolute;
            top: var(--np-placeholder-y, 20%);
            left: var(--np-placeholder-x, 10%);
            width: var(--np-placeholder-w, 80%);
            height: var(--np-placeholder-h, 60%);
            border: 0;
            border-radius: 50%;
            background-image: var(--np-dotted-oval);
            background-repeat: no-repeat;
            background-position: center;
            background-size: 90% 90%;
            opacity: 1;
            transition: opacity 120ms ease-in-out;
            pointer-events: none;
            box-sizing: border-box;
        }
        .np-designer-overlay[data-location="logo_arm_left"].is-active:not(.has-preview)::before,
        .np-designer-overlay[data-location="logo_arm_right"].is-active:not(.has-preview)::before,
        .np-designer-overlay[data-location="arm_left"].is-active:not(.has-preview)::before,
        .np-designer-overlay[data-location="arm_right"].is-active:not(.has-preview)::before,
        .np-designer-overlay[data-location="sleeve_left"].is-active:not(.has-preview)::before,
        .np-designer-overlay[data-location="sleeve_right"].is-active:not(.has-preview)::before {
            content: none;
        }
        .np-designer-overlay.is-active:not(.has-preview)::after {
            content: 'Din logo\A her';
            position: absolute;
            top: var(--np-placeholder-y, 20%);
            left: var(--np-placeholder-x, 10%);
            width: var(--np-placeholder-w, 80%);
            height: var(--np-placeholder-h, 60%);
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: var(--np-placeholder-size, 13px);
            font-size: min(var(--np-placeholder-size, 13px), max(10px, 2.7vw));
            font-weight: 500;
            color: #111;
            opacity: 1;
            transition: opacity 120ms ease-in-out;
            pointer-events: none;
            white-space: pre-line;
            text-align: center;
            line-height: 1.1;
            box-sizing: border-box;
            transform: translateY(3px);
            -webkit-text-size-adjust: 100%;
            text-size-adjust: 100%;
        }
        .np-designer-overlay[data-location="logo_arm_left"].is-active:not(.has-preview)::after,
        .np-designer-overlay[data-location="logo_arm_right"].is-active:not(.has-preview)::after,
        .np-designer-overlay[data-location="arm_left"].is-active:not(.has-preview)::after,
        .np-designer-overlay[data-location="arm_right"].is-active:not(.has-preview)::after,
        .np-designer-overlay[data-location="sleeve_left"].is-active:not(.has-preview)::after,
        .np-designer-overlay[data-location="sleeve_right"].is-active:not(.has-preview)::after {
            content: none;
        }
        .np-designer-guard {
            position: absolute;
            left: var(--np-guard-x, 0%);
            top: var(--np-guard-y, 0%);
            width: var(--np-guard-w, 0%);
            height: var(--np-guard-h, 0%);
            border: 2px solid #e10600;
            background: rgba(225, 6, 0, 0.08);
            border-radius: 3px;
            box-sizing: border-box;
            display: none;
            pointer-events: none;
            z-index: 0;
        }
        .np-designer-overlay.is-active.show-guard .np-designer-guard {
            display: block;
        }
        .np-designer-overlay-wrap.is-dark .np-designer-overlay.is-active:not(.has-preview)::after {
            color: #fff;
        }
        .np-designer-overlay.is-active.hover-controls:not(.has-preview)::before,
        .np-designer-overlay.is-active.hover-controls:not(.has-preview)::after,
        .np-designer-overlay.is-active.show-controls:not(.has-preview)::before,
        .np-designer-overlay.is-active.show-controls:not(.has-preview)::after {
            opacity: 1;
        }
        .np-designer-variation-blur { position: relative; }
        .np-designer-variation-blur::after {
            content: none;
        }
        .np-designer-variation-blur .woocommerce-product-gallery__wrapper img,
        .np-designer-variation-blur .woocommerce-product-gallery__image img,
        .np-designer-variation-blur .vgs-stage img,
        .np-designer-variation-blur .vgs-main img,
        .np-designer-variation-blur.vgs-main img {
            opacity: 1;
        }
        .np-designer-box { position: absolute; left: 0; top: 0; width: 40%; height: 40%; display: none; pointer-events: auto; cursor: move; touch-action: none; box-sizing: border-box; z-index: 1; }
        .np-designer-box::before {
            content: '';
            position: absolute;
            inset: -24px;
            pointer-events: auto;
            z-index: 0;
        }
        .np-designer-overlay.has-preview .np-designer-box { display: block; }
        .np-designer-overlay.has-preview .np-designer-box.is-empty { display: none; }
        .np-designer-removebg-preview .np-designer-box { display: block; }
        .np-designer-removebg-preview .np-designer-box.is-empty { display: none; }
        .np-designer-box.is-dragging { cursor: grabbing; }
        .np-designer-box.is-active { z-index: 2; }
        .np-designer-box.is-guarded {
            outline: 2px solid #e10600;
            outline-offset: -2px;
        }
        .np-designer-box.is-guarded .np-designer-handle,
        .np-designer-box.is-guarded .np-designer-rotate {
            border-color: #e10600;
        }
        .np-designer-guard-modal {
            position: fixed;
            inset: 0;
            display: none;
            align-items: center;
            justify-content: center;
            padding: 20px;
            background: rgba(0, 0, 0, 0.55);
            z-index: 99999;
        }
        .np-designer-guard-modal.is-open {
            display: flex;
        }
        body.np-guard-modal-open form.cart .blockUI,
        body.np-guard-modal-open form.cart .blockOverlay,
        body.np-guard-modal-open form.cart .blockMsg {
            display: none !important;
        }
        body.np-guard-modal-open form.cart .single_add_to_cart_button.loading,
        body.np-guard-modal-open form.cart button[name="add-to-cart"].loading,
        body.np-guard-modal-open form.cart input[name="add-to-cart"].loading {
            opacity: 1;
        }
        .np-designer-guard-dialog {
            background: #fff;
            border-radius: 10px;
            width: 100%;
            max-width: 520px;
            padding: 18px 20px;
            box-shadow: 0 20px 60px rgba(0, 0, 0, 0.28);
            text-align: center;
        }
        .np-designer-guard-title {
            font-size: 16px;
            font-weight: 600;
            color: #111;
            margin-bottom: 6px;
        }
        .np-designer-guard-text {
            font-size: 14px;
            color: #111;
            margin-bottom: 14px;
        }
        .np-designer-guard-actions {
            display: flex;
            justify-content: center;
        }
        .np-designer-guard-close {
            border: 0;
            border-radius: 6px;
            background: #111;
            color: #fff;
            padding: 10px 16px;
            font-size: 14px;
            cursor: pointer;
        }
        .np-designer-box img { width: 100%; height: 100%; object-fit: cover; display: block; pointer-events: none; transform-origin: 50% 50%; background: transparent !important; }
        .np-designer-overlay[data-location="logo_arm_left"] .np-designer-box img,
        .np-designer-overlay[data-location="logo_arm_right"] .np-designer-box img,
        .np-designer-overlay[data-location="arm_left"] .np-designer-box img,
        .np-designer-overlay[data-location="arm_right"] .np-designer-box img,
        .np-designer-overlay[data-location="sleeve_left"] .np-designer-box img,
        .np-designer-overlay[data-location="sleeve_right"] .np-designer-box img {
            object-fit: contain;
        }
        .np-designer-box-content { position: absolute; inset: 0; transform-origin: 50% 50%; touch-action: none; z-index: 1; }
        .np-designer-box.has-badge .np-designer-box-content { display: flex; align-items: center; justify-content: center; background: rgba(255, 255, 255, 0.7); border: 1px dashed #111; }
        .np-designer-box.has-badge img { display: none; }
        .np-designer-file-badge { display: none; font-size: 12px; color: #111; background: #fff; padding: 4px 6px; border: 1px solid #111; border-radius: 4px; text-transform: uppercase; }
        .np-designer-box.has-badge .np-designer-file-badge { display: inline-flex; align-items: center; justify-content: center; }
        .np-designer-rotate {
            display: none;
            position: absolute;
            left: -14px;
            bottom: -19px;
            width: 21px;
            height: 21px;
            border-radius: 50%;
            border: 1px solid #111;
            background-color: transparent;
            cursor: pointer;
            padding: 0;
            touch-action: none;
            appearance: none;
            -webkit-appearance: none;
            box-shadow: none;
            background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2050%2050%22%3E%3Cpath%20fill%3D%22%23000%22%20d%3D%22M%206.9707031%201.9726562%20A%202.0002%202.0002%200%200%200%205%204%20L%205%2015%20L%2016%2015%20A%202.0002%202.0002%200%201%200%2016%2011%20L%2012.164062%2011%20C%2015.542723%207.8982503%2020.038531%206%2025%206%20C%2035.517124%206%2044%2014.482876%2044%2025%20C%2044%2035.517124%2035.517124%2044%2025%2044%20C%2014.482876%2044%206%2035.517124%206%2025%20A%202.0002%202.0002%200%201%200%202%2025%20C%202%2037.678876%2012.321124%2048%2025%2048%20C%2037.678876%2048%2048%2037.678876%2048%2025%20C%2048%2012.321124%2037.678876%202%2025%202%20C%2018.791456%202%2013.142048%204.4700924%209%208.4804688%20L%209%204%20A%202.0002%202.0002%200%200%200%206.9707031%201.9726562%20z%22/%3E%3C/svg%3E");
            background-repeat: no-repeat;
            background-position: center;
            background-size: 70% 70%;
            z-index: 2;
        }
        .np-designer-rotate:hover,
        .np-designer-rotate:active,
        .np-designer-rotate:focus {
            background-color: transparent;
            outline: none;
        }
        .np-designer-overlay.has-preview .np-designer-rotate {
            display: inline-flex;
            align-items: center;
            justify-content: center;
        }
        .np-designer-overlay-wrap.is-dark .np-designer-overlay.has-preview .np-designer-rotate {
            border-color: #fff;
            background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2050%2050%22%3E%3Cpath%20fill%3D%22%23fff%22%20d%3D%22M%206.9707031%201.9726562%20A%202.0002%202.0002%200%200%200%205%204%20L%205%2015%20L%2016%2015%20A%202.0002%202.0002%200%201%200%2016%2011%20L%2012.164062%2011%20C%2015.542723%207.8982503%2020.038531%206%2025%206%20C%2035.517124%206%2044%2014.482876%2044%2025%20C%2044%2035.517124%2035.517124%2044%2025%2044%20C%2014.482876%2044%206%2035.517124%206%2025%20A%202.0002%202.0002%200%201%200%202%2025%20C%202%2037.678876%2012.321124%2048%2025%2048%20C%2037.678876%2048%2048%2037.678876%2048%2025%20C%2048%2012.321124%2037.678876%202%2025%202%20C%2018.791456%202%2013.142048%204.4700924%209%208.4804688%20L%209%204%20A%202.0002%202.0002%200%200%200%206.9707031%201.9726562%20z%22/%3E%3C/svg%3E");
        }
        .np-designer-overlay-remove {
            display: none;
            position: absolute;
            top: -17.2px;
            right: -14px;
            width: 18px;
            height: 18px;
            border-radius: 50%;
            border: 0;
            background: #e10600;
            color: #fff;
            font-size: 0;
            line-height: 0;
            cursor: pointer;
            pointer-events: auto;
            padding: 0;
            appearance: none;
            -webkit-appearance: none;
            box-shadow: none;
            transition: none;
            z-index: 2;
        }
        .np-designer-overlay .np-designer-overlay-remove,
        .np-designer-overlay .np-designer-handle,
        .np-designer-overlay .np-designer-rotate {
            opacity: 0;
            pointer-events: none;
        }
        .np-designer-overlay.show-controls .np-designer-box.is-active .np-designer-overlay-remove,
        .np-designer-overlay.show-controls .np-designer-box.is-active .np-designer-handle,
        .np-designer-overlay.hover-controls .np-designer-box.is-active .np-designer-overlay-remove,
        .np-designer-overlay.hover-controls .np-designer-box.is-active .np-designer-handle,
        .np-designer-overlay.show-controls .np-designer-box.is-active .np-designer-rotate,
        .np-designer-overlay.hover-controls .np-designer-box.is-active .np-designer-rotate {
            opacity: 1;
            pointer-events: auto;
        }
        .np-designer-overlay.has-preview .np-designer-box:hover .np-designer-overlay-remove,
        .np-designer-overlay.has-preview .np-designer-box:hover .np-designer-handle,
        .np-designer-overlay.has-preview .np-designer-box:hover .np-designer-rotate,
        .np-designer-overlay.has-preview .np-designer-box:focus-within .np-designer-overlay-remove,
        .np-designer-overlay.has-preview .np-designer-box:focus-within .np-designer-handle,
        .np-designer-overlay.has-preview .np-designer-box:focus-within .np-designer-rotate {
            opacity: 1;
            pointer-events: auto;
        }
        .np-designer-overlay.hover-controls:not(.show-controls):not(.hover-near-box) .np-designer-box.is-active:not(:hover):not(:focus-within) .np-designer-overlay-remove,
        .np-designer-overlay.hover-controls:not(.show-controls):not(.hover-near-box) .np-designer-box.is-active:not(:hover):not(:focus-within) .np-designer-handle,
        .np-designer-overlay.hover-controls:not(.show-controls):not(.hover-near-box) .np-designer-box.is-active:not(:hover):not(:focus-within) .np-designer-rotate {
            opacity: 0;
            pointer-events: none;
        }
        .np-designer-overlay-remove::before,
        .np-designer-overlay-remove::after {
            content: '';
            position: absolute;
            top: 50%;
            left: 50%;
            width: 10px;
            height: 2px;
            background: #fff;
            transform-origin: center;
            transform: translate(-50%, -50%) rotate(45deg);
        }
        .np-designer-overlay-remove::after {
            transform: translate(-50%, -50%) rotate(-45deg);
        }
        .np-designer-overlay-remove:hover,
        .np-designer-overlay-remove:active,
        .np-designer-overlay-remove:focus {
            background: #e10600;
            color: #fff;
            box-shadow: none;
            outline: none;
        }
        .np-designer-overlay.has-preview .np-designer-overlay-remove { display: inline-flex; align-items: center; justify-content: center; }
        .np-designer-handle { position: absolute; width: 12px; height: 12px; background: #b10000; border: 2px solid #fff; border-radius: 50%; touch-action: none; }
        .np-designer-overlay-remove,
        .np-designer-rotate { touch-action: none; }
        .np-designer-handle-ne,
        .np-designer-handle-sw { display: none; }
        .np-designer-handle-nw {
            left: -15px;
            top: -19px;
            width: 21.06px;
            height: 21.06px;
            border-radius: 50%;
            border: 1px solid #111;
            background-color: transparent;
            cursor: nwse-resize;
            background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2aWV3Qm94PSIwLDAsMjU2LDI1NiIgd2lkdGg9IjUwcHgiIGhlaWdodD0iNTBweCIgZmlsbC1ydWxlPSJub256ZXJvIj48ZyBmaWxsPSIjMDAwMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBzdHJva2UtbGluZWNhcD0iYnV0dCIgc3Ryb2tlLWxpbmVqb2luPSJtaXRlciIgc3Ryb2tlLW1pdGVybGltaXQ9IjEwIiBzdHJva2UtZGFzaGFycmF5PSIiIHN0cm9rZS1kYXNob2Zmc2V0PSIwIiBmb250LWZhbWlseT0ibm9uZSIgZm9udC13ZWlnaHQ9Im5vbmUiIGZvbnQtc2l6ZT0ibm9uZSIgdGV4dC1hbmNob3I9Im5vbmUiIHN0eWxlPSJtaXgtYmxlbmQtbW9kZTogbm9ybWFsIj48ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLjAwNjk3LDI1NS45OTMzMykgcm90YXRlKC05MCkgc2NhbGUoNS4xMiw1LjEyKSI+PHBhdGggZD0iTTI5LjQwNjI1LDVjLTEuMTA1NDcsMC4wNTA3OCAtMS45NTcwMywwLjk4ODI4IC0xLjkwNjI1LDIuMDkzNzVjMC4wNTA3OCwxLjEwNTQ3IDAuOTg4MjgsMS45NTcwMyAyLjA5Mzc1LDEuOTA2MjVoOC41OTM3NWwtMjkuMTg3NSwyOS4xODc1di04LjU5Mzc1YzAuMDA3ODEsLTAuNTQyOTcgLTAuMjAzMTIsLTEuMDYyNSAtMC41ODU5NCwtMS40NDUzMWMtMC4zODI4MSwtMC4zODI4MSAtMC45MDIzNCwtMC41OTM3NSAtMS40NDUzMSwtMC41ODU5NGMtMS4xMDU0NywwLjAxNTYzIC0xLjk4NDM3LDAuOTI1NzggLTEuOTY4NzUsMi4wMzEyNXYxNS40MDYyNWgxNS40MDYyNWMwLjcyMjY2LDAuMDExNzIgMS4zOTA2MywtMC4zNjcxOSAxLjc1MzkxLC0wLjk5MjE5YzAuMzY3MTksLTAuNjIxMDkgMC4zNjcxOSwtMS4zOTQ1MyAwLC0yLjAxNTYyYy0wLjM2MzI4LC0wLjYyNSAtMS4wMzEyNSwtMS4wMDM5MSAtMS43NTM5MSwtMC45OTIxOWgtOC41OTM3NWwyOS4xODc1LC0yOS4xODc1djguNTkzNzVjLTAuMDExNzIsMC43MjI2NiAwLjM2NzE5LDEuMzkwNjMgMC45OTIxOSwxLjc1MzkxYzAuNjIxMDksMC4zNjcxOSAxLjM5NDUzLDAuMzY3MTkgMi4wMTU2MywwYzAuNjI1LC0wLjM2MzI4IDEuMDAzOTEsLTEuMDMxMjUgMC45OTIxOSwtMS43NTM5MXYtMTUuNDA2MjVoLTE1LjQwNjI1Yy0wLjA2MjUsLTAuMDAzOTEgLTAuMTI1LC0wLjAwMzkxIC0wLjE4NzUsMHoiPjwvcGF0aD48L2c+PC9nPjwvc3ZnPg==");
            background-repeat: no-repeat;
            background-position: center;
            background-size: 72% 72%;
            box-shadow: none;
            transition: none;
            transform: rotate(180deg);
        }
        .np-designer-handle-se {
            right: -15px;
            bottom: -19px;
            width: 21.06px;
            height: 21.06px;
            border-radius: 50%;
            border: 1px solid #111;
            background-color: transparent;
            cursor: nwse-resize;
            background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2aWV3Qm94PSIwLDAsMjU2LDI1NiIgd2lkdGg9IjUwcHgiIGhlaWdodD0iNTBweCIgZmlsbC1ydWxlPSJub256ZXJvIj48ZyBmaWxsPSIjMDAwMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBzdHJva2UtbGluZWNhcD0iYnV0dCIgc3Ryb2tlLWxpbmVqb2luPSJtaXRlciIgc3Ryb2tlLW1pdGVybGltaXQ9IjEwIiBzdHJva2UtZGFzaGFycmF5PSIiIHN0cm9rZS1kYXNob2Zmc2V0PSIwIiBmb250LWZhbWlseT0ibm9uZSIgZm9udC13ZWlnaHQ9Im5vbmUiIGZvbnQtc2l6ZT0ibm9uZSIgdGV4dC1hbmNob3I9Im5vbmUiIHN0eWxlPSJtaXgtYmxlbmQtbW9kZTogbm9ybWFsIj48ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLjAwNjk3LDI1NS45OTMzMykgcm90YXRlKC05MCkgc2NhbGUoNS4xMiw1LjEyKSI+PHBhdGggZD0iTTI5LjQwNjI1LDVjLTEuMTA1NDcsMC4wNTA3OCAtMS45NTcwMywwLjk4ODI4IC0xLjkwNjI1LDIuMDkzNzVjMC4wNTA3OCwxLjEwNTQ3IDAuOTg4MjgsMS45NTcwMyAyLjA5Mzc1LDEuOTA2MjVoOC41OTM3NWwtMjkuMTg3NSwyOS4xODc1di04LjU5Mzc1YzAuMDA3ODEsLTAuNTQyOTcgLTAuMjAzMTIsLTEuMDYyNSAtMC41ODU5NCwtMS40NDUzMWMtMC4zODI4MSwtMC4zODI4MSAtMC45MDIzNCwtMC41OTM3NSAtMS40NDUzMSwtMC41ODU5NGMtMS4xMDU0NywwLjAxNTYzIC0xLjk4NDM3LDAuOTI1NzggLTEuOTY4NzUsMi4wMzEyNXYxNS40MDYyNWgxNS40MDYyNWMwLjcyMjY2LDAuMDExNzIgMS4zOTA2MywtMC4zNjcxOSAxLjc1MzkxLC0wLjk5MjE5YzAuMzY3MTksLTAuNjIxMDkgMC4zNjcxOSwtMS4zOTQ1MyAwLC0yLjAxNTYyYy0wLjM2MzI4LC0wLjYyNSAtMS4wMzEyNSwtMS4wMDM5MSAtMS43NTM5MSwtMC45OTIxOWgtOC41OTM3NWwyOS4xODc1LC0yOS4xODc1djguNTkzNzVjLTAuMDExNzIsMC43MjI2NiAwLjM2NzE5LDEuMzkwNjMgMC45OTIxOSwxLjc1MzkxYzAuNjIxMDksMC4zNjcxOSAxLjM5NDUzLDAuMzY3MTkgMi4wMTU2MywwYzAuNjI1LC0wLjM2MzI4IDEuMDAzOTEsLTEuMDMxMjUgMC45OTIxOSwtMS43NTM5MXYtMTUuNDA2MjVoLTE1LjQwNjI1Yy0wLjA2MjUsLTAuMDAzOTEgLTAuMTI1LC0wLjAwMzkxIC0wLjE4NzUsMHoiPjwvcGF0aD48L2c+PC9nPjwvc3ZnPg==");
            background-repeat: no-repeat;
            background-position: center;
            background-size: 72% 72%;
            box-shadow: none;
            transition: none;

        }
        .np-designer-overlay-wrap.is-dark .np-designer-overlay.has-preview .np-designer-handle-nw {
            border-color: #fff;
            background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2aWV3Qm94PSIwLDAsMjU2LDI1NiIgd2lkdGg9IjUwcHgiIGhlaWdodD0iNTBweCIgZmlsbC1ydWxlPSJub256ZXJvIj48ZyBmaWxsPSIjZmZmZmZmIiBmaWxsLXJ1bGU9Im5vbnplcm8iIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBzdHJva2UtbGluZWNhcD0iYnV0dCIgc3Ryb2tlLWxpbmVqb2luPSJtaXRlciIgc3Ryb2tlLW1pdGVybGltaXQ9IjEwIiBzdHJva2UtZGFzaGFycmF5PSIiIHN0cm9rZS1kYXNob2Zmc2V0PSIwIiBmb250LWZhbWlseT0ibm9uZSIgZm9udC13ZWlnaHQ9Im5vbmUiIGZvbnQtc2l6ZT0ibm9uZSIgdGV4dC1hbmNob3I9Im5vbmUiIHN0eWxlPSJtaXgtYmxlbmQtbW9kZTogbm9ybWFsIj48ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLjAwNjk3LDI1NS45OTMzMykgcm90YXRlKC05MCkgc2NhbGUoNS4xMiw1LjEyKSI+PHBhdGggZD0iTTI5LjQwNjI1LDVjLTEuMTA1NDcsMC4wNTA3OCAtMS45NTcwMywwLjk4ODI4IC0xLjkwNjI1LDIuMDkzNzVjMC4wNTA3OCwxLjEwNTQ3IDAuOTg4MjgsMS45NTcwMyAyLjA5Mzc1LDEuOTA2MjVoOC41OTM3NWwtMjkuMTg3NSwyOS4xODc1di04LjU5Mzc1YzAuMDA3ODEsLTAuNTQyOTcgLTAuMjAzMTIsLTEuMDYyNSAtMC41ODU5NCwtMS40NDUzMWMtMC4zODI4MSwtMC4zODI4MSAtMC45MDIzNCwtMC41OTM3NSAtMS40NDUzMSwtMC41ODU5NGMtMS4xMDU0NywwLjAxNTYzIC0xLjk4NDM3LDAuOTI1NzggLTEuOTY4NzUsMi4wMzEyNXYxNS40MDYyNWgxNS40MDYyNWMwLjcyMjY2LDAuMDExNzIgMS4zOTA2MywtMC4zNjcxOSAxLjc1MzkxLC0wLjk5MjE5YzAuMzY3MTksLTAuNjIxMDkgMC4zNjcxOSwtMS4zOTQ1MyAwLC0yLjAxNTYyYy0wLjM2MzI4LC0wLjYyNSAtMS4wMzEyNSwtMS4wMDM5MSAtMS43NTM5MSwtMC45OTIxOWgtOC41OTM3NWwyOS4xODc1LC0yOS4xODc1djguNTkzNzVjLTAuMDExNzIsMC43MjI2NiAwLjM2NzE5LDEuMzkwNjMgMC45OTIxOSwxLjc1MzkxYzAuNjIxMDksMC4zNjcxOSAxLjM5NDUzLDAuMzY3MTkgMi4wMTU2MywwYzAuNjI1LC0wLjM2MzI4IDEuMDAzOTEsLTEuMDMxMjUgMC45OTIxOSwtMS43NTM5MXYtMTUuNDA2MjVoLTE1LjQwNjI1Yy0wLjA2MjUsLTAuMDAzOTEgLTAuMTI1LC0wLjAwMzkxIC0wLjE4NzUsMHoiPjwvcGF0aD48L2c+PC9nPjwvc3ZnPg==");
        }
        .np-designer-overlay-wrap.is-dark .np-designer-overlay.has-preview .np-designer-handle-se {
            border-color: #fff;
            background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2aWV3Qm94PSIwLDAsMjU2LDI1NiIgd2lkdGg9IjUwcHgiIGhlaWdodD0iNTBweCIgZmlsbC1ydWxlPSJub256ZXJvIj48ZyBmaWxsPSIjZmZmZmZmIiBmaWxsLXJ1bGU9Im5vbnplcm8iIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBzdHJva2UtbGluZWNhcD0iYnV0dCIgc3Ryb2tlLWxpbmVqb2luPSJtaXRlciIgc3Ryb2tlLW1pdGVybGltaXQ9IjEwIiBzdHJva2UtZGFzaGFycmF5PSIiIHN0cm9rZS1kYXNob2Zmc2V0PSIwIiBmb250LWZhbWlseT0ibm9uZSIgZm9udC13ZWlnaHQ9Im5vbmUiIGZvbnQtc2l6ZT0ibm9uZSIgdGV4dC1hbmNob3I9Im5vbmUiIHN0eWxlPSJtaXgtYmxlbmQtbW9kZTogbm9ybWFsIj48ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLjAwNjk3LDI1NS45OTMzMykgcm90YXRlKC05MCkgc2NhbGUoNS4xMiw1LjEyKSI+PHBhdGggZD0iTTI5LjQwNjI1LDVjLTEuMTA1NDcsMC4wNTA3OCAtMS45NTcwMywwLjk4ODI4IC0xLjkwNjI1LDIuMDkzNzVjMC4wNTA3OCwxLjEwNTQ3IDAuOTg4MjgsMS45NTcwMyAyLjA5Mzc1LDEuOTA2MjVoOC41OTM3NWwtMjkuMTg3NSwyOS4xODc1di04LjU5Mzc1YzAuMDA3ODEsLTAuNTQyOTcgLTAuMjAzMTIsLTEuMDYyNSAtMC41ODU5NCwtMS40NDUzMWMtMC4zODI4MSwtMC4zODI4MSAtMC45MDIzNCwtMC41OTM3NSAtMS40NDUzMSwtMC41ODU5NGMtMS4xMDU0NywwLjAxNTYzIC0xLjk4NDM3LDAuOTI1NzggLTEuOTY4NzUsMi4wMzEyNXYxNS40MDYyNWgxNS40MDYyNWMwLjcyMjY2LDAuMDExNzIgMS4zOTA2MywtMC4zNjcxOSAxLjc1MzkxLC0wLjk5MjE5YzAuMzY3MTksLTAuNjIxMDkgMC4zNjcxOSwtMS4zOTQ1MyAwLC0yLjAxNTYyYy0wLjM2MzI4LC0wLjYyNSAtMS4wMzEyNSwtMS4wMDM5MSAtMS43NTM5MSwtMC45OTIxOWgtOC41OTM3NWwyOS4xODc1LC0yOS4xODc1djguNTkzNzVjLTAuMDExNzIsMC43MjI2NiAwLjM2NzE5LDEuMzkwNjMgMC45OTIxOSwxLjc1MzkxYzAuNjIxMDksMC4zNjcxOSAxLjM5NDUzLDAuMzY3MTkgMi4wMTU2MywwYzAuNjI1LC0wLjM2MzI4IDEuMDAzOTEsLTEuMDMxMjUgMC45OTIxOSwtMS43NTM5MXYtMTUuNDA2MjVoLTE1LjQwNjI1Yy0wLjA2MjUsLTAuMDAzOTEgLTAuMTI1LC0wLjAwMzkxIC0wLjE4NzUsMHoiPjwvcGF0aD48L2c+PC9nPjwvc3ZnPg==");
        }
        .np-designer-box.is-locked { cursor: default; }
        .np-designer-box.is-locked .np-designer-handle { display: none; }
        .np-designer-missing { margin-top: 8px; font-size: 12px; color: #b10000; }
        .woocommerce-variation.np-variation-stable {
            display: block !important;
            height: auto !important;
            overflow: visible !important;
            min-height: 48px;
        }
        .woocommerce-variation.np-variation-hidden {
            visibility: hidden;
        }
        .elementor-add-to-cart.elementor-product-variable,
        .elementor-add-to-cart.elementor-product-variable > * {
            width: 100%;
        }
        .elementor-add-to-cart.elementor-product-variable > * {
            flex: 0 0 100%;
        }
        .elementor-add-to-cart.elementor-product-variable form,
        .elementor-add-to-cart.elementor-product-variable .variations,
        .elementor-add-to-cart.elementor-product-variable .single_variation_wrap,
        .elementor-add-to-cart.elementor-product-variable .woocommerce-variation-add-to-cart,
        .elementor-add-to-cart.elementor-product-variable .wapf,
        .elementor-add-to-cart.elementor-product-variable .wapf-wrapper,
        .elementor-add-to-cart.elementor-product-variable .np-designer,
        .elementor-add-to-cart.elementor-product-variable .np-before-cart-variants,
        .elementor-add-to-cart.elementor-product-variable .quantity,
        .elementor-add-to-cart.elementor-product-variable .single_add_to_cart_button {
            width: 100%;
            box-sizing: border-box;
            margin-bottom: 0;
        }
        .elementor-widget-woocommerce-product-add-to-cart.np-add-to-cart-stable {
            will-change: min-height;
        }
        .e-con:has(> .elementor-widget .np-designer) {
            --justify-content: flex-start !important;
            justify-content: flex-start !important;
        }
