/* my-custom-plugin-style: rules of https://globalesim.app/wp-content/plugins/otw-custom-code-globalesim/assets/css/style.css that match an element on 9 measured page types (36/177 style rules). Generated 2026-09-17 by ges-css-critical.mjs; the full file still loads deferred. */
.otw_topup_search_result { text-align: center; }
.popular-countries-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 16px; }
.popular-countries-cards a { --clr-border: transparent; position: relative; background-size: cover; aspect-ratio: 8 / 6; border-radius: 20px; display: flex; align-items: flex-end; justify-content: flex-start; padding: 0.5rem 1rem; text-align: start; color: white; isolation: isolate; outline: 2px solid var(--clr-border); }
.popular-countries-cards a::before { content: ""; background: linear-gradient(0deg, rgba(0, 0, 0, 0.7) 13.94%, rgba(0, 0, 0, 0.2) 62.98%, rgba(0, 0, 0, 0) 100%); position: absolute; inset: auto 0px 0px; border-radius: 20px; z-index: -1; height: 40%; }
.popular-countries-cards a:hover { --clr-border: var(--clr-secondary); }
.popular-countries-cards .best-seller-badge { position: absolute; top: 1rem; inset-inline-end: 1rem; background-color: rgb(21, 93, 252); padding: 0.5em 1em; border-radius: 100vw; line-height: 1; font-weight: bold; font-size: 12px; }
.popular-countries-cards a .country-price { display: grid; grid-template-columns: auto auto; grid-template-rows: auto auto; font-weight: bold; gap: 0px 5px; }
@media (max-width: 767px){
.popular-countries-cards { grid-template-columns: 1fr 1fr; }
.popular-countries-cards a { padding: 0.5rem; }
.popular-countries-cards a::before { height: 60%; }
.popular-countries-cards a .country-price { font-size: 12px; }
.popular-countries-cards .best-seller-badge { top: 0.5rem; inset-inline-end: 0.5rem; }
}
.regional-products-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(380px, 1fr)); gap: 1rem; }
.regional-products-grid .regional-card { display: flex; justify-content: space-between; align-items: center; box-shadow: rgba(0, 0, 0, 0.05) 0px 0px 30px 0px; border-radius: 16px; background: rgb(255, 255, 255); padding: 15px 20px; text-decoration: none; color: inherit; transition: box-shadow 0.3s; }
.regional-products-grid .regional-card:hover { box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px; }
.regional-image img { object-fit: contain; width: 50px !important; height: 50px !important; }
.regional-info { flex: 1 1 0%; margin-left: 15px; display: flex; align-items: center; gap: 0.5rem; }
.regional-card .regional-title { margin: 0px 0px 2px; font-size: 16px; font-weight: 600; flex-grow: 1; color: black; }
.regional-meta { font-size: 14px; line-height: 1.3; text-align: center; }
.regional-meta * { line-height: 1; }
.regional-meta .countries { color: rgb(0, 119, 204); margin: 0px; font-weight: 600; }
.regional-meta .price { color: rgb(85, 85, 85); margin: 0px; }
.regional-arrow { font-size: 14px; color: rgb(0, 119, 204); font-weight: bold; margin-left: 10px; }
@media (max-width: 767px){
.regional-products-grid { grid-template-columns: 1fr; gap: 1rem; }
.regional-products-grid .regional-card { padding: 0.75rem; }
.regional-image img { object-fit: contain; width: 35px !important; height: 35px !important; }
.regional-meta .price > .mobile-hidden { display: none; }
}
.voice-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: 15px; }
.step-actions { text-align: center; margin-top: 20px; }
.native-cart-form { display: none; }
.step-actions { display: flex; align-items: center; gap: 1rem; }
.step-actions button { flex: 1 0 calc(50% - 1rem); display: flex; align-items: center; justify-content: center; gap: 0.5em; }
@media (min-width: 1025px){
.step-title { grid-column: 1 / -1; }
}
@media (max-width: 767px){
.step-actions { flex-direction: column-reverse; }
}
#ges-buy-now-overlay { display: none; position: fixed; inset: 0px; background: rgba(230, 230, 230, 0.85); z-index: 2147483647; align-items: center; justify-content: center; cursor: wait; }
#ges-buy-now-overlay img { width: 240px; height: 240px; max-width: 60vw; max-height: 60vw; object-fit: contain; }
