/* NEKTAR Prive AI consultant — desktop popover, mobile keyboard-safe sheet. */
#np-ai-launch{
  position:fixed;right:22px;bottom:24px;z-index:1101;
  background:#25251e;color:#fff;border:1px solid #6e675c;
  box-shadow:0 7px 20px #0002;border-radius:60px;padding:12px 20px;
  font:600 13px/1.25 Arial,sans-serif;letter-spacing:.03em;
  cursor:pointer;min-height:44px;max-width:calc(100% - 24px)
}
#np-ai-launch:hover,#np-ai-launch:focus-visible{background:#4b473d;outline-offset:3px}
#np-ai-panel{
  box-sizing:border-box;position:fixed;z-index:1102;right:20px;bottom:86px;
  width:min(420px,calc(100vw - 24px));height:min(610px,calc(100dvh - 110px));
  max-height:calc(100dvh - 110px);
  border:1px solid #ded9cf;background:#fff;color:#24241f;
  box-shadow:0 18px 55px #20202030;border-radius:17px;
  overflow:hidden;display:flex;flex-direction:column;
  font-family:Arial,sans-serif;isolation:isolate;
}
#np-ai-panel *,#np-ai-panel *::before,#np-ai-panel *::after{box-sizing:border-box}
#np-ai-panel[hidden]{display:none!important}
/* The quick-add product dialog takes precedence over the floating perfumer. */
body:has(#qaModal:not([hidden])) #np-ai-launch,
body:has(#qaModal:not([hidden])) #np-ai-panel{display:none!important}
#np-ai-panel .np-ai-head{
  background:#f6f3ed;border-bottom:1px solid #e3ded4;
  display:flex;align-items:center;gap:12px;padding:12px 16px;
  min-height:66px;flex:none
}
#np-ai-panel .np-ai-head strong{display:block;font-size:15px;line-height:1.3;letter-spacing:.01em}
#np-ai-panel .np-ai-head small{display:block;margin-top:4px;color:#777069;font-size:11px;line-height:1.4;font-weight:400}
#np-ai-close{
  margin-left:auto;display:grid;place-items:center;flex:none;background:transparent;
  border:0;border-radius:10px;font-size:24px;min-width:44px;min-height:44px;
  cursor:pointer;color:#514c47
}
#np-ai-close:hover{background:#e9e4dc}
#np-ai-close:focus-visible,#np-ai-submit:focus-visible,#np-ai-launch:focus-visible{
  outline:2px solid #315d49;outline-offset:2px
}
#np-ai-messages{
  overflow-x:hidden;overflow-y:auto;min-height:0;flex:1 1 auto;
  overscroll-behavior:contain;-webkit-overflow-scrolling:touch;
  touch-action:pan-y;padding:16px 14px;
  display:flex;flex-direction:column;gap:12px;scrollbar-width:thin
}
#np-ai-messages .np-ai-bubble{
  font-size:13px;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere;
  padding:11px 12px;border-radius:14px;max-width:92%;background:#f4f2ee;
  align-self:flex-start;flex-shrink:0;
}
#np-ai-messages .np-ai-bubble.np-ai-client{background:#eae7df;align-self:flex-end}
#np-ai-messages .np-ai-suggest{
  display:flex;gap:8px;flex-wrap:wrap;align-self:flex-start;flex-shrink:0;
}
#np-ai-messages .np-ai-suggest a{
  display:inline-block;border:1px solid #d8d4cb;border-radius:24px;
  color:#34312c;background:#fff;padding:10px 12px;font-size:12px;
  line-height:1.35;text-decoration:none;min-height:40px
}
#np-ai-messages .np-ai-suggest a:focus-visible{
  outline:2px solid #315d49;outline-offset:2px
}
#np-ai-form{
  display:flex;flex:none;gap:8px;align-items:flex-end;
  padding:10px 12px;border-top:1px solid #eee9e1;background:#fff
}
#np-ai-input{
  resize:none;flex:1 1 auto;width:0;max-height:112px;min-height:44px;
  line-height:1.4;font:16px/1.4 Arial,sans-serif;
  border:1px solid #d9d4cb;border-radius:13px;
  padding:11px 12px;outline-offset:2px;color:#302c28;background:#fff;
  overflow-y:auto;scrollbar-width:thin
}
#np-ai-submit{
  color:#fff;background:#292821;border:0;min-height:44px;
  padding:0 13px;border-radius:13px;cursor:pointer;font-size:13px;flex:none
}
#np-ai-submit:disabled{opacity:.5;cursor:wait}
#np-ai-panel .np-ai-foot{
  flex:none;font-size:10px;color:#827d73;text-align:center;
  padding:0 12px 10px;line-height:1.4;background:#fff
}
#np-ai-messages .np-ai-quick-start{
  display:flex;flex-wrap:wrap;gap:8px;align-self:flex-start;flex-shrink:0
}
#np-ai-messages .np-ai-quick-start button{
  border:1px solid #bec9bf;border-radius:20px;padding:10px 12px;
  background:#f6f9f6;color:#294333;font:500 12px/1.35 Arial,sans-serif;
  cursor:pointer;min-height:44px;text-align:left
}
#np-ai-messages .np-ai-quick-start button:hover{background:#e5eee5}
#np-ai-messages .np-ai-quick-start button:focus-visible{
  outline:2px solid #345e49;outline-offset:2px
}
@media(max-width:900px){
  #np-ai-launch{
    right:12px;
    bottom:max(calc(78px + env(safe-area-inset-bottom,0px)),var(--np-ai-buy-offset,0px));
    padding:11px 14px;font-size:12px;min-height:46px
  }
  #np-ai-panel{
    top:var(--np-ai-vv-top,0px)!important;
    left:var(--np-ai-vv-left,0px)!important;
    right:auto!important;bottom:auto!important;
    width:var(--np-ai-vv-width,100vw)!important;
    height:var(--np-ai-vv-height,100dvh)!important;
    max-height:none!important;min-height:0!important;
    border:0;border-radius:0;box-shadow:none;
  }
  #np-ai-panel .np-ai-head{
    min-height:60px;padding:
      max(10px,env(safe-area-inset-top,0px)) 14px 10px
  }
  #np-ai-messages{padding:12px 12px;gap:10px}
  #np-ai-form{
    padding:9px 10px max(10px,env(safe-area-inset-bottom,0px));
  }
  #np-ai-panel .np-ai-foot{
    padding:0 12px max(8px,env(safe-area-inset-bottom,0px))
  }
  #np-ai-panel[data-keyboard-open="true"] .np-ai-foot{display:none}
}
@media(max-height:440px){
  #np-ai-panel .np-ai-head{min-height:51px}
  #np-ai-panel .np-ai-head small{display:none}
  #np-ai-panel .np-ai-foot{display:none}
  #np-ai-messages{padding:9px 12px}
}
/* Keep the 320px catalogue preference heading readable under the floating launcher. */
@media(max-width:360px){
  #np-ai-launch{
    width:48px;max-width:48px;min-width:48px;height:48px;min-height:48px;
    padding:0;border-radius:50%;font-size:0;letter-spacing:0;
    display:grid;place-items:center
  }
  #np-ai-launch::before{content:'✦';font:600 21px/1 Arial,sans-serif}
  #app .np-unified-preferences h2{padding-right:54px}
}
@media(prefers-reduced-motion:reduce){
  #np-ai-panel *,#np-ai-launch{scroll-behavior:auto!important;transition:none!important}
}
