/* "Seu evento": floating bar + drawer, created by /js/seu-evento.js.
   Shared by the home and the product pages, so the colors are declared here (like the Cases block does). */
.ug-evento{
  --ug-bg:#0f1411;
  --ug-bg-2:#141b16;
  --ug-kelly:#4CBB17;
  --ug-kelly-2:#5FE021;
  --ug-white:#F2F3F4;
  --ug-gray:#8A938B;
  --ug-line:rgba(242,243,244,.12);
  --ug-ease:cubic-bezier(.22,.61,.36,1);
  position:fixed; left:50%; bottom:max(16px, env(safe-area-inset-bottom)); z-index:60;   /* under the mobile menu (70) */
  width:min(560px, calc(100% - 32px));
  transform:translate(-50%, 140%); visibility:hidden;
  transition:transform .45s var(--ug-ease), visibility 0s linear .45s;
  font-family:"Oxanium", system-ui, sans-serif; color:var(--ug-white);
}
.ug-evento.is-visivel{ transform:translate(-50%, 0); visibility:visible; transition:transform .45s var(--ug-ease); }
/* home: the bar lives right after #contato. Hidden it stays fixed (takes no room); visible it is sticky, so it rides
   the bottom of the screen and parks under the form when the visitor reaches it, never on top of the form's end */
.ug-evento--doca{ left:0; right:0; margin:0 auto 24px; transform:translateY(140%); }
.ug-evento--doca.is-visivel{ position:sticky; transform:none; }
body.has-ug-evento:has(> .ug-evento--doca){ padding-bottom:0; }   /* nothing fixed covers the footer */

.ug-evento__barra{
  display:flex; align-items:center; gap:6px; padding:6px;
  background:var(--ug-bg); border:1px solid rgba(76,187,23,.45); border-radius:999px;
  box-shadow:0 18px 50px -18px rgba(0,0,0,.9), 0 0 0 1px rgba(0,0,0,.35);
}
.ug-evento__abrir{
  flex:1 1 auto; min-width:0; min-height:44px; display:flex; align-items:center; gap:.4em;
  padding:0 16px; cursor:pointer; text-align:left; white-space:nowrap;
  font:inherit; font-weight:600; font-size:.9rem; letter-spacing:.02em; color:var(--ug-white);
  background:transparent; border:0; border-radius:999px;
  transition:background .25s;
}
.ug-evento__abrir:hover{ background:var(--ug-bg-2); }
.ug-evento__titulo{ color:var(--ug-gray); overflow:hidden; text-overflow:ellipsis; }
.ug-evento__n{ display:inline-block; color:var(--ug-white); }
.ug-evento__seta{ color:var(--ug-kelly); transition:transform .3s var(--ug-ease); }
.ug-evento__abrir[aria-expanded="true"] .ug-evento__seta{ transform:rotate(180deg); }
.ug-evento__cta{
  flex:none; min-height:44px; display:inline-flex; align-items:center; padding:0 20px;
  font-weight:700; font-size:.85rem; letter-spacing:.04em; white-space:nowrap; text-decoration:none;
  color:#06160a; background:var(--ug-kelly); border-radius:999px;
  transition:background .25s;
}
.ug-evento__cta:hover{ background:var(--ug-kelly-2); }
.ug-evento__abrir:focus-visible, .ug-evento__cta:focus-visible, .ug-evento__x:focus-visible{ outline:2px solid var(--ug-kelly); outline-offset:2px; }

/* drawer, above the bar */
.ug-evento__lista{
  position:absolute; left:0; right:0; bottom:calc(100% + 10px);
  max-height:60vh; overflow:auto; padding:8px 16px;
  background:var(--ug-bg); border:1px solid var(--ug-line); border-radius:16px;
  box-shadow:0 24px 60px -20px rgba(0,0,0,.9);
}
.ug-evento__lista[hidden]{ display:none; }
.ug-evento__grupos, .ug-evento__itens{ list-style:none; margin:0; padding:0; }
.ug-evento__grupo{ padding:8px 0; }
.ug-evento__grupo + .ug-evento__grupo{ border-top:1px solid var(--ug-line); }
.ug-evento__fam, .ug-evento__item{ display:flex; align-items:center; justify-content:space-between; gap:12px; }
.ug-evento__fam{ font-weight:700; font-size:1rem; color:var(--ug-kelly); }
.ug-evento__item{ padding-left:14px; font-family:"Inter", system-ui, sans-serif; font-size:.9rem; color:var(--ug-white); }
.ug-evento__item--vazio{ min-height:44px; color:var(--ug-gray); font-style:italic; }
.ug-evento__x{
  flex:none; width:44px; height:44px; display:grid; place-items:center; cursor:pointer;
  font:inherit; font-size:1.3rem; line-height:1; color:var(--ug-gray);
  background:transparent; border:0; border-radius:8px;
  transition:color .2s, background .2s;
}
.ug-evento__x:hover{ color:var(--ug-white); background:var(--ug-bg-2); }
/* the entry that just came in (the drawer opens by itself after an add) */
.ug-evento__fam.is-novo, .ug-evento__item.is-novo{
  margin:0 -8px; padding-left:8px; border-radius:8px;
  background:rgba(76,187,23,.16); animation:ug-novo 1.4s var(--ug-ease) both;
}
.ug-evento__item.is-novo{ padding-left:22px; }
.ug-evento__item.is-novo > span::before{ content:"✓ "; color:var(--ug-kelly); }
.ug-evento__fam.is-novo > span::before{ content:"✓ "; }
@keyframes ug-novo{ 0%{ background:rgba(76,187,23,.45); } 100%{ background:rgba(76,187,23,.16); } }

/* "flies to the bar": a copy of the card's media, animated by the JS */
.ug-voo{
  position:fixed; z-index:61; pointer-events:none; overflow:hidden; border-radius:12px;
  transform-origin:center; will-change:transform, opacity;
  box-shadow:0 0 0 2px var(--ug-kelly, #4CBB17), 0 12px 30px -10px rgba(0,0,0,.8);
}
.ug-voo > *{ display:block; width:100%; height:100%; margin:0; object-fit:cover; }
.ug-evento__n.is-pulso{ animation:ug-pulso .3s var(--ug-ease); }
@keyframes ug-pulso{ 0%{ transform:scale(1); } 50%{ transform:scale(1.25); color:var(--ug-kelly); } 100%{ transform:scale(1); } }

/* product pages: "+ Adicionar ao seu evento" under the hero lead (the .btn look comes from cases.css) */
.case-hero [data-ug-produto]{ margin-top:32px; min-height:44px; }
.case-hero [data-ug-produto][aria-pressed="true"]{ background:transparent; color:#4CBB17; box-shadow:inset 0 0 0 1.5px #4CBB17; }

/* keep the last content clear of the bar; a focused or invalid form field scrolls to above it, not behind it */
body.has-ug-evento{ padding-bottom:96px; }
html:has(> body.has-ug-evento){ scroll-padding-bottom:96px; }

@media (max-width:420px){
  .ug-evento__abrir{ padding:0 12px; font-size:.8rem; }
  .ug-evento__cta{ padding:0 14px; font-size:.78rem; letter-spacing:.02em; }
}
@media (prefers-reduced-motion: reduce){
  .ug-evento, .ug-evento.is-visivel, .ug-evento__seta{ transition:none; }
  .ug-evento__n.is-pulso, .ug-evento__fam.is-novo, .ug-evento__item.is-novo{ animation:none; }
  .ug-voo{ display:none; }
}
