/**

 * PWA installée — encoche / Dynamic Island / Android (tous modèles)

 * Repli CSS immédiat + renfort via classes JS (pwa-ios-se | notch | island).

 */



:root {

  --dmajin-nav-fallback-ios: 47px;

  --dmajin-nav-fallback-android: 28px;

}



@supports (-webkit-touch-callout: none) {

  @media (display-mode: standalone), (display-mode: fullscreen) {

    :root {

      --dmajin-nav-inset: max(

        env(safe-area-inset-top, 0px),

        constant(safe-area-inset-top, 0px),

        var(--dmajin-nav-fallback-ios)

      );

    }



    /* iPhone SE / petits écrans sans encoche */

    @media (max-height: 700px) {

      :root {

        --dmajin-nav-fallback-ios: 20px;

      }

    }



    /* iPhone X → 13, iPhone 14 (encoche classique) */

    @media (min-height: 812px) and (max-height: 851px) {

      :root {

        --dmajin-nav-fallback-ios: 47px;

      }

    }



    /* iPhone 14 Pro+, 15, 16… (Dynamic Island) */

    @media (min-height: 852px) {

      :root {

        --dmajin-nav-fallback-ios: 59px;

      }

    }

  }

}



@supports not (-webkit-touch-callout: none) {

  @media (display-mode: standalone), (display-mode: fullscreen) {

    :root {

      --dmajin-nav-inset: max(env(safe-area-inset-top, 0px), var(--dmajin-nav-fallback-android));

    }



    @media (min-height: 800px) {

      :root {

        --dmajin-nav-fallback-android: 32px;

      }

    }

  }

}



@media (display-mode: standalone), (display-mode: fullscreen) {

  .pwa-install-banner {

    display: none !important;

  }



  body.page-home.pwa-banner-visible {

    padding-bottom: 0 !important;

  }



  .nav {

    top: var(--dmajin-nav-inset) !important;

  }

}



html.pwa-standalone .pwa-install-banner {

  display: none !important;

}



html.pwa-standalone body.page-home.pwa-banner-visible {

  padding-bottom: 0 !important;

}



/* Renfort JS — par famille d’appareil */

html.pwa-standalone.pwa-ios-se {

  --dmajin-nav-inset: max(

    env(safe-area-inset-top, 0px),

    constant(safe-area-inset-top, 0px),

    20px

  );

}



html.pwa-standalone.pwa-ios-notch {

  --dmajin-nav-inset: max(

    env(safe-area-inset-top, 0px),

    constant(safe-area-inset-top, 0px),

    47px

  );

}



html.pwa-standalone.pwa-ios-island,

html.pwa-standalone.pwa-ios.pwa-notch-lg {

  --dmajin-nav-inset: max(

    env(safe-area-inset-top, 0px),

    constant(safe-area-inset-top, 0px),

    59px

  );

}



html.pwa-standalone.pwa-android {

  --dmajin-nav-inset: max(env(safe-area-inset-top, 0px), 28px);

}



@media (min-height: 800px) {

  html.pwa-standalone.pwa-android {

    --dmajin-nav-inset: max(env(safe-area-inset-top, 0px), 32px);

  }

}



html.pwa-standalone .nav {

  top: var(--dmajin-nav-inset) !important;

}



html.pwa-standalone body.page-home .hero-full {

  padding-top: var(--dmajin-nav-inset);

}



html.pwa-standalone body.page-home .hero-content {

  padding-top: 0.5rem;

}



html.pwa-standalone .nav-logo,

html.pwa-standalone .nav-toggle,

html.pwa-standalone .btn-nav {

  position: relative;

  z-index: 2;

}


