
#abGate { position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 90; display: flex; align-items: center; justify-content: center; padding: 24px;
  background: radial-gradient(900px 620px at 82% 14%, rgba(123,18,18,.42), transparent 62%), radial-gradient(800px 560px at 12% 90%, rgba(153,154,152,.1), transparent 64%), var(--preto);
  transition: opacity .4s var(--ease), transform .4s var(--ease); }
#abGate.fora { opacity: 0; transform: scale(1.02); pointer-events: none; }
.ab-box { width: min(460px, 100%); max-height: 100%; overflow-y: auto; padding: 36px 32px 28px; background: linear-gradient(160deg, #222, #161616); border: 1px solid #3a3a3a; border-top: 4px solid var(--vermelho);
  box-shadow: 0 40px 90px rgba(0,0,0,.6); color: var(--gelo); text-align: center; font-family: var(--f-texto); }
.ab-simb { display: block; width: 92px; height: 32px; margin: 0 auto 18px; color: var(--gelo); }
.ab-box h1 { margin: 0 0 8px; font: 300 28px/1.15 var(--f-texto); color: #fff; letter-spacing: -.01em; }
.ab-sub { margin: 0 0 20px; font-size: 15px; line-height: 1.5; color: rgba(242,242,242,.82); }
.ab-erro { margin: 0 0 16px; padding: 10px 12px; font-size: 14px; background: rgba(194,48,48,.16); border-left: 3px solid #c23030; color: #fff; text-align: left; }
.ab-box label { display: block; margin-bottom: 14px; text-align: left; font: 700 11px var(--f-rot); letter-spacing: .16em; text-transform: uppercase; color: rgba(242,242,242,.8); }
.ab-box input { display: block; width: 100%; margin-top: 7px; padding: 12px 14px; border: 1px solid #4a4a4a; background: #2b2b2b; color: #fff; font: 400 16px/1.3 var(--f-texto); letter-spacing: normal; text-transform: none; }
.ab-box input:focus { outline: 0; border-color: #fff; }
#abBusca { margin-bottom: 12px; }
.ab-cta { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 0 22px; border: 0; cursor: pointer; color: #fff; font: 600 12.5px var(--f-rot); letter-spacing: .14em; text-transform: uppercase;
  background: linear-gradient(110deg, #b23030 0%, var(--vermelho) 40%, #c23d3d 65%, var(--vermelho) 100%); background-size: 220% 100%; animation: akAnda 7s linear infinite; transition: filter .2s; }
.ab-cta:hover { filter: brightness(1.12); }
.ab-cta:disabled { filter: saturate(.3) brightness(.8); cursor: default; }
form .ab-cta { width: 100%; margin-top: 6px; }
.ab-sec { background: #2b2b2b; border: 1px solid #555; animation: none; }
.ab-zap { background: var(--whats); animation: none; }
.ab-nota { margin: 16px 0 0; font-size: 13px; line-height: 1.6; color: rgba(242,242,242,.72); }
.ab-pe { margin-top: 18px; padding-top: 14px; border-top: 1px solid #333; }
.ab-link { padding: 0; border: 0; background: none; color: #fff; font: inherit; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.ab-lista { max-height: 300px; overflow-y: auto; text-align: left; }
.ab-item { display: flex; justify-content: space-between; align-items: center; width: 100%; margin-bottom: 6px; padding: 11px 14px; border: 1px solid #444; border-left: 3px solid var(--vermelho); background: #2b2b2b; color: #fff; font: 400 15px var(--f-texto); text-align: left; cursor: pointer; transition: background-color .2s; }
.ab-item:hover { background: var(--vermelho); }
.ab-item span { margin-left: 12px; font-size: 13px; color: rgba(242,242,242,.75); }
.ab-novo { display: block; width: 100%; margin-top: 8px; padding: 11px 14px; border: 1px dashed #666; background: none; color: rgba(242,242,242,.88); font: 400 14px var(--f-texto); text-align: left; cursor: pointer; }
.ab-novo:hover { border-color: #fff; }
#abToast { position: fixed; left: 50%; bottom: 76px; z-index: 95; max-width: min(560px, 92vw); padding: 12px 18px; transform: translate(-50%, 20px); opacity: 0; pointer-events: none;
  background: #111; border: 1px solid #444; border-left: 3px solid var(--vermelho); color: #fff; font: 400 14.5px var(--f-texto); transition: opacity .3s, transform .3s; }
#abToast.on { opacity: 1; transform: translate(-50%, 0); }
#abSync { position: fixed; right: 14px; bottom: 70px; z-index: 31; padding: 5px 10px; background: rgba(0,0,0,.7); border: 1px solid #555; color: rgba(242,242,242,.8); font: 600 10px var(--f-rot); letter-spacing: .14em; text-transform: uppercase; }
#abLink { position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 80; display: none; align-items: center; justify-content: center; padding: 24px; background: rgba(4,4,4,.88); }
#abLink.on { display: flex; }
.al-box { position: relative; width: min(560px, 100%); padding: 30px 30px 24px; background: linear-gradient(160deg, #222, #161616); border: 1px solid #3a3a3a; border-top: 4px solid var(--vermelho); box-shadow: 0 40px 90px rgba(0,0,0,.6); color: #fff; }
.al-box h2 { margin: 0 0 8px; font: 300 26px/1.2 var(--f-texto); }
.al-box .ak-rot { margin-bottom: 12px; }
.al-box input { display: block; width: 100%; margin-bottom: 14px; padding: 11px 12px; border: 1px solid #4a4a4a; background: #2b2b2b; color: #fff; font: 400 14px var(--f-texto); }
.al-acoes { display: flex; flex-wrap: wrap; gap: 8px; }
.al-x { position: absolute; top: 12px; right: 12px; width: 38px; height: 38px; border: 0; background: var(--vermelho); color: #fff; font-size: 22px; cursor: pointer; }
#bLink { background: #2b2b2b; }
body.visita .ak-barra, body.visita .ak-indice-btn { display: none !important; }
