.kdh-contact-dock{
  --kdh-cd-blue:#0b4da2;
  --kdh-cd-blue-2:#0f5fc5;
  --kdh-cd-text:#102033;
  --kdh-cd-muted:#647182;
  --kdh-cd-line:#e4eaf1;
  --kdh-cd-soft:#f6f8fb;
  position:fixed;
  bottom:max(18px,env(safe-area-inset-bottom));
  z-index:99990;
  color:var(--kdh-cd-text);
  font-family:Arial,Helvetica,sans-serif;
  font-size:14px;
  line-height:1.4;
}
.kdh-contact-dock--right{right:18px}.kdh-contact-dock--left{left:18px}
.kdh-contact-dock,.kdh-contact-dock *{box-sizing:border-box}
.kdh-contact-dock button,.kdh-contact-dock input,.kdh-contact-dock textarea{font:inherit}
.kdh-contact-dock button{-webkit-appearance:none;appearance:none}

.kdh-contact-dock__launcher{
  display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;
  min-height:54px!important;padding:0 17px 0 14px!important;margin:0!important;border:0!important;
  border-radius:999px!important;background:var(--kdh-cd-blue)!important;color:#fff!important;
  box-shadow:0 10px 26px rgba(13,38,73,.24)!important;cursor:pointer!important;
  font:700 14px/1 Arial,Helvetica,sans-serif!important;text-transform:none!important;letter-spacing:0!important;
}
.kdh-contact-dock__launcher:hover,.kdh-contact-dock__launcher:focus-visible{background:#083f86!important;box-shadow:0 13px 32px rgba(13,38,73,.3)!important;outline:none!important}
.kdh-contact-dock__launcher-icon{display:flex;width:25px;height:25px;align-items:center;justify-content:center;flex:0 0 25px}
.kdh-contact-dock__launcher-icon svg{display:block;width:24px;height:24px}
.kdh-contact-dock__launcher-icon--close{display:none}.kdh-contact-dock.is-open .kdh-contact-dock__launcher-icon--open{display:none}.kdh-contact-dock.is-open .kdh-contact-dock__launcher-icon--close{display:flex}

.kdh-contact-dock__panel{
  position:absolute;bottom:66px;width:min(390px,calc(100vw - 24px));
  overflow:hidden;background:#fff;border:1px solid var(--kdh-cd-line);border-radius:18px;
  box-shadow:0 20px 60px rgba(16,32,51,.22);transform-origin:bottom right;animation:kdh-cd-in .14s ease-out;
}
.kdh-contact-dock--right .kdh-contact-dock__panel{right:0}.kdh-contact-dock--left .kdh-contact-dock__panel{left:0;transform-origin:bottom left}
.kdh-contact-dock__head{display:flex;gap:12px;align-items:flex-start;justify-content:space-between;padding:18px 18px 12px;border-bottom:1px solid #f0f3f7;background:#fff}
.kdh-contact-dock__head-copy{min-width:0}.kdh-contact-dock__head strong{display:block;font-size:19px;line-height:1.2;color:var(--kdh-cd-text)}
.kdh-contact-dock__head p{margin:5px 0 0;font-size:12.5px;line-height:1.45;color:var(--kdh-cd-muted)}
.kdh-contact-dock__response-dot{display:flex;align-items:center;gap:6px;margin-top:9px;font-size:10.5px;line-height:1.3;color:#6e7a89}
.kdh-contact-dock__response-dot i{display:block;width:7px;height:7px;border-radius:50%;background:#24a866;box-shadow:0 0 0 3px rgba(36,168,102,.10)}
.kdh-contact-dock__close{
  display:flex!important;align-items:center!important;justify-content:center!important;width:34px!important;height:34px!important;flex:0 0 34px!important;
  padding:0!important;margin:0!important;border:1px solid #e4e9ef!important;border-radius:50%!important;background:#fff!important;color:#536171!important;cursor:pointer!important;
}
.kdh-contact-dock__close:hover,.kdh-contact-dock__close:focus-visible{background:#f3f6f9!important;color:#102033!important;outline:none!important}.kdh-contact-dock__close svg{width:17px;height:17px;display:block}

.kdh-contact-dock__view{padding:14px 16px 16px}.kdh-contact-dock__view--channels{padding:8px 10px 12px}
.kdh-contact-dock__channels{display:grid;gap:3px}
.kdh-contact-dock__channel{
  display:grid!important;grid-template-columns:44px minmax(0,1fr) 16px!important;align-items:center!important;gap:11px!important;width:100%!important;
  min-height:62px!important;padding:8px 9px!important;margin:0!important;border:0!important;border-radius:12px!important;background:transparent!important;
  color:var(--kdh-cd-text)!important;text-align:left!important;text-decoration:none!important;cursor:pointer!important;box-shadow:none!important;text-transform:none!important;letter-spacing:0!important;
  transition:background .12s ease,transform .12s ease;
}
.kdh-contact-dock__channel:hover,.kdh-contact-dock__channel:focus-visible{background:#f6f8fb!important;outline:none!important;transform:translateY(-1px)}
.kdh-contact-dock__icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:#eef3f9;color:var(--kdh-cd-blue)}
.kdh-contact-dock__icon svg{width:23px;height:23px;display:block}
.kdh-contact-dock__channel--chat .kdh-contact-dock__icon{background:#eaf1ff;color:#0b4da2}
.kdh-contact-dock__channel--whatsapp .kdh-contact-dock__icon{background:#e9f8ef;color:#1fa855}
.kdh-contact-dock__channel--email .kdh-contact-dock__icon{background:#edf4ff;color:#1d5ea8}
.kdh-contact-dock__channel--phone .kdh-contact-dock__icon{background:#eef3f9;color:#0b4da2}
.kdh-contact-dock__channel--inquiry .kdh-contact-dock__icon{background:#fff3df;color:#b66a00}
.kdh-contact-dock__channel--telegram .kdh-contact-dock__icon{background:#eaf5fb;color:#229ed9}
.kdh-contact-dock__channel--wechat .kdh-contact-dock__icon{background:#eaf8ed;color:#16a34a}
.kdh-contact-dock__channel-copy{display:block;min-width:0}.kdh-contact-dock__channel-copy strong{display:block;font-size:14px;line-height:1.25;color:#182433}.kdh-contact-dock__channel-copy small{display:block;margin-top:2px;font-size:10.5px;line-height:1.35;color:#7a8695;font-weight:400}
.kdh-contact-dock__arrow{color:#a2acb8;font-size:21px;line-height:1}.kdh-contact-dock__channel-footnote{margin:8px 8px 2px;padding-top:10px;border-top:1px solid #eef2f6;color:#778393;font-size:10.5px;line-height:1.45}.kdh-contact-dock__channel-footnote strong{color:#4c5867}

.kdh-contact-dock__subhead{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:center;margin-bottom:14px}
.kdh-contact-dock__back{display:flex!important;align-items:center!important;justify-content:center!important;width:34px!important;height:34px!important;padding:0!important;margin:0!important;border:1px solid #e4e9ef!important;border-radius:50%!important;background:#fff!important;color:var(--kdh-cd-blue)!important;font-size:18px!important;line-height:1!important;cursor:pointer!important;box-shadow:none!important}
.kdh-contact-dock__back:hover,.kdh-contact-dock__back:focus-visible{background:#f4f7fb!important;outline:none!important}.kdh-contact-dock__subhead h3{margin:0;font-size:17px;line-height:1.25;color:#102033}.kdh-contact-dock__subhead p{margin:2px 0 0;color:#7a8695;font-size:10.5px;line-height:1.35}

.kdh-contact-dock__compact-fields{display:grid;grid-template-columns:1fr 1fr;gap:9px}.kdh-contact-dock__compact-fields label:first-child{grid-column:1/-1}.kdh-contact-dock__compact-fields--email label:first-child{grid-column:auto}
.kdh-contact-dock__view label{display:block;margin:0 0 9px;color:#445164;font-size:11px;font-weight:700;line-height:1.3}.kdh-contact-dock__view label>span{color:#9aa4b0;font-weight:400}
.kdh-contact-dock__view input,.kdh-contact-dock__view textarea{display:block;width:100%;margin-top:5px;padding:9px 10px;border:1px solid #d8e0e9;border-radius:9px;background:#fff;color:#182433;outline:none;font:400 13px/1.4 Arial,Helvetica,sans-serif}
.kdh-contact-dock__view input{height:40px}.kdh-contact-dock__view input:focus,.kdh-contact-dock__view textarea:focus{border-color:#75a0d8;box-shadow:0 0 0 3px rgba(11,77,162,.07)}.kdh-contact-dock__view textarea{min-height:88px;resize:vertical}
.kdh-contact-dock__privacy{display:flex!important;align-items:flex-start!important;gap:8px!important;margin:2px 0 10px!important;color:#728091!important;font-size:10px!important;font-weight:400!important;line-height:1.4!important}.kdh-contact-dock__privacy input{width:auto!important;height:auto!important;margin:2px 0 0!important;flex:0 0 auto}.kdh-contact-dock__hp{position:absolute!important;left:-99999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.kdh-contact-dock__submit{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-height:42px!important;padding:10px 14px!important;margin:0!important;border:0!important;border-radius:9px!important;background:var(--kdh-cd-blue)!important;color:#fff!important;font-weight:700!important;line-height:1.2!important;cursor:pointer!important;text-transform:none!important;letter-spacing:0!important;box-shadow:none!important}.kdh-contact-dock__submit:hover,.kdh-contact-dock__submit:focus-visible{background:#083d80!important;outline:none!important}.kdh-contact-dock__submit:disabled{opacity:.55;cursor:wait!important}
.kdh-contact-dock__form-status{min-height:15px;margin:7px 0 0;color:#667487;font-size:10.5px;line-height:1.35}.kdh-contact-dock__form-status.is-error{color:#b42318}.kdh-contact-dock__form-status.is-success{color:#087443}

.kdh-contact-dock__chat-messages{display:flex;flex-direction:column;gap:8px;max-height:260px;overflow:auto;padding:4px 1px 10px;margin-bottom:10px}.kdh-contact-dock__message{display:flex;flex-direction:column;gap:3px;max-width:88%}.kdh-contact-dock__message>div{padding:9px 11px;border-radius:11px;background:#eef3f9;font-size:12.5px;line-height:1.4;white-space:pre-wrap;word-break:break-word}.kdh-contact-dock__message small{padding:0 3px;color:#8994a2;font-size:9.5px}.kdh-contact-dock__message--visitor{align-self:flex-end;align-items:flex-end}.kdh-contact-dock__message--visitor>div{background:#0b4da2;color:#fff;border-bottom-right-radius:3px}.kdh-contact-dock__message--agent{align-self:flex-start}.kdh-contact-dock__message--agent>div{border-bottom-left-radius:3px}.kdh-contact-dock__chat-send{display:grid;grid-template-columns:1fr 72px;gap:8px;align-items:end}.kdh-contact-dock__chat-send textarea{margin:0;min-height:52px}.kdh-contact-dock__chat-send .kdh-contact-dock__submit{height:52px}.kdh-contact-dock__chat-send .kdh-contact-dock__form-status{grid-column:1/-1;margin:0}


.kdh-contact-dock__profile-card{margin:0 0 10px;padding:10px;border:1px solid #dbe6f3;border-radius:12px;background:#f7fbff}.kdh-contact-dock__profile-copy{display:flex;flex-direction:column;gap:2px;margin-bottom:8px}.kdh-contact-dock__profile-copy strong{font-size:12px;color:#203247}.kdh-contact-dock__profile-copy small{font-size:10px;color:#758294}.kdh-contact-dock__profile-fields{display:grid;grid-template-columns:.8fr 1fr 1fr;gap:6px}.kdh-contact-dock__profile-fields input{height:36px!important;margin:0!important;padding:7px 8px!important;font-size:11.5px!important}.kdh-contact-dock__profile-actions{display:flex;align-items:center;gap:8px;margin-top:7px}.kdh-contact-dock__profile-save,.kdh-contact-dock__profile-skip{min-height:32px!important;padding:6px 10px!important;margin:0!important;border-radius:8px!important;font-size:10.5px!important;font-weight:700!important;cursor:pointer!important;box-shadow:none!important;text-transform:none!important;letter-spacing:0!important}.kdh-contact-dock__profile-save{border:0!important;background:#0b4da2!important;color:#fff!important}.kdh-contact-dock__profile-skip{border:1px solid #dbe3ec!important;background:#fff!important;color:#647182!important}.kdh-contact-dock__chat-privacy{grid-column:1/-1;margin:0!important;color:#8792a0;font-size:9px;line-height:1.35}.kdh-contact-dock__chat-send{display:grid;grid-template-columns:1fr 72px;gap:8px;align-items:end}.kdh-contact-dock__chat-send .kdh-contact-dock__hp{position:absolute!important}.kdh-contact-dock__view--chat .kdh-contact-dock__chat-send:not([hidden]){display:grid!important}

.kdh-contact-dock__view--wechat{text-align:center}.kdh-contact-dock__wechat-qr-wrap{width:180px;height:180px;margin:3px auto 12px;padding:8px;border:1px solid var(--kdh-cd-line);border-radius:12px;background:#fff}.kdh-contact-dock__wechat-qr{display:block;width:100%;height:100%;object-fit:contain}.kdh-contact-dock__wechat-id{margin:7px 0 12px;color:var(--kdh-cd-muted);font-size:13px;word-break:break-all}.kdh-contact-dock__copy{padding:9px 13px!important;border:1px solid #cfd7e2!important;border-radius:8px!important;background:#fff!important;color:#223246!important;font-weight:700!important;cursor:pointer!important}.kdh-contact-dock__copy:hover,.kdh-contact-dock__copy:focus-visible{border-color:var(--kdh-cd-blue)!important;color:var(--kdh-cd-blue)!important;outline:none!important}.kdh-contact-dock__toast{margin:0 14px 14px;padding:9px 12px;border-radius:8px;background:#102033;color:#fff;font-size:11px;text-align:center}

@keyframes kdh-cd-in{from{opacity:0;transform:translateY(7px) scale(.985)}to{opacity:1;transform:none}}
@media(max-width:767px){
  .kdh-contact-dock{bottom:max(12px,env(safe-area-inset-bottom))}.kdh-contact-dock--right{right:12px}.kdh-contact-dock--left{left:12px}
  .kdh-contact-dock__panel{position:fixed;left:12px!important;right:12px!important;bottom:76px!important;width:auto!important;max-height:min(70vh,590px);overflow:auto;border-radius:18px;transform-origin:bottom center}
  .kdh-contact-dock__launcher{width:54px!important;height:54px!important;min-height:54px!important;padding:0!important;border-radius:50%!important}.kdh-contact-dock__launcher-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
  .kdh-contact-dock__head{padding:16px 16px 11px}.kdh-contact-dock__channels{gap:1px}.kdh-contact-dock__channel{min-height:58px!important;padding:7px 8px!important}.kdh-contact-dock__channel-copy small{font-size:10px}.kdh-contact-dock__channel-footnote{display:none}.kdh-contact-dock__view{padding:13px 15px 15px}
}
@media(max-width:480px){.kdh-contact-dock__compact-fields{grid-template-columns:1fr}.kdh-contact-dock__compact-fields label:first-child{grid-column:auto}.kdh-contact-dock__chat-messages{max-height:210px}.kdh-contact-dock__profile-fields{grid-template-columns:1fr}.kdh-contact-dock__profile-actions{justify-content:flex-start}}
@media(min-width:768px){.kdh-contact-dock--hide-desktop{display:none!important}}@media(max-width:767px){.kdh-contact-dock--hide-mobile{display:none!important}}@media(prefers-reduced-motion:reduce){.kdh-contact-dock__panel{animation:none}.kdh-contact-dock__channel{transition:none}}
.kdh-contact-dock.is-subview .kdh-contact-dock__head{display:none}
.kdh-contact-dock__subhead{grid-template-columns:34px minmax(0,1fr) 34px}
.kdh-contact-dock__subclose{display:flex!important;align-items:center!important;justify-content:center!important;width:34px!important;height:34px!important;padding:0!important;margin:0!important;border:1px solid #e4e9ef!important;border-radius:50%!important;background:#fff!important;color:#536171!important;cursor:pointer!important;box-shadow:none!important}
.kdh-contact-dock__subclose:hover,.kdh-contact-dock__subclose:focus-visible{background:#f4f7fb!important;color:#102033!important;outline:none!important}.kdh-contact-dock__subclose svg{display:block;width:16px;height:16px}

/* v0.4.2 email composer */
.kdh-contact-dock__email-form{display:flex;flex-direction:column;gap:8px}
.kdh-contact-dock__mail-row{display:grid;grid-template-columns:46px minmax(0,1fr);gap:8px;align-items:center;padding:9px 10px;border:1px solid #dde4ec;border-radius:10px;background:#f8fafc}
.kdh-contact-dock__mail-key{color:#758294;font-size:11px;font-weight:700}
.kdh-contact-dock__mail-value{display:flex;align-items:baseline;gap:5px;min-width:0;color:#17263a;font-size:12px}.kdh-contact-dock__mail-value strong{font-size:12px}.kdh-contact-dock__mail-value small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#738093;font-size:10.5px}
.kdh-contact-dock__mail-field{margin:0!important}.kdh-contact-dock__mail-field>span{display:flex;align-items:center;gap:5px;color:#445164!important;font-size:11px!important;font-weight:700!important}.kdh-contact-dock__mail-field>span em{color:#9aa4b0;font-size:9.5px;font-style:normal;font-weight:400}
.kdh-contact-dock__mail-field input,.kdh-contact-dock__mail-field textarea{margin-top:4px!important}.kdh-contact-dock__mail-field--message textarea{min-height:118px}
.kdh-contact-dock__attachment-field{padding:10px;border:1px dashed #cbd8e7;border-radius:10px;background:#fbfdff}.kdh-contact-dock__attachment-heading{display:flex;align-items:baseline;gap:5px;margin-bottom:7px}.kdh-contact-dock__attachment-heading strong{color:#445164;font-size:11px}.kdh-contact-dock__attachment-heading span{color:#9aa4b0;font-size:9.5px}
.kdh-contact-dock__attachment-button{display:inline-flex!important;align-items:center!important;width:auto!important;margin:0 0 6px!important;padding:7px 10px!important;border:1px solid #ccd8e6!important;border-radius:8px!important;background:#fff!important;color:#0b4da2!important;font-size:10.5px!important;font-weight:700!important;cursor:pointer!important}.kdh-contact-dock__attachment-button input{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}.kdh-contact-dock__attachment-button:hover{border-color:#7ba3d6!important;background:#f5f9ff!important}
.kdh-contact-dock__attachment-list{margin:0 0 4px;color:#34455a;font-size:10px;line-height:1.4;word-break:break-word}.kdh-contact-dock__attachment-field>small{display:block;color:#8490a0;font-size:9px;line-height:1.35}
.kdh-contact-dock__view--email .kdh-contact-dock__privacy{margin:0 0 2px!important}
@media(max-width:480px){.kdh-contact-dock__mail-row{grid-template-columns:34px minmax(0,1fr)}.kdh-contact-dock__mail-value{display:block}.kdh-contact-dock__mail-value small{display:block;margin-top:1px}.kdh-contact-dock__mail-field--message textarea{min-height:100px}}

/* v0.4.3 friendly action feedback */
.kdh-contact-dock__panel{position:absolute}
.kdh-contact-dock__form-status:empty{display:none}
.kdh-contact-dock__form-status.is-success,
.kdh-contact-dock__form-status.is-error{
  min-height:0;margin:8px 0 0;padding:8px 10px;border-radius:9px;font-size:10.5px;line-height:1.45;font-weight:600
}
.kdh-contact-dock__form-status.is-success{color:#126a43;background:#edf9f3;border:1px solid #ccebdc}
.kdh-contact-dock__form-status.is-error{color:#a33a2d;background:#fff3f1;border:1px solid #f2d2cd}
.kdh-contact-dock__toast{
  position:absolute;left:14px;right:14px;bottom:14px;z-index:30;
  margin:0;padding:11px 13px;border-radius:11px;
  box-shadow:0 12px 30px rgba(16,32,51,.2);
  font-size:11px;line-height:1.45;text-align:left;font-weight:700;
  animation:kdh-cd-toast-in .16s ease-out
}
.kdh-contact-dock__toast.is-success{background:#0f6f4b;color:#fff}
.kdh-contact-dock__toast.is-error{background:#a33a2d;color:#fff}
@keyframes kdh-cd-toast-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media(max-width:767px){
  .kdh-contact-dock__panel{position:fixed}
  .kdh-contact-dock__toast{left:12px;right:12px;bottom:12px}
}
.kdh-contact-dock__form-status.is-warning{min-height:0;margin:8px 0 0;padding:8px 10px;border-radius:9px;color:#8a5a00;background:#fff8e8;border:1px solid #efdcae;font-size:10.5px;line-height:1.45;font-weight:600}
.kdh-contact-dock__toast.is-warning{background:#8a5a00;color:#fff}


/* v0.4.6: directly visible, independent contact channels. No second-step picker. */
.kdh-contact-dock__shortcuts{
  display:flex!important;flex-direction:column!important;align-items:center!important;gap:10px!important;
}
.kdh-contact-dock__shortcut{
  display:flex!important;align-items:center!important;justify-content:center!important;
  width:50px!important;height:50px!important;min-width:50px!important;min-height:50px!important;
  margin:0!important;padding:0!important;border:0!important;border-radius:50%!important;
  text-decoration:none!important;cursor:pointer!important;line-height:1!important;
  box-shadow:0 8px 22px rgba(16,32,51,.22)!important;
  transition:transform .14s ease,box-shadow .14s ease;
}
.kdh-contact-dock__shortcut--whatsapp{background:#25d366!important;color:#fff!important}
.kdh-contact-dock__shortcut--email{background:#1665ad!important;color:#fff!important}
.kdh-contact-dock__shortcut--whatsapp:hover,.kdh-contact-dock__shortcut--whatsapp:focus-visible{background:#1caf50!important;color:#fff!important}
.kdh-contact-dock__shortcut--email:hover,.kdh-contact-dock__shortcut--email:focus-visible{background:#11548f!important;color:#fff!important}
.kdh-contact-dock__shortcut svg{display:block!important;width:26px!important;height:26px!important;fill:currentColor;flex:none}
.kdh-contact-dock__shortcut:hover,.kdh-contact-dock__shortcut:focus-visible{
  transform:translateY(-2px);box-shadow:0 10px 28px rgba(16,32,51,.32)!important;
  outline:3px solid rgba(22,101,173,.28)!important;outline-offset:2px;
}
.kdh-contact-dock__shortcut:focus-visible{outline:3px solid #fbbf24!important}
.kdh-contact-dock__shortcut--email[aria-expanded="true"]{box-shadow:0 0 0 3px rgba(22,101,173,.23),0 8px 22px rgba(16,32,51,.22)!important}
.kdh-contact-dock__panel{bottom:124px}
.kdh-contact-dock__view--email .kdh-contact-dock__back{display:none!important}
.kdh-contact-dock__view--email .kdh-contact-dock__subhead{grid-template-columns:minmax(0,1fr) 34px}
@media(max-width:767px){
  .kdh-contact-dock__shortcut{width:48px!important;height:48px!important;min-width:48px!important;min-height:48px!important}
  .kdh-contact-dock__panel{bottom:124px!important;max-height:min(68vh,560px)}
}
@media(prefers-reduced-motion:reduce){
  .kdh-contact-dock__shortcut{transition:none}
  .kdh-contact-dock__shortcut:hover{transform:none}
}
