/* WebPixie — Pixie v2 : interface de l'assistante IA. Chargé tel quel (racine + prod). */
.wpc-launch{position:fixed;right:22px;bottom:22px;z-index:97;width:62px;height:62px;border-radius:999px;border:none;cursor:pointer;background:linear-gradient(180deg,#BDCD35,#ADBE1A);color:#25232F;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 26px rgba(173,190,26,.4),0 2px 8px rgba(0,0,0,.3);transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s}
.wpc-launch:hover{transform:scale(1.08) rotate(-6deg);box-shadow:0 14px 34px rgba(173,190,26,.5)}
.wpc-launch:active{transform:scale(.96)}
.wpc-launch .halo{position:absolute;inset:-6px;border-radius:999px;border:1.5px solid rgba(173,190,26,.5);animation:wpcHalo 2.8s ease-out infinite;pointer-events:none}
@keyframes wpcHalo{0%{transform:scale(.9);opacity:.8}70%{transform:scale(1.35);opacity:0}100%{opacity:0}}
.wpc-badge{position:absolute;top:2px;right:2px;width:15px;height:15px;border-radius:999px;background:#E05252;border:2.5px solid #ADBE1A;animation:wpcPing 1.8s ease-in-out infinite}
@keyframes wpcPing{0%,100%{transform:scale(1)}50%{transform:scale(1.18)}}
.wpc-teaser{position:fixed;right:22px;bottom:98px;z-index:95;max-width:266px;background:linear-gradient(165deg,#343142,#2A2835);color:var(--fg-on-dark);border:1px solid rgba(173,190,26,.3);border-radius:18px 18px 5px 18px;padding:14px 16px;box-shadow:0 22px 50px rgba(0,0,0,.5);cursor:pointer;font-family:var(--font-sans);font-size:14px;line-height:1.5;animation:wpcIn .45s cubic-bezier(.34,1.56,.64,1) both}
.wpc-teaser b{color:var(--lime-400);font-weight:700}
.wpc-teaser .kill{position:absolute;top:-9px;right:-9px;width:24px;height:24px;border-radius:999px;background:#302D3D;border:1px solid rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;color:var(--fg-on-dark-muted)}
@keyframes wpcIn{from{opacity:0;transform:translateY(14px) scale(.94)}to{opacity:1;transform:none}}
.wpc-panel{position:fixed;right:22px;bottom:96px;z-index:96;width:min(418px,calc(100vw - 28px));height:min(658px,calc(100vh - 128px));display:flex;flex-direction:column;background:linear-gradient(178deg,#2E2B3A 0%,#272531 100%);border:1px solid rgba(255,255,255,.12);border-radius:24px;box-shadow:0 40px 90px rgba(0,0,0,.6),0 0 0 1px rgba(173,190,26,.06);overflow:hidden;animation:wpcIn .4s cubic-bezier(.34,1.56,.64,1) both;font-family:var(--font-sans)}
.wpc-head{position:relative;flex:0 0 auto;padding:16px 16px 15px;border-bottom:1px solid rgba(255,255,255,.08);overflow:hidden}
.wpc-aurora{position:absolute;border-radius:50%;filter:blur(38px);pointer-events:none}
.wpc-aurora.a{width:170px;height:170px;background:#ADBE1A;opacity:.2;top:-88px;left:-20px;animation:wpcDrift 11s ease-in-out infinite alternate}
.wpc-aurora.b{width:140px;height:140px;background:#6E7A0E;opacity:.26;top:-70px;right:-24px;animation:wpcDrift 14s ease-in-out infinite alternate-reverse}
@keyframes wpcDrift{from{transform:translate(0,0)}to{transform:translate(26px,16px)}}
.wpc-headrow{position:relative;display:flex;align-items:center;gap:12px}
.wpc-ava{position:relative;width:44px;height:44px;border-radius:14px;background:linear-gradient(180deg,#C8D840,#A3B315);display:flex;align-items:center;justify-content:center;color:#25232F;flex:0 0 auto;box-shadow:0 6px 18px rgba(173,190,26,.34)}
.wpc-ava .live{position:absolute;bottom:-3px;right:-3px;width:14px;height:14px;border-radius:999px;background:#3FBF7F;border:2.5px solid #2C2937}
.wpc-name{font-family:var(--font-display);font-weight:800;font-size:17.5px;color:var(--fg-on-dark);letter-spacing:-.01em;line-height:1.15}
.wpc-status{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--lime-400);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wpc-status .d{flex:0 0 auto}
.wpc-status .d{width:6px;height:6px;border-radius:999px;background:#3FBF7F}
.wpc-status.off{color:#D9B44A}
.wpc-status.off .d{background:#D9B44A}
.wpc-hbtn{width:34px;height:34px;border-radius:11px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);color:var(--fg-on-dark);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .18s,border-color .18s;flex:0 0 auto}
.wpc-hbtn:hover{background:rgba(255,255,255,.12);border-color:rgba(173,190,26,.4)}
.wpc-body{flex:1 1 auto;overflow-y:auto;overflow-x:hidden;padding:18px 16px 8px;display:flex;flex-direction:column;gap:16px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.16) transparent}
.wpc-body::-webkit-scrollbar{width:7px}
.wpc-body::-webkit-scrollbar-thumb{background:rgba(255,255,255,.16);border-radius:99px}
.wpc-msg{display:flex;gap:10px;animation:wpcPop .3s cubic-bezier(.22,1,.36,1) both}
@keyframes wpcPop{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}
.wpc-msg.user{justify-content:flex-end}
.wpc-mava{width:27px;height:27px;border-radius:9px;background:linear-gradient(180deg,#C8D840,#A3B315);color:#25232F;display:flex;align-items:center;justify-content:center;flex:0 0 auto;margin-top:1px}
.wpc-txt{font-size:14.5px;line-height:1.62;color:var(--fg-on-dark);max-width:calc(100% - 40px);text-wrap:pretty}
.wpc-txt p{margin:0 0 9px}
.wpc-txt p:last-child{margin:0}
.wpc-txt strong{color:#D7E75A;font-weight:700}
.wpc-txt ul{margin:6px 0 9px;padding-left:2px;list-style:none;display:flex;flex-direction:column;gap:5px}
.wpc-txt li{display:flex;gap:8px;align-items:flex-start;color:var(--fg-on-dark-muted)}
.wpc-txt li::before{content:"";width:5px;height:5px;border-radius:999px;background:var(--lime-500);flex:0 0 auto;margin-top:8px}
.wpc-txt a{color:var(--lime-400);font-weight:600}
.wpc-caret{display:inline-block;width:2px;height:15px;background:var(--lime-400);margin-left:2px;vertical-align:-2px;animation:wpcBlink 1s steps(2) infinite}
@keyframes wpcBlink{50%{opacity:0}}
.wpc-bub{max-width:82%;padding:11px 15px;border-radius:17px 17px 5px 17px;background:linear-gradient(180deg,#C4D43C,#ADBE1A);color:#25232F;font-size:14.5px;line-height:1.5;font-weight:600}
.wpc-think{display:flex;align-items:center;gap:9px;color:var(--fg-on-dark-muted);font-size:13.5px;padding-left:37px}
.wpc-think .sh{background:linear-gradient(90deg,rgba(250,250,245,.35) 20%,#D7E75A 50%,rgba(250,250,245,.35) 80%);background-size:200% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:wpcSheen 1.6s linear infinite;font-weight:600}
@keyframes wpcSheen{to{background-position:-200% center}}
.wpc-chips{display:flex;flex-wrap:wrap;gap:7px;padding-left:37px}
.wpc-chip{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;max-width:100%;font-family:var(--font-sans);font-size:13px;font-weight:600;cursor:pointer;padding:8px 13px;border-radius:999px;background:rgba(173,190,26,.1);border:1px solid rgba(173,190,26,.34);color:var(--lime-300);transition:background .16s,border-color .16s,transform .16s}
.wpc-chip:hover{background:rgba(173,190,26,.2);border-color:var(--lime-500);transform:translateY(-1px)}
.wpc-cards{display:flex;flex-direction:column;gap:8px;padding-left:37px}
.wpc-card{display:flex;align-items:center;gap:12px;padding:9px;border-radius:14px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);text-decoration:none;transition:background .18s,border-color .18s,transform .18s}
.wpc-card:hover{background:rgba(173,190,26,.1);border-color:rgba(173,190,26,.4);transform:translateX(3px)}
.wpc-card img{width:62px;height:44px;object-fit:cover;border-radius:9px;flex:0 0 auto;display:block}
.wpc-card .ph{width:62px;height:44px;border-radius:9px;flex:0 0 auto;display:flex;align-items:center;justify-content:center;color:#25232F}
.wpc-card .tt{font-family:var(--font-display);font-size:13.5px;font-weight:700;color:var(--fg-on-dark);line-height:1.25}
.wpc-card .bl{font-size:12px;color:var(--fg-on-dark-muted);line-height:1.4;margin-top:2px}
.wpc-card .go{margin-left:auto;color:var(--lime-400);flex:0 0 auto}
.wpc-wid{margin-left:37px;background:linear-gradient(165deg,#353243,#2A2836);border:1px solid rgba(173,190,26,.32);border-radius:17px;padding:16px 17px;box-shadow:0 16px 40px rgba(0,0,0,.32)}
.wpc-wid h4{font-family:var(--font-display);font-size:15px;font-weight:800;color:var(--fg-on-dark);margin:0 0 3px;display:flex;align-items:center;gap:8px}
.wpc-wid h4 svg{color:var(--lime-400)}
.wpc-wid .sub{font-size:12.5px;color:var(--fg-on-dark-muted);margin:0 0 13px}
.wpc-prog{display:flex;gap:4px;margin-bottom:13px}
.wpc-prog span{height:3px;flex:1;border-radius:99px;background:rgba(255,255,255,.12)}
.wpc-prog span.on{background:var(--lime-500)}
.wpc-opts{display:flex;flex-direction:column;gap:7px}
.wpc-opt{display:flex;align-items:center;gap:10px;width:100%;text-align:left;cursor:pointer;padding:11px 13px;border-radius:12px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.11);color:var(--fg-on-dark);font-family:var(--font-sans);font-size:13.5px;font-weight:600;transition:background .16s,border-color .16s}
.wpc-opt:hover{background:rgba(173,190,26,.12);border-color:rgba(173,190,26,.42)}
.wpc-opt.sel{background:rgba(173,190,26,.16);border-color:var(--lime-500)}
.wpc-opt .box{width:18px;height:18px;border-radius:6px;border:1.5px solid rgba(255,255,255,.28);flex:0 0 auto;display:flex;align-items:center;justify-content:center;color:#25232F}
.wpc-opt.sel .box{background:var(--lime-500);border-color:var(--lime-500)}
.wpc-opt .pr{margin-left:auto;font-size:12px;font-weight:700;color:var(--lime-400);white-space:nowrap}
.wpc-res{text-align:center;padding:6px 0 2px}
.wpc-res .n{font-family:var(--font-display);font-size:29px;font-weight:800;color:var(--lime-400);letter-spacing:-.02em;line-height:1.1;white-space:nowrap}
.wpc-res .u{font-size:12.5px;color:var(--fg-on-dark-muted);margin-top:5px;line-height:1.5}
.wpc-res .m{font-family:var(--font-display);font-size:15px;font-weight:700;color:var(--fg-on-dark);margin-top:9px;padding-top:9px;border-top:1px solid rgba(255,255,255,.1)}
.wpc-wbtns{display:flex;gap:7px;margin-top:13px;flex-wrap:wrap}
.wpc-wbtn{flex:1 1 130px;display:inline-flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;padding:11px 13px;border-radius:11px;border:none;font-family:var(--font-sans);font-size:13px;font-weight:700;background:linear-gradient(180deg,#C4D43C,#ADBE1A);color:#25232F;text-decoration:none;transition:filter .16s}
.wpc-wbtn:hover{filter:brightness(1.07)}
.wpc-wbtn.gh{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);color:var(--fg-on-dark)}
.wpc-fld{width:100%;background:rgba(0,0,0,.22);border:1px solid rgba(255,255,255,.15);color:var(--fg-on-dark);border-radius:11px;padding:11px 13px;font-family:var(--font-sans);font-size:13.5px;outline:none;margin-bottom:7px}
.wpc-fld:focus{border-color:var(--lime-500)}
.wpc-foot{flex:0 0 auto;padding:11px 13px calc(11px + env(safe-area-inset-bottom,0px));border-top:1px solid rgba(255,255,255,.08);background:rgba(0,0,0,.2)}
.wpc-comp{display:flex;align-items:flex-end;gap:8px}
.wpc-inp{flex:1 1 auto;min-width:0;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);color:var(--fg-on-dark);border-radius:15px;padding:11px 14px;font-family:var(--font-sans);font-size:14.5px;line-height:1.45;outline:none;resize:none;max-height:104px;transition:border-color .18s}
.wpc-inp:focus{border-color:var(--lime-500)}
.wpc-inp::placeholder{color:rgba(250,250,245,.4)}
.wpc-cbtn{flex:0 0 auto;width:43px;height:43px;border-radius:14px;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .18s,filter .18s}
.wpc-cbtn.mic{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.15);color:var(--fg-on-dark-muted)}
.wpc-cbtn.mic:hover{color:var(--lime-400);border-color:rgba(173,190,26,.4)}
.wpc-cbtn.mic.rec{background:rgba(224,82,82,.18);border-color:#E05252;color:#FF8080;animation:wpcRec 1.2s ease-in-out infinite}
@keyframes wpcRec{50%{box-shadow:0 0 0 6px rgba(224,82,82,.14)}}
.wpc-cbtn.send{background:linear-gradient(180deg,#C4D43C,#ADBE1A);color:#25232F;box-shadow:0 6px 16px rgba(173,190,26,.36)}
.wpc-cbtn.send:hover{filter:brightness(1.08)}
.wpc-cbtn.send:disabled{opacity:.4;cursor:default;box-shadow:none}
.wpc-legal{font-size:10.5px;color:rgba(250,250,245,.34);text-align:center;margin:8px 0 0;line-height:1.4}
.wpc-legal a{color:rgba(250,250,245,.5)}
@media (max-width:640px){
  .wpc-panel{right:0;bottom:0;top:0;left:0;width:100%;height:100%;border-radius:0;border:none;animation:wpcSheet .32s cubic-bezier(.22,1,.36,1) both}
  .wpc-head{padding-top:calc(14px + env(safe-area-inset-top,0px))}
  .wpc-launch{right:14px;bottom:14px;width:52px;height:52px}
  /* Le panneau est plein écran : le bouton flottant recouvrirait le bouton Envoyer
     (même coin, z-index supérieur). L'en-tête a déjà son propre bouton Fermer. */
  .wpc-launch.open{display:none}
  .wpc-teaser{display:none}
  .wpc-wid,.wpc-chips,.wpc-cards,.wpc-think{padding-left:0;margin-left:0}
  .wpc-txt{max-width:100%}
}
@keyframes wpcSheet{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){
  .wpc-launch .halo,.wpc-badge,.wpc-aurora,.wpc-think .sh,.wpc-cbtn.mic.rec{animation:none}
  .wpc-panel,.wpc-msg,.wpc-teaser{animation-duration:.01ms}
}
