:root{--isdg-ai-blue:#0f5eea;--isdg-ai-navy:#0b2345;--isdg-ai-orange:#ff8f1f;--isdg-ai-card:#fff;--isdg-ai-shadow:0 22px 60px rgba(11,35,69,.22)}

/* 2.0.0 - ancienne version premium orange, frontale, immediate et plus accueillante. */
.isdg-ai-guide{position:fixed;left:72vw;top:120px;z-index:2147483000;width:265px;height:465px;pointer-events:none;font-family:Inter,Arial,sans-serif;opacity:1;transition:left 1.45s cubic-bezier(.22,.8,.2,1),top 1.45s cubic-bezier(.22,.8,.2,1)}
.isdg-ai-guide[hidden]{display:none!important}
.isdg-ai-dismiss{pointer-events:auto;position:absolute;z-index:40;right:18px;top:18px;width:32px;height:32px;display:grid;place-items:center;padding:0;border:1px solid rgba(11,35,69,.14);border-radius:50%;background:rgba(255,255,255,.96);color:#52647c;font-size:24px;line-height:1;cursor:pointer;box-shadow:0 7px 22px rgba(11,35,69,.16);transition:transform .18s ease,background .18s ease,color .18s ease}
.isdg-ai-dismiss:hover,.isdg-ai-dismiss:focus-visible{transform:scale(1.08);background:#fff;color:#0b2345;outline:none}
.isdg-ai-guide.is-docked .isdg-ai-avatar-shell,.isdg-ai-guide.is-docked .isdg-ai-avatar{transform:scale(.74);transform-origin:right bottom}
.isdg-ai-guide.is-docked .isdg-ai-dismiss{right:4px;top:128px;transform:scale(.88);transform-origin:center}
.isdg-ai-avatar-shell{position:absolute;inset:0;pointer-events:none}
.isdg-ai-avatar-shell::before{content:"";position:absolute;left:50%;top:104px;transform:translateX(-50%);width:185px;height:290px;border-radius:48% 48% 42% 42%/38% 38% 60% 60%;background:radial-gradient(circle at 50% 24%, rgba(255,255,255,.55) 0%, rgba(255,255,255,.18) 28%, rgba(255,171,86,.24) 52%, rgba(255,143,31,.12) 68%, rgba(255,143,31,0) 78%);filter:blur(10px);opacity:.92;z-index:1}
.isdg-ai-avatar-full{position:absolute;z-index:2;left:0;right:0;top:0;bottom:0;width:100%;height:100%;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 10px 16px rgba(11,35,69,.10));animation:isdgAiIdleFloat 3.1s ease-in-out infinite}
.isdg-ai-avatar-fallback{position:absolute;z-index:3;left:50%;top:16px;width:90px;height:90px;transform:translateX(-50%);border:4px solid #fff;border-radius:50%;object-fit:cover;object-position:center 25%;background:#fff;box-shadow:0 12px 34px rgba(15,94,234,.25);opacity:0;transition:opacity .3s ease,transform .3s ease}
.isdg-ai-avatar{pointer-events:auto;position:absolute;z-index:10;inset:0;width:100%;height:100%;padding:0;border:0;background:transparent;cursor:pointer;border-radius:32px;outline:none}
.isdg-ai-avatar:focus-visible{box-shadow:0 0 0 4px rgba(15,94,234,.35)}
.isdg-ai-guide.is-travelling .isdg-ai-avatar-shell{animation:isdgAiTravelBob .55s ease-in-out infinite alternate}
/* garde l avatar de face pour un rendu plus accueillant */
.isdg-ai-online{position:absolute;z-index:11;right:58px;top:118px;width:18px;height:18px;border:3px solid #fff;border-radius:50%;background:#23b26d;box-shadow:0 2px 8px rgba(0,0,0,.15)}
.isdg-ai-help-badge{position:absolute;z-index:11;left:56px;top:108px;display:grid;place-items:center;width:30px;height:30px;border:3px solid #fff;border-radius:50%;background:var(--isdg-ai-orange);color:#fff;font-weight:900;font-size:15px;box-shadow:0 6px 16px rgba(243,154,62,.45)}
.isdg-ai-nameplate{position:absolute;z-index:11;left:50%;bottom:24px;transform:translateX(-50%);display:inline-flex;align-items:center;justify-content:center;min-width:66px;padding:6px 13px;border-radius:999px;background:rgba(11,35,69,.94);color:#fff;font-size:12px;font-weight:900;letter-spacing:.2px;box-shadow:0 7px 18px rgba(11,35,69,.22)}

.isdg-ai-nudge{pointer-events:auto;position:absolute;z-index:20;width:290px;right:225px;top:118px;padding:14px 16px 13px;border:1px solid #dbe7ff;border-radius:18px;background:rgba(255,255,255,.99);box-shadow:0 16px 45px rgba(11,35,69,.18);color:var(--isdg-ai-navy);line-height:1.35;animation:isdgNudgeIn .28s ease both}
.isdg-ai-guide.is-left .isdg-ai-nudge{left:225px;right:auto}
.isdg-ai-nudge:after{content:"";position:absolute;right:-8px;top:43px;width:15px;height:15px;background:#fff;border-top:1px solid #dbe7ff;border-right:1px solid #dbe7ff;transform:rotate(45deg)}
.isdg-ai-guide.is-left .isdg-ai-nudge:after{left:-8px;right:auto;transform:rotate(225deg)}
.isdg-ai-nudge-title{display:block;margin:0 24px 4px 0;color:#0f5eea;font-size:13px}.isdg-ai-nudge-text{display:block;font-size:13px}.isdg-ai-nudge-action{display:inline-flex;margin-top:9px;padding:6px 10px;border-radius:999px;background:#edf4ff;color:#0f5eea!important;font-size:12px;font-weight:800}.isdg-ai-nudge-close{position:absolute;right:7px;top:5px;border:0;background:transparent;color:#60708a;font-size:20px;cursor:pointer;padding:2px 6px}

.isdg-ai-panel{pointer-events:auto;position:fixed;right:24px;bottom:24px;width:min(390px,calc(100vw - 30px));max-height:min(680px,calc(100vh - 40px));display:flex;flex-direction:column;border:1px solid rgba(15,94,234,.16);border-radius:24px;background:#fff;box-shadow:var(--isdg-ai-shadow);overflow:hidden;color:#17233a;z-index:2147483100}
.isdg-ai-panel[hidden]{display:none!important}.isdg-ai-panel-head{display:flex;align-items:center;gap:10px;padding:13px 14px;background:linear-gradient(135deg,#0b4fc4,#0f69f5);color:#fff}.isdg-ai-panel-head img{width:50px;height:50px;border:3px solid rgba(255,255,255,.85);border-radius:50%;object-fit:cover;object-position:center 25%}.isdg-ai-panel-head div{min-width:0;flex:1}.isdg-ai-panel-head strong{display:block;color:#fff;font-size:15px}.isdg-ai-panel-head small{display:flex;align-items:center;gap:6px;color:#e6f1ff;font-size:11px}.isdg-ai-panel-head small span{width:8px;height:8px;border-radius:50%;background:#42d889}.isdg-ai-panel-close{border:0;background:transparent;color:#fff;font-size:28px;line-height:1;cursor:pointer;padding:3px 7px}
.isdg-ai-messages{flex:1;min-height:220px;overflow:auto;padding:16px 14px 8px;background:linear-gradient(180deg,#f8fbff,#fff)}
.isdg-ai-message{max-width:86%;margin:0 0 10px;padding:10px 12px;border-radius:16px;font-size:13px;line-height:1.45;white-space:pre-wrap;word-break:break-word}.isdg-ai-message.is-assistant{margin-right:auto;background:#eef5ff;border-bottom-left-radius:5px;color:#173d72}.isdg-ai-message.is-user{margin-left:auto;background:#0f5eea;color:#fff;border-bottom-right-radius:5px}.isdg-ai-message.is-error{margin-right:auto;background:#fff0f0;color:#a62b2b}.isdg-ai-message.is-typing{width:64px;color:#64748b;font-weight:700;letter-spacing:3px}
.isdg-ai-quick{display:flex;gap:7px;overflow-x:auto;padding:7px 12px 10px;background:#fff;scrollbar-width:thin}.isdg-ai-quick button{flex:0 0 auto;border:1px solid #d7e4fa;border-radius:999px;background:#fff;color:#1757b8;padding:7px 10px;font-size:11px;font-weight:750;cursor:pointer}.isdg-ai-quick button:hover{background:#edf5ff}
.isdg-ai-form{display:flex;align-items:flex-end;gap:8px;padding:10px 12px;border-top:1px solid #e8eef7;background:#fff}.isdg-ai-form textarea{flex:1;max-height:120px;min-height:42px;resize:none;border:1px solid #d7dfeb;border-radius:15px;padding:10px 12px;font:inherit;font-size:13px;line-height:1.35;outline:0}.isdg-ai-form textarea:focus{border-color:#82aef4;box-shadow:0 0 0 3px rgba(15,94,234,.08)}.isdg-ai-form button{width:42px;height:42px;flex:0 0 42px;border:0;border-radius:50%;background:#0f69f5;color:#fff;font-size:19px;cursor:pointer;box-shadow:0 7px 18px rgba(15,94,234,.25)}.isdg-ai-form button:disabled{opacity:.55;cursor:wait}.isdg-ai-disclaimer{display:block;padding:0 14px 11px;background:#fff;color:#8491a4;font-size:10px;text-align:center}
.isdg-ai-response-actions{display:flex;flex-wrap:wrap;gap:7px;margin:2px 0 10px 2px;max-width:92%}.isdg-ai-response-actions a{display:inline-flex;align-items:center;min-height:34px;padding:7px 11px;border:1px solid rgba(34,94,216,.22);border-radius:999px;background:#fff;color:#1557c9;text-decoration:none;font-size:12.5px;font-weight:700;box-shadow:0 5px 16px rgba(24,69,145,.08)}.isdg-ai-response-actions a:hover,.isdg-ai-response-actions a:focus{background:#f2f7ff;border-color:#2d6cdf;outline:none}

@keyframes isdgAiIdleFloat{0%{transform:translateY(0)}50%{transform:translateY(-6px)}100%{transform:translateY(0)}}
@keyframes isdgAiTravelBob{from{transform:translateY(0)}to{transform:translateY(-8px)}}
@keyframes isdgNudgeIn{from{opacity:0;transform:translateY(5px) scale(.97)}to{opacity:1;transform:none}}

@media (max-width:720px){
  .isdg-ai-avatar-shell::before{top:76px;width:128px;height:205px;filter:blur(8px);opacity:.88}
  .isdg-ai-guide{width:180px;height:330px;left:calc(100vw - 190px);top:100px;transition:left 1.2s cubic-bezier(.22,.8,.2,1),top 1.2s cubic-bezier(.22,.8,.2,1)}
  .isdg-ai-dismiss{right:7px;top:8px;width:29px;height:29px;font-size:21px}
  .isdg-ai-guide.is-docked .isdg-ai-avatar-shell,.isdg-ai-guide.is-docked .isdg-ai-avatar{transform:scale(.72)}
  .isdg-ai-guide.is-docked .isdg-ai-dismiss{right:1px;top:86px;transform:scale(.84)}
  .isdg-ai-avatar-fallback{top:10px;width:68px;height:68px;border-width:3px}
  .isdg-ai-online{right:37px;top:82px;width:14px;height:14px;border-width:2px}
  .isdg-ai-help-badge{left:34px;top:74px;width:24px;height:24px;font-size:12px}
  .isdg-ai-nameplate{font-size:9px;bottom:16px;min-width:44px;padding:3px 8px}
  .isdg-ai-nudge{width:min(235px,calc(100vw - 180px));right:152px;top:78px;padding:11px 13px}.isdg-ai-guide.is-left .isdg-ai-nudge{left:152px;right:auto}.isdg-ai-nudge:after{top:35px}
  .isdg-ai-panel{left:10px;right:10px;bottom:10px;width:auto;max-height:calc(100vh - 20px);border-radius:20px}.isdg-ai-messages{min-height:210px}.isdg-ai-message{max-width:90%}
}
@media (prefers-reduced-motion:reduce){.isdg-ai-guide{transition:left 1s ease,top 1s ease}.isdg-ai-guide.is-travelling .isdg-ai-avatar-shell{animation:none}.isdg-ai-avatar-full{animation:none}}




/* 2.3.4 - portrait realiste : portrait humain premium, mouvements doux et encombrement reduit. */
.isdg-ai-guide{
  width:220px;height:390px;
  transition:left 3.2s cubic-bezier(.22,.72,.24,1),top 3.2s cubic-bezier(.22,.72,.24,1);
  will-change:left,top;
}
.isdg-ai-avatar-shell::before{top:80px;width:150px;height:245px;opacity:.42;filter:blur(15px)}
.isdg-ai-avatar-full{
  z-index:4;opacity:1!important;visibility:visible!important;
  object-fit:contain;object-position:center bottom;
  filter:drop-shadow(0 15px 16px rgba(11,35,69,.16));
  animation:isdgAiRealBreath 5.2s ease-in-out infinite;
  transform-origin:50% 92%;
}
.isdg-ai-avatar-fallback{display:none!important}
.isdg-ai-guide.is-travelling .isdg-ai-avatar-shell{animation:isdgAiRealWalk 1.05s ease-in-out infinite alternate}
.isdg-ai-guide.is-docked .isdg-ai-avatar-shell,.isdg-ai-guide.is-docked .isdg-ai-avatar{transform:scale(.64);transform-origin:right bottom}
.isdg-ai-guide.is-docked .isdg-ai-dismiss{right:2px;top:92px;transform:scale(.84)}
.isdg-ai-dismiss{right:6px;top:8px}
.isdg-ai-online{right:42px;top:87px;width:15px;height:15px}
.isdg-ai-help-badge{left:31px;top:78px;width:27px;height:27px;font-size:13px}
.isdg-ai-nameplate{bottom:10px;min-width:58px;padding:5px 11px}
.isdg-ai-nudge{right:190px;top:80px;width:280px}
.isdg-ai-guide.is-left .isdg-ai-nudge{left:190px;right:auto}
@keyframes isdgAiRealBreath{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-2px) scale(1.004)}}
@keyframes isdgAiRealWalk{0%{transform:translateY(0) rotate(-.25deg)}100%{transform:translateY(-3px) rotate(.25deg)}}
@media (max-width:720px){
  .isdg-ai-guide{width:150px;height:275px;transition:left 2.5s cubic-bezier(.22,.72,.24,1),top 2.5s cubic-bezier(.22,.72,.24,1)}
  .isdg-ai-avatar-shell::before{top:62px;width:104px;height:168px;opacity:.36}
  .isdg-ai-guide.is-docked .isdg-ai-avatar-shell,.isdg-ai-guide.is-docked .isdg-ai-avatar{transform:scale(.68)}
  .isdg-ai-guide.is-docked .isdg-ai-dismiss{right:-1px;top:61px;transform:scale(.78)}
  .isdg-ai-dismiss{right:2px;top:4px;width:28px;height:28px;font-size:20px}
  .isdg-ai-online{right:28px;top:61px;width:12px;height:12px}
  .isdg-ai-help-badge{left:20px;top:55px;width:22px;height:22px;font-size:11px}
  .isdg-ai-nameplate{bottom:7px;font-size:9px;min-width:42px;padding:3px 7px}
  .isdg-ai-nudge{right:124px;top:56px;width:min(228px,calc(100vw - 145px));padding:11px 13px}
  .isdg-ai-guide.is-left .isdg-ai-nudge{left:124px;right:auto}
}
@media (prefers-reduced-motion:reduce){
  .isdg-ai-guide{transition:left 1.4s ease,top 1.4s ease}
  .isdg-ai-avatar-full,.isdg-ai-guide.is-travelling .isdg-ai-avatar-shell{animation:none!important}
}


/* 2.6.3 - Saif : avatar professionnel valide par l ISDG. */
.isdg-ai-guide{width:238px;height:390px}
.isdg-ai-avatar-full{object-position:center bottom;filter:drop-shadow(0 17px 18px rgba(8,26,54,.20));animation:isdgAiSaifBreath 6.4s ease-in-out infinite}
.isdg-ai-avatar-shell::before{top:72px;width:165px;height:250px;opacity:.32;background:radial-gradient(circle at 50% 30%,rgba(255,255,255,.48) 0%,rgba(28,92,164,.12) 48%,rgba(8,26,54,0) 76%)}
.isdg-ai-guide.is-travelling .isdg-ai-avatar-shell{animation:isdgAiSaifMove 1.3s ease-in-out infinite alternate}
.isdg-ai-online{right:34px;top:76px}
.isdg-ai-help-badge{left:27px;top:71px}
.isdg-ai-nameplate{bottom:7px;min-width:62px;background:rgba(8,26,54,.95)}
.isdg-ai-nudge{right:202px;top:76px}
.isdg-ai-guide.is-left .isdg-ai-nudge{left:202px;right:auto}
@keyframes isdgAiSaifBreath{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-1.5px) scale(1.002)}}
@keyframes isdgAiSaifMove{0%{transform:translateY(0)}100%{transform:translateY(-2px)}}
@media (max-width:720px){
  .isdg-ai-guide{width:158px;height:275px}
  .isdg-ai-avatar-shell::before{top:54px;width:112px;height:175px;opacity:.28}
  .isdg-ai-online{right:23px;top:54px}
  .isdg-ai-help-badge{left:17px;top:50px}
  .isdg-ai-nameplate{bottom:4px}
  .isdg-ai-nudge{right:132px;top:51px;width:min(228px,calc(100vw - 152px))}
  .isdg-ai-guide.is-left .isdg-ai-nudge{left:132px;right:auto}
}

/* 3.1.1 — accessible controls and restrained motion; existing portrait retained. */
.isdg-ai-guide{will-change:auto}
.isdg-ai-message,.isdg-ai-form textarea{font-size:16px;line-height:1.5}
.isdg-ai-quick button,.isdg-ai-response-actions a,.isdg-ai-nudge-text{font-size:14px}
.isdg-ai-disclaimer,.isdg-ai-panel-head small{font-size:12px}
.isdg-ai-messages{min-height:0;overflow-wrap:anywhere}
.isdg-ai-dismiss,.isdg-ai-guide.is-docked .isdg-ai-dismiss{width:44px;height:44px;transform:none}
.isdg-ai-panel-close{min-width:44px;min-height:44px}
.isdg-ai-dismiss:focus-visible,.isdg-ai-panel-close:focus-visible{outline:3px solid #f58220;outline-offset:3px}
.isdg-ai-panel{max-height:calc(100dvh - 32px)}
@media(max-width:720px){
 .isdg-ai-guide.is-docked .isdg-ai-avatar-shell,.isdg-ai-guide.is-docked .isdg-ai-avatar{transform:scale(.48)}
 .isdg-ai-guide.is-docked .isdg-ai-dismiss{top:132px;right:0}
 .isdg-ai-panel{bottom:max(10px,env(safe-area-inset-bottom));max-height:calc(100dvh - 24px)}
 .isdg-ai-guide[data-state="open"] .isdg-ai-avatar-shell,.isdg-ai-guide[data-state="open"] .isdg-ai-avatar,.isdg-ai-guide[data-state="open"] .isdg-ai-dismiss{visibility:hidden}
}
@media(prefers-reduced-motion:reduce){.isdg-ai-guide,.isdg-ai-guide *{animation:none!important;transition:none!important}}
