/* Hasaa product page — luxury editorial layout inspired by premium footwear stores. */
.product-page{background:#fffdfa;color:#171512}
.breadcrumb-bar{border-bottom:1px solid #e8e2da;background:#fffdfa}
.breadcrumb-bar .store-container{height:48px;display:flex;align-items:center;gap:9px;font-size:9px;color:#999}
.breadcrumb-bar a:hover{color:#7a4a2c}.breadcrumb-bar i{font-size:8px;color:#bbb}.breadcrumb-bar span{color:#333;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.product-main{display:grid;grid-template-columns:minmax(0,1.28fr) minmax(390px,.72fr);gap:72px;padding:42px 0 80px;align-items:start}
.product-gallery{min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-content:start}
.gallery-tile{position:relative;min-width:0;aspect-ratio:1 / 1;background:#f2eee8;overflow:hidden;display:flex;align-items:center;justify-content:center}
.gallery-tile:first-child{grid-column:1 / -1;aspect-ratio:1.32 / 1}
.gallery-tile img{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:center;background:#f7f5f1;padding:14px;box-sizing:border-box}
.gallery-tile.is-broken{background:linear-gradient(145deg,#eee8df,#d8cbbb)}
.gallery-fallback{position:absolute;inset:0;display:grid;place-items:center;background:linear-gradient(145deg,#f1ede7,#d8cbbb);font-family:"Playfair Display",serif;font-size:28px;color:#4b2c1b;letter-spacing:2px}
.gallery-fallback small{position:absolute;bottom:18px;right:20px;font:700 8px/1 "DM Sans",Arial,sans-serif;letter-spacing:3px;color:#8b7969}
.gallery-heart{position:absolute;z-index:5;right:15px;top:15px;width:42px;height:42px;border:1px solid #e8e2da;border-radius:50%;background:#fff;color:#171512;font-size:16px;transition:.2s}
.gallery-heart:hover,.gallery-heart.liked{color:#7a4a2c;transform:scale(1.04)}
.detail-badge{position:absolute;z-index:5;left:15px;top:15px;background:#4b2c1b;color:#fff;padding:7px 10px;border-radius:0;font-size:8px;font-weight:800;letter-spacing:1px}
.detail-badge.new{background:#fff;color:#171512;border:1px solid #ddd2c5}

.product-detail{min-width:0;position:sticky;top:112px;padding:4px 0}
.detail-category{text-transform:uppercase;letter-spacing:1.8px;font-size:9px;font-weight:800;color:#7a4a2c;margin-bottom:12px}
.product-detail h1{font-family:"Playfair Display",Georgia,serif;font-weight:500;font-size:44px;line-height:1.02;letter-spacing:-1.3px;margin:0 0 12px;color:#171512}
.detail-rating{font-size:9px;color:#aaa;display:flex;align-items:center;gap:8px}.detail-rating span{color:#a57c42;letter-spacing:1px}.detail-rating u{text-decoration:underline;text-underline-offset:3px}
.detail-price{display:flex;align-items:baseline;gap:12px;margin:23px 0 17px}.detail-price strong{font-family:"Playfair Display",Georgia,serif;font-size:26px;font-weight:500}.detail-price del{font-size:12px;color:#999}.save-badge{background:#f6ece6;color:#7a4a2c;padding:4px 7px;font-size:7px;font-weight:900;letter-spacing:.7px}
.detail-description{font-size:11px;line-height:1.85;color:#756e67;max-width:620px;margin:0}.detail-divider{height:1px;background:#e8e2da;margin:25px 0}
.variant-section{margin-bottom:20px}.variant-label{font-size:9px;font-weight:800;letter-spacing:1.2px;margin-bottom:11px}.variant-label span{float:right;color:#999;font-weight:500;letter-spacing:.3px;max-width:65%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.variant-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.variant-btn{min-height:42px;border:1px solid #ddd6cd;background:#fffdfa;border-radius:0;padding:8px 10px;font-size:8px;font-weight:700;color:#3c3732;text-align:left;transition:.18s}.variant-btn:hover,.variant-btn.selected{border-color:#4b2c1b;background:#4b2c1b;color:#fff}
.stock-row{min-height:25px;font-size:10px;color:#188447;font-weight:700}.stock-row i{font-size:12px;margin-right:4px}.stock-row span{color:#7a4a2c;margin-left:7px;font-weight:600}
.buy-row{display:grid;grid-template-columns:108px minmax(0,1fr) 108px;gap:8px;margin:12px 0 24px}.quantity{height:50px;border:1px solid #d9d2ca;border-radius:0;display:flex;align-items:center;justify-content:center}.quantity button{width:32px;border:0;background:none;font-size:18px;color:#3d352e}.quantity input{width:38px;border:0;background:transparent;text-align:center;font-size:11px;font-weight:800;outline:0;-moz-appearance:textfield}.quantity input::-webkit-outer-spin-button,.quantity input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.add-cart,.buy-now{border:0;border-radius:0;height:50px;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.7px;transition:.2s}.add-cart{background:#211811;color:#fff}.add-cart:hover{background:#4b2c1b}.buy-now{background:#7a4a2c;color:#fff}.buy-now:hover{background:#4b2c1b}.add-cart:disabled,.buy-now:disabled{opacity:.4;cursor:not-allowed}
.detail-features{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #e8e2da;border-bottom:1px solid #e8e2da;padding:16px 0;margin-bottom:14px}.detail-features>div{display:flex;gap:9px;align-items:center;border-right:1px solid #e8e2da;padding:0 12px}.detail-features>div:first-child{padding-left:0}.detail-features>div:last-child{border:0}.detail-features i{font-size:18px;color:#7a4a2c}.detail-features b,.detail-features span{display:block}.detail-features b{font-size:8px}.detail-features span{font-size:7px;color:#999;margin-top:3px;line-height:1.35}
.detail-accordion .accordion-item{border:0;border-bottom:1px solid #e8e2da;background:transparent}.detail-accordion .accordion-button{padding:17px 0;background:transparent;box-shadow:none;color:#171512;font-size:9px;font-weight:800}.detail-accordion .accordion-button:not(.collapsed){color:#7a4a2c}.detail-accordion .accordion-button::after{width:10px;height:10px;background-size:10px}.detail-accordion .accordion-body{padding:0 0 17px;font-size:9px;color:#756e67;line-height:1.85}

.related-section{padding:68px 0 80px;background:#f7f3ed}.related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.related-image{height:280px;display:block;position:relative;overflow:hidden;background:#eee8df}.related-placeholder{position:absolute;inset:0;display:grid;place-items:center;background:linear-gradient(145deg,#eee8df,#d7c9bb)}.related-placeholder.real-image{display:flex;align-items:center;justify-content:center;padding:12px}.related-placeholder.real-image img{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:center}.related-placeholder span{width:100px;height:135px;border-radius:45px 45px 10px 10px;background:linear-gradient(145deg,#29292e,#101012);display:grid;place-items:center;color:#fff;font-size:18px;font-weight:800;box-shadow:18px 20px 30px #0002}.related-card>small{display:block;color:#999;font-size:8px;text-transform:uppercase;letter-spacing:1px;margin-top:12px}.related-card h3{font-size:13px;line-height:1.35;margin:5px 0}.related-card h3 a:hover{color:#7a4a2c}.related-price strong{font-size:12px}.related-price del{font-size:9px;color:#999;margin-left:7px}
.product-error{text-align:center;padding:110px 20px 140px}.error-icon{font-size:45px;color:#7a4a2c}.product-error h1{font-size:25px;margin:14px 0 6px}.product-error p{color:#888;font-size:11px;margin-bottom:20px}.cart-toast{position:fixed;right:24px;bottom:24px;z-index:2000;background:#211811;color:#fff;padding:14px 16px;border-radius:0;display:flex;align-items:center;gap:10px;box-shadow:0 18px 50px #0003;transform:translateY(130px);opacity:0;transition:.35s;font-size:10px}.cart-toast.show{transform:translateY(0);opacity:1}.cart-toast i{color:#35c87c;font-size:16px}.cart-toast a{color:#d1aa78;font-weight:800;margin-left:5px}

@media(max-width:1050px){.product-main{grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);gap:38px}.product-detail h1{font-size:38px}.buy-row{grid-template-columns:100px 1fr}.buy-now{grid-column:1/-1}.detail-features{grid-template-columns:1fr}.detail-features>div{border-right:0;border-bottom:1px solid #e8e2da;padding:11px 0}.detail-features>div:last-child{border-bottom:0}}
@media(max-width:820px){.product-main{grid-template-columns:1fr;gap:38px;padding-top:28px}.product-detail{position:static;max-width:760px}.gallery-tile:first-child{aspect-ratio:1.2/1}.related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.breadcrumb-bar .store-container{width:calc(100% - 28px)}.product-main{padding-bottom:48px}.product-gallery{gap:7px}.gallery-tile{aspect-ratio:1/1}.gallery-tile:first-child{aspect-ratio:1/1}.gallery-tile img{padding:8px}.gallery-heart{width:38px;height:38px;right:10px;top:10px}.detail-badge{left:10px;top:10px}.product-detail h1{font-size:31px}.detail-price strong{font-size:22px}.variant-grid{grid-template-columns:1fr}.buy-row{grid-template-columns:92px 1fr}.buy-now{grid-column:1/-1}.related-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.related-image{height:205px}.cart-toast{left:14px;right:14px;bottom:14px}}

/* Broken/blocked related images get a visible fallback instead of a blank screenshot. */
.related-placeholder.real-image.is-broken{background:linear-gradient(145deg,#eee8df,#d7c9bb)}
.image-error-fallback{width:92px;height:120px;display:grid;place-items:center;border-radius:38px 38px 8px 8px;background:linear-gradient(145deg,#4b2c1b,#211811);color:#fff;font:700 17px/1 "DM Sans",Arial,sans-serif;letter-spacing:2px;box-shadow:18px 20px 30px #0002}

/* Product detail refinements: closer to the clean Daji-style product information hierarchy. */
.product-highlights{display:grid;gap:9px;margin:18px 0 0}.product-highlights>div{display:flex;align-items:center;gap:10px;font-size:9px;color:#4f4943}.product-highlights i{width:22px;height:22px;display:grid;place-items:center;border:1px solid #e4ddd4;border-radius:50%;color:#7a4a2c;font-size:10px}.product-whatsapp{display:flex;align-items:center;justify-content:center;gap:8px;height:48px;margin:-13px 0 24px;border:1px solid #d7d0c8;color:#2f7f50;text-decoration:none;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.7px;background:#fff}.product-whatsapp:hover{color:#fff;background:#2f9d62;border-color:#2f9d62}.gallery-tile img{background:#f7f5f1}.product-gallery{grid-auto-rows:min-content}
@media(max-width:560px){.product-highlights{gap:8px}.product-whatsapp{height:46px}.product-gallery{grid-template-columns:1fr 1fr}}


/* Daji-inspired product gallery: vertical thumbnail selection + focused main image. */
.product-gallery{display:grid;grid-template-columns:82px minmax(0,1fr);gap:14px;align-items:start;position:sticky;top:92px}
.gallery-thumbs{display:flex;flex-direction:column;gap:10px;max-height:720px;overflow:auto;padding:2px}
.gallery-thumb{border:1px solid #ddd5cc;background:#fff;padding:0;aspect-ratio:1;cursor:pointer;overflow:hidden;transition:border-color .2s,box-shadow .2s}
.gallery-thumb:hover,.gallery-thumb.active{border-color:#171512;box-shadow:0 0 0 1px #171512}
.gallery-thumb img{display:block;width:100%;height:100%;object-fit:cover;background:#f7f5f1}
.gallery-main-stage{position:relative;min-width:0;aspect-ratio:1/1.08;background:#f7f5f1;overflow:hidden;display:flex;align-items:center;justify-content:center}
.gallery-main-image{display:none;width:100%;height:100%;object-fit:contain;object-position:center;padding:20px;background:#f7f5f1}
.gallery-main-image.active{display:block}
.gallery-main-stage .gallery-heart{z-index:3}
.gallery-main-stage .detail-badge{z-index:3}
.option-grid{display:flex!important;flex-wrap:wrap;gap:9px!important}
.variant-btn{min-width:58px;height:42px!important;border:1px solid #d7d0c8!important;background:#fff!important;color:#171512!important;border-radius:2px!important;font-size:11px!important;font-weight:700!important;letter-spacing:.2px}
.variant-btn:hover,.variant-btn.selected{border-color:#171512!important;background:#171512!important;color:#fff!important}
.variant-label{font-size:11px!important;letter-spacing:.8px!important;font-weight:800!important;text-transform:uppercase}
.product-whatsapp{border-radius:2px!important;font-size:11px!important}
@media(max-width:900px){.product-gallery{position:static;grid-template-columns:64px minmax(0,1fr);gap:10px}.gallery-thumbs{gap:7px;max-height:520px}.gallery-main-stage{aspect-ratio:1/1}}
@media(max-width:560px){.product-gallery{grid-template-columns:56px minmax(0,1fr)}.gallery-main-image{padding:10px}.gallery-thumb{border-radius:2px}.variant-btn{min-width:54px;height:40px!important}}

/* === HASAA PRODUCT MOBILE FIX === */
@media(max-width:700px){
  .product-page,.product-container,.product-shell{max-width:100%;overflow-x:hidden}
  .product-gallery{grid-template-columns:52px minmax(0,1fr);gap:8px;position:static}
  .gallery-thumbs{gap:6px;max-height:430px}
  .gallery-main-stage{width:100%;aspect-ratio:1/1;min-width:0}
  .gallery-main-image{padding:8px}
  .product-details{min-width:0}
  .product-title{font-size:28px!important;line-height:1.12}
  .product-price{font-size:18px}
  .product-actions,.product-action-row{display:grid;grid-template-columns:1fr;gap:9px}
  .option-grid{gap:7px!important}
  .variant-btn{min-width:50px!important;height:40px!important}
}
@media(max-width:420px){
  .product-gallery{grid-template-columns:48px minmax(0,1fr)}
  .gallery-thumbs{max-height:360px}
  .product-title{font-size:25px!important}
}

/* === HASAA RESPONSIVE STABILITY LAYER === */
@media (max-width: 767px){
  .product-page,.product-main,.product-detail,.product-gallery,.reviews-section,.related-section{min-width:0;max-width:100%;overflow-x:hidden}
  .breadcrumb-bar .store-container{white-space:normal;overflow-wrap:anywhere;line-height:1.8}
  .product-detail h1,.detail-description,.detail-category{overflow-wrap:anywhere}
  .detail-rating{flex-wrap:wrap}
  .buy-row{min-width:0}
  .buy-row>*{min-width:0}
  .detail-accordion .accordion-button{padding-right:8px;text-align:left}
  .related-card{min-width:0}
  .related-card h3{overflow-wrap:anywhere}
  .reviews-section .card{min-width:0;max-width:100%;overflow:hidden}
}
@media (max-width: 420px){
  .breadcrumb-bar{font-size:9px}
  .product-detail h1{font-size:24px!important}
  .detail-price{flex-wrap:wrap}
  .product-whatsapp,.add-cart,.buy-now{width:100%;max-width:100%}
}


/* Product description: compact preview with an optional expandable full description. */
.detail-description-block{margin:0 0 18px}
.detail-description{margin:0;color:#5f5953;font-size:13px;line-height:1.85}
.description-collapsible{margin-top:10px;border-top:1px solid #eee7df;padding-top:10px}
.description-collapsible summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:8px;color:#6d4328;font-size:11px;font-weight:700;letter-spacing:.3px}
.description-collapsible summary::-webkit-details-marker{display:none}
.description-collapsible summary i{font-size:10px;transition:transform .2s ease}
.description-collapsible[open] summary i{transform:rotate(180deg)}
.description-less{display:none}
.description-collapsible[open] .description-more{display:none}
.description-collapsible[open] .description-less{display:inline}
.description-full{padding-top:12px;color:#5f5953;font-size:13px;line-height:1.85}
@media(max-width:767px){.detail-description{font-size:12px;line-height:1.75}.description-full{font-size:12px;line-height:1.75}}
