/* v1.9.5 — mobile readability pass.
   Live-only mobile portrait refinements: keep one vertical page, show left tabs,
   place the drag hint below the catalogue page, and reduce mobile text/image clash. */
@media (max-width: 760px){
  body.nc-mobile-portrait-page .stage{
    min-height:calc(100dvh - 64px)!important;
    padding:12px 0 calc(126px + env(safe-area-inset-bottom,0px))!important;
    align-items:flex-start!important;
  }

  body.nc-mobile-portrait-page .magazine-shell{
    min-height:auto!important;
    padding-top:8px!important;
  }

  body.nc-mobile-portrait-page .book-wrap{
    width:min(calc(100vw - 56px), 450px)!important;
    height:min(calc(100dvh - 238px), 690px)!important;
    min-height:500px!important;
    max-height:700px!important;
    margin-top:0!important;
    margin-bottom:42px!important;
  }

  body.nc-mobile-portrait-page .spread .page{
    padding:20px 18px 34px!important;
  }

  body.nc-mobile-portrait-page .page-safe-area{
    gap:6px!important;
  }

  body.nc-mobile-portrait-page .page-head{
    min-height:92px!important;
  }

  body.nc-mobile-portrait-page .page-title{
    font-size:clamp(28px, 8.8vw, 44px)!important;
    line-height:.9!important;
    letter-spacing:.4px!important;
  }

  /* The hint belongs under the catalogue sheet, not on top of the content. */
  body.nc-mobile-portrait-page .nc-mobile-drag-hint{
    position:fixed!important;
    left:50%!important;
    top:auto!important;
    bottom:calc(92px + env(safe-area-inset-bottom,0px))!important;
    transform:translateX(-50%)!important;
    z-index:94!important;
    max-width:calc(100vw - 40px)!important;
    padding:8px 14px!important;
    border-radius:999px!important;
    background:rgba(26,19,8,.76)!important;
    color:#fff0b8!important;
    border:1px solid rgba(245,205,84,.32)!important;
    box-shadow:0 10px 22px rgba(0,0,0,.22)!important;
    backdrop-filter:blur(10px)!important;
    font-size:12px!important;
    line-height:1!important;
    white-space:nowrap!important;
  }

  body.nc-mobile-portrait-page .controls{
    height:82px!important;
    padding:10px 12px calc(10px + env(safe-area-inset-bottom,0px))!important;
  }

  /* Mobile catalogue readability: reduce oversized labels and keep product
     content inside its row. These rules only affect live mobile view. */
  body.nc-mobile-portrait-page .product-card{
    overflow:hidden!important;
    min-height:86px!important;
  }

  body.nc-mobile-portrait-page .product-card [data-nc-child]{
    line-height:1.05!important;
    overflow:hidden!important;
  }

  body.nc-mobile-portrait-page .product-card [data-nc-child="image"] img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
  }

  body.nc-mobile-portrait-page .product-card [data-nc-child="badge"],
  body.nc-mobile-portrait-page .product-card [data-nc-child="discount"]{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    padding:3px 5px!important;
    font-size:clamp(8px, 1.9vw, 11px)!important;
    line-height:1!important;
    white-space:nowrap!important;
  }

  body.nc-mobile-portrait-page .product-card [data-nc-child="title"]{
    font-size:clamp(11px, 3vw, 15px)!important;
    line-height:1.04!important;
  }

  body.nc-mobile-portrait-page .product-card [data-nc-child="description"]{
    font-size:clamp(9px, 2.55vw, 12px)!important;
    line-height:1.12!important;
  }

  body.nc-mobile-portrait-page .product-card [data-nc-child="merchant"],
  body.nc-mobile-portrait-page .product-card [data-nc-child="old_price"]{
    font-size:clamp(8px, 2.2vw, 10px)!important;
  }

  body.nc-mobile-portrait-page .product-card [data-nc-child="price"]{
    font-size:clamp(13px, 4.6vw, 21px)!important;
    line-height:1!important;
  }
}

@media (max-width: 380px){
  body.nc-mobile-portrait-page .book-wrap{
    width:min(calc(100vw - 50px), 430px)!important;
    height:min(calc(100dvh - 230px), 665px)!important;
    min-height:485px!important;
    margin-left:37px!important;
  }
  body.nc-mobile-portrait-page .page-title{
    font-size:clamp(26px, 8.4vw, 40px)!important;
  }
  body.nc-mobile-portrait-page .nc-mobile-drag-hint{
    font-size:11px!important;
  }
}
