.myt-configurator{--myt-border:rgba(0,0,0,.1);--myt-soft:rgba(0,0,0,.045);margin:0 0 24px;padding:24px;border:1px solid var(--myt-border);border-radius:16px;background:#fff;box-shadow:0 8px 30px rgba(0,0,0,.04)}
.myt-configurator-content{min-width:0}.myt-heading{margin-bottom:20px}.myt-heading h3{margin:3px 0 6px;font-size:26px;line-height:1.2}.myt-heading p{margin:0;opacity:.75}.myt-eyebrow{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;opacity:.65}
.myt-grid{display:grid;grid-template-columns:1fr;gap:18px}.myt-card{width:100%;padding:18px;border:1px solid var(--myt-border);border-radius:14px;background:var(--myt-soft);box-sizing:border-box}.myt-select-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;width:100%}.myt-select-field{min-width:0}.myt-select-field label{margin-top:0}.myt-select-field select{width:100%}
.myt-slot-title{font-size:16px;font-weight:800;margin-bottom:12px}.myt-configurator label{display:block;margin:10px 0 7px;font-weight:600}.myt-configurator select,.myt-configurator input[type=text],.myt-configurator input[type=number],.myt-configurator textarea{width:100%;border-radius:8px}
.myt-percent-row{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:14px}.myt-percent-row output{font-weight:700}.myt-percent-row label{margin:0}.myt-slider-line{display:grid;grid-template-columns:minmax(0,1fr) 86px;gap:10px;align-items:center}.myt-card input[type=range]{width:100%;margin:4px 0}.myt-number{max-width:none!important}
.myt-main-bottle-panel{width:100%;max-width:430px;margin:0 auto 24px;padding:24px;border:1px solid var(--myt-border);border-radius:18px;background:linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.055));text-align:center;box-sizing:border-box}.myt-main-bottle-copy{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-weight:700}.myt-main-bottle-copy strong{font-size:28px}.myt-main-bottle{display:block;width:min(100%,280px);height:auto;margin:0 auto}.myt-main-bottle-cap{fill:#333}.myt-main-bottle-glass{fill:rgba(255,255,255,.72)}.myt-main-bottle-outline{fill:none;stroke:#444;stroke-width:6}.myt-main-bottle-label{fill:rgba(255,255,255,.82);stroke:rgba(0,0,0,.13);stroke-width:2}.myt-main-bottle-title{font-size:14px;font-weight:800;letter-spacing:1.4px;fill:#333}.myt-main-bottle-liquid{fill:#c89b54;transition:y .15s ease,height .15s ease}.myt-main-bottle-panel.is-full .myt-main-bottle-liquid{filter:saturate(1.08)}.myt-main-bottle-scale{display:flex;justify-content:space-between;max-width:280px;margin:-6px auto 0;font-size:12px;opacity:.6}
.woocommerce-product-gallery.myt-gallery-bottle{display:flex!important;align-items:flex-start;justify-content:center;opacity:1!important}.woocommerce-product-gallery.myt-gallery-bottle .myt-main-bottle-panel{margin:0;width:100%;max-width:100%}
.myt-total{display:grid;grid-template-columns:1fr auto;gap:4px 16px;align-items:center;margin:18px 0;padding:14px 16px;border-radius:12px;background:var(--myt-soft)}.myt-total strong{font-size:24px}.myt-total small{grid-column:1/-1;opacity:.72}.myt-invalid-total .myt-total{outline:1px solid #c62828}
.myt-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.myt-field-full{grid-column:1/-1}.myt-field label span{color:#b42318}.myt-validation-message{min-height:20px;margin-top:12px;font-size:13px;color:#b42318}
form.cart .single_add_to_cart_button:disabled,form.cart .single_add_to_cart_button.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.myt-cart-name{opacity:.7}.myt-live-price{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:0 0 18px;padding:14px 16px;border:1px solid var(--myt-border);border-radius:12px}.myt-live-price span{font-weight:600}.myt-live-price strong{font-size:22px}
@media(max-width:900px){.myt-main-bottle-panel{max-width:360px}}
@media(max-width:600px){.myt-configurator{padding:16px}.myt-card{padding:14px}.myt-select-row{grid-template-columns:1fr}.myt-fields{grid-template-columns:1fr}.myt-field-full{grid-column:auto}.myt-heading h3{font-size:23px}.myt-slider-line{grid-template-columns:1fr 72px}.myt-main-bottle-copy strong{font-size:23px}}


/* v1.6 layout: every fragrance card spans the full configurator width. */
.myt-configurator .myt-grid{
    display:flex !important;
    flex-direction:column !important;
    width:100% !important;
    max-width:none !important;
}
.myt-configurator .myt-card{
    display:block !important;
    flex:0 0 100% !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    grid-column:1 / -1 !important;
    box-sizing:border-box !important;
}
.myt-configurator .myt-card .myt-select-row{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
    gap:16px !important;
    width:100% !important;
}
.myt-configurator .myt-card .myt-select-field{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
}
.myt-configurator .myt-card .myt-select-field select{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    box-sizing:border-box !important;
}
.myt-configurator .myt-card .myt-percent-row,
.myt-configurator .myt-card .myt-slider-line{
    width:100% !important;
    max-width:none !important;
    box-sizing:border-box !important;
}
.myt-configurator .myt-card input[type="range"]{
    display:block !important;
    width:100% !important;
    max-width:none !important;
}
@media(max-width:600px){
    .myt-configurator .myt-card .myt-select-row{
        grid-template-columns:1fr !important;
    }
}


/* v1.8 definitive full-width fragrance layout */
.myt-configurator .myt-grid { display:block !important; width:100% !important; }
.myt-configurator .myt-card { display:block !important; width:100% !important; max-width:100% !important; min-width:100% !important; clear:both !important; float:none !important; margin-bottom:18px !important; }
.myt-configurator .myt-card .myt-card-controls { width:100% !important; max-width:100% !important; }
.myt-configurator .myt-card .myt-select-row { display:flex !important; width:100% !important; gap:16px !important; flex-wrap:nowrap !important; }
.myt-configurator .myt-card .myt-select-field { flex:0 0 calc(50% - 8px) !important; width:calc(50% - 8px) !important; max-width:calc(50% - 8px) !important; }
.myt-configurator .myt-card .myt-select-field select { width:100% !important; max-width:100% !important; }
.myt-configurator .myt-card .myt-percent-row,
.myt-configurator .myt-card .myt-slider-line { width:100% !important; max-width:100% !important; }
.myt-configurator .myt-card .myt-slider-line input[type=range] { width:100% !important; max-width:100% !important; }
@media(max-width:600px){
    .myt-configurator .myt-card .myt-select-row { flex-direction:column !important; }
    .myt-configurator .myt-card .myt-select-field { flex-basis:100% !important; width:100% !important; max-width:100% !important; }
}


/* v1.9: hide the normal WooCommerce/WoodMart product title and native product price
   for Make Your Twist. The configurator's own heading and live Blend Price remain visible. */
body.myt-configurator-product-page .summary > .product_title,
body.myt-configurator-product-page .summary > .price,
body.myt-configurator-product-page .summary > p.price,
body.myt-configurator-product-page .summary .wd-product-brands + .product_title,
body.myt-configurator-product-page .product_title.entry-title,
body.myt-configurator-product-page .woocommerce-Price-amount.amount:not(.myt-live-price .woocommerce-Price-amount.amount) {
    /* price-specific broad WoodMart fallbacks are overridden below for configurator price */
}
body.myt-configurator-product-page .summary > .product_title,
body.myt-configurator-product-page .summary > .price,
body.myt-configurator-product-page .summary > p.price,
body.myt-configurator-product-page h1.product_title,
body.myt-configurator-product-page .product_title.entry-title {
    display:none !important;
}
body.myt-configurator-product-page .summary > .price,
body.myt-configurator-product-page .summary > p.price,
body.myt-configurator-product-page .summary > span.price,
body.myt-configurator-product-page .summary > div.price {
    display:none !important;
}

/* WooCommerce [product_page] shortcode / embedded configurator. */
.woocommerce .product.product-type-simple:has(.myt-configurator) .summary > .product_title,
.woocommerce .product.product-type-simple:has(.myt-configurator) .summary > .price,
.woocommerce .product.product-type-simple:has(.myt-configurator) .summary > p.price,
.woocommerce .product.product-type-simple:has(.myt-configurator) h1.product_title {
    display:none !important;
}

/* Always keep the custom calculated price visible. */
.myt-configurator .myt-live-price,
.myt-configurator .myt-live-price .woocommerce-Price-amount,
.myt-configurator [data-myt-price] {
    display:flex !important;
}
.myt-configurator [data-myt-price] {
    display:inline !important;
}


/* v2.1 dynamic fragrance rows */
.myt-slot-header{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:12px !important;
    margin-bottom:12px !important;
}
.myt-slot-header .myt-slot-title{
    margin-bottom:0 !important;
}
.myt-slot-actions{
    display:flex !important;
    align-items:center !important;
    gap:8px !important;
}
.myt-slot-btn{
    width:34px !important;
    height:34px !important;
    min-width:34px !important;
    padding:0 !important;
    border:1px solid var(--myt-border) !important;
    border-radius:8px !important;
    background:#fff !important;
    color:inherit !important;
    font-size:22px !important;
    line-height:1 !important;
    font-weight:700 !important;
    cursor:pointer !important;
}
.myt-slot-btn:hover{
    transform:translateY(-1px);
}
.myt-slot-btn:disabled{
    opacity:.35 !important;
    cursor:not-allowed !important;
    transform:none !important;
}


/* v2.4 premium perfume-inspired visual refresh */
.myt-configurator{
    --myt-gold:#b88a44;
    --myt-gold-deep:#8f642e;
    --myt-cream:#fffaf3;
    --myt-blush:#f8eee8;
    --myt-ink:#241f1b;
    --myt-muted:#756c65;
    --myt-line:rgba(70,50,30,.14);
    --myt-shadow:0 18px 50px rgba(74,48,24,.10);
    background:
        radial-gradient(circle at 12% 8%, rgba(184,138,68,.10), transparent 30%),
        linear-gradient(180deg,#fffdf9 0%,#fff9f2 100%) !important;
    border:1px solid var(--myt-line) !important;
    border-radius:24px !important;
    box-shadow:var(--myt-shadow) !important;
    padding:28px !important;
    color:var(--myt-ink) !important;
}
.myt-heading{
    margin-bottom:24px !important;
}
.myt-heading .myt-eyebrow{
    color:var(--myt-gold-deep) !important;
    opacity:1 !important;
    letter-spacing:.16em !important;
}
.myt-heading h3{
    font-size:34px !important;
    font-weight:800 !important;
    letter-spacing:-.02em !important;
    color:var(--myt-ink) !important;
}
.myt-heading p{
    color:var(--myt-muted) !important;
    opacity:1 !important;
    font-size:15px !important;
}
.myt-card{
    background:linear-gradient(180deg,#ffffff 0%,#fffaf5 100%) !important;
    border:1px solid var(--myt-line) !important;
    border-radius:18px !important;
    padding:20px !important;
    box-shadow:0 10px 28px rgba(70,45,20,.06) !important;
    transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease !important;
}
.myt-card:hover{
    transform:translateY(-2px);
    box-shadow:0 14px 34px rgba(70,45,20,.09) !important;
    border-color:rgba(184,138,68,.28) !important;
}
.myt-slot-title{
    font-size:18px !important;
    font-weight:800 !important;
    color:var(--myt-ink) !important;
}
.myt-slot-btn{
    border:1px solid rgba(184,138,68,.35) !important;
    background:#fff !important;
    color:var(--myt-gold-deep) !important;
    box-shadow:0 4px 12px rgba(90,60,20,.06) !important;
}
.myt-slot-btn:hover{
    background:var(--myt-gold) !important;
    color:#fff !important;
    border-color:var(--myt-gold) !important;
}
.myt-configurator label{
    color:#4f463f !important;
    font-weight:700 !important;
    font-size:13px !important;
}
.myt-configurator select,
.myt-configurator input[type=text],
.myt-configurator input[type=number],
.myt-configurator textarea{
    min-height:46px !important;
    border:1px solid rgba(70,50,30,.18) !important;
    background:#fff !important;
    border-radius:12px !important;
    color:var(--myt-ink) !important;
    box-shadow:inset 0 1px 2px rgba(0,0,0,.02) !important;
    transition:border-color .18s ease,box-shadow .18s ease !important;
}
.myt-configurator select:focus,
.myt-configurator input:focus,
.myt-configurator textarea:focus{
    border-color:var(--myt-gold) !important;
    box-shadow:0 0 0 3px rgba(184,138,68,.12) !important;
    outline:none !important;
}
.myt-slider-line{
    margin-top:4px !important;
}
.myt-configurator input[type=range]{
    accent-color:var(--myt-gold) !important;
}
.myt-percent-row output{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-width:58px !important;
    padding:5px 10px !important;
    border-radius:999px !important;
    background:rgba(184,138,68,.12) !important;
    color:var(--myt-gold-deep) !important;
    font-weight:800 !important;
}
.myt-number{
    text-align:center !important;
    font-weight:700 !important;
}
.myt-total{
    background:linear-gradient(135deg,#2b2521,#3c322b) !important;
    color:#fff !important;
    border-radius:16px !important;
    padding:18px 20px !important;
    box-shadow:0 12px 30px rgba(30,20,10,.12) !important;
}
.myt-total strong{
    color:#f5d6a3 !important;
    font-size:28px !important;
}
.myt-total small{
    color:rgba(255,255,255,.72) !important;
}
.myt-live-price{
    background:linear-gradient(135deg,#fff7ea,#f8ead6) !important;
    border:1px solid rgba(184,138,68,.28) !important;
    border-radius:16px !important;
    padding:16px 18px !important;
}
.myt-live-price span{
    color:#6e5a45 !important;
}
.myt-live-price strong{
    color:var(--myt-gold-deep) !important;
    font-size:26px !important;
}
.myt-main-bottle-panel{
    background:
        radial-gradient(circle at 50% 20%,rgba(255,255,255,.95),transparent 45%),
        linear-gradient(180deg,#fbf3e8 0%,#efe0cf 100%) !important;
    border:1px solid rgba(184,138,68,.25) !important;
    border-radius:24px !important;
    box-shadow:0 18px 48px rgba(80,50,20,.12) !important;
}
.myt-main-bottle-copy{
    color:#574737 !important;
}
.myt-main-bottle-copy strong{
    color:var(--myt-gold-deep) !important;
}
.myt-main-bottle-cap{
    fill:#2f2925 !important;
}
.myt-main-bottle-outline{
    stroke:#5a4a3a !important;
}
.myt-main-bottle-liquid{
    fill:#d29a4a !important;
}
.myt-main-bottle-label{
    fill:rgba(255,250,242,.94) !important;
    stroke:rgba(143,100,46,.22) !important;
}
.myt-main-bottle-title{
    fill:#6f4e2d !important;
}
.myt-validation-message{
    color:#a34b3d !important;
    font-weight:600 !important;
}
.myt-configurator form.cart .single_add_to_cart_button,
form.cart .single_add_to_cart_button{
    border-radius:12px !important;
}
body.myt-configurator-product-page form.cart .single_add_to_cart_button{
    background:linear-gradient(135deg,var(--myt-gold),var(--myt-gold-deep)) !important;
    color:#fff !important;
    border:none !important;
    min-height:50px !important;
    padding:0 28px !important;
    font-weight:800 !important;
    letter-spacing:.02em !important;
    box-shadow:0 10px 24px rgba(143,100,46,.22) !important;
}
body.myt-configurator-product-page form.cart .single_add_to_cart_button:hover{
    transform:translateY(-1px);
    box-shadow:0 14px 30px rgba(143,100,46,.28) !important;
}
@media(max-width:600px){
    .myt-configurator{
        padding:16px !important;
        border-radius:18px !important;
    }
    .myt-heading h3{
        font-size:28px !important;
    }
    .myt-card{
        padding:16px !important;
    }
}


/* v2.6: keep fragrance +/- controls on the far right */
.myt-configurator .myt-slot-header{
    display:flex !important;
    align-items:center !important;
    width:100% !important;
}
.myt-configurator .myt-slot-title{
    margin-right:auto !important;
}
.myt-configurator .myt-slot-actions{
    display:flex !important;
    justify-content:flex-end !important;
    align-items:center !important;
    margin-left:auto !important;
    gap:8px !important;
}


/* v2.7 purchase controls: compact and aligned */
body.myt-configurator-product-page form.cart{
    display:flex !important;
    flex-wrap:wrap !important;
    align-items:center !important;
    gap:10px !important;
}
body.myt-configurator-product-page form.cart .quantity{
    display:flex !important;
    align-items:center !important;
    width:auto !important;
    min-width:92px !important;
    max-width:110px !important;
    height:42px !important;
    margin:0 !important;
}
body.myt-configurator-product-page form.cart .quantity input.qty{
    width:48px !important;
    min-width:48px !important;
    height:42px !important;
    padding:0 6px !important;
    text-align:center !important;
}
body.myt-configurator-product-page form.cart .quantity .minus,
body.myt-configurator-product-page form.cart .quantity .plus{
    width:28px !important;
    min-width:28px !important;
    height:42px !important;
    padding:0 !important;
}
body.myt-configurator-product-page form.cart .single_add_to_cart_button,
body.myt-configurator-product-page form.cart .buy-now-btn,
body.myt-configurator-product-page form.cart .wd-buy-now-btn,
body.myt-configurator-product-page form.cart .woodmart-buy-now-btn,
body.myt-configurator-product-page form.cart button[name="wd-add-to-cart"]{
    min-height:42px !important;
    height:42px !important;
    padding:0 18px !important;
    font-size:13px !important;
    line-height:42px !important;
    border-radius:9px !important;
    width:auto !important;
    min-width:130px !important;
    margin:0 !important;
}
