/* Sotufinds — shared WooCommerce loading, empty, success, validation and error states. */
.es-system-state{box-sizing:border-box;width:100%;min-width:0;display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:16px;align-items:center;padding:22px;border:1px solid #303638;background:#0b0e0f;color:#f4f3f1}
.es-system-state__mark{width:34px;height:34px;display:grid;place-items:center;border:1px solid #596061;border-radius:50%}
.es-system-state__mark:before{content:"";width:6px;height:6px;border-radius:50%;background:#9aa09e}
.es-system-state--empty .es-system-state__mark{border-color:#78432f}.es-system-state--empty .es-system-state__mark:before{background:var(--orange,#f04a16)}
.es-system-state__copy{min-width:0}.es-system-state__eyebrow{display:block;margin:0 0 3px;color:var(--orange,#f04a16);font:800 9px/1.3 Inter,Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase}
.es-system-state h2{margin:0;color:#fff;font:600 31px/.95 Teko,"Arial Narrow",sans-serif;letter-spacing:.035em;text-transform:uppercase}.es-system-state p{max-width:620px;margin:7px 0 0;color:#aeb3b1;font:500 12px/1.6 Inter,Arial,sans-serif}
.es-system-state__action{min-width:138px;min-height:42px;display:inline-flex!important;align-items:center;justify-content:center!important;margin:0!important;padding:0 18px!important;border:1px solid var(--orange,#f04a16)!important;border-radius:0!important;background:var(--orange,#f04a16)!important;color:#fff!important;font:800 10px/1 Inter,Arial,sans-serif!important;letter-spacing:.08em;text-decoration:none!important;text-transform:uppercase}

/* Native WooCommerce notices become one consistent status component. */
.woocommerce-notices-wrapper:empty{display:none!important}
.woocommerce-message,.woocommerce-info,.woocommerce-error{box-sizing:border-box!important;position:relative!important;min-height:52px!important;margin:0 0 14px!important;padding:14px 16px 14px 44px!important;border:1px solid #343a3c!important;border-left:3px solid #687071!important;border-radius:0!important;background:#0d1112!important;box-shadow:none!important;color:#eef0ed!important;font:600 12px/1.5 Inter,Arial,sans-serif!important;list-style:none!important}
.woocommerce-message:before,.woocommerce-info:before,.woocommerce-error:before{position:absolute!important;top:16px!important;left:15px!important;width:17px!important;height:17px!important;display:grid!important;place-items:center!important;margin:0!important;border:1px solid currentColor!important;border-radius:50%!important;font-size:11px!important;line-height:1!important}
.woocommerce-message{border-left-color:#3e866c!important}.woocommerce-message:before{color:#8ad1b4!important}
.woocommerce-info{border-left-color:#7d5a3b!important}.woocommerce-info:before{color:#e0b38b!important}
.woocommerce-error{border-left-color:#8b3b3f!important}.woocommerce-error:before{color:#e4a6a8!important}
.woocommerce-error li{margin:0!important;padding:0!important;background:transparent!important;color:inherit!important}
.woocommerce-message .button,.woocommerce-info .button,.woocommerce-error .button{min-height:34px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;float:right!important;margin:-5px 0 -5px 16px!important;padding:0 13px!important;border:1px solid #62696a!important;border-radius:0!important;background:#111516!important;color:#fff!important;font:800 9px/1 Inter,Arial,sans-serif!important;letter-spacing:.07em!important;text-decoration:none!important;text-transform:uppercase!important}

/* Real WooCommerce validation and unavailable-stock states. */
.woocommerce-invalid input.input-text,.woocommerce-invalid select,.woocommerce-invalid .select2-selection,.form-row.woocommerce-invalid textarea{border-color:#9e4548!important;box-shadow:0 0 0 1px #9e4548!important}
.woocommerce-validated input.input-text,.woocommerce-validated select{border-color:#3c6958!important}
.stock.out-of-stock,.woocommerce-variation-availability .out-of-stock,.woocommerce-variation-unavailable{color:#e4a6a8!important;font-weight:750!important}
.stock.in-stock,.woocommerce-variation-availability .in-stock{color:#9fd6bf!important}

/* WooCommerce blockUI/loading: dark neutral overlay with a visible spinner. */
.blockUI.blockOverlay,.woocommerce .blockUI.blockOverlay{background:rgba(5,7,8,.72)!important;opacity:1!important;cursor:progress!important}
.blockUI.blockOverlay:after,.woocommerce .blockUI.blockOverlay:after{content:""!important;position:absolute!important;top:50%!important;left:50%!important;width:24px!important;height:24px!important;margin:-12px 0 0 -12px!important;border:2px solid rgba(255,255,255,.2)!important;border-top-color:var(--orange,#f04a16)!important;border-radius:50%!important;animation:es-system-spin .7s linear infinite!important}
@keyframes es-system-spin{to{transform:rotate(360deg)}}

/* Generic busy buttons used by product/cart/checkout forms. */
button.is-loading,a.button.is-loading,.button.is-loading{position:relative!important;pointer-events:none!important;cursor:progress!important;opacity:.8!important}
button.is-loading:after,a.button.is-loading:after,.button.is-loading:after{content:"";width:13px;height:13px;margin-left:9px;border:2px solid rgba(255,255,255,.34);border-top-color:#fff;border-radius:50%;animation:es-system-spin .7s linear infinite}

/* Cart drawer network/update feedback is visible, not console-only. */
.es-cart-drawer-feedback{margin:0 16px 10px;padding:10px 12px;border:1px solid #5d3638;background:#171011;color:#e4a6a8;font:650 11px/1.45 Inter,Arial,sans-serif}
.es-cart-drawer-feedback[hidden]{display:none!important}.es-cart-drawer.is-updating .es-cart-drawer-content{pointer-events:none;opacity:.64;transition:opacity .15s ease}

/* Real browser network state. */
.es-system-toast{position:fixed;right:18px;bottom:18px;z-index:220;width:min(360px,calc(100vw - 36px));padding:13px 15px;border:1px solid #4a5152;background:#0d1112;color:#eef0ed;box-shadow:0 12px 36px rgba(0,0,0,.34);font:650 11px/1.5 Inter,Arial,sans-serif;transform:translateY(14px);opacity:0;pointer-events:none;transition:opacity .18s ease,transform .18s ease}
.es-system-toast.is-visible{opacity:1;transform:translateY(0)}.es-system-toast.is-error{border-color:#6f373a;color:#e4a6a8}

/* Empty contexts already owned by the theme. */
.es-cart-empty-state .es-system-state,.es-shop-empty .es-system-state{margin:0}.es-shop-empty{padding:0!important;border:0!important}.es-cart-empty-state{max-width:900px;margin:0 auto}

@media(max-width:760px){.es-system-state{grid-template-columns:36px minmax(0,1fr);gap:12px;padding:17px}.es-system-state__mark{width:32px;height:32px}.es-system-state h2{font-size:27px}.es-system-state p{font-size:12px}.es-system-state__action{grid-column:1/-1;width:100%;min-height:46px}.woocommerce-message,.woocommerce-info,.woocommerce-error{min-height:0!important;padding:12px 12px 12px 40px!important;font-size:12px!important}.woocommerce-message:before,.woocommerce-info:before,.woocommerce-error:before{top:13px!important;left:12px!important}.woocommerce-message .button,.woocommerce-info .button,.woocommerce-error .button{width:100%!important;float:none!important;margin:8px 0 0!important}.es-system-toast{right:14px;bottom:14px;width:calc(100vw - 28px)}}
@media(prefers-reduced-motion:reduce){.blockUI.blockOverlay:after,.woocommerce .blockUI.blockOverlay:after,button.is-loading:after,a.button.is-loading:after,.button.is-loading:after{animation-duration:1.5s}.es-system-toast{transition:none}}
