/* SensuLibre v132 — finition mobile/PWA + panneaux compacts. */

/* --- Panneaux publicitaires : volontairement petits --- */
.slm7-ad{position:relative;width:min(310px,100%);height:124px;border-radius:18px;overflow:hidden;background:#fff;border:1px solid #eadde1;box-shadow:0 10px 28px rgba(48,30,38,.08);flex:0 0 auto}
.slm7-ad__label{position:absolute;z-index:4;top:7px;left:7px;padding:3px 7px;border-radius:999px;background:rgba(255,255,255,.9);color:#6f5860;font:800 8px/1 system-ui;letter-spacing:.11em;pointer-events:none}
.slm7-ad__click,.slm7-ad__screen{display:block;width:100%;height:100%}.slm7-ad__click[aria-disabled="true"]{pointer-events:none}.slm7-ad__screen{background:#eee6e8;overflow:hidden}.slm7-ad video,.slm7-ad img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;border:0}
.slm7-ad--empty{display:grid;place-items:center;text-align:center;padding:18px}.slm7-ad--empty>span{position:absolute;top:7px;left:7px;font:800 8px system-ui;color:#8a747d}.slm7-ad--empty b,.slm7-ad--empty small{display:block}.slm7-ad--empty small{margin-top:4px;color:#8b7b81}
/* Accueil : sous le hero, à droite et sans agrandir la page. */
.slm-pro-hero>.slm7-ad,.slm7-ad--home{position:absolute;right:clamp(18px,4vw,58px);bottom:18px;z-index:6;width:min(280px,26vw);height:108px;border-color:rgba(255,255,255,.45);box-shadow:0 14px 38px rgba(20,10,14,.25)}
/* Profil membre : petit bandeau immédiatement sous la présentation principale. */
.slm7-ad--profile{margin:0 0 18px auto}.slm7-ad--account{margin:8px 0 18px auto}

/* --- Mobile : la fiche reste une miniature de la fiche PC --- */
@media (max-width:720px){
  html,body{max-width:100%;overflow-x:hidden}
  body{padding-bottom:env(safe-area-inset-bottom,0)}
  .slm-shell,.slm-discovery-container,.zd-container{width:min(100% - 18px,1420px)!important;margin-inline:auto!important}

  /* Profil public : photo + informations restent côte à côte. */
  .slm2-profile-view{padding-top:8px}
  .slm2-profile-top{grid-template-columns:minmax(112px,35vw) minmax(0,1fr)!important;gap:10px!important;align-items:stretch!important;margin:10px 0 12px!important}
  .slm2-profile-photo{min-height:0!important;height:auto!important;aspect-ratio:3/4!important;border-radius:17px!important;box-shadow:0 10px 25px rgba(46,29,35,.10)!important;background-position:center top!important}
  .slm2-profile-photo.is-empty>span{font-size:58px!important}
  .slm2-profile-photo>i{right:8px!important;bottom:8px!important;width:12px!important;height:12px!important;border-width:3px!important}
  .slm2-profile-main{min-width:0!important;border-radius:17px!important;padding:12px!important;justify-content:flex-start!important;box-shadow:0 10px 25px rgba(46,29,35,.05)!important}
  .slm2-profile-main .slm-kicker{font-size:8px!important;letter-spacing:.12em!important}
  .slm2-profile-main h1{font-size:clamp(27px,8vw,35px)!important;line-height:.95!important;margin:4px 0 6px!important;overflow-wrap:anywhere}
  .slm2-profile-main h1 small{display:inline!important;font-size:12px!important;margin-left:4px!important}
  .slm2-profile-main h1 em{font-size:8px!important;padding:4px 6px!important;margin:4px 0 0!important}
  .slm2-location{font-size:11px!important;margin:2px 0 7px!important}
  .slm2-profile-chips{gap:4px!important;max-height:48px;overflow:hidden}
  .slm2-profile-chips span{padding:4px 6px!important;font-size:9px!important}
  .slm2-profile-bio{font-size:11px!important;line-height:1.45!important;margin:7px 0!important;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
  .slm2-profile-actions{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:4px!important;margin-top:auto!important}
  .slm2-profile-actions .slm-btn{min-width:0!important;padding:7px 4px!important;border-radius:10px!important;font-size:9px!important;line-height:1.15!important;text-align:center!important;justify-content:center!important;white-space:normal!important}

  /* Le détail conserve une allure PC compacte, sans énorme empilement. */
  .slm2-profile-layout{grid-template-columns:1fr!important;gap:10px!important}
  .slm2-profile-layout main,.slm2-profile-layout aside{gap:10px!important}
  .slm2-profile-layout aside{position:static!important}
  .slm2-profile-layout .slm-card,.slm2-public-file{border-radius:16px!important;padding:12px!important}
  .slm2-about-cols{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}
  .slm2-about h2,.slm2-files-public h2,.slm2-private-text h2{font-size:20px!important}
  .slm2-about h3{font-size:13px!important}
  .slm2-list-chips{gap:4px!important}.slm2-list-chips span{font-size:9px!important;padding:4px 6px!important}
  .slm2-public-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:5px!important}
  .slm2-public-file>header{margin-bottom:8px!important}.slm2-public-file header h3{font-size:14px!important}.slm2-public-file header p{font-size:9px!important}.slm2-public-file header b{font-size:9px!important}
  .slm2-video-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important}
  .slm-open-my-space form .slm-btn,.slm2-side-contact .slm-btn{width:100%;justify-content:center}

  /* Édition du profil : options accessibles sans cartes géantes. */
  .slm2-account-nav{top:66px!important;gap:4px!important;padding:6px!important;border-radius:13px!important}
  .slm2-account-nav a{font-size:10px!important;padding:7px 8px!important}
  .slm2-albums-edit{gap:10px!important}.slm2-file-edit{border-radius:16px!important;padding:11px!important}
  .slm2-edit-thumbs{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:5px!important}
  .slm2-edit-thumb img{aspect-ratio:1/1!important;object-fit:cover!important}

  /* Profils / découverte : 4 univers en 2 colonnes, comme des mini-cartes PC. */
  .slm5-profiles-hero{min-height:300px!important;border-radius:18px!important}
  .slm5-profiles-hero__copy{padding:26px 18px!important}.slm5-profiles-hero h1{font-size:34px!important}.slm5-profiles-hero p{font-size:12px!important;line-height:1.5!important}
  .slm5-universe-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
  .slm5-universe{min-height:220px!important;border-radius:17px!important}
  .slm5-universe__count{top:8px!important;right:8px!important;font-size:9px!important;padding:5px 7px!important}
  .slm5-universe__copy{padding:12px!important}.slm5-universe__copy h2{font-size:22px!important;margin-bottom:5px!important}.slm5-universe__copy p{font-size:9px!important;line-height:1.35!important;min-height:0!important;margin:0 0 6px!important}.slm5-universe__copy strong{font-size:9px!important}
  .slm5-category-hero{min-height:220px!important;border-radius:17px!important}.slm5-category-hero__copy{padding:28px 18px!important}.slm5-category-hero h1{font-size:38px!important}.slm5-category-hero p{font-size:11px!important}
  .slm3-member-grid,.slm5-member-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}

  /* Messagerie : vraie zone de chat utilisable avec clavier mobile. */
  .slm2-messages-page{padding-top:4px!important;padding-bottom:8px!important}
  .slm2-messages-page .slm-page-head{margin:0 0 7px!important}.slm2-messages-page .slm-page-head h1{font-size:30px!important}.slm2-messages-page .slm-page-head p{font-size:11px!important;margin-bottom:6px!important}
  .slm2-messenger{display:flex!important;flex-direction:column!important;min-height:calc(100dvh - 145px)!important;border-radius:16px!important;overflow:hidden!important}
  .slm2-conv-list{display:flex!important;flex:0 0 auto!important;overflow-x:auto!important;overflow-y:hidden!important;max-height:72px!important;border-right:0!important;border-bottom:1px solid #eee5e7!important;scrollbar-width:thin}
  .slm2-conv-head{display:none!important}.slm2-conv-list>.slm-muted{min-width:180px!important;font-size:10px!important}
  .slm2-conv-row{min-width:132px!important;grid-template-columns:34px minmax(0,1fr) auto!important;gap:6px!important;padding:7px 8px!important;border-right:1px solid #eee5e7!important;border-bottom:0!important}
  .slm2-conv-row>img,.slm2-conv-row>span{width:34px!important;height:34px!important;border-radius:10px!important}.slm2-conv-row b{font-size:10px!important}.slm2-conv-row small{font-size:8px!important}.slm2-conv-row em{min-width:18px!important;height:18px!important;font-size:9px!important}
  .slm2-chat-panel{min-height:0!important;flex:1 1 auto!important}
  .slm2-chat-head{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:6px!important;padding:8px!important}
  .slm2-chat-person>img,.slm2-chat-person>span{width:36px!important;height:36px!important;border-radius:10px!important}.slm2-chat-person h2{font-size:14px!important}.slm2-chat-person small{font-size:9px!important}
  .slm2-chat-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:4px!important;width:auto!important}.slm2-chat-actions .slm-btn{padding:7px 6px!important;font-size:9px!important;white-space:nowrap!important}
  .slm2-stream{flex:1 1 auto!important;min-height:260px!important;max-height:none!important;padding:10px!important;overscroll-behavior:contain}
  .slm2-bubble{max-width:84%!important;padding:8px 10px!important;border-radius:14px!important;font-size:13px!important;margin:5px 0!important}.slm2-bubble small{font-size:8px!important}
  .slm2-composer{position:sticky!important;bottom:env(safe-area-inset-bottom,0)!important;z-index:20!important;grid-template-columns:38px minmax(0,1fr) 38px!important;gap:5px!important;padding:7px!important;padding-bottom:max(7px,env(safe-area-inset-bottom))!important;background:#fff!important}
  .slm2-composer textarea{min-height:40px!important;max-height:100px!important;border-radius:14px!important;padding:9px 10px!important;font-size:16px!important}
  .slm2-emoji-wrap>button,.slm2-send{width:38px!important;height:40px!important;border-radius:13px!important}.slm2-emoji-panel{left:6px!important;right:6px!important;bottom:58px!important;width:auto!important;max-height:185px!important;padding:7px!important}.slm2-emoji-panel button{font-size:19px!important;padding:5px!important}.slm2-chat-note{display:none!important}

  /* Visio : vidéos contenues dans l'écran, commandes accessibles. */
  .slm-visio-app{padding:10px!important;border-radius:17px!important}.slm-video-stage{min-height:0!important;aspect-ratio:9/13!important;max-height:62dvh!important;border-radius:16px!important;overflow:hidden!important}.slm-video-stage video{object-fit:cover!important}.slm-visio-controls{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important}.slm-visio-controls .slm-btn{font-size:11px!important;padding:9px 7px!important;justify-content:center!important}

  /* Petit panneau publicité : aucune carte géante sur téléphone. */
  .slm-pro-hero>.slm7-ad,.slm7-ad--home{position:absolute!important;right:10px!important;bottom:10px!important;width:148px!important;height:62px!important;border-radius:10px!important}
  .slm7-ad--profile,.slm7-ad--account{width:190px!important;height:72px!important;margin:6px 0 10px auto!important;border-radius:11px!important}
  .slm7-ad__label{top:4px!important;left:4px!important;font-size:6px!important;padding:2px 4px!important}
}

@media (max-width:390px){
  .slm2-profile-top{grid-template-columns:108px minmax(0,1fr)!important}
  .slm2-profile-main h1{font-size:27px!important}
  .slm2-profile-actions .slm-btn{font-size:8px!important;padding-inline:2px!important}
  .slm5-universe{min-height:200px!important}.slm5-universe__copy h2{font-size:19px!important}
}

/* PWA installée : garder de l'air autour de l'encoche / barre système. */
@media (display-mode:standalone){
  .slm-site-header{padding-top:env(safe-area-inset-top,0)!important}
  .slm2-composer{padding-bottom:max(8px,env(safe-area-inset-bottom))!important}
  .slm-theme-main{min-height:calc(100dvh - 70px)}
}
