/*
 * © 2026 Ael-Host — feito por Fakkwel. Todos os direitos reservados.
 * Proibida a cópia, revenda ou distribuição deste código sem autorização do autor.
 */
/* Bots prontos da Ael: vitrine, agenda e cardápio */
.ael-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 16px; }
.ael-prod { display: flex; flex-direction: column; gap: 14px; border-top: 3px solid var(--ac, var(--accent)); }
.ael-prod-top { display: flex; gap: 12px; align-items: flex-start; }
.ael-prod-top h3 { margin: 0 0 2px; }
.ael-prod-emoji, .ael-mini { display: grid; place-items: center; flex: none; border-radius: 14px; background: color-mix(in srgb, var(--ac, var(--accent)) 16%, transparent); }
.ael-prod-emoji { width: 52px; height: 52px; font-size: 28px; }
.ael-mini { width: 36px; height: 36px; font-size: 19px; border-radius: 10px; }
.ael-itens { list-style: none; padding: 0; margin: 0; display: grid; gap: 6px; font-size: 13.5px; }
.ael-itens li { display: flex; gap: 8px; align-items: flex-start; }
.ael-itens li svg { color: var(--ac, var(--accent)); flex: none; width: 16px; height: 16px; margin-top: 2px; }
.ael-prod-foot { margin-top: auto; display: flex; justify-content: space-between; align-items: center; gap: 10px; flex-wrap: wrap; padding-top: 12px; border-top: 1px solid var(--line); }
.ael-preco { font-size: 22px; font-family: var(--font-display); }
.ael-alvo { margin-bottom: 16px; border: 1px solid var(--accent-line); }
.ael-lic { gap: 10px; padding: 8px; border: 1px solid var(--line); border-radius: var(--r-sm); }
.ael-drop { margin-top: 12px; display: flex; gap: 12px; align-items: center; padding: 16px; border: 1.5px dashed var(--line-2); border-radius: var(--r); cursor: pointer; color: var(--text-2); transition: border-color var(--speed), background var(--speed); }
.ael-drop.on, .ael-drop:hover { border-color: var(--accent); background: var(--accent-soft); }

.ael-head { display: flex; gap: 10px; flex-wrap: wrap; align-items: center; margin-bottom: 14px; }

/* Agenda */
.ael-dianav { display: flex; align-items: center; gap: 8px; margin-bottom: 12px; flex-wrap: wrap; }
.ael-dia-titulo { font-size: 16px; display: inline-block; }
.ael-dia-titulo::first-letter { text-transform: uppercase; }
.ael-timeline { display: grid; gap: 8px; }
.ael-slot { display: flex; gap: 12px; align-items: flex-start; padding: 10px 12px; border: 1px solid var(--line); border-left: 4px solid var(--info); border-radius: var(--r-sm); background: var(--panel); flex-wrap: wrap; }
.ael-slot.pendente { border-left-color: var(--warn); }
.ael-slot.concluido { border-left-color: var(--ok); }
.ael-slot.faltou { border-left-color: var(--bad); }
.ael-slot.cancelado { opacity: .55; border-left-color: var(--line-2); }
.ael-slot.bloqueio { border-left-color: var(--line-2); background: repeating-linear-gradient(135deg, transparent 0 8px, rgba(127,127,127,.06) 8px 16px); }
.ael-hora { display: flex; flex-direction: column; min-width: 52px; font-variant-numeric: tabular-nums; }
.ael-hora b { font-size: 16px; }
.ael-livres { display: flex; flex-wrap: wrap; gap: 6px; max-height: 180px; overflow: auto; }
.ael-livres .chip { height: 34px; padding: 0 12px; border-radius: 999px; border: 1px solid var(--line-2); background: var(--raise); color: var(--text); font: 600 13px var(--font-ui); font-variant-numeric: tabular-nums; cursor: pointer; }
.ael-livres .chip:hover { border-color: var(--accent); }
.ael-livres .chip.on { background: var(--accent); color: var(--accent-ink); border-color: var(--accent); }

/* Horário de funcionamento */
.ael-semana { display: grid; gap: 6px; }
.ael-dia { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; padding: 8px 10px; border: 1px solid var(--line); border-radius: var(--r-sm); }
.ael-dia-nome { display: flex; gap: 8px; align-items: center; min-width: 110px; cursor: pointer; }
.ael-turnos { display: flex; gap: 10px; flex-wrap: wrap; align-items: center; }
.ael-turno { display: inline-flex; gap: 6px; align-items: center; }
.ael-turno .input { width: 128px; }
.ael-dia:not(.on) .ael-turno { display: none; }
.ael-dia.on .ael-fechado { display: none; }

/* Pedidos (kanban) */
.ael-kanban { display: grid; grid-template-columns: repeat(4, minmax(220px, 1fr)); gap: 12px; overflow-x: auto; padding-bottom: 6px; }
.ael-col { background: var(--bg-2); border: 1px solid var(--line); border-radius: var(--r); display: flex; flex-direction: column; min-height: 240px; }
.ael-col > header { display: flex; justify-content: space-between; align-items: center; padding: 10px 12px; border-bottom: 1px solid var(--line); }
.ael-col-corpo { display: grid; gap: 8px; padding: 10px; align-content: start; }
.ael-ped { background: var(--panel-solid); border: 1px solid var(--line); border-left: 4px solid var(--info); border-radius: var(--r-sm); padding: 10px; display: grid; gap: 8px; }
.ael-ped.novo { border-left-color: var(--warn); animation: aelPedNovo 1.6s ease-in-out 3; }
.ael-ped.entregue { border-left-color: var(--ok); }
.ael-ped.cancelado { opacity: .55; border-left-color: var(--bad); }
.ael-ped-num { font-size: 17px; font-family: var(--font-display); }
.ael-ped-itens { margin: 0; padding-left: 16px; font-size: 13.5px; display: grid; gap: 3px; }
@keyframes aelPedNovo { 50% { box-shadow: 0 0 0 3px color-mix(in srgb, var(--warn) 45%, transparent); } }

/* Relatórios */
.ael-barras { display: grid; gap: 6px; }
.ael-barra { display: grid; grid-template-columns: 44px 1fr auto; gap: 8px; align-items: center; }
.ael-barra-v { height: 10px; border-radius: 99px; background: var(--bg-2); overflow: hidden; }
.ael-barra-v i { display: block; height: 100%; border-radius: inherit; background: var(--accent); min-width: 3px; }
.ael-top { margin: 0; padding-left: 20px; display: grid; gap: 6px; }
.ael-top li > span { float: right; }

/* Cardápio (cadastro) */
.ael-cat { margin-bottom: 12px; }
.ael-itens-lista { display: grid; gap: 6px; margin-top: 10px; }
.ael-item { display: flex; gap: 10px; align-items: center; padding: 8px; border: 1px solid var(--line); border-radius: var(--r-sm); }
.ael-item.off { opacity: .55; }
.ael-foto { width: 54px; height: 54px; flex: none; border-radius: 10px; border: 1px dashed var(--line-2); background: var(--bg-2) center/cover; color: var(--muted); display: grid; place-items: center; cursor: pointer; }
.ael-foto[disabled] { cursor: default; }
.ael-foto[style*="background-image"] { border-style: solid; }
.ael-disp { display: inline-flex; }
.ael-grupo { margin-top: 10px; padding: 12px; }

@media (max-width: 760px) {
  .ael-kanban { grid-template-columns: repeat(4, 82vw); scroll-snap-type: x mandatory; }
  .ael-col { scroll-snap-align: start; }
  .ael-item { flex-wrap: wrap; }
}
@media (prefers-reduced-motion: reduce) { .ael-ped.novo { animation: none; } }
