/* =========================================================
   lasla-presse.css — HUB PRESSE (PRO / STABLE)
   Objectif:
   - On laisse .app (grid) gérer topbar/main/bottombar
   - AUCUNE height forcée sur .app > .main (sinon footer coupé)
   - Scroll interne uniquement dans .card-b
========================================================= */

html, body { overflow-x: hidden; }

/* 1) On s’aligne sur le layout global (lasla-layout.css + viewport vars)
   => PAS de height custom sur .app > .main
*/
main.lasla2026-root[data-page="presse"]{
  overflow: hidden; /* ok */
}

/* La rangée main doit pouvoir shrink */
main.lasla2026-root[data-page="presse"] .app,
main.lasla2026-root[data-page="presse"] .app > .main{
  min-height: 0 !important;
  overflow: hidden !important;
}

/* IMPORTANT: on ne force PAS height sur .app > .main !!! */

/* 2) Wrapper presse prend 100% de la zone main */
main.lasla2026-root[data-page="presse"] .lasla-presse-main,
main.lasla2026-root[data-page="presse"] .presse-shell{
  height: 100%;
  min-height: 0;
  overflow: hidden;
}

/* 3) Grille 2 colonnes */
main.lasla2026-root[data-page="presse"] .presse-grid{
  height: 100%;
  min-height: 0;
  overflow: hidden;

  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
  gap: 14px;
  align-items: stretch;
}

main.lasla2026-root[data-page="presse"] .presse-col-main,
main.lasla2026-root[data-page="presse"] .presse-col-side{
  min-width: 0;
  min-height: 0;
  overflow: hidden;
}

/* 4) Cards: header fixe, body scrollable */
main.lasla2026-root[data-page="presse"] .presse-col-main .card,
main.lasla2026-root[data-page="presse"] .presse-col-side .card{
  height: 100%;
  min-height: 0;
  overflow: hidden;

  display: flex;
  flex-direction: column;
}

main.lasla2026-root[data-page="presse"] .presse-col-main .card-b,
main.lasla2026-root[data-page="presse"] .presse-col-side .card-b{
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;

  -webkit-overflow-scrolling: touch;
  overscroll-behavior: contain;
}

/* fx-scroll ne vole pas le scroll */
main.lasla2026-root[data-page="presse"] .presse-col-side .fx-scroll{
  height: auto !important;
  overflow: visible !important;
}

/* Loading state */
main.lasla2026-root[data-page="presse"] .presse-col-main.is-loading{
  opacity: .55;
  filter: saturate(.9);
  transition: opacity .12s ease;
}

/* =========================
   Toggle GRID/LIST
========================= */
main.lasla2026-root[data-page="presse"] .card-presse-side .card-h{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}

main.lasla2026-root[data-page="presse"] .presse-view-toggle{
  display:flex;
  align-items:center;
  gap:8px;
}

main.lasla2026-root[data-page="presse"] .presse-view-btn{
  appearance:none;
  width:34px;
  height:34px;
  border-radius:12px;
  border:1px solid rgba(0,0,0,.12);
  background: linear-gradient(180deg, rgba(255,255,255,.85), rgba(255,255,255,.62));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.6), 0 4px 10px rgba(255, 170, 0, 0.18);
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  transition: all .18s ease;
  color:#000;
  outline:none;
  -webkit-tap-highlight-color:transparent;
}
main.lasla2026-root[data-page="presse"] .presse-view-btn:hover,
main.lasla2026-root[data-page="presse"] .presse-view-btn.is-active{
  background: linear-gradient(180deg, rgba(255,214,90,.92), rgba(255, 190, 40, 0.88));
  border-color: rgba(255, 170, 0, 0.8);
  transform: translateY(-1px);
}
main.lasla2026-root[data-page="presse"] .presse-view-btn:focus-visible{
  box-shadow: 0 0 0 3px rgba(255,190,40,.35),
              inset 0 1px 0 rgba(255,255,255,.6),
              0 4px 10px rgba(255,170,0,.18);
}

/* =========================
   NAV base
========================= */
main.lasla2026-root[data-page="presse"] .presse-nav{ width:100%; }
main.lasla2026-root[data-page="presse"] .presse-nav .fx-grid--presse{
  display:grid;
  gap:14px;
}

/* focus clean */
main.lasla2026-root[data-page="presse"] .presse-nav .presse-nav-item,
main.lasla2026-root[data-page="presse"] .presse-nav .fx-link{
  outline:none !important;
}
main.lasla2026-root[data-page="presse"] .presse-nav .presse-nav-item:focus,
main.lasla2026-root[data-page="presse"] .presse-nav .presse-nav-item:focus-visible,
main.lasla2026-root[data-page="presse"] .presse-nav .fx-link:focus,
main.lasla2026-root[data-page="presse"] .presse-nav .fx-link:focus-visible{
  outline:none !important;
  box-shadow:none !important;
}

/* =========================
   GRID mode
========================= */
main.lasla2026-root[data-page="presse"] .presse-nav.view-grid .fx-grid--presse{
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
}
@media (max-width: 1200px){
  main.lasla2026-root[data-page="presse"] .presse-nav.view-grid .fx-grid--presse{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 720px){
  main.lasla2026-root[data-page="presse"] .presse-nav.view-grid .fx-grid--presse{
    grid-template-columns: 1fr;
  }
}

main.lasla2026-root[data-page="presse"] .presse-nav.view-grid .presse-nav-item{ display:block; }
main.lasla2026-root[data-page="presse"] .presse-nav.view-grid .presse-nav-item .fx-link{
  display:block;
  width:100%;
  text-decoration:none;
  color:inherit;
  border-radius:18px;
  overflow:hidden;
  background: linear-gradient(180deg, rgba(255,255,255,.85), rgba(255,255,255,.62));
  border: 1px solid rgba(0,0,0,.10);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.6), 0 4px 10px rgba(255,170,0,.18);
  transition: all .25s ease;
}

main.lasla2026-root[data-page="presse"] .presse-nav.view-grid .presse-nav-item:hover .fx-link,
main.lasla2026-root[data-page="presse"] .presse-nav.view-grid .presse-nav-item.is-active .fx-link{
  background: linear-gradient(180deg, rgba(255,214,90,.92), rgba(255, 190, 40, 0.88));
  border-color: rgba(255,170,0,.8);
}

main.lasla2026-root[data-page="presse"] .presse-nav.view-grid .fx-thumb-img,
main.lasla2026-root[data-page="presse"] .presse-nav.view-grid img{
  width:100% !important;
  height:auto !important;
  display:block !important;
  border-bottom:1px solid rgba(0,0,0,.08);
}

main.lasla2026-root[data-page="presse"] .presse-nav.view-grid .fx-text{
  padding:10px 10px 12px;
  min-width:0;
}
main.lasla2026-root[data-page="presse"] .presse-nav.view-grid .fx-title{
  font-weight:800;
  font-size:12px;
  line-height:1.2;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
}
main.lasla2026-root[data-page="presse"] .presse-nav.view-grid .fx-desc{
  margin-top:6px;
  font-size:11px;
  line-height:1.2;
  opacity:.88;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
}

/* =========================
   LIST mode
========================= */
main.lasla2026-root[data-page="presse"] .presse-nav.view-list .fx-grid--presse{
  grid-template-columns: 1fr;
}

main.lasla2026-root[data-page="presse"] .presse-nav.view-list .presse-nav-item .fx-link{
  display:flex;
  align-items:center;
  gap:12px;
  padding:10px;
  border-radius:16px;
  text-decoration:none;
  color:inherit;
  background: linear-gradient(180deg, rgba(255,255,255,.85), rgba(255,255,255,.62));
  border: 1px solid rgba(0,0,0,.10);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.6), 0 4px 10px rgba(255,170,0,.18);
  transition: all .25s ease;
}

main.lasla2026-root[data-page="presse"] .presse-nav.view-list .presse-nav-item:hover .fx-link,
main.lasla2026-root[data-page="presse"] .presse-nav.view-list .presse-nav-item.is-active .fx-link{
  background: linear-gradient(180deg, rgba(255,214,90,.92), rgba(255,190,40,.88));
  border-color: rgba(255,170,0,.8);
}

main.lasla2026-root[data-page="presse"] .presse-nav.view-list .fx-media{
  flex:0 0 72px;
  width:72px;
  height:72px;
  border-radius:14px;
  overflow:hidden;
  background: rgba(255,255,255,.65);
  border: 1px solid rgba(0,0,0,.08);
}

main.lasla2026-root[data-page="presse"] .presse-nav.view-list .fx-thumb-img,
main.lasla2026-root[data-page="presse"] .presse-nav.view-list img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  display:block !important;
}

main.lasla2026-root[data-page="presse"] .presse-nav.view-list .fx-text{ flex:1; min-width:0; }

main.lasla2026-root[data-page="presse"] .presse-nav.view-list .fx-title,
main.lasla2026-root[data-page="presse"] .presse-nav.view-list .fx-desc{
  display:block !important;
  overflow:visible !important;
  white-space:normal !important;
  -webkit-line-clamp:unset !important;
}

/* =========================
   Contenu article : anti overflow
========================= */
main.lasla2026-root[data-page="presse"] #presseContent,
main.lasla2026-root[data-page="presse"] #presseContent *{
  max-width: 100% !important;
}
main.lasla2026-root[data-page="presse"] #presseContent iframe,
main.lasla2026-root[data-page="presse"] #presseContent img,
main.lasla2026-root[data-page="presse"] #presseContent video{
  max-width:100% !important;
  height:auto !important;
}
main.lasla2026-root[data-page="presse"] #presseContent table{
  display:block;
  width:100%;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}

/* =========================
   Responsive : 1 colonne
========================= */
@media (max-width: 900px){
  main.lasla2026-root[data-page="presse"] .presse-grid{
    grid-template-columns: 1fr;
    grid-template-rows: minmax(0, 1fr) minmax(0, 0.9fr);
  }
}
