/* Jahan Store 2.0 — standalone layer. Loaded after all base styles. */
:root { --jahan-loader-bg: rgba(255,255,255,.96); }
html.jahan-is-loading { cursor: progress; }
.jahan-site-loader[hidden] { display: none !important; }
.jahan-site-loader {
    position: fixed; inset: 0; z-index: 2147483000;
    display: grid; place-items: center; opacity: 0; visibility: hidden;
    background: var(--jahan-loader-bg); transition: opacity .22s ease, visibility .22s ease;
}
.jahan-site-loader.is-visible { opacity: 1; visibility: visible; }
.jahan-site-loader-inner { display:flex; flex-direction:column; align-items:center; gap:12px; color:#666; font-size:12px; }
.jahan-site-loader img { width:96px; height:96px; object-fit:contain; }

/* One shell, one border: no Woodmart form chrome. */
body.jahan-clean-site .jahan-native-search,
body.jahan-clean-site .jahan-native-search * { box-sizing: border-box; }
body.jahan-clean-site .jahan-native-search {
    position: relative; grid-area: search; min-width: 0; height: 52px;
    display: grid !important; grid-template-columns: minmax(0,1fr) 168px 54px;
    align-items: stretch; padding: 0 !important; margin: 0 !important;
    overflow: visible; border: 1px solid #dedfe3 !important; border-radius: 14px !important;
    background: #f7f7f8 !important; box-shadow: none !important; outline: 0 !important;
}
body.jahan-clean-site .jahan-native-search::before,
body.jahan-clean-site .jahan-native-search::after { display:none !important; content:none !important; }
body.jahan-clean-site .jahan-native-search:focus-within { border-color: rgba(215,7,68,.55) !important; background:#fff !important; box-shadow:0 0 0 4px rgba(215,7,68,.07) !important; }
body.jahan-clean-site .jahan-native-search-query { min-width:0; display:flex; align-items:center; }
body.jahan-clean-site .jahan-native-search-leading { flex:0 0 44px; display:grid; place-items:center; color:#8c8c91; }
body.jahan-clean-site .jahan-native-search-leading svg { width:20px; height:20px; }
body.jahan-clean-site .jahan-native-search input[type="search"] {
    min-width:0; width:100%; height:50px !important; margin:0 !important; padding:0 0 0 12px !important;
    border:0 !important; border-radius:0 !important; outline:0 !important; background:transparent !important;
    box-shadow:none !important; appearance:none; -webkit-appearance:none; color:#242428; font:inherit;
}
body.jahan-clean-site .jahan-native-search input[type="search"]::-webkit-search-cancel-button { display:none; }
body.jahan-clean-site .jahan-native-search .jahan-search-category {
    position:relative; min-width:0; width:auto; height:50px; display:flex; align-items:center;
    margin:0 !important; padding:0 !important; border-right:1px solid #e1e1e4 !important; background:transparent !important;
}
body.jahan-clean-site .jahan-native-search select {
    width:100%; height:50px !important; margin:0 !important; padding:0 15px 0 35px !important;
    border:0 !important; border-radius:0 !important; outline:0 !important; background:transparent !important;
    box-shadow:none !important; appearance:none; -webkit-appearance:none; color:#55555b; font:inherit; cursor:pointer;
}
body.jahan-clean-site .jahan-native-select-arrow { position:absolute; left:12px; top:50%; transform:translateY(-50%) rotate(90deg); pointer-events:none; color:#85858a; }
body.jahan-clean-site .jahan-native-select-arrow svg { width:15px; height:15px; }
body.jahan-clean-site .jahan-native-search-submit {
    width:54px !important; min-width:54px !important; height:50px !important; margin:0 !important; padding:0 !important;
    display:grid !important; place-items:center; border:0 !important; border-radius:13px 0 0 13px !important;
    background:var(--j-red) !important; color:#fff !important; box-shadow:none !important; cursor:pointer;
}
body.jahan-clean-site .jahan-native-search-submit:hover { background:var(--j-red-dark) !important; }
body.jahan-clean-site .jahan-native-search .jahan-ajax-search-results { top:calc(100% + 9px); right:0; left:0; z-index:1005; }
.jahan-ajax-search-status.is-loading { display:flex; align-items:center; justify-content:center; gap:10px; min-height:86px; }
.jahan-search-loader-image { width:42px; height:42px; object-fit:contain; }

/* Core WordPress/WooCommerce structure without parent-theme classes. */
.jahan-site-content > article,
.jahan-site-content > .page,
.jahan-site-content > .post,
.jahan-site-content > .woocommerce { width:100%; min-width:0; }
.jahan-entry-card { padding:28px; border:1px solid var(--j-border); border-radius:18px; background:#fff; }
.jahan-entry-title { margin:0 0 22px; font-size:25px; }
.jahan-entry-content::after { content:""; display:table; clear:both; }

.woocommerce .products.jahan-native-products,
.woocommerce ul.products.jahan-native-products { display:grid !important; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; margin:0 !important; padding:0 !important; list-style:none; }
.woocommerce .products.jahan-native-products > li.product { width:auto !important; min-width:0; }
.jahan-native-products .jahan-product-card.product { width:100% !important; flex:none; }
.jahan-native-products .jahan-product-media { height:230px; }
.jahan-native-products .jahan-product-content { min-height:190px; }

.jahan-single-product-layout { display:grid; grid-template-columns:minmax(0,1.02fr) minmax(360px,.98fr); gap:38px; align-items:start; }
.jahan-single-product-gallery, .jahan-single-product-summary { min-width:0; }
.single-product .woocommerce-product-gallery { position:relative; width:100% !important; margin:0 !important; padding:18px; border:1px solid var(--j-border); border-radius:20px; background:#fff; }
.single-product .woocommerce-product-gallery__wrapper { margin:0; }
.single-product .woocommerce-product-gallery__image img { width:100%; height:auto; max-height:620px; object-fit:contain; }
.single-product .summary { width:100% !important; float:none !important; margin:0 !important; padding:26px; border:1px solid var(--j-border); border-radius:20px; background:#fff; }
.single-product .summary .product_title { margin:0 0 14px; font-size:25px; line-height:1.75; }
.single-product .summary .price { color:var(--j-red); font-size:20px; font-weight:900; }
.single-product form.cart { display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin-top:22px; }
.single-product form.cart .quantity input { width:76px; min-height:46px; border:1px solid var(--j-border); border-radius:10px; text-align:center; }
.single-product form.cart .single_add_to_cart_button { min-height:46px; padding:0 24px !important; border:0 !important; border-radius:10px !important; background:var(--j-red) !important; color:#fff !important; }
.single-product .product_meta { margin-top:22px; padding-top:16px; border-top:1px solid var(--j-border); color:#777; font-size:12px; }
.single-product .woocommerce-tabs { clear:both; margin-top:34px; }
.single-product .woocommerce-tabs ul.tabs { display:flex; gap:5px; margin:0; padding:0; border-bottom:1px solid var(--j-border); list-style:none; }
.single-product .woocommerce-tabs ul.tabs li { margin:0; padding:0; border:0; background:none; }
.single-product .woocommerce-tabs ul.tabs li a { display:block; padding:13px 18px; color:#666; }
.single-product .woocommerce-tabs ul.tabs li.active a { color:var(--j-red); border-bottom:2px solid var(--j-red); }
.single-product .woocommerce-Tabs-panel { padding:24px; border:1px solid var(--j-border); border-top:0; border-radius:0 0 18px 18px; background:#fff; }

.woocommerce-pagination ul.page-numbers { display:flex; justify-content:center; gap:6px; padding:25px 0 0; border:0 !important; }
.woocommerce-pagination ul.page-numbers li { border:0 !important; }
.woocommerce-pagination .page-numbers a, .woocommerce-pagination .page-numbers span { min-width:38px; height:38px; display:grid; place-items:center; border:1px solid var(--j-border); border-radius:9px; }
.woocommerce-pagination .page-numbers .current { border-color:var(--j-red); background:var(--j-red); color:#fff; }

@media (max-width:1099px) {
    body.jahan-clean-site .jahan-native-search { grid-template-columns:minmax(0,1fr) 54px; }
    body.jahan-clean-site .jahan-native-search .jahan-search-category { display:none; }
    .woocommerce .products.jahan-native-products, .woocommerce ul.products.jahan-native-products { grid-template-columns:repeat(3,minmax(0,1fr)); }
    .jahan-single-product-layout { grid-template-columns:1fr; gap:22px; }
}
@media (max-width:767px) {
    body.jahan-clean-site .jahan-native-search { height:43px; grid-template-columns:minmax(0,1fr) 43px; border-radius:11px !important; }
    body.jahan-clean-site .jahan-native-search-query, body.jahan-clean-site .jahan-native-search input[type="search"], body.jahan-clean-site .jahan-native-search-submit { height:41px !important; }
    body.jahan-clean-site .jahan-native-search-leading { display:none; }
    body.jahan-clean-site .jahan-native-search input[type="search"] { padding:0 11px !important; font-size:11px; }
    body.jahan-clean-site .jahan-native-search-submit { width:43px !important; min-width:43px !important; border-radius:10px 0 0 10px !important; }
    .jahan-site-loader img { width:76px; height:76px; }
    .jahan-entry-card { padding:17px; border-radius:14px; }
    .woocommerce .products.jahan-native-products, .woocommerce ul.products.jahan-native-products { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
    .jahan-native-products .jahan-product-media { height:160px; padding:10px; }
    .jahan-native-products .jahan-product-content { min-height:172px; padding:11px; }
    .single-product .woocommerce-product-gallery { padding:10px; border-radius:14px; }
    .single-product .summary { padding:17px; border-radius:14px; }
    .single-product .summary .product_title { font-size:19px; }
    .single-product .woocommerce-Tabs-panel { padding:16px; }
}

.jahan-native-shop-heading { margin-bottom:20px; padding:20px 24px; border:1px solid var(--j-border); border-radius:16px; background:#fff; }
.jahan-native-shop-heading h1 { margin:0; font-size:23px; }
@media (max-width:767px) { .jahan-native-shop-heading { padding:15px 16px; } .jahan-native-shop-heading h1 { font-size:18px; } }
