/* optionnels/synchro-supabase/partage.css — fenêtre « Partager » et ses QR codes (partage.js)
   Bouton de la barre du haut, fenêtre (interrupteur Invité / Éditeur, QR, lien, actions), plein écran, feuille imprimée.
   Couleur du QR ouvert : --qr-c (cyan pour Invité, orange pour Éditeur), posée par partage.js. Sur un petit écran
   (≤ 600 px), la fenêtre devient une feuille qui monte du bas. Chargée après activite.css. */

 /* ---- Barre du haut ---- */
 .topbar .partage-btn[hidden]{display:none;}
 .topbar .partage-btn{gap:calc(5px * var(--ui-scale-factor)); padding-inline:calc(8px * var(--ui-scale-factor)) calc(10px * var(--ui-scale-factor)); border-radius:calc(8px * var(--ui-scale-factor));
  border:round(calc(1px * var(--ui-scale-factor)),1px) solid rgba(41,212,208,.45); background:linear-gradient(180deg,rgba(41,212,208,.16),rgba(41,212,208,.06)); color:#dffcfb; font-weight:600;}
 .topbar .partage-btn:hover{background:linear-gradient(180deg,rgba(41,212,208,.26),rgba(41,212,208,.1));}
 .topbar .partage-btn[aria-expanded="true"]{box-shadow:0 0 0 round(calc(3px * var(--ui-scale-factor)),1px) rgba(41,212,208,.18);}
 .topbar:not([data-densite="0"]) .partage-btn-texte{display:none;}
 .topbar:not([data-densite="0"]) .partage-btn{padding-inline:calc(6px * var(--ui-scale-factor));}

 /* ---- Fenêtre ---- */
 #partageOverlay{z-index:3500;}
 .partage-modal{position:relative; max-width:calc(620px * var(--ui-scale-factor)); max-height:calc(100vh - 24px); overflow-y:auto; border-radius:calc(12px * var(--ui-scale-factor));}
 .partage-poignee{display:none;}
 .partage-tete{display:flex; align-items:center; justify-content:space-between; gap:calc(10px * var(--ui-scale-factor)); padding:calc(14px * var(--ui-scale-factor)) calc(16px * var(--ui-scale-factor)) calc(10px * var(--ui-scale-factor));}
 .partage-tete h2{margin:0; font-size:calc(14px * var(--ui-scale-factor)); font-weight:700; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
 .partage-tete h2 em{font-style:normal; font-weight:500; color:var(--text-dim);}
 .partage-erreur{margin:0 calc(16px * var(--ui-scale-factor)) calc(8px * var(--ui-scale-factor)); padding:calc(7px * var(--ui-scale-factor)) calc(10px * var(--ui-scale-factor)); border-radius:calc(6px * var(--ui-scale-factor)); background:rgba(217,88,79,.14); color:#f3a29b; font-size:calc(11px * var(--ui-scale-factor));}

 .partage-segment{display:grid; grid-template-columns:1fr 1fr; gap:calc(5px * var(--ui-scale-factor)); margin:0 calc(16px * var(--ui-scale-factor)); padding:calc(4px * var(--ui-scale-factor)); border:calc(1px * var(--ui-scale-factor)) solid var(--border); border-radius:calc(10px * var(--ui-scale-factor)); background:var(--bg);}
 .partage-seg{display:flex; align-items:center; gap:calc(8px * var(--ui-scale-factor)); padding:calc(7px * var(--ui-scale-factor)) calc(10px * var(--ui-scale-factor)); border:0; border-radius:calc(7px * var(--ui-scale-factor)); background:transparent; color:var(--text-dim); text-align:left; cursor:pointer; font:inherit;}
 .partage-seg:hover{color:var(--text);}
 .partage-seg .partage-ico{width:calc(17px * var(--ui-scale-factor)); height:calc(17px * var(--ui-scale-factor)); flex:none;}
 .partage-seg b{display:block; font-size:calc(11.5px * var(--ui-scale-factor)); color:inherit;}
 .partage-seg small{display:block; font-size:calc(9.5px * var(--ui-scale-factor)); opacity:.8;}
 .partage-seg.on{background:var(--surface-3); color:var(--text); box-shadow:inset 0 0 0 calc(1px * var(--ui-scale-factor)) var(--c);}
 .partage-seg.on .partage-ico{color:var(--c);}
 .partage-seg:focus-visible{outline:2px solid var(--c); outline-offset:1px;}

 .partage-corps{display:grid; grid-template-columns:auto minmax(0,1fr); gap:calc(18px * var(--ui-scale-factor)); padding:calc(16px * var(--ui-scale-factor));}
 .partage-corps-seul{grid-template-columns:1fr;}
 .partage-carte{position:relative; display:flex; flex-direction:column; align-items:center; justify-content:center; width:calc(196px * var(--ui-scale-factor)); min-height:calc(196px * var(--ui-scale-factor)); padding:calc(10px * var(--ui-scale-factor)); border-radius:calc(13px * var(--ui-scale-factor)); background:#0d0f14; box-shadow:0 0 0 calc(2px * var(--ui-scale-factor)) var(--qr-c),0 calc(10px * var(--ui-scale-factor)) calc(26px * var(--ui-scale-factor)) rgba(0,0,0,.4); align-self:start;}
 .partage-qr-svg{display:block; width:100%; height:auto;}
 .partage-carte-pied{display:flex; align-items:center; gap:calc(5px * var(--ui-scale-factor)); margin-top:calc(4px * var(--ui-scale-factor)); color:#c3c8d4; font-size:calc(10px * var(--ui-scale-factor)); font-weight:700;}
 .partage-carte-pied i{width:round(calc(7px * var(--ui-scale-factor)),1px); height:round(calc(7px * var(--ui-scale-factor)),1px); border-radius:50%; background:var(--qr-c);}
 .partage-attente{background:var(--surface-2); box-shadow:0 0 0 calc(1px * var(--ui-scale-factor)) var(--border);}
 .partage-vide{background:var(--surface-2); box-shadow:0 0 0 calc(1px * var(--ui-scale-factor)) var(--border); overflow:hidden;}
 .partage-vide-motif{position:absolute; inset:calc(14px * var(--ui-scale-factor)); opacity:.13; border-radius:calc(6px * var(--ui-scale-factor));
  background:conic-gradient(var(--text) 25%,transparent 0 50%,var(--text) 0 75%,transparent 0) 0 0/calc(14px * var(--ui-scale-factor)) calc(14px * var(--ui-scale-factor)); filter:blur(1px);}
 .partage-vide .btn-primary{position:relative;}
 .partage-plein-bouton{background:var(--qr-c,var(--accent)); border-color:var(--qr-c,var(--accent)); color:#0b0d12; font-weight:700;}

 .partage-texte{display:flex; flex-direction:column; gap:calc(9px * var(--ui-scale-factor)); min-width:0;}
 .partage-titre-bloc{font-size:calc(14px * var(--ui-scale-factor)); font-weight:700;}
 .partage-texte p{margin:0; font-size:calc(11px * var(--ui-scale-factor)); line-height:1.45; color:var(--text-dim);}
 .partage-court{display:none;}
 .partage-points{display:flex; flex-direction:column; gap:calc(3px * var(--ui-scale-factor)); margin:0; padding:0; list-style:none; font-size:calc(10.5px * var(--ui-scale-factor)); color:var(--text-dim);}
 .partage-points li::before{content:"✓"; margin-right:calc(6px * var(--ui-scale-factor)); color:var(--qr-c); font-weight:700;}
 .partage-lien{display:flex; gap:calc(5px * var(--ui-scale-factor));}
 .partage-lien input{flex:1; min-width:0; padding:calc(6px * var(--ui-scale-factor)) calc(8px * var(--ui-scale-factor)); border:calc(1px * var(--ui-scale-factor)) solid var(--border); border-radius:calc(6px * var(--ui-scale-factor)); background:var(--bg); color:var(--text-dim); font:calc(10px * var(--ui-scale-factor)) ui-monospace,Menlo,Consolas,monospace;}
 .partage-actions{display:flex; flex-wrap:wrap; gap:calc(5px * var(--ui-scale-factor));}
 .partage-actions .btn-ghost{display:inline-flex; align-items:center; gap:calc(5px * var(--ui-scale-factor));}
 .partage-actions .partage-ico{width:calc(13px * var(--ui-scale-factor)); height:calc(13px * var(--ui-scale-factor));}
 .partage-note{margin:0; font-size:calc(11px * var(--ui-scale-factor)); color:var(--text-dim);}
 .partage-pied{display:flex; justify-content:space-between; align-items:center; gap:calc(10px * var(--ui-scale-factor)); flex-wrap:wrap; padding:calc(9px * var(--ui-scale-factor)) calc(16px * var(--ui-scale-factor)); border-top:calc(1px * var(--ui-scale-factor)) solid var(--border); background:var(--surface-2); font-size:calc(10.5px * var(--ui-scale-factor)); color:var(--text-dim);}
 .partage-lien-pied{padding:0; margin-left:calc(12px * var(--ui-scale-factor)); border:0; background:none; color:var(--text-dim); font:inherit; text-decoration:underline; text-underline-offset:3px; cursor:pointer;}
 .partage-pied span > .partage-lien-pied:first-child{margin-left:0;}
 .partage-lien-pied:hover{color:var(--text);}
 .partage-lien-pied.rouge{color:#e9867f;}

 .partage-prive{display:flex; gap:calc(16px * var(--ui-scale-factor)); align-items:flex-start; padding:calc(8px * var(--ui-scale-factor)) calc(18px * var(--ui-scale-factor)) calc(18px * var(--ui-scale-factor));}
 .partage-prive p{margin:calc(5px * var(--ui-scale-factor)) 0 calc(12px * var(--ui-scale-factor)); font-size:calc(11px * var(--ui-scale-factor)); line-height:1.45; color:var(--text-dim);}
 .partage-cadenas{flex:none; display:grid; place-items:center; width:calc(46px * var(--ui-scale-factor)); height:calc(46px * var(--ui-scale-factor)); border-radius:calc(11px * var(--ui-scale-factor)); background:var(--surface-3); color:#ffd63d;}
 .partage-cadenas .partage-ico{width:calc(22px * var(--ui-scale-factor)); height:calc(22px * var(--ui-scale-factor));}

 /* ---- Plein écran : pour scanner de loin (réunion, comptoir) ---- */
 .partage-plein-ecran{position:fixed; inset:0; z-index:1; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:18px; padding:24px; text-align:center; cursor:zoom-out;
  background:radial-gradient(circle at 50% 30%,#1b2533,#0b0d12 70%); color:#e7e9ee; outline:none;}
 .partage-gros{width:min(68vh,82vw); padding:18px; border-radius:22px; background:#0d0f14; box-shadow:0 0 0 4px var(--qr-c),0 30px 90px rgba(0,0,0,.6);}
 .partage-plein-ecran h3{margin:0; font-size:clamp(20px,3.4vw,32px); overflow-wrap:anywhere;}
 .partage-plein-ecran p{margin:0; color:#8891a3; font-size:clamp(13px,1.6vw,16px);}
 .partage-echap{position:absolute; top:16px; right:20px; color:#5c6376; font-size:13px;}
 .partage-echap kbd{padding:1px 6px; border:1px solid #333a48; border-bottom-width:2px; border-radius:5px; font:12px ui-monospace,monospace; color:#8891a3;}

 /* ---- Petit écran : feuille qui monte du bas ---- */
 @media (max-width:600px){
  #partageOverlay{align-items:flex-end; padding:0;}
  .partage-modal{max-width:none; width:100%; margin:0; max-height:92vh; border-radius:18px 18px 0 0; border-bottom:0; padding-bottom:env(safe-area-inset-bottom,0px);}
  .partage-poignee{display:block; width:40px; height:5px; margin:8px auto 0; border-radius:3px; background:var(--border);}
  .partage-tete{padding:8px 16px 10px;}
  .partage-tete h2{font-size:16px;}
  .partage-segment{margin:0 16px;}
  .partage-seg{padding:8px;}
  .partage-seg b{font-size:13px;}
  .partage-seg small{font-size:11px;}
  .partage-corps{grid-template-columns:1fr; justify-items:center; gap:14px; padding:16px;}
  .partage-carte{width:min(240px,70vw); min-height:min(240px,70vw);}
  .partage-carte-pied{font-size:12px;}
  .partage-texte{width:100%; gap:12px;}
  .partage-titre-bloc,.partage-explication,.partage-points{display:none;}
  .partage-court{display:block; text-align:center; font-size:13px !important;}
  .partage-lien input{font-size:12px; padding:9px 10px;}
  .partage-actions{display:grid; grid-template-columns:repeat(auto-fit,minmax(0,1fr)); gap:6px;}
  .partage-actions .btn-ghost{justify-content:center; padding:11px 6px; font-size:13px;}
  .partage-actions .partage-ico{width:16px; height:16px;}
  .partage-actions .partage-ordi{display:none;}
  .partage-actions:has(.partage-envoyer) [data-act=plein] span{display:none;}
  .partage-envoyer{background:var(--qr-c); border-color:var(--qr-c); color:#0b0d12; font-weight:700;}
  .partage-pied{justify-content:center; text-align:center; font-size:12px;}
  .partage-prive{padding:8px 16px 20px;}
  .partage-prive p{font-size:13px;}
 }

 /* ---- Impression : une feuille A4 avec le QR ---- */
 #partageImpression{display:none;}
 @media print{
  body.impression-partage > *:not(#partageImpression){display:none !important;}
  body.impression-partage #partageImpression{display:flex !important;}
  body.impression-partage{background:#fff !important;}
 }
 #partageImpression,#partageImpression *{-webkit-print-color-adjust:exact; print-color-adjust:exact; box-sizing:border-box;}
 #partageImpression{flex-direction:column; align-items:center; gap:5mm; padding:18mm 15mm; text-align:center; color:#14161c; font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;}
 #partageImpression .pi-marque{display:flex; gap:1.6mm;}
 #partageImpression .pi-marque i{width:2.6mm; height:8mm; border-radius:1.3mm;}
 #partageImpression .pi-logo{font-weight:800; font-size:12pt; color:#555;}
 #partageImpression h1{margin:2mm 0 0; font-size:28pt; line-height:1.15; overflow-wrap:anywhere;}
 #partageImpression .pi-acces{font-size:11pt; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:#0e8f8c;}
 #partageImpression.partage-editeur .pi-acces{color:#c75f12;}
 #partageImpression .pi-qr{width:105mm; margin-top:4mm;}
 #partageImpression .pi-qr svg{display:block; width:100%; height:auto;}
 #partageImpression .pi-consigne{max-width:120mm; margin:2mm 0 0; font-size:14pt; line-height:1.4;}
 #partageImpression .pi-validite{margin:0; font-size:11pt; color:#6b7280;}
 #partageImpression .pi-url{margin:8mm 0 0; font:9pt ui-monospace,monospace; color:#777; overflow-wrap:anywhere;}
