/* Yoni commerce UI. Presentation only; no checkout or access-rule changes. */
/* Header controls: neutral appearance, retaining Elementor interaction classes. */
.elementor-location-header .elementor-element-50b30cd .elementor-button,
.elementor-location-header #elementor-menu-cart__toggle_button { border:0 !important; background:transparent !important; color:#171717 !important; box-shadow:none !important; }
.elementor-location-header .elementor-element-50b30cd .elementor-button:hover,
.elementor-location-header #elementor-menu-cart__toggle_button:hover { color:#555 !important; }
body { --yoni-accent:#ce277f; --yoni-ink:#171717; --yoni-paper:#faf7f9; --yoni-line:#eadfe5; }
body.woocommerce-account main.site-main,
body.woocommerce-cart main.site-main,
body.woocommerce-checkout main.site-main { max-width:1180px; width:calc(100% - 40px); margin:48px auto 80px; color:var(--yoni-ink); }
body.woocommerce-page main .page-header { margin-bottom:32px; }
body.woocommerce-page main h1.entry-title { color:var(--yoni-ink); font-size:clamp(30px,4vw,46px); line-height:1.25; margin:0; }
body.woocommerce-page main h2,body.woocommerce-page main h3 { color:var(--yoni-ink); line-height:1.4; }
body.woocommerce-page main .woocommerce { line-height:1.75; }
body.woocommerce-page main .woocommerce a { color:var(--yoni-accent); text-underline-offset:4px; }
.woocommerce-account .woocommerce-MyAccount-navigation { width:25%; border:1px solid var(--yoni-line); border-radius:18px; padding:12px; background:#fff; box-sizing:border-box; }
.woocommerce-account .woocommerce-MyAccount-navigation ul { list-style:none; margin:0; padding:0; }
.woocommerce-account .woocommerce-MyAccount-navigation li { margin:0; padding:0; }
.woocommerce-account .woocommerce-MyAccount-navigation li a { display:block; padding:12px 16px; color:var(--yoni-ink) !important; text-decoration:none; border-radius:10px; font-weight:600; }
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a { color:#fff !important; background:var(--yoni-ink); }
.woocommerce-account .woocommerce-MyAccount-navigation li:not(.is-active) a:hover { background:var(--yoni-paper); color:var(--yoni-accent) !important; }
.woocommerce-account .woocommerce-MyAccount-content { width:71%; border:1px solid var(--yoni-line); border-radius:18px; padding:30px; background:#fff; box-shadow:0 10px 35px #24121c06; box-sizing:border-box; min-width:0; }
.woocommerce-account .woocommerce-MyAccount-content p:first-child { margin-top:0; }
.woocommerce form.login,.woocommerce form.register,.woocommerce form.lost_reset_password { border:1px solid var(--yoni-line); border-radius:18px; padding:32px; background:#fff; }
.woocommerce-account:not(.logged-in) main > .page-content > .woocommerce > form { max-width:560px; margin:24px auto; }
.woocommerce-page main .woocommerce .input-text,
.woocommerce-page main .woocommerce select,
.woocommerce-page main .select2-container .select2-selection--single { border:1px solid #d9cdd4; border-radius:8px; min-height:48px; background:#fff; color:var(--yoni-ink); padding:10px 12px; box-sizing:border-box; font:inherit; width:100%; }
.woocommerce-page main .woocommerce textarea.input-text { min-height:100px; }
.woocommerce-page main .woocommerce input:focus,.woocommerce-page main .woocommerce textarea:focus,.woocommerce-page main .woocommerce select:focus { outline:2px solid var(--yoni-accent); outline-offset:2px; }
.woocommerce-page main .woocommerce label { font-weight:600; color:var(--yoni-ink); margin-bottom:6px; }
.woocommerce-page main .woocommerce .form-row { margin-bottom:18px; }
.woocommerce-page main .woocommerce input[type=checkbox],.woocommerce-page main .woocommerce input[type=radio] { accent-color:var(--yoni-accent); }
.woocommerce-page main .woocommerce .button,
.woocommerce-page main .woocommerce button.button,
.woocommerce-page main .woocommerce a.button,
.elementor-menu-cart__footer-buttons .elementor-button { background:var(--yoni-ink); border:1px solid var(--yoni-ink); color:#fff; border-radius:8px; padding:14px 22px; min-height:48px; font:inherit; font-weight:700; text-align:center; text-decoration:none; line-height:1.3; box-sizing:border-box; transition:background .15s ease; }
.woocommerce-page main .woocommerce .button:hover,.elementor-menu-cart__footer-buttons .elementor-button:hover { background:#393039; color:#fff; }
.woocommerce-page main .woocommerce #place_order,.woocommerce-page main .woocommerce .checkout-button,.elementor-menu-cart__footer-buttons .elementor-button--checkout { background:var(--yoni-accent); border-color:var(--yoni-accent); color:#fff; }
.woocommerce-page main .woocommerce .button:disabled { opacity:.5; cursor:not-allowed; }
.woocommerce a:focus-visible,.woocommerce button:focus-visible,.elementor-menu-cart__main a:focus-visible { outline:2px solid var(--yoni-accent); outline-offset:3px; }
.woocommerce-page main .woocommerce table.shop_table { border:1px solid var(--yoni-line); border-radius:12px; border-collapse:separate; overflow:hidden; background:#fff; }
.woocommerce-page main .woocommerce table.shop_table th { background:var(--yoni-paper); color:var(--yoni-ink); font-weight:700; padding:15px; }
.woocommerce-page main .woocommerce table.shop_table td { border-top:1px solid var(--yoni-line); padding:15px; }
.woocommerce-cart .cart-collaterals .cart_totals { border:1px solid var(--yoni-line); border-radius:18px; padding:24px; background:var(--yoni-paper); box-sizing:border-box; }
.woocommerce-cart .product-thumbnail img { width:90px; border-radius:8px; }
.woocommerce-cart .coupon { display:flex; gap:10px; flex-wrap:wrap; }
.woocommerce-cart .coupon #coupon_code { width:180px; }
body.woocommerce-cart main .woocommerce .quantity .qty { width:86px; max-width:100%; text-align:center; }
body.woocommerce-cart main .woocommerce .coupon #coupon_code { width:180px; }
body.woocommerce-cart main .woocommerce button.button:disabled { color:#fff !important; background:#665c62; opacity:1; }
body.woocommerce-cart main .woocommerce a.checkout-button { background:var(--yoni-accent); border-color:var(--yoni-accent); }
body.woocommerce-cart main .woocommerce table.shop_table th,
body.woocommerce-cart main .woocommerce table.shop_table td { border-left:0; border-right:0; }
.woocommerce-checkout #customer_details { padding:24px; border:1px solid var(--yoni-line); border-radius:18px; box-sizing:border-box; background:#fff; margin-bottom:30px; }
.woocommerce-checkout #order_review { padding:24px; border:1px solid var(--yoni-line); border-radius:18px; background:var(--yoni-paper); }
.woocommerce-checkout #payment { background:#fff; border:1px solid var(--yoni-line); border-radius:12px; }
.woocommerce-checkout #payment ul.payment_methods { border-bottom:1px solid var(--yoni-line); }
.woocommerce-checkout #payment div.payment_box { background:var(--yoni-paper); color:var(--yoni-ink); }
.woocommerce-checkout #place_order { width:100%; margin-top:16px; }
.woocommerce-order .woocommerce-thankyou-order-received { background:var(--yoni-paper); border-inline-start:4px solid var(--yoni-accent); padding:24px; border-radius:12px; font-size:22px; font-weight:700; }
.woocommerce ul.order_details { display:flex; flex-wrap:wrap; gap:20px; padding:20px; margin:24px 0; border:1px solid var(--yoni-line); border-radius:12px; }
.woocommerce ul.order_details li { float:none; border:0; margin:0; padding:0 12px; flex:1 1 140px; }
.woocommerce-message,.woocommerce-info,.woocommerce-error { background:var(--yoni-paper); color:var(--yoni-ink); border:1px solid var(--yoni-line); border-top:3px solid var(--yoni-accent); border-radius:10px; padding:18px 48px 18px 22px; margin:20px 0; line-height:1.65; box-shadow:none; }
.woocommerce-error { border-top-color:#a62940; }
.woocommerce-message::before,.woocommerce-info::before { color:var(--yoni-accent); }
.woocommerce-message a,.woocommerce-info a,.woocommerce-error a { color:var(--yoni-accent); }
.woocommerce-message .button { margin-inline-start:14px; }
.elementor-menu-cart__main { width:440px; max-width:100vw; padding:30px 24px; background:#fff; color:var(--yoni-ink); box-sizing:border-box; }
.elementor-menu-cart__product { padding:20px 0; border-bottom:1px solid var(--yoni-line); gap:12px; }
.elementor-menu-cart__product-image img { border-radius:8px; }
.elementor-menu-cart__product-name a { color:var(--yoni-ink); font-weight:700; text-decoration:none; line-height:1.5; }
.elementor-menu-cart__product-price { color:#66545f; }
.elementor-menu-cart__subtotal { padding:22px 0; border-top:0; border-bottom:1px solid var(--yoni-line); font-weight:700; }
.elementor-menu-cart__footer-buttons { display:grid; grid-template-columns:1fr; gap:12px; padding-top:20px; }
.elementor-menu-cart__close-button { min-width:32px; min-height:32px; }
@media (max-width:767px) {
 body.woocommerce-account main.site-main,body.woocommerce-cart main.site-main,body.woocommerce-checkout main.site-main { width:calc(100% - 28px); margin:28px auto 48px; }
 .woocommerce-account .woocommerce-MyAccount-navigation,.woocommerce-account .woocommerce-MyAccount-content { width:100%; float:none; margin-bottom:20px; }
 .woocommerce-account .woocommerce-MyAccount-content { padding:20px; }
 .woocommerce-account .woocommerce-MyAccount-navigation ul { display:flex; flex-wrap:wrap; gap:4px; }
 .woocommerce-account .woocommerce-MyAccount-navigation li { flex:1 1 auto; }
 .woocommerce-account .woocommerce-MyAccount-navigation li a { padding:10px; text-align:center; font-size:14px; }
 .woocommerce form.login,.woocommerce form.register,.woocommerce form.lost_reset_password,.woocommerce-checkout #customer_details,.woocommerce-checkout #order_review { padding:18px; }
 .woocommerce-page main .woocommerce .form-row-first,.woocommerce-page main .woocommerce .form-row-last { width:100%; float:none; }
 .woocommerce-message .button,.woocommerce-info .button { float:none; display:block; margin:0 0 12px; }
 .elementor-menu-cart__main { width:100vw; padding:24px 18px; }
 .woocommerce-page main .woocommerce table.shop_table td { padding:12px; overflow-wrap:anywhere; }
 .woocommerce-cart .coupon { display:block; }
 .woocommerce-cart .coupon #coupon_code { width:100%; margin-bottom:10px; }
}
