/* ── Page liste POI par type (lpeak-type-tw.php) — layout Tailwind 2 colonnes ──
   CSS servie brute au navigateur (pas de build).
   S'appuie sur les variables globales de randozone.css (--ink, --primary, --line…). */

/* ═══ Hero avec photo en fond ═══ */
.lpt-photo-bg .eyebrow { color:rgba(255,255,255,.82); }
.lpt-photo-bg h1 { color:#fff; }
.lpt-photo-bg h1 .lt { color:oklch(0.82 0.1 220); }
.lpt-photo-bg .intro { color:rgba(255,255,255,.75); }
.lpt-photo-bg .stat-chip { background:rgba(255,255,255,.13); border-color:rgba(255,255,255,.22); color:#fff; }
.lpt-photo-bg .stat-chip .rz-ico { color:rgba(255,255,255,.72); }
.lpt-photo-bg .stat-chip b { color:#fff; }

/* ═══ Texte descriptif (rowType['texte'] — HTML brut) ═══ */
.lpt-text { font-size:.9rem; color:var(--ink-soft); line-height:1.7; margin-bottom:2rem; padding:1.1rem 1.3rem;
  background:var(--surface); border:1px solid var(--line); border-radius:14px; }
.lpt-text .section-title { font-family:'Work Sans',system-ui,sans-serif; font-weight:600; letter-spacing:-.02em;
  color:var(--ink); font-size:1.05rem; margin:0 0 .75rem; line-height:1.3; }
.lpt-text p { margin:0 0 .75rem; }
.lpt-text p:last-child { margin-bottom:0; }

/* ═══ Message liste vide ═══ */
.lpt-empty { display:flex; align-items:center; gap:.6rem; padding:1.5rem 1.15rem;
  color:var(--ink-soft); font-size:.9rem; }
.lpt-empty .rz-ico { width:18px; height:18px; color:var(--primary); flex-shrink:0; }

/* ═══ Bloc sechead + liste (enfant unique du flex gap) ═══ */
.lpt-block { display:flex; flex-direction:column; gap:1rem }

/* ═══ En-tête de section ═══ */
.lpt-sechead { margin-bottom:1.25rem }
.lpt-h2 { font-family:'Work Sans',system-ui,sans-serif; font-weight:600; letter-spacing:-.02em;
  color:var(--ink); font-size:1.45rem; margin:.4rem 0 0 }
@media (min-width:768px){ .lpt-h2{ font-size:2rem } }
.lpt-h2-count { font-size:.65em; font-weight:500; color:var(--ink-soft); letter-spacing:0 }

/* ═══ Liste compacte (V5 maquette) ═══ */
.poi-list { background:var(--surface); border:1px solid var(--line); border-radius:16px; overflow:hidden; }

.poi-compact { display:grid; grid-template-columns:72px 1fr auto; gap:.9rem; align-items:center;
  padding:.8rem 1rem; border-top:1px solid var(--line); text-decoration:none;
  transition:background .15s; }
.poi-compact:first-child { border-top:none; }
.poi-compact:hover { background:color-mix(in oklch,var(--primary) 5%,white); }

/* miniature */
.poi-compact .thumb { width:72px; height:60px; border-radius:10px; flex-shrink:0; overflow:hidden; }
.poi-compact .thumb img { width:100%; height:100%; object-fit:cover; display:block;
  transition:transform .35s ease; }
.poi-compact:hover .thumb img { transform:scale(1.07); }
.poi-compact .thumb.no-img { background:var(--surface-2); border:1px solid var(--line);
  display:grid; place-items:center; color:var(--ink-soft); }
.poi-compact .thumb.no-img .rz-ico { width:22px; height:22px; }

/* contenu central */
.poi-compact .bd { min-width:0; }
.poi-compact h3 { font-family:'Work Sans',system-ui,sans-serif; font-weight:600; font-size:1.15rem;
  letter-spacing:-.02em; line-height:1.18; margin:0 0 .18rem; color:var(--ink);
  overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.poi-compact:hover h3 { color:var(--primary); }
.poi-compact.inprogress h3 { color:var(--ink-soft); font-style:italic; }
.poi-compact.inprogress:hover h3 { color:var(--primary); opacity:.8; }
.poi-compact .sub { font-size:.76rem; color:var(--ink-soft); line-height:1.3;
  overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }

/* colonne droite */
.poi-compact .right { display:flex; flex-direction:column; align-items:flex-end; gap:.3rem;
  flex-shrink:0; text-align:right; }
.poi-compact .right .alt { font-family:monospace; font-weight:700; font-size:.94rem; color:var(--ink);
  white-space:nowrap; line-height:1; }
.poi-compact .right .alt .u { font-size:.66rem; font-weight:600; color:var(--ink-soft); margin-left:.1rem; }
.poi-compact .right .cnts { display:flex; gap:.4rem; }
.poi-compact .right .cnt { display:inline-flex; align-items:center; gap:.2rem;
  font-family:monospace; font-size:.67rem; font-weight:600; color:var(--ink-soft); }
.poi-compact .right .cnt .rz-ico { width:12px; height:12px; }

@media (max-width:560px) {
  .poi-compact { grid-template-columns:56px 1fr auto; gap:.65rem; padding:.7rem .8rem; }
  .poi-compact .thumb { width:56px; height:48px; border-radius:8px; }
  .poi-compact h3 { font-size:1.02rem; }
}
@media (max-width:400px) {
  .poi-compact { grid-template-columns:1fr auto; padding:.65rem .75rem; }
  .poi-compact .thumb { display:none; }
  .poi-compact h3 { font-size:.96rem; }
}

/* ═══ Pagination ═══ */
.lpt-pager { display:flex; flex-wrap:wrap; gap:.4rem; margin-top:2rem; justify-content:center; }
.lpt-pager a,
.lpt-pager .cur { display:inline-flex; align-items:center; justify-content:center;
  min-width:2.25rem; height:2.25rem; padding:0 .5rem; border-radius:9px;
  font-family:monospace; font-size:.82rem; font-weight:600;
  text-decoration:none; border:1px solid var(--line); background:var(--surface);
  color:var(--ink); transition:border-color .14s, background .14s, color .14s; }
.lpt-pager a:hover { border-color:var(--primary); color:var(--primary);
  background:color-mix(in oklch,var(--primary) 6%,white); }
.lpt-pager .cur { background:var(--primary); border-color:var(--primary); color:#fff; cursor:default; }
.lpt-pager .nav-btn { padding:0 .6rem; }
.lpt-pager .nav-btn .rz-ico { width:14px; height:14px; }
.lpt-pager .dots { display:inline-flex; align-items:center; justify-content:center;
  min-width:2.25rem; height:2.25rem; font-size:.82rem; color:var(--ink-soft);
  letter-spacing:.05em; cursor:default; }

/* ═══ Sidebar — .sb-* (copie depuis type.css, partagé mais pas encore dans randozone.css) ═══ */
.sb-card { background:var(--surface); border:1px solid var(--line); border-radius:16px; overflow:hidden; }
.sb-card + .sb-card { margin-top:1.25rem; }
.sb-head { display:flex; align-items:center; gap:.6rem; padding:.85rem 1.15rem; border-bottom:1px solid var(--line); }
.sb-head .rz-ico { color:var(--primary); width:18px; height:18px; }
.sb-head .t { font-size:.78rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--ink); }
.sb-links { display:flex; flex-direction:column; max-height:440px; overflow-y:auto; }
.sb-links a { display:block; text-decoration:none; color:var(--primary-dark); font-size:.88rem;
  font-weight:500; line-height:1.4; padding:.65rem 1.15rem; border-top:1px solid var(--line);
  transition:background .15s, color .15s; }
.sb-links a:first-child { border-top:none; }
.sb-links a:hover { background:color-mix(in oklch,var(--primary) 6%,white); color:var(--primary); }
.sb-links a.active { color:var(--primary); font-weight:700;
  background:color-mix(in oklch,var(--primary) 9%,white); border-left:3px solid var(--primary); }
