.sntfcp-wrap{position:fixed;z-index:999999;font-family:Arial,Helvetica,sans-serif;color:#102033;--sntfcp-white:#fff;--sntfcp-red:var(--sntfcp-accent);--sntfcp-blue:var(--sntfcp-primary);--sntfcp-soft:#f3f8ff}.sntfcp-buttons{display:flex;flex-direction:column;gap:10px;align-items:flex-end}.sntfcp-left .sntfcp-buttons{align-items:flex-start}.sntfcp-btn{min-width:62px;height:62px;border-radius:20px;border:2px solid rgba(255,255,255,.96);background:linear-gradient(145deg,var(--sntfcp-blue),#08a6ff);box-shadow:0 14px 30px rgba(11,111,255,.30),inset 0 1px 0 rgba(255,255,255,.35);color:#fff;text-decoration:none;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;transition:.22s ease;font-weight:900;position:relative;overflow:hidden;padding:0 11px}.sntfcp-btn:before{content:"";position:absolute;inset:-45% -30%;background:linear-gradient(120deg,transparent,rgba(255,255,255,.32),transparent);transform:translateX(-85%) rotate(18deg);transition:.55s ease}.sntfcp-btn:hover:before{transform:translateX(85%) rotate(18deg)}.sntfcp-btn:hover{transform:translateY(-4px) scale(1.035);color:#fff;box-shadow:0 18px 42px rgba(11,111,255,.42)}.sntfcp-btn span,.sntfcp-btn em{position:relative;z-index:1}.sntfcp-btn em{font-style:normal;font-size:10.5px;margin-top:4px;line-height:1;white-space:nowrap;letter-spacing:.1px}.sntfcp-ico{width:28px;height:28px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:1000;font-size:20px;line-height:1;background:#fff;color:var(--sntfcp-blue);box-shadow:0 5px 12px rgba(0,0,0,.14)}.sntfcp-ico svg{width:22px;height:22px;display:block;fill:currentColor}.sntfcp-ico-chat svg{color:var(--sntfcp-blue)}.sntfcp-ico-chat svg .line{fill:none;stroke:var(--sntfcp-blue);stroke-width:1.7;stroke-linecap:round}.sntfcp-ico-zalo{font-family:Arial,Helvetica,sans-serif;color:#0068ff;font-size:21px;letter-spacing:-1px}.sntfcp-ico-messenger{color:#0078ff}.sntfcp-ico-messenger .bolt{fill:#fff}.sntfcp-ico-phone{color:var(--sntfcp-red)}.sntfcp-chat-toggle{width:auto;min-width:158px;height:60px;border-radius:999px;flex-direction:row;gap:9px;background:linear-gradient(135deg,var(--sntfcp-blue),#11a8ff)}.sntfcp-chat-toggle em{font-size:13px;margin:0;letter-spacing:.2px}.sntfcp-phone{background:linear-gradient(135deg,var(--sntfcp-red),#ff5555);box-shadow:0 14px 30px rgba(224,36,36,.28),inset 0 1px 0 rgba(255,255,255,.35)}.sntfcp-panel{position:absolute;bottom:82px;width:372px;max-width:calc(100vw - 28px);background:#fff;border:1px solid rgba(11,111,255,.20);border-radius:26px;box-shadow:0 28px 76px rgba(5,31,72,.25);overflow:hidden;display:none}.sntfcp-right .sntfcp-panel{right:0}.sntfcp-left .sntfcp-panel{left:0}.sntfcp-wrap.is-open .sntfcp-panel{display:block;animation:sntfcpPop .2s ease}.sntfcp-panel-head{background:linear-gradient(135deg,var(--sntfcp-blue),#0ea5ff);color:#fff;padding:16px;display:flex;align-items:center;gap:12px;position:relative}.sntfcp-panel-head:after{content:"";position:absolute;right:-35px;top:-55px;width:120px;height:120px;border-radius:50%;background:rgba(255,255,255,.16)}.sntfcp-avatar{width:56px;height:56px;border-radius:18px;background:#fff;display:flex;align-items:center;justify-content:center;position:relative;flex:0 0 auto;box-shadow:0 10px 24px rgba(0,0,0,.16),inset 0 0 0 2px rgba(255,255,255,.3);overflow:visible}.sntfcp-avatar img{width:100%;height:100%;object-fit:cover;border-radius:18px;display:block}.sntfcp-avatar span{font-size:25px}.sntfcp-avatar i{position:absolute;right:-1px;bottom:-1px;width:15px;height:15px;background:#18c964;border:3px solid #fff;border-radius:50%;box-shadow:0 0 0 4px rgba(24,201,100,.18)}.sntfcp-head-copy{position:relative;z-index:1;min-width:0}.sntfcp-panel-head strong{display:block;font-size:16.5px;line-height:1.15}.sntfcp-panel-head span{display:block;font-size:12px;opacity:.96;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:225px}.sntfcp-panel-head small{display:inline-flex;align-items:center;gap:5px;margin-top:6px;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.28);padding:4px 8px;border-radius:999px;font-size:11px;font-weight:800}.sntfcp-close{position:relative;z-index:2;margin-left:auto;border:0;background:rgba(255,255,255,.18);color:#fff;border-radius:50%;width:32px;height:32px;font-size:22px;cursor:pointer;line-height:27px}.sntfcp-live-note{margin:14px 15px 0;padding:11px 12px;border-radius:16px;background:linear-gradient(135deg,#fff,#f5f9ff);border:1px solid #dfeeff;display:flex;align-items:center;justify-content:space-between;gap:10px}.sntfcp-live-note b{font-size:13px;color:var(--sntfcp-blue)}.sntfcp-live-note span{font-size:11.5px;color:#5b6b80}.sntfcp-greeting{margin:10px 15px 0;padding:13px 14px;border-radius:16px;background:#f1f7ff;border-left:4px solid var(--sntfcp-red);font-size:13px;line-height:1.45;box-shadow:inset 0 0 0 1px rgba(11,111,255,.06)}.sntfcp-form{padding:14px 15px 16px}.sntfcp-form input,.sntfcp-form textarea{width:100%;box-sizing:border-box;border:1px solid #d8e5f7;border-radius:14px;padding:11px 12px;margin-bottom:9px;font-size:13px;outline:none;background:#fff}.sntfcp-form input:focus,.sntfcp-form textarea:focus{border-color:var(--sntfcp-blue);box-shadow:0 0 0 3px rgba(11,111,255,.1)}.sntfcp-form button{width:100%;border:0;border-radius:15px;padding:12px 14px;background:linear-gradient(135deg,var(--sntfcp-red),#ff4545);color:#fff;font-weight:900;cursor:pointer;box-shadow:0 10px 22px rgba(224,36,36,.24);transition:.2s ease}.sntfcp-form button:hover{transform:translateY(-1px);filter:brightness(1.03)}.sntfcp-status{font-size:12px;margin-top:9px;min-height:16px;color:var(--sntfcp-blue);font-weight:800}.sntfcp-status.error{color:var(--sntfcp-red)}.sntfcp-hp{position:absolute!important;left:-9999px!important;opacity:0!important}@keyframes sntfcpPop{from{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:600px){.sntfcp-wrap{bottom:14px!important}.sntfcp-buttons{gap:8px}.sntfcp-btn{min-width:54px;height:54px;border-radius:17px;padding:0 8px}.sntfcp-chat-toggle{min-width:146px;height:54px}.sntfcp-chat-toggle em{font-size:12.5px}.sntfcp-ico{width:25px;height:25px}.sntfcp-panel{width:328px;bottom:70px}.sntfcp-panel-head span{max-width:180px}.sntfcp-avatar{width:50px;height:50px;border-radius:16px}.sntfcp-avatar img{border-radius:16px}}
.sntfcp-chat-history{margin:10px 15px 0;max-height:210px;overflow-y:auto;padding:8px;border-radius:18px;background:linear-gradient(180deg,#f7fbff,#fff);border:1px solid #e0edff}.sntfcp-chat-history:empty{display:none}.sntfcp-msg{display:flex;margin:7px 0}.sntfcp-msg.visitor{justify-content:flex-end}.sntfcp-msg.agent{justify-content:flex-start}.sntfcp-msg-bubble{max-width:82%;border-radius:16px;padding:9px 11px;font-size:12.5px;line-height:1.4;box-shadow:0 6px 14px rgba(17,41,80,.08)}.sntfcp-msg-bubble strong{display:block;font-size:11px;margin-bottom:3px}.sntfcp-msg-bubble p{margin:0;white-space:pre-wrap}.sntfcp-msg-bubble small{display:block;margin-top:4px;font-size:10.5px;opacity:.72}.sntfcp-msg.visitor .sntfcp-msg-bubble{background:linear-gradient(135deg,var(--sntfcp-blue),#12a7ff);color:#fff;border-bottom-right-radius:5px}.sntfcp-msg.agent .sntfcp-msg-bubble{background:#fff;color:#14233a;border:1px solid #dceaff;border-bottom-left-radius:5px}.sntfcp-chat-history::-webkit-scrollbar{width:6px}.sntfcp-chat-history::-webkit-scrollbar-thumb{background:#b9d6ff;border-radius:999px}

/* v1.7.0 - Compact customer info after first message */
.sntfcp-wrap.sntfcp-customer-known .sntfcp-form input[name="name"],
.sntfcp-wrap.sntfcp-customer-known .sntfcp-form input[name="phone"],
.sntfcp-wrap.sntfcp-customer-known .sntfcp-form input[name="email"]{display:none!important}
.sntfcp-wrap.sntfcp-customer-known .sntfcp-live-note{margin-top:10px;padding:9px 11px}
.sntfcp-wrap.sntfcp-customer-known .sntfcp-greeting{display:none}
.sntfcp-wrap.sntfcp-customer-known .sntfcp-chat-history{max-height:270px;margin-top:10px}
.sntfcp-wrap.sntfcp-customer-known .sntfcp-form{padding-top:10px}
.sntfcp-wrap.sntfcp-customer-known .sntfcp-form textarea{rows:3;min-height:68px;max-height:96px;margin-bottom:8px}
@media(max-width:600px){.sntfcp-wrap.sntfcp-customer-known .sntfcp-panel{width:326px}.sntfcp-wrap.sntfcp-customer-known .sntfcp-chat-history{max-height:235px}.sntfcp-wrap.sntfcp-customer-known .sntfcp-form textarea{min-height:62px}}

/* v1.8.0 - PRO Conversion UI: title/subtitle/CTA configurable + lightweight attention effects */
.sntfcp-conversion-badge{margin:8px 15px 0;padding:8px 11px;border-radius:999px;background:#fff5f5;border:1px solid rgba(224,36,36,.18);color:var(--sntfcp-red);font-size:11.5px;font-weight:900;display:flex;align-items:center;gap:7px;box-shadow:0 8px 18px rgba(224,36,36,.08)}
.sntfcp-conversion-badge span{width:8px;height:8px;border-radius:50%;background:var(--sntfcp-red);box-shadow:0 0 0 5px rgba(224,36,36,.12);display:inline-block;flex:0 0 auto;animation:sntfcpBadgePulse 1.45s ease-in-out infinite}
.sntfcp-typing{margin:8px 15px 0;padding:8px 11px;border-radius:14px;background:#f7fbff;border:1px solid #dfecff;color:#5b6b80;font-size:11.5px;display:flex;align-items:center;gap:5px}
.sntfcp-typing i{width:5px;height:5px;border-radius:50%;background:var(--sntfcp-blue);display:inline-block;opacity:.35;animation:sntfcpTyping 1.2s ease-in-out infinite}
.sntfcp-typing i:nth-child(2){animation-delay:.16s}.sntfcp-typing i:nth-child(3){animation-delay:.32s}.sntfcp-typing em{font-style:normal;margin-left:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sntfcp-chat-toggle.sntfcp-conversion-pulse{animation:sntfcpConversionPulse 2.4s ease-in-out infinite}
.sntfcp-chat-toggle.sntfcp-conversion-pulse:after{content:"";position:absolute;inset:-7px;border-radius:999px;border:2px solid rgba(224,36,36,.28);animation:sntfcpRing 2.4s ease-out infinite;pointer-events:none}
.sntfcp-wrap.is-open .sntfcp-chat-toggle.sntfcp-conversion-pulse{animation:none}.sntfcp-wrap.is-open .sntfcp-chat-toggle.sntfcp-conversion-pulse:after{display:none}
@keyframes sntfcpConversionPulse{0%,100%{transform:translateY(0) scale(1)}45%{transform:translateY(-2px) scale(1.025)}55%{transform:translateY(-2px) scale(1.025)}}
@keyframes sntfcpRing{0%{opacity:.65;transform:scale(.9)}70%{opacity:0;transform:scale(1.25)}100%{opacity:0;transform:scale(1.25)}}
@keyframes sntfcpTyping{0%,80%,100%{opacity:.25;transform:translateY(0)}40%{opacity:1;transform:translateY(-2px)}}
@keyframes sntfcpBadgePulse{0%,100%{transform:scale(1);box-shadow:0 0 0 5px rgba(224,36,36,.12)}50%{transform:scale(1.12);box-shadow:0 0 0 8px rgba(224,36,36,.06)}}
.sntfcp-wrap.sntfcp-customer-known .sntfcp-typing{display:none}
@media(max-width:600px){.sntfcp-conversion-badge{font-size:11px;margin-top:7px}.sntfcp-typing em{max-width:240px}.sntfcp-wrap.sntfcp-customer-known .sntfcp-conversion-badge{display:none}}


/* v1.8.1 - Mobile safe chat panel: không tràn màn hình, luôn thấy nút đóng */
@media (max-width: 600px){
  .sntfcp-wrap{
    left: 10px !important;
    right: 10px !important;
    bottom: 12px !important;
    max-width: calc(100vw - 20px) !important;
  }
  .sntfcp-right .sntfcp-buttons,
  .sntfcp-left .sntfcp-buttons{
    align-items: flex-end;
  }
  .sntfcp-panel{
    position: fixed !important;
    left: 10px !important;
    right: 10px !important;
    bottom: 76px !important;
    top: auto !important;
    width: auto !important;
    max-width: none !important;
    max-height: calc(100dvh - 92px) !important;
    border-radius: 22px !important;
    display: none;
    overflow: hidden !important;
  }
  .sntfcp-wrap.is-open .sntfcp-panel{
    display: flex !important;
    flex-direction: column !important;
  }
  .sntfcp-panel-head{
    flex: 0 0 auto !important;
    padding: 12px 12px !important;
    min-height: 58px !important;
    position: sticky !important;
    top: 0 !important;
    z-index: 5 !important;
  }
  .sntfcp-avatar{
    width: 44px !important;
    height: 44px !important;
    border-radius: 14px !important;
  }
  .sntfcp-avatar img{border-radius:14px !important;}
  .sntfcp-panel-head strong{font-size:15px !important;}
  .sntfcp-panel-head span{
    max-width: calc(100vw - 165px) !important;
    font-size: 11.5px !important;
  }
  .sntfcp-panel-head small{
    margin-top: 4px !important;
    padding: 3px 7px !important;
    font-size: 10.5px !important;
  }
  .sntfcp-close{
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    line-height: 34px !important;
    font-size: 26px !important;
    background: rgba(224,36,36,.95) !important;
    color: #fff !important;
    box-shadow: 0 8px 18px rgba(0,0,0,.18) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }
  .sntfcp-live-note,
  .sntfcp-conversion-badge,
  .sntfcp-typing,
  .sntfcp-greeting,
  .sntfcp-chat-history,
  .sntfcp-form{
    flex: 0 0 auto;
  }
  .sntfcp-live-note{
    margin: 8px 10px 0 !important;
    padding: 8px 10px !important;
    border-radius: 14px !important;
  }
  .sntfcp-live-note b{font-size:12.5px !important;}
  .sntfcp-live-note span{font-size:10.8px !important;}
  .sntfcp-conversion-badge{
    margin: 6px 10px 0 !important;
    padding: 7px 9px !important;
  }
  .sntfcp-typing{
    margin: 6px 10px 0 !important;
    padding: 7px 9px !important;
  }
  .sntfcp-greeting{
    margin: 7px 10px 0 !important;
    padding: 9px 10px !important;
    font-size: 12.2px !important;
  }
  .sntfcp-chat-history{
    margin: 7px 10px 0 !important;
    max-height: 22dvh !important;
    min-height: 68px !important;
    overflow-y: auto !important;
    padding: 7px !important;
    border-radius: 15px !important;
  }
  .sntfcp-form{
    padding: 9px 10px 11px !important;
    overflow: visible !important;
  }
  .sntfcp-form input,
  .sntfcp-form textarea{
    padding: 9px 10px !important;
    margin-bottom: 7px !important;
    border-radius: 12px !important;
    font-size: 12.5px !important;
  }
  .sntfcp-form textarea{
    min-height: 60px !important;
    max-height: 78px !important;
    resize: vertical !important;
  }
  .sntfcp-form button{
    padding: 10px 12px !important;
    border-radius: 13px !important;
  }
  .sntfcp-status{
    margin-top: 5px !important;
    min-height: 14px !important;
    font-size: 11.5px !important;
  }
  .sntfcp-wrap.sntfcp-customer-known .sntfcp-chat-history{
    max-height: 32dvh !important;
  }
  .sntfcp-wrap.sntfcp-customer-known .sntfcp-form textarea{
    min-height: 58px !important;
    max-height: 72px !important;
  }
  .sntfcp-btn{
    min-width: 50px !important;
    height: 50px !important;
    border-radius: 16px !important;
  }
  .sntfcp-chat-toggle{
    min-width: 138px !important;
    height: 50px !important;
  }
}

@media (max-width: 380px){
  .sntfcp-panel{bottom: 70px !important;max-height: calc(100dvh - 84px) !important;}
  .sntfcp-chat-history{max-height: 18dvh !important;min-height: 54px !important;}
  .sntfcp-wrap.sntfcp-customer-known .sntfcp-chat-history{max-height: 29dvh !important;}
  .sntfcp-greeting{display:none !important;}
  .sntfcp-typing{display:none !important;}
}


/* v1.9.0 - Compact chat panel: không tự bật, hộp chat gọn hơn để không chiếm diện tích web */
.sntfcp-panel{
  width: 336px !important;
  border-radius: 22px !important;
  box-shadow: 0 20px 52px rgba(5,31,72,.22) !important;
}
.sntfcp-panel-head{
  padding: 12px 13px !important;
  gap: 10px !important;
}
.sntfcp-avatar{
  width: 46px !important;
  height: 46px !important;
  border-radius: 15px !important;
}
.sntfcp-avatar img{border-radius:15px !important;}
.sntfcp-panel-head strong{font-size:15px !important;}
.sntfcp-panel-head span{font-size:11.5px !important;max-width:198px !important;}
.sntfcp-panel-head small{font-size:10px !important;padding:3px 7px !important;margin-top:4px !important;}
.sntfcp-close{width:30px !important;height:30px !important;line-height:26px !important;font-size:20px !important;}
.sntfcp-live-note{margin:9px 11px 0 !important;padding:8px 10px !important;border-radius:14px !important;}
.sntfcp-live-note b{font-size:12.2px !important;}
.sntfcp-live-note span{font-size:10.8px !important;}
.sntfcp-conversion-badge{margin:6px 11px 0 !important;padding:6px 9px !important;font-size:10.8px !important;}
.sntfcp-typing{display:none !important;}
.sntfcp-greeting{margin:7px 11px 0 !important;padding:9px 10px !important;font-size:12px !important;line-height:1.35 !important;}
.sntfcp-chat-history{margin:7px 11px 0 !important;max-height:150px !important;padding:7px !important;border-radius:15px !important;}
.sntfcp-msg{margin:5px 0 !important;}
.sntfcp-msg-bubble{font-size:12px !important;padding:7px 9px !important;border-radius:14px !important;}
.sntfcp-msg-bubble strong{font-size:10.5px !important;}
.sntfcp-msg-bubble small{font-size:9.8px !important;}
.sntfcp-form{padding:9px 11px 11px !important;}
.sntfcp-form input,.sntfcp-form textarea{padding:8px 10px !important;margin-bottom:7px !important;border-radius:12px !important;font-size:12.2px !important;}
.sntfcp-form textarea{min-height:58px !important;max-height:76px !important;}
.sntfcp-form button{padding:10px 12px !important;border-radius:13px !important;}
.sntfcp-status{margin-top:5px !important;font-size:11px !important;min-height:13px !important;}
.sntfcp-wrap.sntfcp-customer-known .sntfcp-chat-history{max-height:190px !important;}
.sntfcp-wrap.sntfcp-customer-known .sntfcp-form textarea{min-height:54px !important;max-height:70px !important;}
.sntfcp-wrap.sntfcp-customer-known .sntfcp-live-note{display:none !important;}

@media(max-width:600px){
  .sntfcp-wrap{left:auto !important;right:10px !important;bottom:12px !important;max-width:calc(100vw - 20px) !important;}
  .sntfcp-left{left:10px !important;right:auto !important;}
  .sntfcp-panel{
    position:fixed !important;
    left:auto !important;
    right:10px !important;
    bottom:70px !important;
    width:300px !important;
    max-width:calc(100vw - 20px) !important;
    max-height:76dvh !important;
    border-radius:20px !important;
  }
  .sntfcp-left .sntfcp-panel{left:10px !important;right:auto !important;}
  .sntfcp-panel-head{padding:10px 11px !important;min-height:auto !important;}
  .sntfcp-avatar{width:40px !important;height:40px !important;border-radius:13px !important;}
  .sntfcp-avatar img{border-radius:13px !important;}
  .sntfcp-panel-head strong{font-size:14px !important;}
  .sntfcp-panel-head span{font-size:10.8px !important;max-width:154px !important;}
  .sntfcp-panel-head small{display:none !important;}
  .sntfcp-close{width:32px !important;height:32px !important;min-width:32px !important;font-size:22px !important;line-height:28px !important;}
  .sntfcp-live-note{display:none !important;}
  .sntfcp-conversion-badge{display:none !important;}
  .sntfcp-greeting{margin:6px 9px 0 !important;padding:8px 9px !important;font-size:11.6px !important;}
  .sntfcp-chat-history{margin:6px 9px 0 !important;min-height:54px !important;max-height:24dvh !important;padding:6px !important;}
  .sntfcp-form{padding:8px 9px 9px !important;}
  .sntfcp-form input,.sntfcp-form textarea{padding:8px 9px !important;margin-bottom:6px !important;font-size:12px !important;}
  .sntfcp-form textarea{min-height:52px !important;max-height:66px !important;}
  .sntfcp-form button{padding:9px 10px !important;}
  .sntfcp-wrap.sntfcp-customer-known .sntfcp-chat-history{max-height:34dvh !important;min-height:80px !important;}
  .sntfcp-wrap.sntfcp-customer-known .sntfcp-form textarea{min-height:50px !important;max-height:62px !important;}
  .sntfcp-buttons{gap:7px !important;}
  .sntfcp-btn{min-width:46px !important;height:46px !important;border-radius:15px !important;}
  .sntfcp-ico{width:23px !important;height:23px !important;}
  .sntfcp-chat-toggle{min-width:128px !important;height:46px !important;gap:7px !important;}
  .sntfcp-chat-toggle em{font-size:11.5px !important;}
}
@media(max-width:360px){
  .sntfcp-panel{width:286px !important;bottom:66px !important;max-height:74dvh !important;}
  .sntfcp-greeting{display:none !important;}
  .sntfcp-chat-history{max-height:22dvh !important;}
  .sntfcp-wrap.sntfcp-customer-known .sntfcp-chat-history{max-height:32dvh !important;}
}

/* v2.0 PRO Notification System */
.sntfcp-unread-badge{position:absolute;right:-7px;top:-7px;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:var(--sntfcp-red);color:#fff;border:2px solid #fff;box-shadow:0 8px 18px rgba(224,36,36,.35);font-size:11px;font-weight:1000;line-height:18px;text-align:center;display:none;z-index:4}.sntfcp-unread-badge.show{display:block;animation:sntfcpBadgePop .22s ease}.sntfcp-toast{position:absolute;bottom:calc(100% + 14px);right:0;min-width:245px;max-width:310px;background:#fff;color:#102033;border:1px solid rgba(11,111,255,.20);border-left:5px solid var(--sntfcp-red);border-radius:18px;box-shadow:0 18px 46px rgba(5,31,72,.22);padding:12px 14px;display:flex;align-items:center;gap:10px;opacity:0;visibility:hidden;transform:translateY(10px) scale(.96);transition:.22s ease;pointer-events:none;z-index:2}.sntfcp-left .sntfcp-toast{left:0;right:auto}.sntfcp-toast.show{opacity:1;visibility:visible;transform:translateY(0) scale(1)}.sntfcp-toast strong{width:34px;height:34px;border-radius:13px;background:linear-gradient(135deg,var(--sntfcp-blue),#11a8ff);display:flex;align-items:center;justify-content:center;box-shadow:0 8px 18px rgba(11,111,255,.22)}.sntfcp-toast span{font-size:12.5px;font-weight:900;line-height:1.35;color:#18324f}@keyframes sntfcpBadgePop{from{transform:scale(.4);opacity:.4}to{transform:scale(1);opacity:1}}@media(max-width:600px){.sntfcp-toast{right:0;bottom:calc(100% + 10px);min-width:220px;max-width:285px;padding:10px 12px;border-radius:16px}.sntfcp-toast span{font-size:12px}.sntfcp-unread-badge{right:-5px;top:-5px}}

/* v2.1 Branding PRO */
.sntfcp-btn{border-radius:var(--sntfcp-radius,22px)}
.sntfcp-panel{border-radius:calc(var(--sntfcp-radius,22px) + 4px)}
.sntfcp-panel-head{border-top-left-radius:calc(var(--sntfcp-radius,22px) + 4px);border-top-right-radius:calc(var(--sntfcp-radius,22px) + 4px)}
.sntfcp-chat-toggle{border-radius:999px;background:linear-gradient(135deg,var(--sntfcp-blue),#ffffff 48%,var(--sntfcp-red));color:#fff;box-shadow:0 16px 38px rgba(11,111,255,.28),0 8px 22px rgba(224,36,36,.18),inset 0 1px 0 rgba(255,255,255,.55)}
.sntfcp-chat-toggle em{color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.18)}
.sntfcp-custom-chat-icon{width:36px;height:36px;border-radius:14px;background:#fff;color:var(--sntfcp-blue);overflow:hidden;padding:0;box-shadow:0 8px 18px rgba(0,0,0,.16)}
.sntfcp-custom-chat-icon img{width:100%;height:100%;display:block;object-fit:cover;border-radius:14px}
.sntfcp-custom-chat-icon strong{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:10px;font-weight:1000;letter-spacing:-.25px;color:var(--sntfcp-blue);background:linear-gradient(145deg,#fff,#eef6ff);white-space:nowrap}
.sntfcp-branding-effect .sntfcp-custom-chat-icon{animation:sntfcpIconGlow 2.2s ease-in-out infinite}
.sntfcp-branding-effect:after{content:"";position:absolute;inset:-6px;border-radius:999px;border:2px solid rgba(224,36,36,.24);animation:sntfcpBrandRing 2.3s ease-out infinite;pointer-events:none}
.sntfcp-wrap.is-open .sntfcp-branding-effect .sntfcp-custom-chat-icon,.sntfcp-wrap.is-open .sntfcp-branding-effect:after{animation:none;display:none}
@keyframes sntfcpIconGlow{0%,100%{transform:scale(1);box-shadow:0 8px 18px rgba(0,0,0,.16)}50%{transform:scale(1.06);box-shadow:0 10px 26px rgba(224,36,36,.30)}}
@keyframes sntfcpBrandRing{0%{opacity:.7;transform:scale(.92)}70%{opacity:0;transform:scale(1.18)}100%{opacity:0;transform:scale(1.18)}}
@media(max-width:600px){.sntfcp-custom-chat-icon{width:31px;height:31px;border-radius:12px}.sntfcp-custom-chat-icon img{border-radius:12px}.sntfcp-custom-chat-icon strong{font-size:9px}.sntfcp-chat-toggle{min-width:132px!important}}


/* v2.2 shortcode mode: hiển thị hộp chat trực tiếp trong trang con, không chiếm footer */
.sntfcp-shortcode-holder{max-width:460px;width:100%;margin:18px auto;position:relative;z-index:1}
.sntfcp-shortcode-holder .sntfcp-wrap.sntfcp-shortcode-chat{position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;width:100%;display:block}
.sntfcp-shortcode-holder .sntfcp-panel{position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;width:100%!important;max-width:460px!important;opacity:1!important;visibility:visible!important;transform:none!important;pointer-events:auto!important;box-shadow:0 18px 45px rgba(15,45,95,.16)}
.sntfcp-shortcode-holder .sntfcp-buttons,.sntfcp-shortcode-holder .sntfcp-toast{display:none!important}
.sntfcp-shortcode-holder .sntfcp-close{display:none!important}
.sntfcp-shortcode-notice{padding:14px 16px;border-radius:14px;background:#fff;border:1px solid rgba(11,111,255,.18);box-shadow:0 10px 30px rgba(11,111,255,.08);color:#123;font-weight:700}
@media(max-width:640px){.sntfcp-shortcode-holder{max-width:100%;margin:12px auto}.sntfcp-shortcode-holder .sntfcp-panel{max-width:100%!important}}

/* v2.3 CRM Permission PRO */
.sntfcp-shortcode-notice{
  max-width:720px;
  margin:18px auto;
  padding:14px 16px;
  border-radius:14px;
  background:#fff5f5;
  border:1px solid #fecaca;
  color:#b91c1c;
  font-weight:700;
  text-align:center;
}
.sntfcp-crm-chat-shortcode{
  position:relative;
  min-height:120px;
}


/* v2.3.1 - SNT Responsive Chat Box PRO: tự co giãn theo mọi màn hình, không che nút đóng */
.sntfcp-wrap{box-sizing:border-box!important;max-width:calc(100vw - 20px)!important;}
.sntfcp-wrap *,.sntfcp-wrap *:before,.sntfcp-wrap *:after{box-sizing:border-box!important;}
.sntfcp-panel{
  width:clamp(320px,28vw,390px)!important;
  max-width:calc(100vw - 24px)!important;
  max-height:min(720px,calc(100dvh - 118px))!important;
  overflow:hidden!important;
}
.sntfcp-wrap:not(.is-open) .sntfcp-panel{display:none!important;}
.sntfcp-wrap.is-open .sntfcp-panel{display:flex!important;flex-direction:column!important;}
.sntfcp-panel-head{flex:0 0 auto!important;position:sticky!important;top:0!important;z-index:20!important;}
.sntfcp-close{flex:0 0 auto!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;touch-action:manipulation!important;}
.sntfcp-chat-history{flex:1 1 auto!important;min-height:82px!important;max-height:clamp(120px,28dvh,260px)!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior:contain!important;}
.sntfcp-form{flex:0 0 auto!important;}
.sntfcp-form textarea{max-height:96px!important;resize:vertical!important;}

@media (min-width: 769px) and (max-height: 720px){
  .sntfcp-panel{max-height:calc(100dvh - 96px)!important;}
  .sntfcp-live-note,.sntfcp-conversion-badge{display:none!important;}
  .sntfcp-greeting{font-size:11.8px!important;padding:8px 10px!important;margin-top:6px!important;}
  .sntfcp-chat-history{max-height:24dvh!important;min-height:76px!important;}
  .sntfcp-form input,.sntfcp-form textarea{padding:8px 10px!important;margin-bottom:6px!important;}
  .sntfcp-form textarea{min-height:50px!important;max-height:66px!important;}
}

@media (max-width: 1024px){
  .sntfcp-panel{width:360px!important;max-height:calc(100dvh - 108px)!important;}
  .sntfcp-chat-history{max-height:26dvh!important;}
}

@media (max-width: 768px){
  .sntfcp-wrap{position:fixed!important;left:auto!important;right:max(10px,env(safe-area-inset-right))!important;bottom:max(10px,env(safe-area-inset-bottom))!important;max-width:calc(100vw - 20px)!important;z-index:999999!important;}
  .sntfcp-left{left:max(10px,env(safe-area-inset-left))!important;right:auto!important;}
  .sntfcp-buttons{gap:7px!important;align-items:flex-end!important;}
  .sntfcp-left .sntfcp-buttons{align-items:flex-start!important;}
  .sntfcp-panel{
    position:fixed!important;
    left:auto!important;
    right:max(10px,env(safe-area-inset-right))!important;
    bottom:calc(max(10px,env(safe-area-inset-bottom)) + 62px)!important;
    top:auto!important;
    width:min(360px,calc(100vw - 20px))!important;
    max-width:calc(100vw - 20px)!important;
    max-height:calc(100dvh - 86px - env(safe-area-inset-top) - env(safe-area-inset-bottom))!important;
    border-radius:20px!important;
    overflow:hidden!important;
  }
  .sntfcp-left .sntfcp-panel{left:max(10px,env(safe-area-inset-left))!important;right:auto!important;}
  .sntfcp-panel-head{padding:10px 11px!important;gap:9px!important;min-height:56px!important;}
  .sntfcp-avatar{width:40px!important;height:40px!important;border-radius:13px!important;}
  .sntfcp-avatar img{border-radius:13px!important;}
  .sntfcp-head-copy{min-width:0!important;}
  .sntfcp-panel-head strong{font-size:14px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;max-width:180px!important;}
  .sntfcp-panel-head span{font-size:10.8px!important;max-width:168px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
  .sntfcp-panel-head small{display:none!important;}
  .sntfcp-close{width:36px!important;height:36px!important;min-width:36px!important;border-radius:999px!important;font-size:24px!important;line-height:1!important;background:rgba(224,36,36,.96)!important;color:#fff!important;box-shadow:0 8px 20px rgba(0,0,0,.22)!important;}
  .sntfcp-live-note,.sntfcp-conversion-badge,.sntfcp-typing{display:none!important;}
  .sntfcp-greeting{margin:7px 10px 0!important;padding:8px 10px!important;font-size:11.6px!important;line-height:1.35!important;border-radius:13px!important;}
  .sntfcp-chat-history{margin:7px 10px 0!important;min-height:72px!important;max-height:26dvh!important;padding:6px!important;border-radius:14px!important;}
  .sntfcp-msg{margin:5px 0!important;}
  .sntfcp-msg-bubble{font-size:11.8px!important;padding:7px 9px!important;max-width:86%!important;}
  .sntfcp-form{padding:8px 10px 10px!important;}
  .sntfcp-form input,.sntfcp-form textarea{padding:8px 9px!important;margin-bottom:6px!important;font-size:12px!important;border-radius:12px!important;}
  .sntfcp-form textarea{min-height:52px!important;max-height:68px!important;}
  .sntfcp-form button{padding:9px 10px!important;border-radius:13px!important;font-size:12.5px!important;}
  .sntfcp-status{font-size:10.8px!important;margin-top:4px!important;min-height:12px!important;}
  .sntfcp-btn{min-width:46px!important;height:46px!important;border-radius:15px!important;}
  .sntfcp-chat-toggle{min-width:132px!important;height:46px!important;gap:7px!important;}
  .sntfcp-chat-toggle em{font-size:11.5px!important;}
  .sntfcp-ico{width:23px!important;height:23px!important;}
  .sntfcp-custom-chat-icon{width:31px!important;height:31px!important;border-radius:12px!important;}
}

@media (max-width: 420px){
  .sntfcp-panel{width:calc(100vw - 20px)!important;}
  .sntfcp-panel-head strong{max-width:150px!important;}
  .sntfcp-panel-head span{max-width:150px!important;}
  .sntfcp-chat-history{max-height:24dvh!important;min-height:64px!important;}
}

@media (max-width: 360px), (max-height: 620px){
  .sntfcp-panel{max-height:calc(100dvh - 78px - env(safe-area-inset-top) - env(safe-area-inset-bottom))!important;bottom:calc(max(8px,env(safe-area-inset-bottom)) + 56px)!important;}
  .sntfcp-greeting{display:none!important;}
  .sntfcp-chat-history{max-height:22dvh!important;min-height:58px!important;}
  .sntfcp-form input[name="email"]{display:none!important;}
  .sntfcp-form textarea{min-height:46px!important;max-height:58px!important;}
  .sntfcp-btn{min-width:42px!important;height:42px!important;}
  .sntfcp-chat-toggle{height:42px!important;min-width:120px!important;}
}

@media (orientation: landscape) and (max-height: 520px){
  .sntfcp-panel{top:8px!important;bottom:8px!important;max-height:calc(100dvh - 16px)!important;}
  .sntfcp-panel-head{padding:8px 10px!important;min-height:48px!important;}
  .sntfcp-avatar{width:34px!important;height:34px!important;}
  .sntfcp-greeting,.sntfcp-live-note,.sntfcp-conversion-badge,.sntfcp-typing{display:none!important;}
  .sntfcp-chat-history{max-height:30dvh!important;min-height:50px!important;}
  .sntfcp-form input[name="email"]{display:none!important;}
  .sntfcp-form textarea{min-height:42px!important;max-height:52px!important;}
}

.sntfcp-shortcode-holder .sntfcp-wrap.sntfcp-shortcode-chat{max-width:100%!important;}
.sntfcp-shortcode-holder .sntfcp-panel{width:100%!important;max-width:520px!important;max-height:none!important;overflow:visible!important;}
.sntfcp-shortcode-holder .sntfcp-wrap.is-open .sntfcp-panel{display:flex!important;}
.sntfcp-shortcode-holder .sntfcp-chat-history{max-height:320px!important;}
