/* Desert Skies Contracting chat widget — colors baked from config/brand.json by build.mjs */
.sb-chat{--sb-clay:#E0701F;--sb-clay-dark:#A9520F;--sb-sand:#E9EBE8;--sb-cream:#F3F4F2;--sb-ink:#121416;--sb-stone:#565C63;--sb-sage:#5E8C7F;--sb-white:#FFFFFF;
  position:fixed;right:16px;bottom:16px;z-index:2147483000;font-family:"Satoshi",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;font-size:15px;line-height:1.4;color:var(--sb-ink)}
.sb-chat *{box-sizing:border-box}
.sb-chat__bubble{position:relative;width:60px;height:60px;border:0;border-radius:50%;background:var(--sb-clay);color:var(--sb-white);cursor:pointer;display:grid;place-items:center;box-shadow:0 10px 30px rgba(31,27,24,.25);transition:transform .2s ease,background .2s ease}
.sb-chat__bubble:hover{transform:translateY(-2px);background:var(--sb-clay-dark)}
.sb-chat__bubble:focus-visible{outline:3px solid var(--sb-sage);outline-offset:3px}
.sb-chat__badge{position:absolute;top:-2px;right:-2px;min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:var(--sb-ink);color:var(--sb-white);font-size:12px;font-weight:700;display:grid;place-items:center}
.sb-chat__panel{position:absolute;right:0;bottom:72px;width:min(380px,calc(100vw - 32px));height:min(560px,calc(100vh - 110px));display:flex;flex-direction:column;background:var(--sb-cream);border-radius:18px;overflow:hidden;box-shadow:0 24px 60px rgba(31,27,24,.28);border:1px solid rgba(31,27,24,.08)}
.sb-chat__head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;background:var(--sb-clay);color:var(--sb-white)}
.sb-chat__head strong{display:block;font-family:"Clash Display",Georgia,serif;font-size:17px;letter-spacing:.01em}
.sb-chat__status{display:block;font-size:12px;opacity:.85}
.sb-chat__close{border:0;background:transparent;color:var(--sb-white);font-size:26px;line-height:1;cursor:pointer;padding:0 4px}
.sb-chat__log{flex:1;overflow-y:auto;padding:16px 14px;display:flex;flex-direction:column;gap:10px;background:var(--sb-sand)}
.sb-chat__msg{max-width:84%;padding:10px 13px;border-radius:14px;white-space:pre-wrap;word-wrap:break-word}
.sb-chat__msg--bot{align-self:flex-start;background:var(--sb-white);border-bottom-left-radius:4px;box-shadow:0 1px 2px rgba(31,27,24,.08)}
.sb-chat__msg--user{align-self:flex-end;background:var(--sb-clay);color:var(--sb-white);border-bottom-right-radius:4px}
.sb-chat__typing{color:var(--sb-stone);letter-spacing:.2em}
.sb-chat__form{display:flex;gap:8px;padding:10px;border-top:1px solid rgba(31,27,24,.08);background:var(--sb-cream)}
.sb-chat__input{flex:1;border:1px solid rgba(31,27,24,.15);border-radius:12px;padding:10px 12px;font:inherit;background:var(--sb-white);color:var(--sb-ink)}
.sb-chat__input:focus{outline:2px solid var(--sb-sage);border-color:transparent}
.sb-chat__send{width:44px;border:0;border-radius:12px;background:var(--sb-ink);color:var(--sb-white);font-size:18px;cursor:pointer}
.sb-chat__call{display:block;text-align:center;padding:12px;background:var(--sb-clay-dark);color:var(--sb-white);text-decoration:none;font-weight:600}
.sb-chat__call:hover{background:var(--sb-ink)}
@media (max-width:480px){.sb-chat{right:12px;bottom:12px}.sb-chat__panel{bottom:70px;height:min(72vh,calc(100vh - 100px))}}
@media (prefers-reduced-motion:reduce){.sb-chat__bubble{transition:none}}

.sb-chat__panel[hidden]{display:none}
