.jw{position:fixed;right:22px;bottom:22px;z-index:9998;font-family:inherit}.jw-launcher{border:1px solid rgba(126,137,255,.45);background:linear-gradient(135deg,#17204e,#5865f2);color:#fff;border-radius:999px;padding:12px 17px;box-shadow:0 14px 40px rgba(4,9,31,.35);display:flex;gap:9px;align-items:center;font-weight:700;cursor:pointer}.jw-avatar{display:block;object-fit:cover;border-radius:50%;flex:0 0 auto}.jw-avatar-launcher{width:34px;height:34px;border:2px solid rgba(98,225,255,.75);box-shadow:0 0 0 2px rgba(111,87,255,.22),0 0 16px rgba(61,201,255,.42),0 0 24px rgba(244,59,190,.18)}.jw-identity{display:flex;align-items:center;gap:10px}.jw-avatar-head{width:38px;height:38px;border:2px solid rgba(112,217,255,.68);box-shadow:0 0 16px rgba(104,95,255,.28)}.jw-panel{position:absolute;right:0;bottom:58px;width:min(430px,calc(100vw - 28px));height:min(650px,calc(100vh - 110px));background:#0b1230;border:1px solid rgba(125,137,255,.25);border-radius:20px;box-shadow:0 24px 70px rgba(0,0,0,.42);overflow:hidden;flex-direction:column}.jw-panel:not([hidden]){display:flex}.jw-head{display:flex;align-items:center;justify-content:space-between;padding:15px 17px;border-bottom:1px solid rgba(255,255,255,.08);background:#0d1537;color:#fff}.jw-head strong{display:block}.jw-head small{display:block;color:#9da8d5;margin-top:2px}.jw-close,.jw-invite-close{border:0;background:transparent;color:#aeb6d8;font-size:25px;cursor:pointer}.jw-messages{flex:1;overflow:auto;padding:18px 16px}.jw-turn{margin:0 0 22px}.jw-turn.user{display:flex;justify-content:flex-end}.jw-turn.user .jw-content{max-width:82%;background:#5865f2;color:#fff;border-radius:18px 18px 5px 18px;padding:10px 14px;line-height:1.5}.jw-turn.assistant{border-left:2px solid rgba(103,114,255,.5);padding-left:13px}.jw-name{font-size:12px;font-weight:800;color:#8f9aff;margin-bottom:7px}.jw-turn.assistant .jw-content{color:#eef1ff;line-height:1.58;font-size:14px}.jw-content p{margin:0 0 10px}.jw-content p:last-child{margin-bottom:0}.jw-content a{color:#9ba6ff;text-decoration:none;border-bottom:1px solid rgba(155,166,255,.35)}.jw-content ul{padding-left:20px;margin:9px 0}.jw-content li{margin:5px 0}.jw-check{list-style:none;padding-left:0!important}.jw-check li{padding-left:2px}.jw-table-wrap{overflow:auto;margin:10px 0 5px;border:1px solid rgba(255,255,255,.11);border-radius:12px}.jw-content table{width:100%;border-collapse:collapse;min-width:360px;font-size:13px}.jw-content th,.jw-content td{padding:9px 10px;text-align:left;border-bottom:1px solid rgba(255,255,255,.08)}.jw-content th{background:rgba(88,101,242,.16);color:#fff}.jw-content tr:last-child td{border-bottom:0}.jw-thinking{position:relative;border-radius:15px;padding:1px;display:inline-block}.jw-thinking:before{content:"";position:absolute;inset:-1px;border-radius:inherit;background:linear-gradient(90deg,#0d2c5e,#9b51e0,#e91e63,#e65000,#0d2c5e);background-size:300% 300%;animation:jwGradient 4s ease infinite;filter:blur(16px);opacity:.85}.jw-thinking-inner{position:relative;z-index:1;background:#0f172a;border-radius:14px;padding:9px 12px;font-size:11px;color:#aeb6d8}.jw-dots i{display:inline-block;width:3px;height:3px;margin-left:3px;border-radius:50%;background:currentColor;animation:jwDot 1.1s infinite;opacity:.25}.jw-dots i:nth-child(2){animation-delay:.18s}.jw-dots i:nth-child(3){animation-delay:.36s}@keyframes jwGradient{0%{background-position:0 50%}50%{background-position:100% 50%}100%{background-position:0 50%}}@keyframes jwDot{0%,60%,100%{opacity:.25;transform:translateY(0)}30%{opacity:1;transform:translateY(-2px)}}.jw-form{display:flex;gap:8px;padding:12px;border-top:1px solid rgba(255,255,255,.08);background:#0d1537}.jw-form textarea{flex:1;resize:none;max-height:120px;background:#111a40;border:1px solid #303a72;border-radius:13px;padding:11px 12px;color:#fff;outline:none}.jw-form button{width:43px;border:0;border-radius:12px;background:#5865f2;color:#fff;font-size:18px;cursor:pointer}.jw-invite{position:absolute;right:0;bottom:60px;width:280px;background:#10183b;color:#eef1ff;border:1px solid rgba(125,137,255,.3);border-radius:16px;padding:14px 35px 14px 15px;box-shadow:0 16px 45px rgba(0,0,0,.32);font-size:13px;line-height:1.45}.jw-invite strong{display:block;color:#8f9aff;margin-bottom:4px}.jw-invite-close{position:absolute;right:7px;top:5px;font-size:19px}@media(max-width:600px){.jw{right:12px;bottom:12px}.jw-launcher-text{display:none}.jw-launcher{width:50px;height:50px;justify-content:center;padding:0}.jw-panel{position:fixed;left:10px;right:10px;bottom:72px;width:auto;height:min(72vh,620px)}}

/* Jennifer FINAL — garde-fous de saisie/session */
.jw-input-warning{grid-column:1/-1;font-size:12px;line-height:1.35;padding:7px 10px;border-radius:10px;background:rgba(180,35,35,.08);color:#9d2020;margin-bottom:4px}
.jw-form textarea:disabled{opacity:.58;cursor:not-allowed}.jw-form button:disabled{opacity:.38;cursor:not-allowed}.jw-launcher.jw-blocked{opacity:.72}
.jw-form{flex-wrap:wrap}.jw-input-warning{flex:0 0 100%;box-sizing:border-box}.jw-form textarea{min-width:0}
.jw-tutorial-card{margin:-10px 0 22px 15px;overflow:hidden;border:1px solid rgba(125,137,255,.28);border-radius:16px;background:#10183b;box-shadow:0 12px 30px rgba(0,0,0,.2)}.jw-tutorial-card img{display:block;width:100%;max-height:190px;object-fit:cover}.jw-tutorial-body{padding:13px 14px 15px}.jw-tutorial-body strong{display:block;color:#fff;font-size:15px;margin-bottom:5px}.jw-tutorial-body span{display:block;color:#b9c3e5;font-size:13px;line-height:1.45;margin-bottom:12px}.jw-tutorial-body a{display:inline-flex;align-items:center;justify-content:center;background:#5865f2;color:#fff;text-decoration:none;font-weight:800;font-size:12px;letter-spacing:.04em;border-radius:10px;padding:9px 13px}

.jw-action-card{margin:-10px 0 22px 15px}.jw-action-card a{display:inline-flex;align-items:center;justify-content:center;background:#5865f2;color:#fff;text-decoration:none;font-weight:800;font-size:12px;letter-spacing:.04em;border-radius:10px;padding:10px 14px;box-shadow:0 8px 22px rgba(0,0,0,.2)}

.jw-form .jw-password{flex:1;min-width:0;background:#111a40;border:1px solid #303a72;border-radius:13px;padding:11px 12px;color:#fff;outline:none}.jw-form .jw-password:disabled{opacity:.58;cursor:not-allowed}


/* V2.9 — scrollbars intégrées au thème + cartes d'offres sans prix figé */
.jw-messages,.jw-table-wrap{scrollbar-width:thin;scrollbar-color:#765cff #07102c}
.jw-messages::-webkit-scrollbar,.jw-table-wrap::-webkit-scrollbar{width:10px;height:10px}
.jw-messages::-webkit-scrollbar-track,.jw-table-wrap::-webkit-scrollbar-track{background:#07102c;border-radius:999px}
.jw-messages::-webkit-scrollbar-thumb,.jw-table-wrap::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#20c9ff 0%,#725cff 48%,#f735b5 100%);border:2px solid #07102c;border-radius:999px;box-shadow:0 0 12px rgba(94,91,255,.35)}
.jw-messages::-webkit-scrollbar-thumb:hover,.jw-table-wrap::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#42d6ff 0%,#8b70ff 48%,#ff53c2 100%);box-shadow:0 0 16px rgba(82,196,255,.55)}
.jw-offer-card{margin:10px 0 18px;border:1px solid rgba(113,137,255,.32);border-radius:17px;overflow:hidden;background:#0d1537;box-shadow:0 12px 28px rgba(0,0,0,.22)}
.jw-offer-thumb{position:relative;display:flex!important;min-height:135px;flex-direction:column;justify-content:flex-end;padding:20px;text-decoration:none!important;border:0!important;color:#fff!important;background:radial-gradient(circle at 78% 18%,rgba(41,215,255,.3),transparent 30%),radial-gradient(circle at 15% 12%,rgba(247,53,181,.28),transparent 30%),linear-gradient(135deg,#071334,#17276a 58%,#401b68);overflow:hidden}
.jw-offer-thumb:before{content:"✦";position:absolute;right:18px;top:14px;font-size:34px;color:#43dcff;text-shadow:0 0 18px #43dcff,0 0 30px #7b5cff}
.jw-offer-thumb strong{font-size:19px;line-height:1.15;margin-top:7px;max-width:80%}
.jw-offer-thumb small{margin-top:7px;color:#cbd6ff;max-width:88%;line-height:1.35}
.jw-offer-brand{font-size:10px;text-transform:uppercase;letter-spacing:.16em;font-weight:900;color:#54dcff}
.jw-offer-card.tone-pink .jw-offer-thumb{background:radial-gradient(circle at 80% 15%,rgba(255,58,184,.38),transparent 32%),radial-gradient(circle at 10% 12%,rgba(47,212,255,.24),transparent 30%),linear-gradient(135deg,#081336,#482064 58%,#711b57)}
.jw-offer-card.tone-orange .jw-offer-thumb{background:radial-gradient(circle at 80% 15%,rgba(255,126,50,.36),transparent 32%),radial-gradient(circle at 10% 12%,rgba(255,49,179,.25),transparent 30%),linear-gradient(135deg,#081336,#4c2058 60%,#713a1b)}
.jw-offer-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:11px 13px}.jw-offer-actions a{display:block!important;text-align:center;border:1px solid rgba(119,139,255,.28)!important;border-radius:11px;padding:10px 11px;color:#fff!important;font-weight:800;text-decoration:none!important}.jw-offer-actions a.is-primary{border:0!important;background:linear-gradient(90deg,#f735b5,#745cff,#25cfff)}.jw-offer-actions a.is-secondary{background:#111a40}.jw-offer-actions a.is-secondary:hover{background:#182354;border-color:rgba(84,220,255,.5)!important}@media(max-width:420px){.jw-offer-actions{grid-template-columns:1fr}}

/* V3.4 — identité Jennifer par avatar validé */
.jw-launcher{padding:8px 16px 8px 8px;gap:10px;background:linear-gradient(135deg,#121d4a 0%,#3448b8 55%,#6c3dd6 100%);border-color:rgba(78,212,255,.46);box-shadow:0 14px 40px rgba(4,9,31,.35),0 0 24px rgba(83,104,255,.14)}
.jw-launcher:hover{transform:translateY(-1px);box-shadow:0 16px 42px rgba(4,9,31,.42),0 0 26px rgba(74,207,255,.22),0 0 34px rgba(235,65,190,.12)}
@media(max-width:600px){.jw-launcher{padding:0}.jw-avatar-launcher{width:42px;height:42px;border-width:2px}.jw-launcher{overflow:hidden}}

/* V3.25 animation cards */
.jw-animation-card{margin:10px 14px 14px;border:1px solid rgba(105,218,255,.24);border-radius:18px;overflow:hidden;background:linear-gradient(145deg,rgba(7,18,45,.96),rgba(27,12,52,.96));box-shadow:0 16px 36px rgba(0,0,0,.28)}.jw-animation-body{padding:12px 14px 14px;display:grid;gap:5px}.jw-animation-body>span{font-size:10px;text-transform:uppercase;letter-spacing:.09em;color:#75e9ff}.jw-animation-body>strong{font-size:14px;color:#fff}.jw-animation-body>small{font-size:12px;line-height:1.45;color:#bed0e8}.jw-animation-body>a{margin-top:5px;display:inline-flex;justify-content:center;padding:9px 12px;border-radius:999px;background:linear-gradient(90deg,#1bccea,#8c5cff,#ed4fc2);color:#fff!important;text-decoration:none;font-weight:800;font-size:12px}.jw-fx-demo{height:112px;position:relative;display:grid;place-items:center;overflow:hidden;background:#07102a}.jw-fx-demo.is-glow button{border:1px solid #57efff;border-radius:999px;padding:10px 18px;color:#fff;background:#07102a;box-shadow:0 0 8px #57efff,0 0 28px rgba(87,239,255,.55),inset 0 0 14px rgba(87,239,255,.16);animation:jwFxPulse 2s infinite}.jw-fx-demo.is-glass{background:radial-gradient(circle at 25% 25%,rgba(62,218,255,.35),transparent 30%),radial-gradient(circle at 80% 75%,rgba(230,72,255,.3),transparent 30%),#06112b}.jw-fx-demo.is-glass:before{content:"";position:absolute;width:72%;height:62px;border-radius:22px;border:1px solid rgba(255,255,255,.35);background:linear-gradient(135deg,rgba(255,255,255,.2),rgba(255,255,255,.06));backdrop-filter:blur(16px);box-shadow:inset 0 1px rgba(255,255,255,.6),0 15px 35px rgba(0,0,0,.32)}.jw-fx-demo.is-glass strong,.jw-fx-demo.is-glass span{position:absolute;z-index:2}.jw-fx-demo.is-glass strong{top:42px}.jw-fx-demo.is-glass span{top:64px;font-size:9px;color:#bceeff}.jw-fx-demo.is-electric:before{content:"";position:absolute;inset:20px 34px;border:2px solid #f19a5b;border-radius:16px;box-shadow:0 0 4px #f19a5b,0 0 20px rgba(241,154,91,.55);animation:jwFxPulse 1.8s infinite}.jw-fx-demo.is-electric strong,.jw-fx-demo.is-electric span{position:absolute;z-index:2}.jw-fx-demo.is-electric strong{top:43px}.jw-fx-demo.is-electric span{top:64px;font-size:9px;color:#ffc8a0}.jw-fx-demo.is-moon{background:radial-gradient(circle at 50% 44%,#cde5ff 0 13px,#557ba9 14px 27px,transparent 28px),#050816}.jw-fx-demo.is-moon:before{content:"";position:absolute;width:78px;height:78px;border-radius:50%;border:2px solid #5bc8ff;box-shadow:0 0 24px #4daeff;animation:jwFxPulse 2.3s infinite}.jw-fx-demo.is-moon strong{position:absolute;bottom:12px;font-size:10px}.jw-fx-demo.is-orb{display:flex;gap:12px}.jw-fx-demo.is-orb i{width:38px;height:38px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff8,#19c9d9aa 42%,#0a2f48);box-shadow:inset 0 0 12px #53efff99,0 0 20px #53efff66}.jw-fx-demo.is-orb i:nth-child(2){background:radial-gradient(circle at 35% 30%,#fff8,#b8c7d8aa 42%,#39495d);box-shadow:inset 0 0 12px #dcecff99,0 0 20px #dcecff55}.jw-fx-demo.is-orb i:nth-child(3){background:radial-gradient(circle at 35% 30%,#fff8,#d66fa6aa 42%,#5a2946);box-shadow:inset 0 0 12px #ff9bcd99,0 0 20px #ff9bcd55}.jw-fx-demo.is-iso{display:flex;gap:12px;perspective:500px}.jw-fx-demo.is-iso i{font-style:normal;padding:16px 13px;border-radius:12px;background:linear-gradient(145deg,#062d43,#075b74);box-shadow:0 12px 22px rgba(0,0,0,.4),0 0 18px rgba(43,223,255,.25);transform:rotateX(12deg) rotateY(-12deg)}.jw-fx-demo.is-gallery{grid-template-columns:repeat(3,42px);gap:8px}.jw-fx-demo.is-gallery i{width:42px;height:42px;border-radius:12px;background:linear-gradient(135deg,#19d7ff,#a14dff);box-shadow:0 0 18px rgba(62,219,255,.35)}.jw-fx-demo.is-gallery strong{position:absolute;bottom:10px;font-size:9px;letter-spacing:.1em}.jw-fx-demo.is-generic i{width:56px;height:56px;border-radius:18px;background:linear-gradient(135deg,#22d9ff,#a05bff,#ff56c8);filter:blur(1px);box-shadow:0 0 30px rgba(80,218,255,.45);animation:jwFxSpin 4s linear infinite}.jw-fx-demo.is-generic strong{position:absolute;font-size:9px;letter-spacing:.1em}@keyframes jwFxPulse{50%{filter:brightness(1.25);transform:scale(1.03)}}@keyframes jwFxSpin{to{transform:rotate(360deg)}}
/* V3.26 — carte Notre savoir-faire */
.jw-savoirfaire-card{margin:8px 38px 12px 8px;border:1px solid rgba(116,243,225,.25);border-radius:16px;overflow:hidden;background:linear-gradient(145deg,rgba(10,27,52,.96),rgba(21,11,45,.96));box-shadow:0 14px 34px rgba(0,0,0,.28)}.jw-sf-visual{height:94px;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;overflow:hidden;background:radial-gradient(circle at 30% 50%,rgba(40,218,255,.24),transparent 35%),radial-gradient(circle at 75% 45%,rgba(255,70,204,.22),transparent 38%)}.jw-sf-visual i{position:absolute;width:90px;height:90px;border:1px solid rgba(255,255,255,.12);border-radius:50%;animation:jwSfOrbit 7s linear infinite}.jw-sf-visual i:nth-child(2){width:56px;height:56px;animation-direction:reverse;animation-duration:4.2s}.jw-sf-visual strong{position:relative;z-index:2;font-size:.78rem;letter-spacing:.12em}.jw-sf-visual span{position:relative;z-index:2;font-size:.67rem;opacity:.7}@keyframes jwSfOrbit{to{transform:rotate(360deg)}}
