/* MiKO Reward Store V5 — mobile card/header hard-fix */
body.miko-rshop-route .rstore-v3{
  --v5-gap:14px;
}
body.miko-rshop-route .rstore-v3 .rstore-topbar{
  box-sizing:border-box!important;
}
body.miko-rshop-route .rstore-v3 .rstore-actions,
body.miko-rshop-route .rstore-v3 .rstore-mainnav,
body.miko-rshop-route .rstore-v3 .rstore-brand{
  min-width:0!important;
}
body.miko-rshop-route .rstore-v3 .rstore-card{
  display:flex!important;
  flex-direction:column!important;
  min-height:100%!important;
}
body.miko-rshop-route .rstore-v3 .rstore-card-pick{
  display:flex!important;
  flex-direction:column!important;
  width:100%!important;
  height:100%!important;
  min-height:100%!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  background:#fff!important;
  color:inherit!important;
  text-align:left!important;
  cursor:pointer!important;
  overflow:hidden!important;
}
body.miko-rshop-route .rstore-v3 .rstore-card-media{
  display:block!important;
  position:relative!important;
  width:100%!important;
  height:0!important;
  min-height:0!important;
  padding:0 0 100%!important;
  margin:0!important;
  aspect-ratio:auto!important;
  overflow:hidden!important;
  flex:0 0 auto!important;
  background:#edf5fc!important;
}
body.miko-rshop-route .rstore-v3 .rstore-card-media>img,
body.miko-rshop-route .rstore-v3 .rstore-card-media>.rstore-art{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  min-width:100%!important;
  min-height:100%!important;
  margin:0!important;
  padding:0!important;
  object-fit:cover!important;
  object-position:center!important;
  display:block!important;
}
body.miko-rshop-route .rstore-v3 .rstore-card-media>.rstore-art{
  display:grid!important;
  place-items:center!important;
}
body.miko-rshop-route .rstore-v3 .rstore-card .fav{
  display:grid!important;
  place-items:center!important;
}
body.miko-rshop-route .rstore-v3 .rstore-card .fav .rstore-svg{
  width:17px!important;
  height:17px!important;
}
body.miko-rshop-route .rstore-v3 .rstore-card-body{
  display:flex!important;
  flex:1 1 auto!important;
  flex-direction:column!important;
  width:100%!important;
  min-height:168px!important;
  padding:11px!important;
  box-sizing:border-box!important;
}
body.miko-rshop-route .rstore-v3 .rstore-card-body>b{
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  overflow:hidden!important;
  min-height:34px!important;
  font-size:12px!important;
  line-height:1.35!important;
  font-weight:950!important;
  color:#132f50!important;
}
body.miko-rshop-route .rstore-v3 .rstore-card-body>small{
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  overflow:hidden!important;
  min-height:35px!important;
  margin-top:4px!important;
  font-size:10px!important;
  line-height:1.55!important;
  color:#71859b!important;
}
body.miko-rshop-route .rstore-v3 .exchange-box{
  display:block!important;
  margin:9px 0 8px!important;
  padding:9px!important;
  min-height:54px!important;
  border-radius:9px!important;
  background:#eef7ff!important;
}
body.miko-rshop-route .rstore-v3 .exchange-box>em{
  font-size:9px!important;
  color:#71869c!important;
}
body.miko-rshop-route .rstore-v3 .exchange-box>strong{
  margin-top:3px!important;
  font-size:12px!important;
  line-height:1.25!important;
  color:#8a5a00!important;
}
body.miko-rshop-route .rstore-v3 .rstore-exchange-btn{
  margin-top:auto!important;
  min-height:38px!important;
  border-radius:8px!important;
  font-size:11px!important;
  font-weight:950!important;
}
body.miko-rshop-route .rstore-v3 .mini-nfts{
  gap:5px!important;
  margin-top:6px!important;
}
body.miko-rshop-route .rstore-v3 .mini-nfts i{
  width:34px!important;
  height:34px!important;
}
body.miko-rshop-route .rstore-v3 .rstore-card .tag{
  left:9px!important;
  top:9px!important;
  padding:5px 8px!important;
  font-size:8px!important;
}

/* desktop/tablet balance */
@media (min-width:1201px){
  body.miko-rshop-route .rstore-v3 .rstore-grid{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:12px!important;
  }
  body.miko-rshop-route .rstore-v3 .rstore-card-body{
    min-height:185px!important;
  }
}
@media (min-width:781px) and (max-width:1200px){
  body.miko-rshop-route .rstore-v3 .rstore-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:12px!important;
  }
}

/* mobile header rebuilt as a compact app bar */
@media (max-width:780px){
  body.miko-rshop-route .rstore-v3 .rstore-topbar{
    position:sticky!important;
    top:0!important;
    z-index:2200!important;
    height:64px!important;
    min-height:64px!important;
    padding:8px 12px!important;
    gap:8px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    background:rgba(255,255,255,.98)!important;
    border-bottom:1px solid #e3edf6!important;
    box-shadow:0 5px 18px rgba(10,45,90,.07)!important;
    padding-top:max(8px,env(safe-area-inset-top))!important;
  }
  body.miko-rshop-route .rstore-v3 .rstore-brand{
    flex:0 0 auto!important;
    width:auto!important;
    min-width:86px!important;
    max-width:110px!important;
  }
  body.miko-rshop-route .rstore-v3 .rstore-brand b{
    font-size:24px!important;
    line-height:1!important;
  }
  body.miko-rshop-route .rstore-v3 .rstore-brand small{
    font-size:5px!important;
    letter-spacing:.14em!important;
  }
  body.miko-rshop-route .rstore-v3 .rstore-actions{
    margin-left:auto!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:7px!important;
    flex:0 0 auto!important;
  }
  body.miko-rshop-route .rstore-v3 .rstore-actions .rstore-search-toggle,
  body.miko-rshop-route .rstore-v3 .rstore-actions>a.iconbtn,
  body.miko-rshop-route .rstore-v3 .rstore-member{
    display:none!important;
  }
  body.miko-rshop-route .rstore-v3 .rstore-wallet{
    display:flex!important;
    flex:0 0 auto!important;
    width:auto!important;
    min-width:104px!important;
    max-width:130px!important;
    height:42px!important;
    padding:0 8px!important;
    gap:6px!important;
    border-radius:13px!important;
  }
  body.miko-rshop-route .rstore-v3 .rstore-wallet .rstore-svg{
    width:23px!important;
    height:23px!important;
    flex:0 0 23px!important;
  }
  body.miko-rshop-route .rstore-v3 .rstore-wallet b{
    font-size:13px!important;
  }
  body.miko-rshop-route .rstore-v3 .rstore-wallet span{
    font-size:9px!important;
  }
  body.miko-rshop-route .rstore-v3 .rstore-wallet i{
    flex:0 0 21px!important;
    width:21px!important;
    height:21px!important;
  }
  body.miko-rshop-route .rstore-v3 .rstore-actions button.rstore-menu-toggle{
    display:grid!important;
    place-items:center!important;
    flex:0 0 42px!important;
    width:42px!important;
    min-width:42px!important;
    max-width:42px!important;
    height:42px!important;
    min-height:42px!important;
    max-height:42px!important;
    margin:0!important;
    padding:0!important;
    border:1px solid #dce7f1!important;
    border-radius:50%!important;
    background:#fff!important;
    color:#173b61!important;
    box-shadow:none!important;
  }
  body.miko-rshop-route .rstore-v3 .rstore-actions button.rstore-menu-toggle .rstore-svg{
    width:20px!important;
    height:20px!important;
  }
  body.miko-rshop-route .rstore-v3 .rstore-mainnav{
    top:72px!important;
    left:10px!important;
    right:10px!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
  }

  body.miko-rshop-route .rstore-v3 .rstore-hero{
    height:180px!important;
  }
  body.miko-rshop-route .rstore-v3 .rstore-category-bar{
    gap:8px!important;
    padding:10px 12px!important;
  }
  body.miko-rshop-route .rstore-v3 .rstore-category-bar button{
    flex:0 0 98px!important;
    min-width:98px!important;
    min-height:68px!important;
    font-size:10px!important;
  }

  body.miko-rshop-route .rstore-v3 .rstore-layout{
    display:block!important;
    width:100%!important;
    padding:12px!important;
    box-sizing:border-box!important;
  }
  body.miko-rshop-route .rstore-v3 .rstore-center{
    width:100%!important;
    min-width:0!important;
  }
  body.miko-rshop-route .rstore-v3 .rstore-toolbar{
    display:grid!important;
    grid-template-columns:46px minmax(0,1fr)!important;
    gap:8px!important;
    margin:0 0 12px!important;
  }
  body.miko-rshop-route .rstore-v3 .rstore-toolbar>label{
    height:46px!important;
  }
  body.miko-rshop-route .rstore-v3 .rstore-toolbar input{
    font-size:16px!important;
  }
  body.miko-rshop-route .rstore-v3 .rstore-toolbar select{
    grid-column:1/-1!important;
    height:44px!important;
    font-size:12px!important;
  }
  body.miko-rshop-route .rstore-v3 .rstore-mobile-filter{
    display:grid!important;
    width:46px!important;
    min-width:46px!important;
    height:46px!important;
  }

  body.miko-rshop-route .rstore-v3 .rstore-grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:12px!important;
    width:100%!important;
    align-items:stretch!important;
  }
  body.miko-rshop-route .rstore-v3 .rstore-card{
    width:100%!important;
    min-width:0!important;
    height:auto!important;
  }
  body.miko-rshop-route .rstore-v3 .rstore-card-body{
    min-height:185px!important;
  }

  body.miko-rshop-route .rstore-v3 .rstore-detail-panel{
    left:8px!important;
    right:8px!important;
    width:auto!important;
    bottom:max(8px,env(safe-area-inset-bottom))!important;
    max-height:82vh!important;
    border-radius:20px!important;
  }
}

/* iPhone/small phone: one clean card per row so image + details are never crushed */
@media (max-width:520px){
  body.miko-rshop-route .rstore-v3 .rstore-grid{
    grid-template-columns:1fr!important;
    gap:14px!important;
  }
  body.miko-rshop-route .rstore-v3 .rstore-card{
    border-radius:16px!important;
  }
  body.miko-rshop-route .rstore-v3 .rstore-card-media{
    padding-bottom:100%!important;
  }
  body.miko-rshop-route .rstore-v3 .rstore-card-body{
    min-height:0!important;
    padding:13px!important;
  }
  body.miko-rshop-route .rstore-v3 .rstore-card-body>b{
    min-height:0!important;
    font-size:16px!important;
    line-height:1.35!important;
  }
  body.miko-rshop-route .rstore-v3 .rstore-card-body>small{
    min-height:0!important;
    margin-top:5px!important;
    font-size:13px!important;
    line-height:1.5!important;
  }
  body.miko-rshop-route .rstore-v3 .exchange-box{
    min-height:0!important;
    margin-top:10px!important;
    padding:10px!important;
  }
  body.miko-rshop-route .rstore-v3 .exchange-box>em{
    font-size:11px!important;
  }
  body.miko-rshop-route .rstore-v3 .exchange-box>strong{
    font-size:14px!important;
  }
  body.miko-rshop-route .rstore-v3 .rstore-exchange-btn{
    min-height:44px!important;
    font-size:14px!important;
  }
  body.miko-rshop-route .rstore-v3 .rstore-card .tag{
    font-size:10px!important;
    padding:6px 10px!important;
  }
  body.miko-rshop-route .rstore-v3 .rstore-card .fav{
    width:34px!important;
    height:34px!important;
    right:10px!important;
    top:10px!important;
  }
  body.miko-rshop-route .rstore-v3 .rstore-card .fav .rstore-svg{
    width:19px!important;
    height:19px!important;
  }
  body.miko-rshop-route .rstore-v3 .rstore-wallet{
    min-width:92px!important;
  }
  body.miko-rshop-route .rstore-v3 .rstore-wallet span{
    display:none!important;
  }
  body.miko-rshop-route .rstore-v3 .rstore-hero{
    height:168px!important;
  }
  body.miko-rshop-route .rstore-v3 .rstore-hero-copy h1{
    font-size:34px!important;
  }
}

@media (max-width:380px){
  body.miko-rshop-route .rstore-v3 .rstore-brand{
    min-width:78px!important;
  }
  body.miko-rshop-route .rstore-v3 .rstore-brand b{
    font-size:21px!important;
  }
  body.miko-rshop-route .rstore-v3 .rstore-wallet{
    min-width:82px!important;
    padding:0 7px!important;
  }
  body.miko-rshop-route .rstore-v3 .rstore-wallet .rstore-svg{
    width:20px!important;
    height:20px!important;
  }
}
