/* H2B V60 — éditeur d'arrière-plans par page */
.h2b-page-background-layer{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:0}
.h2b-page-background-item{position:absolute;left:var(--bg-x,78%);top:var(--bg-y,50%);width:var(--bg-w,58vw);max-width:none;transform:translate(-50%,-50%) rotate(var(--bg-r,0deg));opacity:var(--bg-o,.72);overflow:hidden;pointer-events:none}
.h2b-page-background-item.h2b-bg-frame{border:1px solid rgba(150,194,232,.34);box-shadow:0 22px 70px rgba(0,0,0,.42),inset 0 0 0 1px rgba(255,255,255,.04);clip-path:polygon(14px 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%,0 14px)}
.h2b-page-background-item img,.h2b-page-background-item video{display:block;width:100%;height:auto;max-height:78vh;object-fit:cover}
.h2b-page-background-filter{position:absolute;inset:0;background:rgba(0,0,0,var(--bg-filter,.42));z-index:2}
#authView,#publicResultsView,#adminView,#memberView{isolation:isolate}
#authView>*:not(.h2b-page-background-layer),#publicResultsView>*:not(.h2b-page-background-layer),#adminView>*:not(.h2b-page-background-layer),#memberView>*:not(.h2b-page-background-layer){position:relative;z-index:2}
.h2b-background-editor-shell{position:relative;z-index:3}
.h2b-bg-editor-grid{display:grid;grid-template-columns:minmax(290px,.8fr) minmax(340px,1.2fr);gap:22px;align-items:start}
.h2b-bg-device-tabs{display:flex;gap:7px;flex-wrap:wrap}
.h2b-bg-device-tabs .active{border-color:#8ecbff!important;box-shadow:0 0 0 1px rgba(105,184,255,.2)}
.h2b-bg-slider label{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:7px}.h2b-bg-slider input[type=range]{width:100%}
.h2b-bg-preview-head{display:flex;justify-content:space-between;gap:10px;align-items:end;margin-bottom:9px}.h2b-bg-preview-head small{color:#8096aa;text-align:right}
.h2b-bg-preview{height:440px;position:relative;overflow:hidden;border:1px solid rgba(134,183,224,.28);background:linear-gradient(145deg,#07111c,#0b1724);clip-path:polygon(16px 0,100% 0,100% calc(100% - 16px),calc(100% - 16px) 100%,0 100%,0 16px)}
.h2b-bg-preview-media{position:absolute;left:var(--px,78%);top:var(--py,50%);width:var(--pw,58%);transform:translate(-50%,-50%) rotate(var(--pr,0deg));opacity:var(--po,.72);overflow:hidden;z-index:1}
.h2b-bg-preview-media.h2b-bg-frame{border:1px solid rgba(155,201,240,.38);clip-path:polygon(12px 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%,0 12px)}
.h2b-bg-preview-media img,.h2b-bg-preview-media video{display:block;width:100%;height:auto;max-height:420px;object-fit:cover}.h2b-bg-preview-media .h2b-page-background-filter{background:rgba(0,0,0,var(--pf,.42))}
.h2b-bg-preview-content{position:absolute;z-index:3;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:36px;background:linear-gradient(90deg,rgba(4,9,15,.45),transparent 70%)}
.h2b-bg-preview-content span{font-size:10px;letter-spacing:.18em;color:#7aaed5}.h2b-bg-preview-content strong{font-size:28px;margin:5px 0}.h2b-bg-preview-content small{color:#a9bac8}
@media(max-width:900px){.h2b-bg-editor-grid{grid-template-columns:1fr}.h2b-bg-preview{height:360px}}
@media(max-width:600px){.h2b-bg-preview{height:300px}.h2b-bg-preview-content{padding:20px}.h2b-bg-preview-content strong{font-size:22px}}

/* ============================================================
   H2B V58 — fondu automatique + aperçu par appareil + glisser
   ============================================================ */
.h2b-page-background-item,
.h2b-bg-preview-media{
  --h2b-fade-a:12%;
  --h2b-fade-b:88%;
  -webkit-mask-image:
    linear-gradient(to right,transparent 0,#000 var(--h2b-fade-a),#000 var(--h2b-fade-b),transparent 100%),
    linear-gradient(to bottom,transparent 0,#000 var(--h2b-fade-a),#000 var(--h2b-fade-b),transparent 100%);
  -webkit-mask-composite:source-in;
  mask-image:
    linear-gradient(to right,transparent 0,#000 var(--h2b-fade-a),#000 var(--h2b-fade-b),transparent 100%),
    linear-gradient(to bottom,transparent 0,#000 var(--h2b-fade-a),#000 var(--h2b-fade-b),transparent 100%);
  mask-composite:intersect;
}
.h2b-page-background-item.h2b-bg-frame,
.h2b-bg-preview-media.h2b-bg-frame{
  border-color:rgba(150,194,232,.13);
  box-shadow:0 20px 60px rgba(0,0,0,.28),inset 0 0 0 1px rgba(255,255,255,.025);
}
.h2b-bg-preview{
  height:auto;
  width:100%;
  margin-inline:auto;
  transition:max-width .18s ease,aspect-ratio .18s ease;
}
.h2b-bg-preview[data-device="desktop"]{max-width:780px;aspect-ratio:16/9}
.h2b-bg-preview[data-device="tablet"]{max-width:640px;aspect-ratio:4/3}
.h2b-bg-preview[data-device="mobile"]{max-width:360px;aspect-ratio:9/16}
.h2b-bg-preview-media{
  touch-action:none;
  cursor:grab;
  user-select:none;
  -webkit-user-select:none;
  will-change:left,top,transform;
}
.h2b-bg-preview-media.is-dragging{cursor:grabbing}
.h2b-bg-preview-media img,
.h2b-bg-preview-media video{
  pointer-events:none;
  user-select:none;
  -webkit-user-select:none;
  -webkit-user-drag:none;
}
.h2b-bg-preview-drag-hint{
  margin:10px 0 0;
  color:#94a9bd;
  font-size:11px;
  line-height:1.45;
  text-align:center;
}
.h2b-bg-preview-drag-hint strong{color:#dce8f3}
#h2bBgPreview[data-device="mobile"] .h2b-bg-preview-content{padding:24px 18px}
#h2bBgPreview[data-device="mobile"] .h2b-bg-preview-content strong{font-size:24px;line-height:1.05}
#h2bBgPreview[data-device="tablet"] .h2b-bg-preview-content{padding:28px}
@media(max-width:900px){
  .h2b-bg-preview{height:auto}
  .h2b-bg-preview[data-device="desktop"]{max-width:100%}
  .h2b-bg-preview[data-device="tablet"]{max-width:min(100%,560px)}
  .h2b-bg-preview[data-device="mobile"]{max-width:min(100%,340px)}
}
@media(max-width:600px){
  .h2b-bg-preview{height:auto}
  .h2b-bg-preview[data-device="mobile"]{max-width:min(100%,320px)}
}


/* ============================================================
   H2B V59 — fond par défaut intelligent (masqué si média actif)
   ============================================================ */
.site-watermark{
  --h2b-default-fade-a:10%;
  --h2b-default-fade-b:90%;
  transition:opacity .22s ease,visibility .22s ease,filter .22s ease;
  -webkit-mask-image:
    linear-gradient(to right,transparent 0,#000 var(--h2b-default-fade-a),#000 var(--h2b-default-fade-b),transparent 100%),
    linear-gradient(to bottom,transparent 0,#000 var(--h2b-default-fade-a),#000 var(--h2b-default-fade-b),transparent 100%);
  -webkit-mask-composite:source-in;
  mask-image:
    linear-gradient(to right,transparent 0,#000 var(--h2b-default-fade-a),#000 var(--h2b-default-fade-b),transparent 100%),
    linear-gradient(to bottom,transparent 0,#000 var(--h2b-default-fade-a),#000 var(--h2b-default-fade-b),transparent 100%);
  mask-composite:intersect;
}
.site-watermark.is-hidden-by-page-bg,
body.h2b-custom-page-background-active .site-watermark{
  opacity:0 !important;
  visibility:hidden;
}
body.h2b-default-watermark-active .site-watermark{
  visibility:visible;
}


/* ============================================================
   H2B V60 — correction tactile + suppression totale du filigrane
   ============================================================ */
.h2b-bg-preview-content{
  pointer-events:none !important;
  user-select:none;
  -webkit-user-select:none;
}
.h2b-bg-preview{
  touch-action:auto;
}
.h2b-bg-preview.is-dragging{
  touch-action:none;
  cursor:grabbing;
}
.h2b-bg-preview-media{
  pointer-events:none;
}
body.h2b-custom-page-background-active #siteWatermark,
#siteWatermark.is-hidden-by-page-bg{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  background-image:none !important;
}
