/**
 * Atlas Menu Delivery — estilos do frontend (v0.3.0).
 * Visual espelhado nos prints do MyD: vermelho como cor principal, preço
 * preto bold, imagem do card à direita, header de categoria em barra cinza,
 * botão flutuante em barra fixa no rodapé, painel de carrinho em 4 telas.
 *
 * REGRA OBRIGATÓRIA (Fase 1): TODO seletor com !important — isola o plugin
 * de qualquer tema do cliente.
 */

.atlas-wrap {
	--atlas-cor-principal: #d92c2c;
	--atlas-cor-preco: #1d1d1d;
	max-width: 720px !important;
	margin: 0 auto !important;
	padding: 12px !important;
	font-family: inherit !important;
	box-sizing: border-box !important;
}

.atlas-wrap *,
.atlas-wrap *::before,
.atlas-wrap *::after {
	box-sizing: border-box !important;
}

.atlas-vazio {
	text-align: center !important;
	padding: 40px 0 !important;
	color: #666 !important;
}

/* ---------- Barra de filtro (chips + lupa) ---------- */
.atlas-filtro {
	position: sticky !important;
	top: 0 !important;
	z-index: 50 !important;
	display: flex !important;
	align-items: center !important;
	gap: 8px !important;
	background: #fff !important;
	padding: 10px 0 !important;
	border-bottom: 1px solid #eee !important;
}

.atlas-filtro__lupa {
	flex: 0 0 auto !important;
	background: none !important;
	border: 1px solid #ddd !important;
	border-radius: 50% !important;
	width: 36px !important;
	height: 36px !important;
	cursor: pointer !important;
	font-size: 16px !important;
	line-height: 1 !important;
	padding: 0 !important;
}

.atlas-filtro__chips {
	display: flex !important;
	gap: 8px !important;
	overflow-x: auto !important;
	scrollbar-width: none !important;
	-webkit-overflow-scrolling: touch !important;
}

.atlas-filtro__chips::-webkit-scrollbar { display: none !important; }

.atlas-chip {
	flex: 0 0 auto !important;
	background: #f2f2f2 !important;
	color: #333 !important;
	border: none !important;
	border-radius: 20px !important;
	padding: 8px 16px !important;
	font-size: 15px !important;
	cursor: pointer !important;
	white-space: nowrap !important;
}

.atlas-chip:hover {
	background: var(--atlas-cor-principal) !important;
	color: #fff !important;
}

.atlas-busca { padding: 10px 0 !important; }

.atlas-busca__input {
	width: 100% !important;
	padding: 10px 14px !important;
	border: 1px solid #ddd !important;
	border-radius: 8px !important;
	font-size: 16px !important;
	background: #fff !important;
	color: #333 !important;
}

/* ---------- Seções: título em barra cinza centralizada (padrão MyD) ---------- */
.atlas-secao {
	margin: 20px 0 !important;
	scroll-margin-top: 70px !important;
}

.atlas-secao__titulo {
	background: var(--atlas-cor-fundo-categoria, #e9e9e9) !important;
	color: #444 !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.5px !important;
	text-align: center !important;
	padding: 8px 12px !important;
	border-radius: 4px !important;
	margin: 0 0 8px !important;
}

.atlas-grid { display: grid !important; }

/* Colunas do cardápio — fixo (v0.19.0, removido da aba Estilo):
   1 coluna até 767px (qualquer celular, incluindo os maiores do
   mercado), 2 colunas a partir de 768px (tablet/desktop) — breakpoint
   padrão de mercado (mesmo usado pelo iPad Mini vertical). */
.atlas-grid--responsivo {
	grid-template-columns: 1fr !important;
}

@media (min-width: 768px) {
	.atlas-grid--responsivo {
		grid-template-columns: 1fr 1fr !important;
		column-gap: 16px !important;
	}
}

@media (max-width: 600px) {
	.atlas-qtd { gap: 4px !important; }

	.atlas-qtd__menos,
	.atlas-qtd__mais {
		width: 24px !important;
		height: 24px !important;
		font-size: 13px !important;
	}

	.atlas-qtd__num {
		width: 30px !important;
		height: 24px !important;
		font-size: 12px !important;
	}
}

/* ---------- Card: texto à esquerda, imagem à direita, tracejado embaixo ---------- */
.atlas-card {
	display: flex !important;
	gap: 12px !important;
	background: #fff !important;
	padding: 18px 4px !important;
	min-height: 140px !important;
	cursor: pointer !important;
	border: none !important;
	border-bottom: 1px dashed #ddd !important;
	align-items: flex-start !important;
}

.atlas-card:last-child { border-bottom: none !important; }

.atlas-card__info {
	flex: 1 !important;
	display: flex !important;
	flex-direction: column !important;
	min-width: 0 !important;
}

.atlas-card__nome {
	font-size: 16px !important;
	font-weight: 700 !important;
	margin: 0 0 4px !important;
	color: #1d1d1d !important;
	line-height: 1.3 !important;
}

.atlas-card__descricao {
	font-size: 14px !important;
	color: #888 !important;
	margin: 0 0 10px !important;
	line-height: 1.4 !important;
}

.atlas-card__rodape {
	margin-top: auto !important;
	display: flex !important;
	align-items: center !important;
	gap: 10px !important;
}

.atlas-card__add {
	background: var(--atlas-cor-principal) !important;
	color: #fff !important;
	border: none !important;
	border-radius: var(--atlas-raio-botao-add, 50%) !important;
	width: 30px !important;
	height: 30px !important;
	font-size: 20px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	cursor: pointer !important;
	padding: 0 !important;
	flex: 0 0 auto !important;
}

.atlas-card__preco {
	font-weight: 700 !important;
	color: var(--atlas-cor-preco) !important;
	font-size: 16px !important;
}

.atlas-card__img { flex: 0 0 120px !important; align-self: center !important; }

.atlas-card__img img {
	width: 120px !important;
	height: 110px !important;
	object-fit: cover !important;
	border-radius: 6px !important;
	display: block !important;
}

/* ---------- Popups ---------- */
.atlas-popup-backdrop {
	position: fixed !important;
	inset: 0 !important;
	background: rgba(0, 0, 0, 0.55) !important;
	z-index: 99990 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	padding: 16px !important;
}

.atlas-popup-backdrop[hidden] { display: none !important; }

.atlas-popup {
	position: relative !important;
	background: #fff !important;
	border-radius: 12px !important;
	max-width: 460px !important;
	width: 100% !important;
	max-height: 88vh !important;
	overflow: hidden !important;
	padding: 0 !important;
	display: flex !important;
	flex-direction: column !important;
}

.atlas-popup__scroll {
	overflow-y: auto !important;
	flex: 1 1 auto !important;
	min-height: 0 !important;
	padding-bottom: 16px !important;
}

.atlas-popup__fechar {
	position: absolute !important;
	top: 8px !important;
	right: 10px !important;
	z-index: 2 !important;
	background: transparent !important;
	color: var(--atlas-cor-fechar-popup, #000000) !important;
	border: none !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	outline: none !important;
	font-size: 48px !important;
	font-weight: 300 !important;
	line-height: 1 !important;
	cursor: pointer !important;
	padding: 0 !important;
	margin: 0 !important;
	width: auto !important;
	height: auto !important;
	text-shadow: none !important;
}

.atlas-popup__img { cursor: zoom-in !important; }

.atlas-popup__img img {
	width: 100% !important;
	max-height: 280px !important;
	object-fit: cover !important;
	border-radius: 12px 12px 0 0 !important;
	display: block !important;
}

.atlas-popup__nome {
	font-size: 32px !important; /* +50% sobre os 21px originais */
	font-weight: 700 !important;
	margin: 16px 20px 8px !important;
	color: #1d1d1d !important;
}

.atlas-popup__descricao {
	font-size: 15px !important;
	color: #666 !important;
	margin: 0 20px 12px !important;
	line-height: 1.5 !important;
}

.atlas-popup__obs {
	display: block !important;
	width: calc(100% - 40px) !important;
	margin: 0 20px 14px !important;
	padding: 10px !important;
	border: 1px solid #ddd !important;
	border-radius: 8px !important;
	font-size: 15px !important;
	resize: vertical !important;
	background: #fff !important;
	color: #333 !important;
}

.atlas-popup__acoes {
	margin: 0 !important;
	padding: 12px 20px calc(12px + env(safe-area-inset-bottom, 0px)) !important;
	background: #fff !important;
	border-top: 1px solid #eee !important;
	box-shadow: 0 -4px 12px rgba(0, 0, 0, 0.06) !important;
	flex-shrink: 0 !important;
}

.atlas-qtd {
	display: flex !important;
	justify-content: center !important;
	gap: 6px !important;
	margin-bottom: 8px !important;
}

.atlas-qtd__menos,
.atlas-qtd__mais {
	background: #fff !important;
	border: 1px solid #ddd !important;
	border-radius: 6px !important;
	width: 28px !important;
	height: 28px !important;
	font-size: 14px !important;
	cursor: pointer !important;
	color: #333 !important;
	padding: 0 !important;
}

.atlas-qtd__num {
	width: 38px !important;
	height: 28px !important;
	text-align: center !important;
	border: 1px solid #ddd !important;
	border-radius: 6px !important;
	font-size: 13px !important;
	background: #fff !important;
	color: #333 !important;
	padding: 0 !important;
}

.atlas-popup__adicionar,
.atlas-btn-proximo {
	display: block !important;
	width: 100% !important;
	background: var(--atlas-cor-principal, #d92c2c) !important;
	color: #fff !important;
	border: none !important;
	border-radius: 8px !important;
	padding: 13px !important;
	font-size: 16px !important;
	font-weight: 600 !important;
	cursor: pointer !important;
	text-align: center !important;
}

/* ---------- Lightbox ---------- */
.atlas-lightbox { z-index: 99995 !important; }

.atlas-lightbox img {
	max-width: 95vw !important;
	max-height: 90vh !important;
	border-radius: 8px !important;
	display: block !important;
}

.atlas-lightbox .atlas-popup__fechar {
	position: fixed !important;
	top: 14px !important;
	right: 16px !important;
	font-size: 31px !important;
}

/* ---------- Botão flutuante (barra fixa no rodapé, padrão MyD) ---------- */
.atlas-float {
	position: fixed !important;
	left: 50% !important;
	transform: translateX(-50%) !important;
	bottom: 10px !important;
	width: calc(100% - 24px) !important;
	max-width: 700px !important;
	z-index: 9980 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	background: var(--atlas-cor-principal, #d92c2c) !important;
	color: #fff !important;
	border: none !important;
	border-radius: 8px !important;
	padding: 13px 18px !important;
	font-size: 16px !important;
	font-weight: 600 !important;
	cursor: pointer !important;
	box-shadow: 0 3px 12px rgba(0, 0, 0, 0.25) !important;
}

.atlas-float[hidden] { display: none !important; }

.atlas-float__resumo {
	display: flex !important;
	align-items: center !important;
	gap: 8px !important;
}

.atlas-float__badge {
	background: #fff !important;
	color: #000000 !important;
	border-radius: 50% !important;
	width: 22px !important;
	height: 22px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	font-size: 14px !important;
	font-weight: 700 !important;
}

/* ---------- Painel do carrinho ---------- */
.atlas-carrinho-backdrop {
	position: fixed !important;
	inset: 0 !important;
	background: rgba(0, 0, 0, 0.55) !important;
	z-index: 99980 !important;
	display: flex !important;
	align-items: stretch !important;
	justify-content: center !important;
}

.atlas-carrinho-backdrop[hidden] { display: none !important; }

.atlas-carrinho {
	background: #fff !important;
	width: 100% !important;
	max-width: 460px !important;
	height: 100% !important;
	display: flex !important;
	flex-direction: column !important;
	overflow: hidden !important;
}

@media (min-width: 700px) {
	.atlas-carrinho {
		height: auto !important;
		max-height: 92vh !important;
		margin: auto !important;
		border-radius: 12px !important;
	}
}

/* Header: seta vermelha | abas | X vermelho */
.atlas-carrinho__header {
	display: flex !important;
	align-items: stretch !important;
	border-bottom: 1px solid #eee !important;
	flex: 0 0 auto !important;
}

.atlas-carrinho__voltar,
.atlas-carrinho__fechar {
	background: var(--atlas-cor-principal, #d92c2c) !important;
	color: #fff !important;
	border: none !important;
	width: 48px !important;
	font-size: 25px !important;
	font-weight: 700 !important;
	cursor: pointer !important;
	padding: 0 !important;
	flex: 0 0 auto !important;
}

.atlas-carrinho__abas {
	flex: 1 !important;
	display: flex !important;
	justify-content: space-around !important;
	align-items: center !important;
}

.atlas-aba {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	gap: 2px !important;
	font-size: 13px !important;
	color: #bbb !important;
	padding: 8px 4px !important;
}

.atlas-aba__icone { font-size: 17px !important; }

.atlas-aba--ativa {
	color: #000000 !important;
	font-weight: 600 !important;
}

/* Telas */
.atlas-tela {
	flex: 1 !important;
	display: flex !important;
	flex-direction: column !important;
	min-height: 0 !important;
}

.atlas-tela[hidden] { display: none !important; }

.atlas-tela__corpo {
	flex: 1 !important;
	overflow-y: auto !important;
	padding: 16px !important;
}

.atlas-tela .atlas-btn-proximo {
	border-radius: 0 !important;
	flex: 0 0 auto !important;
}

/* Item da sacola */
.atlas-item {
	display: flex !important;
	gap: 10px !important;
	padding: 12px 0 !important;
	border-bottom: 1px dashed #ddd !important;
	align-items: flex-start !important;
}

.atlas-item__img {
	width: 56px !important;
	height: 56px !important;
	object-fit: cover !important;
	border-radius: 6px !important;
	flex: 0 0 auto !important;
}

.atlas-item__info { flex: 1 !important; min-width: 0 !important; }

.atlas-item__nome {
	font-size: 15px !important;
	font-weight: 700 !important;
	color: #1d1d1d !important;
}

.atlas-item__preco {
	font-size: 15px !important;
	color: #333 !important;
	margin-top: 2px !important;
}

.atlas-item__obs {
	font-size: 13px !important;
	color: #888 !important;
	margin-top: 4px !important;
	border-left: 2px solid #eee !important;
	padding-left: 6px !important;
}

.atlas-item__remover {
	background: none !important;
	border: none !important;
	color: #F30B45E0 !important;
	font-size: 17px !important;
	cursor: pointer !important;
	padding: 4px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex: 0 0 auto !important;
}

.atlas-sacola__vazia {
	text-align: center !important;
	color: #888 !important;
	padding: 40px 16px !important;
}

.atlas-sacola__vazia-icone { font-size: 41px !important; display: block !important; margin-bottom: 8px !important; }

/* Checkout */
.atlas-campo-grupo {
	margin-bottom: 18px !important;
	padding-bottom: 14px !important;
	border-bottom: 1px dotted #ddd !important;
}

.atlas-campo-grupo__titulo {
	display: block !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	color: #1d1d1d !important;
	margin-bottom: 10px !important;
}

.atlas-tipo-pedido {
	display: flex !important;
	gap: 8px !important;
}

.atlas-tipo-btn {
	flex: 1 !important;
	background: #fff !important;
	color: #333 !important;
	border: 1px solid #ddd !important;
	border-radius: 6px !important;
	padding: 11px 8px !important;
	font-size: 15px !important;
	cursor: pointer !important;
}

.atlas-tipo-btn--ativo {
	background: var(--atlas-cor-tipo-entrega-ativo, #000000) !important;
	color: #fff !important;
	border-color: var(--atlas-cor-tipo-entrega-ativo, #000000) !important;
}

.atlas-campo {
	display: block !important;
	font-size: 14px !important;
	color: #555 !important;
	margin-bottom: 12px !important;
}

.atlas-campo input,
.atlas-campo select {
	display: block !important;
	width: 100% !important;
	margin-top: 4px !important;
	padding: 10px !important;
	border: 1px solid #ddd !important;
	border-radius: 6px !important;
	font-size: 15px !important;
	background: #fff !important;
	color: #333 !important;
}

.atlas-campo input.atlas-campo--erro {
	border-color: #d92c2c !important;
}

.atlas-campo-aviso {
	display: block !important;
	margin: -8px 0 12px !important;
	font-size: 12px !important;
	color: #d92c2c !important;
}

/* Confirmar */
.atlas-confirmar__titulo {
	text-align: center !important;
	font-size: 18px !important;
	font-weight: 700 !important;
	margin: 0 0 14px !important;
	color: #1d1d1d !important;
}

.atlas-confirmar__cliente {
	font-size: 15px !important;
	color: #333 !important;
	padding-bottom: 12px !important;
	border-bottom: 1px dashed #ddd !important;
	margin-bottom: 12px !important;
}

.atlas-linha {
	display: flex !important;
	justify-content: space-between !important;
	font-size: 15px !important;
	color: #444 !important;
	padding: 4px 0 !important;
}

.atlas-linha--total {
	font-weight: 700 !important;
	color: #1d1d1d !important;
	border-top: 1px dashed #ddd !important;
	margin-top: 6px !important;
	padding-top: 8px !important;
}

.atlas-confirmar__nota {
	background: #eef6fb !important;
	color: #456 !important;
	font-size: 14px !important;
	border-radius: 6px !important;
	padding: 10px 12px !important;
	margin: 14px 0 !important;
	line-height: 1.4 !important;
}

.atlas-confirmar__itens {
	border: 1px solid #eee !important;
	border-radius: 8px !important;
	padding: 10px 12px !important;
}

.atlas-confirmar__itens-titulo {
	font-size: 15px !important;
	font-weight: 600 !important;
	color: #333 !important;
	margin-bottom: 6px !important;
}

/* Finalizado */
.atlas-finalizado { text-align: center !important; }

.atlas-finalizado__label {
	font-size: 15px !important;
	color: #333 !important;
	margin: 10px 0 4px !important;
}

.atlas-finalizado__numero {
	font-size: 45px !important;
	font-weight: 800 !important;
	color: #1d1d1d !important;
	margin-bottom: 8px !important;
}

.atlas-finalizado__tempo {
	font-size: 15px !important;
	color: #555 !important;
	margin-bottom: 14px !important;
}

.atlas-finalizado__msg {
	border: 1px dashed #ccc !important;
	border-radius: 6px !important;
	padding: 10px !important;
	font-size: 15px !important;
	color: #444 !important;
	margin-bottom: 14px !important;
}

.atlas-btn-whatsapp {
	display: block !important;
	width: 100% !important;
	background: #25d366 !important;
	color: #fff !important;
	border: none !important;
	border-radius: 8px !important;
	padding: 13px !important;
	font-size: 16px !important;
	font-weight: 600 !important;
	cursor: pointer !important;
	margin-bottom: 10px !important;
}

.atlas-btn-whatsapp[disabled] {
	opacity: 0.55 !important;
	cursor: not-allowed !important;
}

.atlas-finalizado__aviso-teste {
	font-size: 13px !important;
	color: #999 !important;
}

/* Trava scroll do body com popup/painel aberto */
body.atlas-sem-scroll { overflow: hidden !important; }

/* ---------- Fix: atributo hidden SEMPRE vence display forçado ---------- */
.atlas-wrap [hidden],
.atlas-carrinho-backdrop [hidden],
.atlas-popup-backdrop[hidden],
.atlas-float[hidden] {
	display: none !important;
}

/* =====================================================================
 * PAINEL DE PEDIDOS (Módulo 5) — mestre-detalhe + barra preta da loja
 * ===================================================================== */

.atlas-painel-wrap { max-width: 1100px !important; }

/* Barra preta de status (recurso da Fase 1) */
.atlas-barra-loja {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 10px !important;
	flex-wrap: wrap !important;
	background: #111 !important;
	color: #fff !important;
	border-radius: 8px !important;
	padding: 10px 14px !important;
	margin-bottom: 12px !important;
}

.atlas-barra-loja__grupo {
	display: flex !important;
	align-items: center !important;
	gap: 10px !important;
	flex-wrap: wrap !important;
}

.atlas-barra-loja__status { font-weight: 700 !important; font-size: 15px !important; }
.atlas-barra-loja__reopen { font-size: 14px !important; color: #ddd !important; }

.atlas-dropdown { position: relative !important; }

.atlas-btn-fechar-loja {
	background: #d92c2c !important;
	color: #fff !important;
	border: none !important;
	border-radius: 6px !important;
	padding: 7px 12px !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	cursor: pointer !important;
}

.atlas-dropdown-menu {
	position: absolute !important;
	top: calc(100% + 6px) !important;
	left: 0 !important;
	z-index: 300 !important;
	background: #fff !important;
	border: 1px solid #ddd !important;
	border-radius: 8px !important;
	box-shadow: 0 4px 14px rgba(0,0,0,0.2) !important;
	min-width: 260px !important;
	overflow: hidden !important;
}

.atlas-dropdown-menu[hidden] { display: none !important; }

.atlas-dropdown-item {
	display: block !important;
	width: 100% !important;
	text-align: left !important;
	background: #fff !important;
	border: none !important;
	border-bottom: 1px solid #f0f0f0 !important;
	padding: 10px 14px !important;
	cursor: pointer !important;
	color: #222 !important;
}

.atlas-dropdown-item:hover { background: #f7f7f7 !important; }
.atlas-dropdown-item strong { display: block !important; font-size: 14px !important; }
.atlas-dropdown-item span { font-size: 13px !important; color: #888 !important; }

.atlas-btn-retomar {
	background: #2a9d3a !important;
	color: #fff !important;
	border: none !important;
	border-radius: 6px !important;
	padding: 7px 12px !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	cursor: pointer !important;
}

.atlas-btn-config-impressao {
	background: transparent !important;
	color: #fff !important;
	border: 1px solid #555 !important;
	border-radius: 6px !important;
	padding: 7px 12px !important;
	font-size: 14px !important;
	cursor: pointer !important;
}

/* Modal de config de impressão */
.atlas-config-box { padding: 20px !important; }
.atlas-config-box__titulo { font-size: 17px !important; font-weight: 700 !important; margin: 0 0 14px !important; color: #1d1d1d !important; }
.atlas-config-item { display: block !important; font-size: 15px !important; color: #333 !important; margin-bottom: 12px !important; }
.atlas-config-item input[type="checkbox"] { margin-right: 6px !important; }
.atlas-config-item--inline select { margin-left: 6px !important; padding: 6px !important; border: 1px solid #ddd !important; border-radius: 6px !important; }
.atlas-config-msg { display: block !important; margin-top: 8px !important; font-size: 14px !important; color: #2a9d3a !important; }

/* Mestre-detalhe */
.atlas-painel {
	display: flex !important;
	gap: 12px !important;
	align-items: stretch !important;
	background: #f7f6f8 !important;
	border-radius: 8px !important;
	padding: 12px !important;
}

.atlas-painel__lista-col { flex: 0 0 320px !important; display: flex !important; flex-direction: column !important; min-width: 0 !important; }

.atlas-painel__filtro {
	width: 100% !important;
	padding: 9px 12px !important;
	border: 1px solid #ddd !important;
	border-radius: 6px !important;
	font-size: 14px !important;
	margin-bottom: 10px !important;
	background: #fff !important;
	color: #333 !important;
}

.atlas-painel__lista { max-height: 560px !important; overflow-y: auto !important; }

.atlas-pedido-card {
	position: relative !important;
	background: #fff !important;
	border-radius: 8px !important;
	padding: 12px !important;
	margin-bottom: 10px !important;
	cursor: pointer !important;
	box-shadow: 0 1px 3px rgba(0,0,0,0.07) !important;
}

.atlas-pedido-card--ativo { outline: 2px solid #d92c2c !important; }

.atlas-pedido-card__linha1 { font-size: 15px !important; color: #1d1d1d !important; }
.atlas-pedido-card__linha1 span { font-size: 13px !important; color: #888 !important; font-weight: 400 !important; }
.atlas-pedido-card__nome { font-size: 14px !important; color: #333 !important; margin-top: 2px !important; }
.atlas-pedido-card__tel { font-size: 13px !important; color: #777 !important; }

.atlas-status-badge {
	position: absolute !important;
	top: 12px !important;
	right: 12px !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	color: #fff !important;
	border-radius: 4px !important;
	padding: 3px 10px !important;
	background: #999 !important;
}

.atlas-status-badge--new { background: #d4b106 !important; }
.atlas-status-badge--confirmed { background: #2a9d3a !important; }
.atlas-status-badge--in-delivery { background: #1d6fd1 !important; }
.atlas-status-badge--finished { background: #555 !important; }
.atlas-status-badge--canceled { background: #b32d2e !important; }

.atlas-painel__detalhe-col {
	flex: 1 !important;
	display: flex !important;
	flex-direction: column !important;
	background: #fff !important;
	border-radius: 8px !important;
	min-width: 0 !important;
	overflow: hidden !important;
}

.atlas-painel__detalhe-topo {
	display: flex !important;
	justify-content: flex-end !important;
	border-bottom: 1px solid #eee !important;
	padding: 8px 12px !important;
	background: #fafafa !important;
}

.atlas-painel__imprimir {
	background: none !important;
	border: 1px solid #ddd !important;
	border-radius: 6px !important;
	padding: 7px 12px !important;
	font-size: 14px !important;
	cursor: pointer !important;
	color: #333 !important;
}

.atlas-painel__imprimir[disabled] { opacity: 0.5 !important; cursor: not-allowed !important; }

.atlas-painel__detalhe { flex: 1 !important; padding: 16px !important; overflow-y: auto !important; font-size: 15px !important; color: #333 !important; }

.atlas-painel__vazio { color: #999 !important; text-align: center !important; padding: 30px 10px !important; font-size: 14px !important; }
.atlas-painel__carregando { color: #999 !important; text-align: center !important; padding: 20px !important; }

.atlas-detalhe__topo { margin-bottom: 10px !important; }
.atlas-detalhe__topo span { color: #888 !important; font-size: 13px !important; }

.atlas-tipo-badge {
	background: #d92c2c !important;
	color: #fff !important;
	border-radius: 4px !important;
	padding: 3px 10px !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	margin-right: 6px !important;
}

.atlas-detalhe__cliente { margin-bottom: 8px !important; }
.atlas-detalhe__sep { border: none !important; border-top: 1px dashed #ddd !important; margin: 10px 0 !important; }
.atlas-detalhe__item { margin-bottom: 8px !important; }
.atlas-detalhe__obs { font-size: 13px !important; color: #888 !important; font-style: italic !important; }

.atlas-painel__acoes {
	display: flex !important;
	border-top: 1px solid #eee !important;
}

.atlas-painel__acao {
	flex: 1 !important;
	background: #fff !important;
	border: none !important;
	border-right: 1px solid #eee !important;
	padding: 13px 6px !important;
	font-size: 14px !important;
	cursor: pointer !important;
	color: #333 !important;
}

.atlas-painel__acao:last-child { border-right: none !important; }
.atlas-painel__acao:hover { background: #f5f5f5 !important; }
.atlas-painel__acao--cancelar { color: #b32d2e !important; }

/* Aviso de loja fechada (cliente) */
.atlas-aviso-fechado {
	position: fixed !important;
	bottom: 14px !important;
	left: 50% !important;
	transform: translateX(-50%) !important;
	z-index: 99999 !important;
	background: #111 !important;
	color: #fff !important;
	border-radius: 8px !important;
	padding: 13px 40px 13px 16px !important;
	font-size: 15px !important;
	box-shadow: 0 3px 14px rgba(0,0,0,0.3) !important;
	max-width: calc(100% - 24px) !important;
}

.atlas-aviso-fechado__x {
	position: absolute !important;
	top: 6px !important;
	right: 8px !important;
	background: none !important;
	border: none !important;
	color: #fff !important;
	font-size: 19px !important;
	cursor: pointer !important;
	padding: 0 !important;
}

/* Painel empilha no mobile */
@media (max-width: 760px) {
	.atlas-painel { flex-direction: column !important; }
	.atlas-painel__lista-col { flex: 1 !important; }
	.atlas-painel__lista { max-height: 300px !important; }
}

/* ---------- Aviso de loja fechada no cardápio ---------- */
.atlas-fechado-aviso {
	background: #fff3f3 !important;
	color: #b32d2e !important;
	border: 1px solid #f3c4c4 !important;
	border-radius: 8px !important;
	padding: 12px 14px !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	text-align: center !important;
	margin-bottom: 12px !important;
}

.atlas-fechado-aviso--pulsa {
	animation: atlas-pulsa 0.9s ease 2 !important;
}

@keyframes atlas-pulsa {
	0%, 100% { transform: scale(1); box-shadow: none; }
	50% { transform: scale(1.03); box-shadow: 0 0 0 4px rgba(217, 44, 44, 0.25); }
}

/* ===================================================================
 * Adicionais no popup do produto (Módulo 8 — grupos reaproveitáveis)
 * =================================================================== */

.atlas-popup__adicionais {
	margin: 4px 0 10px !important;
}

.atlas-adgrupo {
	border: 1px solid #eee !important;
	border-radius: 8px !important;
	padding: 10px 12px !important;
	margin-bottom: 10px !important;
	background: #fafafa !important;
}

.atlas-adgrupo--erro {
	border-color: #d92c2c !important;
	animation: atlas-pulsa 0.9s ease 2 !important;
}

.atlas-adgrupo__cab {
	display: flex !important;
	align-items: center !important;
	flex-wrap: wrap !important;
	gap: 8px !important;
	margin-bottom: 6px !important;
}

.atlas-adgrupo__nome {
	font-weight: 700 !important;
	font-size: 18px !important; /* +20% sobre os 15px originais */
	color: #1d1d1d !important;
}

.atlas-adgrupo__limite {
	font-size: 12px !important;
	color: #777 !important;
	background: #eee !important;
	padding: 1px 8px !important;
	border-radius: 10px !important;
}

.atlas-adgrupo__obrig {
	font-size: 11px !important;
	font-weight: 700 !important;
	color: #fff !important;
	background: var(--atlas-cor-obrigatorio, #000000) !important;
	padding: 1px 8px !important;
	border-radius: 10px !important;
	letter-spacing: 0.03em !important;
}

.atlas-adopcao {
	display: flex !important;
	align-items: center !important;
	gap: 8px !important;
	padding: 7px 2px !important;
	border-top: 1px solid #eee !important;
	cursor: pointer !important;
	font-size: 15px !important;
}

.atlas-adopcao:first-of-type {
	border-top: none !important;
}

/* Miniatura da opção — só existe no DOM quando a opção tem imagem
   cadastrada no Dashboard; sem imagem, nenhum espaço é reservado. */
.atlas-adopcao__foto {
	width: 32px !important;
	height: 32px !important;
	border-radius: 6px !important;
	object-fit: cover !important;
	flex: 0 0 auto !important;
}

.atlas-adopcao__nome {
	flex: 1 1 auto !important;
	color: #333 !important;
}

.atlas-adopcao__preco {
	color: var(--atlas-cor-preco, #2a8a3e) !important;
	font-weight: 600 !important;
	font-size: 14px !important;
}

.atlas-adopcao__check {
	width: 20px !important;
	height: 20px !important;
	flex: 0 0 auto !important;
	accent-color: var(--atlas-cor-principal, #d92c2c) !important;
}

/* Stepper − [n] + por opção (grupo tipo 'quantidade') */
.atlas-adopcao--qtd { cursor: default !important; }

.atlas-adqtd {
	display: flex !important;
	align-items: center !important;
	gap: 2px !important;
	flex: 0 0 auto !important;
}

.atlas-adqtd__btn {
	width: 30px !important;
	height: 30px !important;
	border: 1px solid #ddd !important;
	border-radius: 6px !important;
	background: #fff !important;
	color: #333 !important;
	font-size: 17px !important;
	line-height: 1 !important;
	cursor: pointer !important;
	padding: 0 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
}

.atlas-adqtd__num {
	min-width: 22px !important;
	text-align: center !important;
	font-size: 15px !important;
	color: #333 !important;
	font-weight: 600 !important;
}

/* Resumo dos adicionais no item da sacola e na confirmação */
.atlas-item__adicionais {
	font-size: 13px !important;
	color: #777 !important;
	margin: 2px 0 !important;
	line-height: 1.4 !important;
}

.atlas-linha--sub {
	font-size: 13px !important;
	color: #888 !important;
	padding-left: 10px !important;
}
