/* GoJD Favorites App Shell V2 — Mobile Web + App View only */
@media (max-width:768px){
  body:has(.gojd-favorites-page.open){overflow:hidden!important;overscroll-behavior:none!important}
  .gojd-favorites-page.open{
    position:fixed!important;
    inset:0 0 var(--gojd-nav,68px) 0!important;
    width:100vw!important;height:auto!important;max-width:none!important;
    background:#fff!important;
    overflow:hidden!important;overflow-x:hidden!important;
    overscroll-behavior:none!important;
    z-index:880!important;box-shadow:none!important;border-radius:0!important
  }
  .gojd-favorites-page.open .gojd-favorites-shell{
    width:100%!important;max-width:480px!important;height:100%!important;min-height:0!important;
    margin:0 auto!important;padding:0 12px 8px!important;
    display:grid!important;grid-template-rows:auto auto minmax(0,1fr)!important;
    overflow:hidden!important;background:#fff!important
  }
  .gojd-favorites-page.open .gojd-favorites-crumb,
  .gojd-favorites-page.open .gojd-favorites-actions,
  .gojd-favorites-page.open .gojd-favorites-mobile-security,
  .gojd-favorites-page.open .gojd-favorites-trust{display:none!important}

  /* fixed app header/title */
  .gojd-favorites-page.open .gojd-favorites-title-row{
    grid-row:1!important;flex:0 0 auto!important;min-height:0!important;
    padding:58px 0 6px!important;margin:0!important;border:0!important;
    position:relative!important;background:#fff!important;z-index:4!important
  }
  .gojd-favorites-page.open .gojd-favorites-title-row:before{
    content:""!important;position:absolute!important;left:50%!important;top:2px!important;
    width:78px!important;height:43px!important;transform:translateX(-50%)!important;
    background:url('/logo-dark.png') center/contain no-repeat!important
  }
  .gojd-favorites-page.open .gojd-favorites-title-row:after{
    content:"‹"!important;position:absolute!important;left:-2px!important;top:13px!important;
    font-size:29px!important;line-height:1!important;font-weight:300!important;color:#111!important
  }
  .gojd-favorites-page.open .gojd-favorites-close{
    position:absolute!important;left:-10px!important;top:4px!important;width:42px!important;height:42px!important;
    opacity:0!important;z-index:6!important
  }
  .gojd-favorites-page.open .gojd-favorites-title-row h1{
    font-size:21px!important;line-height:1.05!important;font-weight:850!important;letter-spacing:-.25px!important;
    margin:0 0 3px!important;color:#111!important
  }
  .gojd-favorites-page.open .gojd-favorites-title-row p{
    font-size:10.5px!important;line-height:1.2!important;color:#737985!important;margin:0!important
  }

  /* fixed filter rail */
  .gojd-favorites-page.open .gojd-favorites-toolbar{
    grid-row:2!important;display:block!important;min-height:0!important;
    padding:5px 0 7px!important;margin:0!important;border:0!important;
    background:#fff!important;overflow:hidden!important;z-index:4!important
  }
  .gojd-favorites-page.open .gojd-favorites-tabs{
    display:flex!important;align-items:center!important;gap:6px!important;width:100%!important;
    overflow-x:auto!important;overflow-y:hidden!important;overscroll-behavior-x:contain!important;
    padding:0 0 2px!important;margin:0!important;scrollbar-width:none!important;-webkit-overflow-scrolling:touch!important
  }
  .gojd-favorites-page.open .gojd-favorites-tabs::-webkit-scrollbar{display:none!important}
  .gojd-favorites-page.open .gojd-favorites-tabs button{
    flex:0 0 auto!important;height:31px!important;min-height:31px!important;min-width:0!important;
    padding:0 14px!important;border:1px solid #dfe3e8!important;border-radius:999px!important;
    background:#fff!important;color:#111!important;font-size:10px!important;line-height:1!important;font-weight:700!important;
    white-space:nowrap!important;overflow:visible!important
  }
  .gojd-favorites-page.open .gojd-favorites-tabs button.active{
    background:#ed0712!important;border-color:#ed0712!important;color:#fff!important
  }
  .gojd-favorites-page.open .gojd-favorites-tabs button.active:after{display:none!important}

  /* only this region scrolls vertically */
  .gojd-favorites-page.open .gojd-favorites-grid{
    grid-row:3!important;min-height:0!important;height:100%!important;
    display:flex!important;flex-direction:column!important;gap:6px!important;
    margin:0!important;padding:2px 1px 10px!important;width:100%!important;
    overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;scrollbar-width:thin!important;
    scrollbar-color:#c8cbd0 transparent!important
  }
  .gojd-favorites-page.open .gojd-favorites-grid::-webkit-scrollbar{width:4px!important}
  .gojd-favorites-page.open .gojd-favorites-grid::-webkit-scrollbar-track{background:transparent!important}
  .gojd-favorites-page.open .gojd-favorites-grid::-webkit-scrollbar-thumb{background:#c8cbd0!important;border-radius:999px!important}

  .gojd-favorites-page.open .gojd-favorite-card{
    flex:0 0 108px!important;display:grid!important;grid-template-columns:70px minmax(0,1fr)!important;
    gap:0 8px!important;width:100%!important;min-width:0!important;min-height:108px!important;height:108px!important;
    margin:0!important;padding:7px!important;border:1px solid #dfe3e8!important;border-radius:9px!important;
    background:#fff!important;box-shadow:none!important;position:relative!important;overflow:hidden!important
  }
  .gojd-favorites-page.open .gojd-favorite-media{
    grid-column:1!important;grid-row:1/8!important;width:70px!important;height:92px!important;min-width:70px!important;
    display:grid!important;place-items:center!important;padding:1px!important;margin:0!important;align-self:center!important
  }
  .gojd-favorites-page.open .gojd-favorite-media img{width:100%!important;height:100%!important;object-fit:contain!important}
  .gojd-favorites-page.open .gojd-favorite-brand{display:none!important}
  .gojd-favorites-page.open .gojd-favorite-card h3{
    display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;overflow:hidden!important;
    min-height:0!important;max-height:27px!important;margin:1px 25px 0 0!important;
    font-size:12px!important;line-height:1.08!important;font-weight:820!important;color:#111!important
  }
  .gojd-favorites-page.open .gojd-favorite-meta{font-size:9px!important;line-height:1.1!important;color:#59616b!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .gojd-favorites-page.open .gojd-favorite-installment{font-size:8.5px!important;line-height:1.05!important;color:#707782!important;margin:1px 0 0!important}
  .gojd-favorites-page.open .gojd-favorite-price{font-size:13.5px!important;line-height:1!important;font-weight:850!important;color:#0a9f3d!important;margin:2px 0 0!important;white-space:nowrap!important}
  .gojd-favorites-page.open .gojd-favorite-price:after{font-size:8.5px!important;font-weight:600!important}
  .gojd-favorites-page.open .gojd-favorite-pix{display:none!important}
  .gojd-favorites-page.open .gojd-favorite-remove{right:6px!important;top:5px!important;width:25px!important;height:25px!important;padding:0!important;background:transparent!important;border:0!important;color:#ed0712!important;display:grid!important;place-items:center!important}
  .gojd-favorites-page.open .gojd-favorite-remove svg:first-child{width:19px!important;height:19px!important;fill:currentColor!important}
  .gojd-favorites-page.open .gojd-favorite-remove svg:last-child{display:none!important}
  .gojd-favorites-page.open .gojd-favorite-card-actions{display:grid!important;grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr)!important;gap:4px!important;margin:3px 0 0!important;width:100%!important;align-self:end!important}
  .gojd-favorites-page.open .gojd-favorite-card-actions button{min-width:0!important;width:100%!important;height:26px!important;min-height:26px!important;padding:0 5px!important;border-radius:6px!important;font-size:8.2px!important;line-height:1!important;font-weight:750!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .gojd-favorites-page.open .gojd-favorite-card-actions button:first-child{background:#ed0712!important;color:#fff!important;border:1px solid #ed0712!important}
  .gojd-favorites-page.open .gojd-favorite-card-actions button:last-child{background:#fff!important;color:#111!important;border:1px solid #dfe3e8!important}
  .gojd-favorites-page.open .gojd-favorites-empty{grid-row:3!important;min-height:0!important;height:100%!important;overflow:auto!important}
}
@media (max-width:380px){
  .gojd-favorites-page.open .gojd-favorites-shell{padding-left:9px!important;padding-right:9px!important}
  .gojd-favorites-page.open .gojd-favorites-title-row{padding-top:54px!important}
  .gojd-favorites-page.open .gojd-favorites-title-row h1{font-size:19.5px!important}
  .gojd-favorites-page.open .gojd-favorites-tabs button{height:29px!important;min-height:29px!important;padding:0 12px!important;font-size:9.3px!important}
  .gojd-favorites-page.open .gojd-favorite-card{flex-basis:102px!important;height:102px!important;min-height:102px!important;grid-template-columns:64px minmax(0,1fr)!important;padding:6px!important;gap:0 7px!important}
  .gojd-favorites-page.open .gojd-favorite-media{width:64px!important;min-width:64px!important;height:88px!important}
  .gojd-favorites-page.open .gojd-favorite-card h3{font-size:11px!important;max-height:24px!important}
  .gojd-favorites-page.open .gojd-favorite-price{font-size:12.5px!important}
  .gojd-favorites-page.open .gojd-favorite-card-actions button{height:24px!important;min-height:24px!important;font-size:7.7px!important}
}

/* V2.1: lock the document itself while the app-style favorites surface is open. */
@media (max-width:768px){
  html:has(.gojd-favorites-page.open),
  html:has(.gojd-favorites-page.open) body{
    width:100%!important;height:100%!important;max-height:100%!important;
    overflow:hidden!important;overscroll-behavior:none!important
  }
}
