@media (max-width: 1199.98px) {
  .nk-header-fixed,
  .catalog-header.nk-header-fixed,
  header.nk-header-fixed {
    position: relative !important;
    top: auto !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
  }

  .nk-header-fixed + .nk-content,
  .catalog-header + .nk-content,
  .nk-header + .nk-content,
  .nk-content {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  .nk-wrap {
    padding-top: 0 !important;
    margin-top: 0 !important;
  }

  .glassystem-main-container,
  #glassystem-main-container,
  .cfy-vignettes-block--publisher {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  .nk-content-body,
  .nk-content-inner {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

@media (max-width: 767.98px) {
  .catalog-header {
    min-height: 0 !important;
    height: auto !important;
    padding-top: 8px !important;
    padding-bottom: 8px !important;
  }

  .vignette-selectable,
  .vignettes-container .card {
    border-radius: 0 !important;
  }
}

@media (max-width: 1024.98px) {
  .cfy-mobile-feature-note {
    display: block;
    font-size: 0.75rem;
    line-height: 1.35;
    padding: 8px 12px;
    margin: 0;
    background: rgba(0, 0, 0, 0.75);
    color: #f0f0f0;
    border: none;
  }

  .cfy-mobile-filter-fab {
    position: fixed;
    right: max(12px, env(safe-area-inset-right));
    bottom: max(16px, env(safe-area-inset-bottom));
    z-index: 1040;
    min-width: 48px;
    min-height: 48px;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    border: none;
    background: #f5a623;
    color: #111;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.35);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
  }

  .cfy-mobile-filter-fab:focus-visible {
    outline: 2px solid #fff;
    outline-offset: 2px;
  }
}

@media (min-width: 1025px) {
  .cfy-mobile-filter-fab,
  .cfy-mobile-feature-note {
    display: none !important;
  }
}

/* Modales : cibles ≥44px + densification */
@media (max-width: 1279.98px) {
  #dashboardModal .btn,
  #modalSearchAdvanced .btn,
  #modalPublisherSwitch .btn {
    min-height: 44px;
  }

  #dashboardModal .modal-body {
    padding: 10px 12px !important;
  }
}

/* Formulaire dépôt — densification smartphone (onglets = étapes) */
@media (max-width: 767.98px) {
  .page-dash-publish-typology .form-group,
  .publish-form-ns .form-group,
  .publish-form-ns .mb-3 {
    margin-bottom: 0.65rem !important;
  }

  .publish-form-ns-card,
  .publish-form-ns-card-inner {
    padding: 0.5rem !important;
    border-radius: 0 !important;
  }

  .publish-form-ns .form-control,
  .publish-form-ns .form-select,
  .publish-form-ns .btn,
  .publish-form-ns-tab {
    min-height: 44px;
  }

  .publish-form-ns .nav {
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    gap: 4px;
    padding-bottom: 6px;
  }

  .publish-form-ns-tab {
    white-space: nowrap;
    font-size: 0.8rem;
    padding: 8px 10px !important;
  }

  .nk-block-head-lg {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }
}

/* Publisher : pas de sticky ; densifier carte header */
@media (max-width: 1199.98px) {
  .page-publisher-typology .publisher-compact-header,
  .publisher-header-sticky-card {
    position: relative !important;
    top: auto !important;
    margin-bottom: 8px !important;
  }
}
