/* The store's chat button (lib/chat-button.js; David, 2026-10-16, approved
   mockup "Store Chat Button Styles"). Fixed in a bottom corner of the page,
   above the store's own content and the customizer's bottom bar, below its
   dialogs. Every color comes from the store through --pcb-* on the button. */
.pcb{position:fixed;right:22px;bottom:22px;z-index:950;display:grid;justify-items:end;gap:14px;max-width:calc(100vw - 28px);font:400 15px/1.45 system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:#222;-webkit-font-smoothing:antialiased}
.pcb *,.pcb *::before,.pcb *::after{box-sizing:border-box}
.pcb.pcb-left{right:auto;left:22px;justify-items:start}
.pcb p{margin:0}
.pcb a{text-decoration:none}
/* The customizer's bottom bar (styles.css --workflow-nav-height) stays clear. */
.pcb.pcb-page-customizer{bottom:calc(var(--workflow-nav-height,66px) + 14px + env(safe-area-inset-bottom,0px))}
@media (max-width:767px){
  .pcb{right:14px;bottom:14px;max-width:calc(100vw - 28px)}
  .pcb.pcb-left{left:14px}
  .pcb.pcb-page-customizer{bottom:calc(var(--workflow-nav-height,58px) + 10px + env(safe-area-inset-bottom,0px))}
  .pcb.pcb-no-phones{display:none}
}
@media (min-width:768px){.pcb.pcb-no-computers{display:none}}
@media print{.pcb{display:none}}

.pcb-launch-row{display:flex;align-items:center;gap:12px}
.pcb-left .pcb-launch-row{flex-direction:row-reverse}
.pcb-launch{position:relative;width:60px;height:60px;flex:none;display:grid;place-items:center;margin:0;padding:0;border:0;border-radius:50%;background:var(--pcb-color);color:var(--pcb-ink);box-shadow:0 8px 22px rgba(0,0,0,.22);cursor:pointer;transition:transform .15s ease}
.pcb-launch:hover{transform:scale(1.05)}
.pcb-launch:focus-visible,.pcb a:focus-visible,.pcb-close:focus-visible{outline:3px solid var(--pcb-color);outline-offset:3px}
.pcb-launch svg{display:block}
.pcb-launch .pcb-close-icon,.pcb-open .pcb-launch .pcb-open-icon,.pcb-open .pcb-dot{display:none}
.pcb-open .pcb-launch .pcb-close-icon{display:block}
.pcb-dot{position:absolute;top:3px;right:3px;width:12px;height:12px;border:2px solid #fff;border-radius:50%;background:#ff2a2a}
.pcb-label{padding:7px 11px;border-radius:8px;background:#fff;color:#333;box-shadow:0 4px 14px rgba(0,0,0,.14);font-size:13px;white-space:nowrap;cursor:pointer;max-width:calc(100vw - 110px);overflow:hidden;text-overflow:ellipsis}
.pcb-direct .pcb-label{cursor:default}
.pcb-open .pcb-label{display:none}

.pcb-panel{width:330px;max-width:calc(100vw - 28px);max-height:calc(100vh - 120px);max-height:calc(100dvh - 120px);overflow:auto;border-radius:14px;background:#fff;box-shadow:0 14px 40px rgba(0,0,0,.2);animation:pcb-rise .18s ease-out}
.pcb-panel[hidden]{display:none}
.pcb-style-c .pcb-panel{width:auto;overflow:visible;background:none;box-shadow:none;border-radius:0}
@keyframes pcb-rise{from{transform:translateY(8px);opacity:.4}to{transform:none;opacity:1}}
.pcb-close{width:34px;height:34px;flex:none;display:grid;place-items:center;margin:-6px -8px -6px 0;padding:0;border:0;border-radius:8px;background:transparent;color:inherit;cursor:pointer;opacity:.75}
.pcb-close:hover{opacity:1}
.pcb-body{display:grid;gap:14px;padding:16px 18px 18px}
.pcb-greeting{color:#555;font-size:14.5px}
.pcb-round{width:48px;height:48px;flex:none;display:grid;place-items:center;border-radius:50%;color:var(--pcb-app-ink)}
.pcb-app-whatsapp{background:var(--pcb-whatsapp)}
.pcb-app-viber{background:var(--pcb-viber)}
.pcb-rounds{display:flex;gap:12px}
.pcb-rounds .pcb-round{transition:transform .15s ease}
.pcb-rounds .pcb-round:hover{transform:scale(1.06)}

/* a Card */
.pcb-a-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;background:var(--pcb-color);color:var(--pcb-ink);font-size:20px;font-weight:700;line-height:1.2}

/* b Agent */
.pcb-b-head{display:grid;grid-template-columns:40px minmax(0,1fr) 34px;align-items:center;gap:10px;padding:16px 18px 14px;border-bottom:1px solid #eee;background:#f6f6f6}
.pcb-avatar{position:relative;width:40px;height:40px;display:grid;place-items:center;border-radius:50%;background:var(--pcb-color);color:var(--pcb-ink);font-weight:700}
.pcb-who strong{display:block;font-size:16px;overflow-wrap:anywhere}
.pcb-who small{display:block;color:#666;font-size:13px}
.pcb-style-b .pcb-body{gap:12px;padding:12px 16px 16px}
.pcb-time{text-align:center;color:#999;font-size:11px;min-height:1em}
.pcb-bubble{max-width:88%;padding:10px 13px;border-radius:14px 14px 14px 4px;background:#f0f0f0;font-size:14.5px}
.pcb-start{margin-top:4px!important;text-align:center;font-size:15px;font-weight:700}
.pcb-bigs{display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:8px}
.pcb-big{display:flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:12px 10px;border-radius:10px;color:var(--pcb-app-ink);font-size:15px;font-weight:700}
.pcb-big:hover{filter:brightness(1.06)}

/* c Simple */
.pcb-stack{display:grid;justify-items:end;gap:10px;animation:pcb-rise .18s ease-out}
.pcb-left .pcb-stack{justify-items:start}
.pcb-stack-item{display:flex;align-items:center;gap:10px;color:#333}
.pcb-left .pcb-stack-item{flex-direction:row-reverse}
.pcb-stack-name{padding:6px 10px;border-radius:8px;background:#fff;box-shadow:0 4px 14px rgba(0,0,0,.14);font-size:13px}
.pcb-stack-item .pcb-round{box-shadow:0 6px 16px rgba(0,0,0,.2)}

/* d List */
.pcb-d-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 18px 2px}
.pcb-d-head .pcb-heading{font-size:17px;line-height:1.3}
.pcb-style-d .pcb-greeting{padding:2px 18px 0;font-size:13.5px;color:#666}
.pcb-list{display:grid;gap:8px;padding:12px 12px 14px}
.pcb-row{display:grid;grid-template-columns:40px minmax(0,1fr) 16px;align-items:center;gap:12px;padding:10px 12px;border:1px solid #eee;border-radius:10px;background:#fff;color:#222}
.pcb-row:hover{border-color:var(--pcb-color)}
.pcb-row .pcb-round{width:40px;height:40px}
.pcb-row-text strong{display:block;font-size:15px}
.pcb-row-text small{display:block;color:#777;font-size:12.5px}
.pcb-row svg:last-child{color:#999}

@media (prefers-reduced-motion:reduce){
  .pcb *,.pcb *::before,.pcb *::after{animation:none!important;transition:none!important}
  .pcb-launch:hover,.pcb-rounds .pcb-round:hover{transform:none}
}
/* Widget size (Admin, David 2026-10-18): the closed button and its label
   together, from the corner they sit in. zoom (not transform) so a bigger
   button also moves the open window up instead of covering it. Absent, the
   button is today's size. */
.pcb.pcb-sized .pcb-launch-row{zoom:var(--pcb-scale,1)}
