/* GST Price Toggle - visibility rules ------------------------------------
   Every dual-price block (catalog price render + minicart) renders BOTH
   the excl. and incl. GST amounts. Only one is shown at a time, based on
   a class set on <html> by view/frontend/templates/head_init.phtml (on
   first paint) and updated instantly by web/js/gst-toggle.js on toggle. */

html.gst-mode-excl .gst-price-incl,
html.gst-mode-incl .gst-price-excl {
    display: none !important;
}

.gst-price-toggle-wrap {
    display: inline;
}

/* PDP main price - explicit sizing, since the rebuilt markup doesn't carry
   the original id="product-price-XXX" attribute some theme rules keyed
   off. Targets our own structure directly so it's not dependent on the
   theme's specific selectors. */
.price-box.price-final_price .price-wrapper .price {
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.25;
}

.price-box.price-final_price .old-price .price-wrapper .price {
    font-size: 1.15rem;
    font-weight: 400;
    color: #949494;
    text-decoration: line-through;
}

.price-box.price-final_price .old-price .price-label,
.price-box.price-final_price .special-price .price-label {
    display: block;
    font-size: .85rem;
    font-weight: 600;
    color: #333;
    margin-bottom: 2px;
}

.price-box.price-final_price .special-price .price-wrapper .price {
    color: #c00b0b;
}

.price-box.price-final_price .old-price,
.price-box.price-final_price .special-price {
    display: block;
    margin-bottom: 4px;
}

/* Small "Ex.GST" / "Incl.GST" label shown right after each price */
.gst-price-suffix {
    font-size: 11px;
    color: #00008b;
    font-weight: 400;
    margin-left: 3px;
    white-space: nowrap;
}

/* Switcher control, top right of the header ------------------------------ */

.gst-price-switcher {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-left: 15px;
    font-size: 1.8rem;
    line-height: 1;
    white-space: nowrap;
	float:right;
}

.gst-price-switcher__label {
    color: #757575;
    transition: color .15s ease-in-out;
}

html.gst-mode-excl .gst-price-switcher__label--excl,
html.gst-mode-incl .gst-price-switcher__label--incl {
    color: #333;
    font-weight: 600;
}

.gst-price-switcher__toggle {
    position: relative;
    display: inline-block;
    width: 38px;
    height: 20px;
    cursor: pointer;
}

.gst-price-switcher__input {
    position: absolute;
    opacity: 0;
    width: 1px;
    height: 1px;
}

.gst-price-switcher__slider {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #ccc;
    border-radius: 999px;
    transition: background-color .15s ease-in-out;
}

.gst-price-switcher__slider::before {
    content: "";
    position: absolute;
    height: 16px;
    width: 16px;
    left: 2px;
    top: 2px;
    background-color: #fff;
    border-radius: 50%;
    transition: transform .15s ease-in-out;
    box-shadow: 0 1px 2px rgba(0, 0, 0, .3);
}

.gst-price-switcher__input:checked + .gst-price-switcher__slider {
    background-color: #ff5501;
}

.gst-price-switcher__input:checked + .gst-price-switcher__slider::before {
    transform: translateX(18px);
}

.gst-price-switcher__input:focus + .gst-price-switcher__slider {
    outline: 2px solid #1979c3;
    outline-offset: 2px;
}

@media only screen and (max-width: 768px) {
    .gst-price-switcher {
        font-size: 1.1rem;
        margin: 8px 15px;
		
    }
}
