/* Website chat widget. Sits above the WhatsApp float (right) and the mobile sticky bar. */
.wc-btn{position:fixed;right:18px;bottom:86px;z-index:9990;width:56px;height:56px;border-radius:50%;border:0;cursor:pointer;background:#1f4d3a;color:#fff;display:grid;place-items:center;box-shadow:0 6px 20px rgba(0,0,0,.25);transition:transform .2s}
.wc-btn:hover{transform:scale(1.06)}
.wc-hide{display:none}
.wc-panel{position:fixed;right:18px;bottom:18px;z-index:9991;width:360px;max-width:calc(100vw - 24px);height:520px;max-height:calc(100vh - 36px);display:none;flex-direction:column;background:#fff;color:#1b1b1b;border-radius:16px;overflow:hidden;box-shadow:0 12px 40px rgba(0,0,0,.28);font:15px/1.45 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}
.wc-panel.wc-open{display:flex}
.wc-head{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;background:#1f4d3a;color:#fff}
.wc-title{display:flex;flex-direction:column}.wc-title span{font-size:12px;opacity:.8}
.wc-close{background:none;border:0;color:#fff;font-size:26px;line-height:1;cursor:pointer}
.wc-log{flex:1;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:8px;background:#f6f7f5}
.wc-msg{max-width:84%;padding:9px 12px;border-radius:14px;white-space:pre-wrap;word-wrap:break-word}
.wc-bot{align-self:flex-start;background:#fff;border:1px solid #e3e6e1}
.wc-user{align-self:flex-end;background:#c9a24a;color:#1b1b1b}
.wc-typing{opacity:.6}
.wc-chips{display:flex;flex-wrap:wrap;gap:6px;padding:0 12px 8px;background:#f6f7f5}
.wc-chip{border:1px solid #1f4d3a;background:#fff;color:#1f4d3a;border-radius:999px;padding:6px 12px;font-size:13px;cursor:pointer}
.wc-form{display:flex;gap:6px;padding:10px;border-top:1px solid #e3e6e1;background:#fff}
.wc-input,.wc-lead input{flex:1;min-width:0;border:1px solid #cfd4cc;border-radius:10px;padding:10px;font:inherit}
.wc-send{border:0;border-radius:10px;background:#1f4d3a;color:#fff;padding:0 14px;font:inherit;cursor:pointer}
.wc-send:disabled{opacity:.6}
.wc-lead{display:flex;flex-direction:column;gap:6px;background:#fff;border:1px solid #e3e6e1;border-radius:12px;padding:10px}
.wc-lead p{margin:0 0 4px}.wc-lead .wc-send{padding:10px}
.wc-human{text-align:center;font-size:12px;padding:6px;color:#1f4d3a;background:#fff;text-decoration:underline}
@media (max-width:768px){.wc-btn{bottom:152px}.wc-panel{right:0;bottom:0;width:100vw;max-width:100vw;height:100%;max-height:100%;border-radius:0}}
@media (prefers-color-scheme:dark){.wc-panel,.wc-form,.wc-human{background:#161a17;color:#eee}.wc-log,.wc-chips{background:#101311}.wc-bot,.wc-lead{background:#1d221e;border-color:#2c332d;color:#eee}.wc-input,.wc-lead input{background:#101311;color:#eee;border-color:#39423a}.wc-chip{background:#161a17;color:#cfe3d8;border-color:#5a8a74}.wc-form{border-color:#2c332d}}

/* --- Oct 2026 upgrade: privacy note, link buttons, feedback, alert, consent, nudge --- */
.wc-note{padding:6px 12px;font-size:11.5px;line-height:1.35;color:#5a625b;background:#eef1ec;border-bottom:1px solid #e3e6e1}
.wc-note a{color:#1f4d3a;text-decoration:underline}
.wc-wrap{display:flex;flex-direction:column;gap:5px;max-width:92%}
.wc-wrap-bot{align-self:flex-start}.wc-wrap-user{align-self:flex-end;align-items:flex-end}
.wc-wrap .wc-msg{max-width:100%}
.wc-links{display:flex;flex-direction:column;gap:6px}
.wc-link{display:block;text-align:center;text-decoration:none;background:#1f4d3a;color:#fff;border-radius:10px;padding:9px 12px;font-size:14px;font-weight:600}
.wc-link:hover{background:#173a2b}
.wc-fb{display:flex;gap:4px;align-items:center;font-size:11.5px;color:#6b736c}
.wc-fbtn{border:0;background:none;cursor:pointer;font-size:15px;line-height:1;padding:2px 4px;border-radius:6px;opacity:.75}
.wc-fbtn:hover{opacity:1;background:rgba(0,0,0,.06)}
.wc-alert{background:#fff4e5;border:1px solid #e8a33d;color:#5a3a00;font-weight:600}
.wc-consent{display:flex;gap:6px;align-items:flex-start;font-size:12px;line-height:1.35;color:#4a524b}
.wc-consent input{flex:0 0 auto;margin-top:2px}
.wc-consent a{color:#1f4d3a;text-decoration:underline}
.wc-nudge{position:fixed;right:18px;bottom:152px;z-index:9989;max-width:260px;display:flex;align-items:flex-start;gap:2px;background:#fff;color:#1b1b1b;border:1px solid #cfd4cc;border-radius:14px;box-shadow:0 8px 24px rgba(0,0,0,.18);padding:4px 4px 4px 4px}
.wc-nudge-text{flex:1;text-align:left;background:none;border:0;cursor:pointer;font:inherit;font-size:14px;line-height:1.35;color:inherit;padding:8px 6px 8px 10px}
.wc-nudge-x{background:none;border:0;cursor:pointer;font-size:20px;line-height:1;color:#6b736c;padding:2px 8px}
@media (max-width:768px){.wc-nudge{bottom:218px;right:10px;max-width:calc(100vw - 90px)}}
@media (prefers-color-scheme:dark){.wc-note{background:#1a1f1b;color:#aab1ab;border-color:#2c332d}.wc-note a,.wc-consent a{color:#8fd1ae}.wc-consent{color:#c7cdc8}.wc-nudge{background:#1d221e;color:#eee;border-color:#2c332d}.wc-alert{background:#33260f;color:#ffe2b0;border-color:#a06a14}.wc-fb{color:#a3aaa4}}

/* --- Typing dots + button colour safety (Oct 2026) ---
   The site's own button/link styles were overriding the chat's colours (green text on a
   green background). Every chat control below now sets BOTH its background and its text
   colour explicitly, in every state, with higher specificity than the site's theme. */
.wc-dots{display:inline-flex;gap:5px;align-items:center;padding:12px 14px}
.wc-dot{width:7px;height:7px;border-radius:50%;background:#8a948c;display:block;animation:wcdot 1.2s infinite ease-in-out}
.wc-dot:nth-child(2){animation-delay:.18s}.wc-dot:nth-child(3){animation-delay:.36s}
@keyframes wcdot{0%,60%,100%{transform:translateY(0);opacity:.45}30%{transform:translateY(-4px);opacity:1}}
@media (prefers-reduced-motion:reduce){.wc-dot{animation:none}}

.wc-panel a.wc-link,.wc-panel a.wc-link:link,.wc-panel a.wc-link:visited{background:#1f4d3a !important;color:#ffffff !important;-webkit-text-fill-color:#ffffff !important;border:1px solid #1f4d3a !important;text-decoration:none !important;box-shadow:none !important}
.wc-panel a.wc-link:hover,.wc-panel a.wc-link:focus,.wc-panel a.wc-link:active{background:#173a2b !important;color:#ffffff !important;-webkit-text-fill-color:#ffffff !important}
.wc-panel button.wc-send,.wc-panel button.wc-send:hover,.wc-panel button.wc-send:focus{background:#1f4d3a !important;color:#ffffff !important;-webkit-text-fill-color:#ffffff !important;border:0 !important}
.wc-panel button.wc-send:disabled{background:#1f4d3a !important;color:#ffffff !important;opacity:.6}
.wc-panel button.wc-chip,.wc-panel button.wc-chip:focus{background:#ffffff !important;color:#1f4d3a !important;-webkit-text-fill-color:#1f4d3a !important;border:1px solid #1f4d3a !important}
.wc-panel button.wc-chip:hover{background:#1f4d3a !important;color:#ffffff !important;-webkit-text-fill-color:#ffffff !important}
.wc-panel button.wc-close{background:transparent !important;color:#ffffff !important;-webkit-text-fill-color:#ffffff !important;border:0 !important}
.wc-panel button.wc-fbtn{background:transparent !important;color:inherit !important;border:0 !important}
.wc-panel a.wc-human,.wc-panel a.wc-human:visited{color:#1f4d3a !important;background:#ffffff !important;text-decoration:underline !important}
.wc-panel .wc-note a,.wc-panel .wc-consent a{color:#1f4d3a !important;background:transparent !important}
button.wc-btn,button.wc-btn:hover,button.wc-btn:focus{background:#1f4d3a !important;color:#ffffff !important;border:0 !important}
.wc-nudge button.wc-nudge-text{background:transparent !important;color:#1b1b1b !important;-webkit-text-fill-color:#1b1b1b !important;border:0 !important}
.wc-nudge button.wc-nudge-x{background:transparent !important;color:#5a625b !important;-webkit-text-fill-color:#5a625b !important;border:0 !important}
.wc-panel input.wc-input,.wc-panel .wc-lead input[type=text],.wc-panel .wc-lead input:not([type=checkbox]){background:#ffffff !important;color:#1b1b1b !important;-webkit-text-fill-color:#1b1b1b !important}
.wc-panel .wc-msg.wc-bot{color:#1b1b1b}.wc-panel .wc-msg.wc-user{color:#1b1b1b}
.wc-panel .wc-msg.wc-alert{color:#5a3a00}

@media (prefers-color-scheme:dark){
  .wc-panel a.wc-link,.wc-panel a.wc-link:link,.wc-panel a.wc-link:visited{background:#3a9d6c !important;border-color:#3a9d6c !important;color:#06180f !important;-webkit-text-fill-color:#06180f !important}
  .wc-panel a.wc-link:hover,.wc-panel a.wc-link:focus{background:#52b884 !important;color:#06180f !important;-webkit-text-fill-color:#06180f !important}
  .wc-panel button.wc-send,.wc-panel button.wc-send:hover,.wc-panel button.wc-send:focus,.wc-panel button.wc-send:disabled{background:#3a9d6c !important;color:#06180f !important;-webkit-text-fill-color:#06180f !important}
  .wc-panel button.wc-chip,.wc-panel button.wc-chip:focus{background:#1d221e !important;color:#bfe9d1 !important;-webkit-text-fill-color:#bfe9d1 !important;border-color:#4f8f6f !important}
  .wc-panel button.wc-chip:hover{background:#3a9d6c !important;color:#06180f !important;-webkit-text-fill-color:#06180f !important}
  .wc-panel a.wc-human,.wc-panel a.wc-human:visited{background:#161a17 !important;color:#8fd1ae !important}
  .wc-panel .wc-note a,.wc-panel .wc-consent a{color:#8fd1ae !important}
  .wc-panel .wc-msg.wc-bot{color:#eeeeee}.wc-panel .wc-msg.wc-user{color:#1b1b1b}
  .wc-panel .wc-msg.wc-alert{color:#ffe2b0}
  .wc-panel input.wc-input,.wc-panel .wc-lead input:not([type=checkbox]){background:#101311 !important;color:#eeeeee !important;-webkit-text-fill-color:#eeeeee !important}
  .wc-nudge button.wc-nudge-text{color:#eeeeee !important;-webkit-text-fill-color:#eeeeee !important}
  .wc-nudge button.wc-nudge-x{color:#aab1ab !important;-webkit-text-fill-color:#aab1ab !important}
  .wc-dot{background:#9aa59d}
}

/* bot identity */
.wc-who{display:flex;align-items:center;gap:10px;min-width:0}.wc-logo{object-fit:contain}
.wc-av{display:inline-grid;place-items:center;border-radius:50%;overflow:hidden;background:#e7efe9;color:#1f4d3a;font-weight:700;flex:none}.wc-av img{width:100%;height:100%;object-fit:cover;display:block}
.wc-av-head{width:38px;height:38px;border:2px solid rgba(255,255,255,.7)}.wc-av-sm{width:20px;height:20px;font-size:11px}.wc-av-btn{width:100%;height:100%}
.wc-btn.wc-btn-av{padding:0;overflow:hidden;border:2px solid #fff !important}
.wc-tag{display:flex;align-items:center;gap:6px;font-size:11px;opacity:.75;margin:0 0 3px 2px}
.wc-logo-pill{background:#fff;border-radius:6px;padding:3px 6px;box-sizing:content-box}
.wc-title .wc-logo{height:26px;width:auto;max-width:140px;margin:0 0 2px;object-fit:contain;object-position:left center;display:block}.wc-title .wc-logo-pill{height:22px;padding:3px 7px;background:#fff;border-radius:6px;box-sizing:content-box}
