








.ah-motor.pv { padding: 12px 14px; display: grid; gap: 10px; }
.pv-cab { display: flex; justify-content: space-between; align-items: center; gap: 10px; flex-wrap: wrap; }
.pv-t-sec { font-size: 11px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--txt-3); }
.pv-cab-dir { display: flex; align-items: center; gap: 8px; }
.pv-conta { font-size: 12px; color: var(--txt-3); }
.pv-conta b { color: var(--txt); display: inline-block; }
.pv-conta b.pv-bate { animation: pvBate .35s cubic-bezier(.2, 1.8, .4, 1); }
@keyframes pvBate { from { transform: scale(1.7); color: var(--info); } to { transform: none; } }
.pv-add { display: inline-flex; align-items: center; gap: 6px; height: 30px; padding: 0 12px; border-radius: 8px;
  border: 1px solid var(--info); background: rgba(77,159,255,.1); color: var(--txt); font: inherit; font-weight: 700; font-size: 13px; cursor: pointer; }
.pv-add:hover { background: rgba(77,159,255,.2); }
.pv-recado { font-size: 12.5px; color: var(--txt-2); }
.pv-recado:empty { display: none; }
.pv-recado.pv-on { animation: pvRecado .25s ease-out; }
@keyframes pvRecado { from { opacity: 0; transform: translateY(-3px); } to { opacity: 1; transform: none; } }

.pv-av { width: 34px; height: 34px; border-radius: 50%; display: grid; place-items: center; font-weight: 800; color: #fff; flex: none; overflow: hidden; }
.pv-av img { width: 100%; height: 100%; object-fit: cover; display: block; }
.pv-hexa { clip-path: polygon(50% 0, 97.5% 25.5%, 97.5% 74.5%, 50% 100%, 2.5% 74.5%, 2.5% 25.5%); border-radius: 0 !important; }






.pv-faixa { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)) minmax(0, 1.15fr); gap: 10px; align-items: stretch; }
.pv-slots { display: contents; }
.pv-slot { position: relative; border-radius: 12px; border: 1.5px solid var(--line-2);
  background: linear-gradient(180deg, #1f1e1d, #121110); box-shadow: inset 0 1px 0 rgba(255,255,255,.06);
  display: grid; grid-template-columns: 40px minmax(0, 1fr); grid-template-rows: auto auto;
  align-content: center; justify-items: start; column-gap: 10px; row-gap: 2px;
  text-align: left; min-height: 0; padding: 8px 10px; overflow: hidden; isolation: isolate; min-width: 0;
  transition: border-color .12s, box-shadow .12s, transform .12s; }
.pv-slot > .pv-soq { grid-column: 1; grid-row: 1 / span 2; width: 40px; height: 45px; }
.pv-slot > b.pv-nome, .pv-slot > .pv-livre-b { grid-column: 2; align-self: end; }
.pv-slot > .pv-prog, .pv-slot > .pv-escolher-b { grid-column: 2; align-self: start; }
.pv-slot .pv-num { display: none; }
.pv-slot.pv-livre { border-style: dashed; color: var(--txt-3); cursor: pointer; }
.pv-slot.pv-livre:hover, .pv-slot.pv-escolhida { border-color: var(--info); color: var(--txt-2); }
.pv-slot .pv-livre-b { font-size: 13px; font-weight: 700; color: var(--txt-2); }
.pv-slot .pv-escolher-b { font-size: 11.5px; font-weight: 500; color: var(--txt-3); }

.pv-slot.pv-cheio { border-color: rgba(77,159,255,.35); box-shadow: inset 0 1px 0 rgba(255,255,255,.06), inset 0 0 34px rgba(77,159,255,.05); cursor: grab; }
.pv-slot.pv-cheio:hover { border-color: rgba(255,255,255,.9); transform: translateY(-1px); }
.pv-slot b.pv-nome { font-size: 13.5px; max-width: 100%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; color: var(--txt); }
.pv-slot .pv-tirar { position: absolute; top: 4px; right: 6px; border: 1px solid transparent; background: transparent; color: var(--txt-3);
  font: inherit; font-size: 11px; font-weight: 700; padding: 2px 6px; border-radius: 6px; z-index: 5; opacity: 0; transition: opacity .12s; cursor: pointer; }
.pv-slot.pv-cheio:hover .pv-tirar, .pv-slot .pv-tirar:focus { opacity: 1; }
.pv-slot .pv-tirar:hover { color: var(--txt); border-color: var(--line-2); background: var(--bg-3); }
.pv-slot .pv-canto { position: absolute; width: 10px; height: 10px; border: 2px solid rgba(255,255,255,0); pointer-events: none; transition: border-color .25s, transform .2s; }
.pv-slot .pv-c1 { left: 4px; top: 4px; border-right: 0; border-bottom: 0; border-top-left-radius: 7px; }
.pv-slot .pv-c2 { right: 4px; top: 4px; border-left: 0; border-bottom: 0; border-top-right-radius: 7px; }
.pv-slot .pv-c3 { left: 4px; bottom: 4px; border-right: 0; border-top: 0; border-bottom-left-radius: 7px; }
.pv-slot .pv-c4 { right: 4px; bottom: 4px; border-left: 0; border-top: 0; border-bottom-right-radius: 7px; }

.pv-prog { display: flex; align-items: center; gap: 6px; flex-wrap: nowrap; min-width: 0; }
.pv-pips { display: flex; gap: 2px; justify-content: center; }
.pv-pips i { width: 7px; height: 5px; border-radius: 1px; background: rgba(255,255,255,.09); }
.pv-pips i.pv-on { background: var(--info); box-shadow: 0 0 8px rgba(77,159,255,.75); }
.pv-pips i.pv-novo { animation: pvPip .32s cubic-bezier(.2, 1.6, .4, 1) both; }
@keyframes pvPip { 0% { transform: scale(1.6); background: #fff; box-shadow: 0 0 12px #fff; } 100% { transform: none; } }
.pv-slot .pv-prog-t { color: var(--txt-3); font-size: 11.5px; white-space: nowrap; font-variant-numeric: tabular-nums; }
.pv-ativo { position: absolute; right: 8px; bottom: 5px; font-size: 9px; font-weight: 800; letter-spacing: .26em; color: var(--info); white-space: nowrap; opacity: 0; }
.pv-slot.pv-estala .pv-ativo { animation: pvAtivo .9s steps(1) both; }
@keyframes pvAtivo { 0% { opacity: 0; } 15% { opacity: 1; } 30% { opacity: .2; } 45%, 80% { opacity: 1; } 100% { opacity: 0; } }

.pv-slot.pv-alvo { border-color: var(--info); border-style: solid; transform: scale(1.02); box-shadow: 0 0 0 2px rgba(77,159,255,.4), 0 0 38px rgba(77,159,255,.35); }
.pv-slot.pv-alvo .pv-canto { border-color: var(--info); transform: scale(.7); }
.pv-origem { opacity: .5; filter: grayscale(1); }
.pv-slot.pv-estala .pv-canto { animation: pvFecha .32s cubic-bezier(.2, 1.4, .4, 1); }
@keyframes pvFecha { from { transform: scale(1.9); opacity: 0; } to { transform: none; opacity: 1; } }


.pv-soq { width: 128px; height: 144px; overflow: visible; display: block; }
.pv-soq .placa { fill: url(#pv-metal); stroke: #000; stroke-width: 1.2; stroke-linejoin: round; }
.pv-soq .poco { fill: url(#pv-fundo); }
.pv-soq .assento { fill: none; stroke: #fff; stroke-opacity: .09; stroke-width: 1.4; stroke-linejoin: round; transition: stroke-opacity .2s; }
.pv-soq .fac { stroke: #fff; stroke-opacity: .10; stroke-width: 1.2; fill: none; transition: stroke-opacity .2s; }
.pv-soq .junta { fill: none; stroke: var(--info); stroke-width: 2; stroke-linejoin: round; opacity: 0; }
.pv-soq .brilho { fill: none; stroke: var(--info); stroke-width: 4.2; stroke-linejoin: round; filter: url(#pv-halo); opacity: 0; }
.pv-soq .aresta { fill: none; stroke: #46423f; stroke-width: 4.2; stroke-linejoin: round; }
.pv-soq .pedra { opacity: 0; transform-box: fill-box; transform-origin: 50% 50%; }
.pv-soq .pd-ar { fill: none; stroke: #fff; stroke-opacity: .28; stroke-width: .9; stroke-linecap: round; stroke-linejoin: round; }
.pv-soq .letra { fill: #fff; font: 900 20px var(--fonte, "Figtree"), sans-serif; text-anchor: middle; dominant-baseline: central; paint-order: stroke; stroke: rgba(0,0,0,.35); stroke-width: 2px; }
.pv-soq .contato { fill: #000; stroke: none; opacity: 0; filter: url(#pv-borrao); transform: translateY(3px); }

.pv-slot.pv-livre .pv-soq .aresta { animation: pvConvite 3.6s ease-in-out infinite; }
@keyframes pvConvite { 0%, 74%, 100% { stroke: #46423f; } 86% { stroke: #6a635e; } }
.pv-slot.pv-livre:hover .pv-soq .aresta, .pv-slot.pv-escolhida .pv-soq .aresta { animation: none; stroke: #8d8886; }
.pv-slot.pv-livre:hover .pv-soq .assento { stroke-opacity: .22; }
.pv-slot.pv-livre .mais-sq { fill: none; stroke: #6a635e; stroke-width: 3; stroke-linecap: round; transition: stroke .2s; }
.pv-slot.pv-livre:hover .mais-sq, .pv-slot.pv-escolhida .mais-sq { stroke: var(--info); }

.pv-slot.pv-cheio .pv-soq .pedra { opacity: 1; }
.pv-slot.pv-cheio .pv-soq .junta { opacity: 1; }
.pv-slot.pv-cheio .pv-soq .fac, .pv-slot.pv-cheio .pv-soq .assento { stroke-opacity: 0; }
.pv-slot.pv-cheio .pv-soq .aresta { stroke: #6a635e; }
.pv-slot.pv-cheio .pv-soq .brilho { opacity: .3; transition: opacity .25s; }
.pv-slot.pv-cheio:hover .pv-soq .brilho { opacity: 1; }

.pv-slot.pv-chegando .pv-soq .pedra, .pv-slot.pv-chegando .pv-soq .junta, .pv-slot.pv-chegando .pv-soq .brilho { opacity: 0; }
.pv-slot.pv-chegando .pv-soq .aresta { stroke: #46423f; }
.pv-slot.pv-chegando .pv-soq .fac { stroke-opacity: .10; }
.pv-slot.pv-chegando .pv-soq .assento { stroke-opacity: .09; }


.pv-slot.pv-encaixando .pv-soq .pedra { opacity: 1; animation: pvDescer .36s cubic-bezier(.45,.02,.5,1) both; }
.pv-slot.pv-encaixando .pv-soq .contato { animation: pvContato .22s ease-out .18s both; }
.pv-slot.pv-encaixando .pv-soq .junta { animation: pvJunta .36s ease-out .37s both; }
.pv-slot.pv-encaixando .pv-soq .aresta { animation: pvAro .4s ease-out .4s both; }
.pv-slot.pv-encaixando .pv-soq .brilho { animation: pvHalo .44s ease-out .4s both; }
@keyframes pvDescer { 0% { opacity: 1; transform: translateY(-26px) scale(1.5); } 22% { opacity: 1; transform: translateY(-14px) scale(1.26); } 58% { opacity: 1; transform: translateY(0) scale(.94); } 80% { transform: translateY(0) scale(1.03); } 100% { opacity: 1; transform: none; } }
@keyframes pvContato { 0% { opacity: 0; } 40% { opacity: .95; } 100% { opacity: 0; } }
@keyframes pvJunta { 0% { opacity: 0; stroke-width: 1; } 34% { opacity: 1; stroke-width: 5; } 100% { opacity: 1; stroke-width: 2; } }
@keyframes pvAro { 0% { stroke: #46423f; } 35% { stroke: var(--info); } 100% { stroke: #6a635e; } }
@keyframes pvHalo { 0% { opacity: 0; } 30% { opacity: 1; } 100% { opacity: .3; } }

.pv-soq .sq-flash { fill: #fff; opacity: 0; mix-blend-mode: screen; }
.pv-slot.pv-estala .pv-soq .sq-flash { animation: pvFlash .16s ease-out; }
@keyframes pvFlash { from { opacity: .5; } to { opacity: 0; } }
.pv-soq .sq-anel { fill: none; stroke: var(--info); stroke-width: 2.4; opacity: 0; transform-box: fill-box; transform-origin: 50% 50%; }
.pv-slot.pv-estala .pv-soq .sq-anel { animation: pvAnel .32s cubic-bezier(.1,.7,.3,1); }
@keyframes pvAnel { from { opacity: 1; transform: scale(1); } to { opacity: 0; transform: scale(1.35); } }
.pv-soq .sq-scan { opacity: 0; }
.pv-slot.pv-estala .pv-soq .sq-scan { animation: pvScan .36s ease-out; }
@keyframes pvScan { 0% { opacity: 1; transform: translateY(-30px); } 100% { opacity: .2; transform: translateY(76px); } }
.pv-slot.pv-alvo .pv-soq .assento { stroke: var(--info); stroke-opacity: .5; }
.pv-slot.pv-alvo .pv-soq .poco { filter: brightness(.6); }
.pv-slot.pv-alvo .pv-soq .brilho { opacity: 1; }




.pv-fila-cx { display: flex; align-items: center; gap: 8px; padding: 8px 10px; border-radius: 12px; border: 1px solid var(--line-2);
  background: rgba(0,0,0,.22); min-width: 0; transition: border-color .12s, background .12s; }
.pv-fila-cx > .pv-t-sec { font-size: 10.5px; white-space: nowrap; }
.pv-fila-cx > .pv-conta { margin-left: auto; white-space: nowrap; }
.pv-fila { display: flex; align-items: center; flex: 1 1 auto; min-width: 0; min-height: 30px; cursor: pointer; position: relative; }
.pv-fila-cx:has(.pv-fila.pv-alvo) { border-color: var(--info); background: rgba(77,159,255,.07); }
.pv-fila .pv-fila-vazia { color: var(--txt-3); font-size: 12px; margin-right: 6px; }
.pv-chip { position: relative; display: block; flex: none; margin-left: -7px; border-radius: 50%; cursor: grab; user-select: none; transition: opacity .15s, transform .12s; }
.pv-chip:first-child { margin-left: 0; }
.pv-fila.pv-muitos .pv-chip + .pv-chip { margin-left: -13px; }
.pv-chip .pv-av { width: 28px; height: 28px; font-size: 11px; box-shadow: 0 0 0 2px var(--bg-2); }
.pv-chip:first-child .pv-av { box-shadow: 0 0 0 2px var(--bg-2), 0 0 0 3.5px rgba(77,159,255,.7); }
.pv-chip:hover { z-index: 2; transform: translateY(-2px); }
.pv-chip .pv-x, .pv-chip .pv-subir { position: absolute; width: 16px; height: 16px; padding: 0; display: grid; place-items: center; border-radius: 50%;
  border: 1px solid var(--line-2); background: var(--bg-3); color: var(--txt-2); font: inherit; font-size: 11px; line-height: 1; cursor: pointer; z-index: 3; }
.pv-chip .pv-x { top: -6px; right: -6px; opacity: 0; transition: opacity .12s; }
.pv-chip:hover .pv-x, .pv-chip .pv-x:focus { opacity: 1; }
.pv-chip .pv-x:hover, .pv-chip .pv-subir:hover { color: var(--txt); border-color: var(--info); }
.pv-chip .pv-subir { display: none; top: -6px; left: -6px; font-size: 8px; }
.pv-chip.pv-origem { opacity: .3; filter: none; }
.pv-fila-add { width: 28px; height: 28px; flex: none; margin-left: 4px; border-radius: 50%; border: 1.5px dashed var(--line-2); background: transparent;
  display: grid; place-items: center; padding: 0; color: var(--txt-3); font: inherit; font-size: 16px; line-height: 1; cursor: pointer; transition: border-color .12s, color .12s; }
.pv-fila-add:hover, .pv-fila:hover .pv-fila-add { border-color: var(--info); color: var(--txt); }
.pv-marcador { flex: none; width: 3px; height: 28px; margin: 0 3px; border-radius: 2px; background: var(--info); box-shadow: 0 0 8px var(--info); }


.pv-escolher { border: 1px solid var(--line-2); background: var(--bg); border-radius: 14px; overflow: hidden; display: grid; animation: pvAbre .18s ease-out; }
.pv-escolher[hidden] { display: none; }
@keyframes pvAbre { from { transform: translateY(-6px); opacity: 0; } to { transform: none; opacity: 1; } }
.pv-esc-topo { display: flex; gap: 10px; align-items: center; padding: 12px; border-bottom: 1px solid var(--line); flex-wrap: wrap; }
.pv-busca { flex: 1 1 260px; display: flex; align-items: center; gap: 8px; background: var(--bg-3); border: 1px solid var(--line-2); border-radius: 10px; padding: 0 12px; height: 40px; }
.pv-busca:focus-within { border-color: var(--info); box-shadow: 0 0 0 3px rgba(77,159,255,.15); }
.pv-busca input { flex: 1; min-width: 0; background: transparent; border: 0; outline: 0; font: inherit; font-size: 14px; color: var(--txt); }
.pv-busca svg { width: 16px; height: 16px; color: var(--txt-3); flex: none; }
.pv-esc-topo .pv-info { font-size: 12px; color: var(--txt-3); }
.pv-esc-topo .pv-fechar { border: 1px solid var(--line-2); background: var(--bg-3); border-radius: 8px; padding: 6px 10px; font: inherit; font-size: 13px; font-weight: 600; color: var(--txt); cursor: pointer; }
.pv-lista { max-height: 340px; overflow-y: auto; padding: 6px; display: grid; gap: 2px; }
.pv-item { display: grid; grid-template-columns: 26px 34px minmax(0, 1fr) auto; gap: 10px; align-items: center; padding: 7px 10px; border-radius: 9px; border: 1px solid transparent; user-select: none; }
.pv-item:hover, .pv-item.pv-foco { background: var(--bg-3); border-color: var(--line-2); }
.pv-item .pv-nm { min-width: 0; }
.pv-item .pv-nm b { display: block; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; color: var(--txt); }
.pv-item .pv-nm small { color: var(--txt-3); font-size: 12px; }
.pv-item .pv-acao { border: 1px solid var(--line-2); background: var(--bg-2); border-radius: 7px; padding: 5px 12px; font: inherit; font-size: 12.5px; font-weight: 700; white-space: nowrap; color: var(--txt); cursor: pointer; }
.pv-item .pv-acao:hover { border-color: var(--info); color: var(--info); }
.pv-item .pv-onde { font-size: 12px; font-weight: 700; color: var(--info); white-space: nowrap; }
.pv-item.pv-usado { opacity: .5; }
.pv-item mark { background: rgba(77,159,255,.28); color: inherit; border-radius: 3px; padding: 0 1px; }
.pv-vazio-busca { padding: 26px; text-align: center; color: var(--txt-3); }


.pv-fantasma { position: fixed; z-index: 9000; pointer-events: none; display: grid; justify-items: center; gap: 6px; transform: translate(-50%, -50%) scale(var(--g, 1)); transition: transform .15s; }
.pv-fantasma .pv-av { width: 56px; height: 56px; font-size: 20px; box-shadow: 0 14px 30px rgba(0,0,0,.6); }
.pv-fantasma span.pv-n { font-size: 12px; font-weight: 700; background: rgba(0,0,0,.7); color: #fff; padding: 1px 8px; border-radius: 6px; white-space: nowrap; }
.pv-voa { position: fixed; z-index: 8999; pointer-events: none; }
body.pv-arrastando, body.pv-arrastando * { cursor: grabbing !important; }


.pv-btn svg { width: 15px; height: 15px; display: block; }
.pv-btn.pv-aceso { color: var(--info); border-color: rgba(77,159,255,.55); }
.pv-btn.pv-aceso svg { animation: pvMira .38s cubic-bezier(.2, 1.6, .4, 1); }
.pv-btn.pv-na-fila { color: var(--info); }
@keyframes pvMira { 0% { transform: scale(.4) rotate(-90deg); } 100% { transform: none; } }




.nf-card.pv-marcado .nf-avatar { animation: pvRadar 2.4s ease-out 3; }
.nf-card.pv-marcado:hover .nf-avatar { animation: pvRadar 2.4s ease-out infinite; }
@keyframes pvRadar {
  0% { box-shadow: 0 0 0 0 rgba(77,159,255,.65), 0 0 0 0 rgba(77,159,255,.35); }
  70% { box-shadow: 0 0 0 9px rgba(77,159,255,0), 0 0 0 16px rgba(77,159,255,0); }
  100% { box-shadow: 0 0 0 0 rgba(77,159,255,0), 0 0 0 0 rgba(77,159,255,0); }
}


.pv-tag { display: inline-flex; align-items: center; gap: 4px; margin-left: 8px; padding: 1px 7px; border-radius: 6px; font-size: 11px; font-weight: 700;
  color: var(--info); border: 1px solid rgba(77,159,255,.4); background: rgba(77,159,255,.08); vertical-align: middle; white-space: nowrap; }


@media (hover: none) {
  .pv-slot .pv-tirar, .pv-chip .pv-x { opacity: 1; }
  .pv-chip .pv-subir { display: inline; }
  .pv-chip { cursor: default; }
}
@media (max-width: 980px) { .pv-faixa { grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px) { .pv-faixa { grid-template-columns: 1fr; } }
@media (prefers-reduced-motion: reduce) {
  .pv *, .pv-fantasma, .pv-voa, .nf-card.pv-marcado .nf-avatar, .pv-btn svg { animation: none !important; transition: none !important; }
  .nf-card.pv-marcado .nf-avatar { box-shadow: 0 0 0 2px var(--info); }
}





.ah-motor.ah-sem { padding: 12px 14px; display: grid; gap: 10px; }
.ah-sem-cab { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.ah-sem-t { font-size: 10.5px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--txt-3); white-space: nowrap; }
.ah-sem-m { font-size: 12.5px; color: var(--txt-3); white-space: nowrap; }
.ah-sem-m b { color: var(--txt); }
.ah-sem-baixo { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; }
.ah-sem-dias { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
.ah-sem-dia { display: grid; justify-items: center; gap: 3px; width: 52px; padding: 6px 0 5px; border-radius: 10px; border: 1px solid var(--line-2); background: rgba(0,0,0,.22); }
.ah-sem-d { font-size: 10.5px; font-weight: 700; color: var(--txt-3); letter-spacing: .04em; }
.ah-sem-n { font-size: 15px; font-weight: 800; line-height: 1; display: flex; align-items: center; gap: 5px; color: var(--txt); font-variant-numeric: tabular-nums; }
.ah-sem-dia.zero .ah-sem-n { color: var(--txt-3); font-weight: 600; }
.ah-sem-dia.hoje { border-color: var(--info); background: rgba(77,159,255,.1); }
.ah-sem-dia.hoje .ah-sem-d { color: var(--info); }


.ah-sem-pt { width: 7px; height: 7px; border-radius: 50%; background: var(--c, #9b9694); box-shadow: 0 0 6px var(--c, transparent); flex: none; }
.ah-sem-pt.fechado { background: transparent; border: 1.5px solid var(--txt-3); box-shadow: none; }
.ah-sem-quem { display: flex; align-items: center; gap: 8px; min-width: 0; }
.ah-sem-bols { display: flex; }
.ah-sem-av { width: 26px; height: 26px; margin-left: -6px; border-radius: 50%; display: grid; place-items: center; overflow: hidden; flex: none;
  font-size: 11px; font-weight: 800; color: #fff; box-shadow: 0 0 0 2px var(--bg-2); }
.ah-sem-av:first-child { margin-left: 0; }
.ah-sem-av img { width: 100%; height: 100%; object-fit: cover; display: block; }






.ah-motor.ah-sem { --ah-rot: 230px; }
.ah-motor.ah-sem.ah-sem-so-nv { --ah-rot: max-content; }
.ah-sem-nv, .ah-sem-barras > div { display: grid; grid-template-columns: var(--ah-rot) 260px minmax(0, 1fr);
  align-items: center; column-gap: 12px; }
.ah-sem-nv { cursor: help; }
.ah-sem-fim { display: inline-flex; align-items: center; gap: 10px; min-width: 0; flex-wrap: wrap; }
.ah-sem-nv[hidden] { display: none; }
.ah-sem-nvn { font-size: 12.5px; font-weight: 800; color: var(--info); font-variant-numeric: tabular-nums; white-space: nowrap; }
.ah-sem-nvbar { width: 100%; height: 5px; border-radius: 3px; background: rgba(255,255,255,.08); overflow: hidden; }
.ah-sem-nvbar i { display: block; width: 100%; height: 100%; border-radius: 3px; background: var(--info);
  transform-origin: left center; transition: transform .6s cubic-bezier(.2,.8,.2,1); }
.ah-sem-nvprox { display: inline-flex; align-items: center; gap: 4px; font-size: 11.5px; font-weight: 700; color: var(--txt-3); white-space: nowrap; }
.ah-sem-nvprox svg { width: 14px; height: 14px; color: var(--txt-3); }
.ah-sem-nvprox i { font-style: normal; font-size: 10px; font-weight: 800; color: var(--info); }
.ah-sem-nvganho { font-size: 11.5px; font-weight: 700; color: var(--info); white-space: nowrap; font-variant-numeric: tabular-nums; }
.ah-sem-nvganho small { font-size: 11px; font-weight: 500; color: var(--txt-3); }
.ah-sem-nv.acende .ah-sem-nvbar i { animation: ahNvAcende 1.2s ease-out; }
@keyframes ahNvAcende { 0% { box-shadow: 0 0 10px rgba(77,159,255,.95); } 100% { box-shadow: 0 0 0 rgba(77,159,255,0); } }
@media (prefers-reduced-motion: reduce) { .ah-sem-nv.acende .ah-sem-nvbar i { animation: none; } .ah-sem-nvbar i { transition: none; } }
.ah-sem-barras { display: flex; flex-direction: column; gap: 6px; padding-top: 8px; border-top: 1px solid var(--line); }
.ah-sem-rot { font-size: 12px; color: var(--txt-2); }
.ah-sem-bk i { background: #d6d3d1; }
.ah-sem-vl { font-size: 12px; color: var(--txt-3); font-variant-numeric: tabular-nums; white-space: nowrap; }
.ah-sem-vl b { color: var(--txt); }
@media (max-width: 700px) {
  .ah-sem-nv, .ah-sem-barras > div { grid-template-columns: auto minmax(80px, 1fr); row-gap: 4px; }
  .ah-sem-fim, .ah-sem-vl { grid-column: 1 / -1; }
}

#ah-lista .ah-dia-cab, #ah-bau-topo .ah-dia-cab { display: flex; align-items: center; gap: 10px; margin: 22px 0 10px; font-size: 12px; font-weight: 800;
  letter-spacing: .14em; text-transform: uppercase; color: var(--txt-2); }
#ah-lista .ah-dia-cab:first-child, #ah-bau-topo .ah-dia-cab:first-child { margin-top: 4px; }
#ah-lista .ah-dia-cab small, #ah-bau-topo .ah-dia-cab small { font-size: 12px; font-weight: 500; letter-spacing: 0; text-transform: none; color: var(--txt-3); }
#ah-lista .ah-dia-cab::after, #ah-bau-topo .ah-dia-cab::after { content: ""; flex: 1; height: 1px; background: var(--line); }

.pv-slot.pv-esgotou .pv-nome, .pv-slot.pv-esgotou .pv-soquete { opacity: .55; }
.pv-slot .pv-fim { font-size: 11.5px; color: var(--txt-3); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.pv-slot .pv-fim b { color: var(--txt-2); font-weight: 700; }
.pv-slot .pv-ativo-fim { opacity: 1; color: var(--accent); }
.pv-slot.pv-esgotou .pv-tirar { opacity: 1; }

.pv-item .pv-mais { width: 26px; height: 26px; border-radius: 50%; border: 1px solid var(--line-2); background: var(--bg-2); color: var(--info); font: inherit; font-size: 17px; font-weight: 700; line-height: 1; display: grid; place-items: center; padding: 0; cursor: pointer; transition: border-color .12s, background .12s, transform .12s; }
.pv-item .pv-mais:hover { border-color: var(--info); background: rgba(77,159,255,.12); }
.pv-item .pv-mais:active { transform: scale(.92); }

.pv-slot.pv-cheio.pv-esgotou, .pv-slot.pv-cheio.pv-esgotou:hover { border-color: var(--accent); box-shadow: 0 0 0 1px color-mix(in srgb, var(--accent) 35%, transparent), inset 0 0 28px color-mix(in srgb, var(--accent) 8%, transparent); }
