:root{
  --pg5-bg:#07110d;
  --pg5-panel:#08130f;
  --pg5-card:#0d1b15;
  --pg5-line:#1d4937;
  --pg5-line-soft:#18362b;
  --pg5-text:#f4f7f5;
  --pg5-muted:#a7b9b0;
  --pg5-green:#36e5a4;
  --pg5-green-2:#18c982;
  --pg5-gold:#d8b45b;
  --pg5-shadow:0 24px 70px rgba(0,0,0,.42);
}

#pg5-root,
#pg5-root *{box-sizing:border-box}

.pg5-launcher{
  position:fixed;
  right:24px;
  bottom:18px;
  z-index:99990;
  height:50px;
  padding:0 16px 0 9px;
  border:1px solid rgba(54,229,164,.30);
  border-radius:999px;
  background:rgba(7,17,13,.97);
  color:var(--pg5-text);
  display:flex;
  align-items:center;
  gap:9px;
  box-shadow:0 12px 32px rgba(0,0,0,.28);
  cursor:pointer;
  font:800 12px/1 Arial,sans-serif;
  letter-spacing:.10em;
  transition:.2s ease;
}
.pg5-launcher:hover{transform:translateY(-2px);border-color:rgba(54,229,164,.65)}
.pg5-launcher-icon,
.pg5-avatar{
  width:34px;height:34px;
  display:grid;place-items:center;
  border-radius:50%;
  color:var(--pg5-green);
  background:radial-gradient(circle at 50% 42%,rgba(54,229,164,.18),rgba(54,229,164,.04) 65%,transparent 66%);
  border:1px solid rgba(54,229,164,.22);
}
.pg5-launcher-icon svg{width:23px;height:23px;filter:drop-shadow(0 0 7px rgba(54,229,164,.55))}
.pg5-avatar{width:36px;height:36px;flex:0 0 auto}
.pg5-avatar svg{width:24px;height:24px;filter:drop-shadow(0 0 8px rgba(54,229,164,.6))}
.pg5-online-dot{
  width:7px;height:7px;border-radius:50%;
  background:var(--pg5-green);
  box-shadow:0 0 10px rgba(54,229,164,.8);
}

.pg5-panel{
  position:fixed;
  right:24px;
  bottom:78px;
  z-index:99989;
  width:min(390px,calc(100vw - 28px));
  height:min(650px,calc(100vh - 115px));
  display:grid;
  grid-template-rows:auto 1fr auto auto auto auto;
  overflow:hidden;
  border:1px solid rgba(54,229,164,.24);
  border-radius:24px;
  background:rgba(7,17,13,.985);
  color:var(--pg5-text);
  box-shadow:var(--pg5-shadow);
  opacity:0;
  transform:translateY(14px) scale(.985);
  pointer-events:none;
  transition:.2s ease;
  font-family:Arial,Helvetica,sans-serif;
}
.pg5-panel.is-open{opacity:1;transform:none;pointer-events:auto}

.pg5-header{
  min-height:64px;
  padding:12px 14px;
  display:flex;
  align-items:center;
  gap:10px;
  border-bottom:1px solid var(--pg5-line-soft);
  background:linear-gradient(180deg,rgba(15,35,27,.94),rgba(8,19,15,.94));
}
.pg5-headcopy{min-width:0;flex:1}
.pg5-headcopy strong{
  display:block;
  font-size:13px;
  letter-spacing:.13em;
}
.pg5-headcopy span{
  display:flex;align-items:center;gap:6px;
  margin-top:4px;
  font-size:10px;color:var(--pg5-muted)
}
.pg5-headcopy i{width:6px;height:6px;background:var(--pg5-green);border-radius:50%}
.pg5-close{
  width:34px;height:34px;
  border:1px solid var(--pg5-line-soft);
  border-radius:50%;
  background:transparent;color:var(--pg5-muted);
  font-size:23px;line-height:1;cursor:pointer
}

.pg5-messages{
  overflow:auto;
  padding:14px 12px 18px;
  scrollbar-width:thin;
  scrollbar-color:#295744 transparent;
}
.pg5-msg{display:flex;margin:0 0 10px}
.pg5-msg-bot{justify-content:flex-start}
.pg5-msg-user{justify-content:flex-end}
.pg5-bubble{
  max-width:88%;
  border:1px solid var(--pg5-line-soft);
  border-radius:15px;
  padding:11px 12px;
  font-size:12px;
  line-height:1.5;
  background:rgba(13,27,21,.82);
  color:var(--pg5-text);
  word-break:break-word;
}
.pg5-msg-user .pg5-bubble{
  background:linear-gradient(135deg,var(--pg5-green),#25d992);
  color:#032419;
  border-color:transparent;
  font-weight:700;
  border-bottom-right-radius:5px;
}
.pg5-msg-bot .pg5-bubble{border-bottom-left-radius:5px}
.pg5-bubble a{color:var(--pg5-green);font-weight:800;text-decoration:none}
.pg5-bubble a:hover{text-decoration:underline}

.pg5-typing .pg5-bubble{display:flex;gap:5px;align-items:center;min-width:52px}
.pg5-typing span{
  width:6px;height:6px;border-radius:50%;
  background:var(--pg5-green);
  opacity:.35;
  animation:pg5dots 1s infinite ease-in-out
}
.pg5-typing span:nth-child(2){animation-delay:.15s}
.pg5-typing span:nth-child(3){animation-delay:.3s}
@keyframes pg5dots{0%,60%,100%{transform:translateY(0);opacity:.3}30%{transform:translateY(-4px);opacity:1}}

.pg5-quick,
.pg5-dynamic-quick{
  display:flex;
  gap:7px;
  overflow-x:auto;
  padding:8px 10px;
  scrollbar-width:none;
}
.pg5-quick{border-top:1px solid var(--pg5-line-soft)}
.pg5-dynamic-quick{padding:2px 0 12px}
.pg5-quick::-webkit-scrollbar,
.pg5-dynamic-quick::-webkit-scrollbar{display:none}
.pg5-quick button,
.pg5-dynamic-quick button{
  flex:0 0 auto;
  border:1px solid #2a4a3d;
  border-radius:999px;
  padding:7px 10px;
  background:#0a1712;
  color:#dce7e2;
  font-size:10px;
  font-weight:700;
  cursor:pointer;
}
.pg5-quick button:hover,
.pg5-dynamic-quick button:hover{border-color:var(--pg5-green);color:var(--pg5-green)}

.pg5-preventa{
  margin:0 10px 8px;
  border:1px solid rgba(216,180,91,.26);
  border-radius:10px;
  background:rgba(216,180,91,.07);
  padding:8px 9px;
  color:#b9c5bf;
  font-size:9px;
  line-height:1.45;
}
.pg5-preventa strong{color:var(--pg5-gold)}

.pg5-composer{
  display:grid;
  grid-template-columns:1fr 42px;
  gap:7px;
  padding:0 10px 8px;
}
.pg5-input{
  width:100%;
  height:42px;
  border:1px solid rgba(54,229,164,.65);
  border-radius:13px;
  outline:0;
  padding:0 12px;
  background:#07120e;
  color:#fff;
  font-size:12px;
}
.pg5-input::placeholder{color:#7f958a}
.pg5-input:focus{box-shadow:0 0 0 3px rgba(54,229,164,.10)}
.pg5-send{
  height:42px;width:42px;
  display:grid;place-items:center;
  border:0;border-radius:50%;
  background:var(--pg5-green);
  color:#053326;
  cursor:pointer;
  transition:.18s ease
}
.pg5-send:hover{transform:scale(1.04)}
.pg5-send svg{width:20px;height:20px}

.pg5-legal{
  padding:0 11px 10px;
  color:#7f958a;
  font-size:8px;
  line-height:1.4;
}
.pg5-legal a{color:var(--pg5-green);text-decoration:none}

/* MINI AGENDA PRO */
.pg5-calendar{
  margin:4px 0 14px;
  border:1px solid rgba(54,229,164,.28);
  border-radius:17px;
  background:linear-gradient(180deg,rgba(14,31,24,.96),rgba(8,20,15,.98));
  overflow:hidden;
}
.pg5-cal-head{
  padding:12px 12px 10px;
  display:flex;align-items:flex-start;gap:10px;
  border-bottom:1px solid var(--pg5-line-soft)
}
.pg5-cal-head>div{flex:1;min-width:0}
.pg5-cal-head strong{display:block;font-size:12px;color:#fff}
.pg5-cal-head span{display:block;margin-top:4px;font-size:9px;line-height:1.4;color:var(--pg5-muted)}
.pg5-cal-refresh{
  flex:0 0 auto;
  width:30px;height:30px;
  border:1px solid #2a5845;border-radius:50%;
  background:#0b1913;color:var(--pg5-green);
  font-size:18px;cursor:pointer
}
.pg5-cal-nav{
  display:grid;
  grid-template-columns:28px 1fr 28px;
  gap:5px;
  align-items:center;
  padding:10px 9px 6px;
}
.pg5-cal-days{
  display:flex;
  gap:6px;
  overflow-x:auto;
  scroll-snap-type:x proximity;
  scrollbar-width:none;
}
.pg5-cal-days::-webkit-scrollbar{display:none}
.pg5-cal-day{
  flex:0 0 82px;
  scroll-snap-align:center;
  min-height:48px;
  padding:7px 6px;
  border:1px solid #28493b;
  border-radius:11px;
  background:#091711;
  color:#dce7e2;
  cursor:pointer;
}
.pg5-cal-day strong{display:block;font-size:10px}
.pg5-cal-day span{display:block;margin-top:3px;font-size:8px;color:#80968b}
.pg5-cal-day.is-active{
  border-color:var(--pg5-green);
  background:rgba(54,229,164,.10);
  box-shadow:inset 0 0 0 1px rgba(54,229,164,.12)
}
.pg5-cal-day.is-active strong{color:var(--pg5-green)}
.pg5-cal-arrow{
  width:28px;height:34px;
  border:1px solid #27483a;
  border-radius:9px;
  background:#091711;color:var(--pg5-green);
  cursor:pointer;font-size:20px
}
.pg5-cal-arrow:disabled{opacity:.25;cursor:not-allowed}
.pg5-cal-selected-day{
  padding:5px 12px 7px;
  color:#fff;
  font-size:11px;
  font-weight:800;
}
.pg5-cal-times{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:7px;
  padding:0 10px 10px;
}
.pg5-cal-time{
  height:34px;
  border:1px solid #2b4b3e;
  border-radius:10px;
  background:#08150f;
  color:#fff;
  font-size:11px;
  font-weight:800;
  cursor:pointer;
}
.pg5-cal-time:hover{border-color:rgba(54,229,164,.65)}
.pg5-cal-time.is-active{
  background:var(--pg5-green);
  border-color:var(--pg5-green);
  color:#03251a;
  box-shadow:0 0 18px rgba(54,229,164,.22)
}
.pg5-cal-reserve{
  width:calc(100% - 20px);
  margin:0 10px 7px;
  min-height:40px;
  border:0;border-radius:11px;
  background:linear-gradient(135deg,var(--pg5-green),var(--pg5-green-2));
  color:#03251a;
  font-size:11px;font-weight:900;
  cursor:pointer;
}
.pg5-cal-reserve:disabled{opacity:.35;cursor:not-allowed;box-shadow:none}
.pg5-cal-full{
  display:block;
  margin:0 10px 11px;
  text-align:center;
  color:#b8c8c0;
  font-size:9px;
  font-weight:700;
  text-decoration:none;
}
.pg5-cal-full:hover{color:var(--pg5-green)}

@media (max-width:640px){
  .pg5-launcher{
    right:12px;bottom:12px;
    height:48px;padding-right:13px
  }
  .pg5-panel{
    right:8px;
    bottom:68px;
    width:calc(100vw - 16px);
    height:min(680px,calc(100dvh - 82px));
    border-radius:20px
  }
  .pg5-cal-times{grid-template-columns:repeat(3,minmax(0,1fr))}
}

@media (max-width:390px){
  .pg5-launcher-label{display:none}
  .pg5-launcher{width:50px;padding:0;justify-content:center}
  .pg5-online-dot{display:none}
  .pg5-cal-times{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (prefers-reduced-motion:reduce){
  .pg5-panel,.pg5-launcher,.pg5-send{transition:none}
  .pg5-typing span{animation:none}
}