/*Este arquivo contém estilos estruturais gerais para o site,incluindo a classe padrão para modais.Version: 1.6.0/* Desabilita o scroll da página quando o modal está aberto */body.modal-open {    overflow: hidden;}/** * O estilo abaixo foi ajustado para centralizar a lógica de exibição do modal. * A classe '.modal-geral' agora é a única responsável por gerenciar o modal, * removendo a dependência de estilos adicionais. * A classe '.is-visible' agora é responsável por exibir o modal, * removendo a necessidade de estilos inline no HTML ou lógica de display complexa no JS. */.modal-geral {    display: none;    position: fixed;    z-index: 1000;    left: 0;    top: 0;    width: 100%;    height: 100%;    overflow: auto;    background-color: rgba(0, 0, 0, 0.5);    justify-content: center;    align-items: center;}.modal-geral.is-visible {    display: flex;}/* * Estilos para o modal-conteudo permanecem inalterados, mas foram incluídos * para contexto da solução. */.modal-conteudo {    background-color: #fefefe;    margin: auto;    padding: 20px;    border: 1px solid #888;    width: 80%;    max-width: 600px;    border-radius: 10px;    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);    position: relative;    animation-name: animatetop;    animation-duration: 0.4s;}@-webkit-keyframes animatetop {    from {top: -300px; opacity: 0}    to {top: 0; opacity: 1}}@keyframes animatetop {    from {top: -300px; opacity: 0}    to {top: 0; opacity: 1}}/* Media query para ajustar a largura em telas menores */@media (max-width: 600px) {    .modal-geral .modal-conteudo {        width: 85%;        padding: 15px;    }    .modal-geral {        padding-top: 10px;        padding-bottom: 10px;        padding-left: 10px;        padding-right: 10px;    }    .modal-geral .modal-conteudo {        max-height: calc(100vh - 40px);    }}.error-message {    color: #d9534f;    font-size: 14px;    margin-top: 10px;    text-align: center;}.success-message {    color: #5cb85c;    font-size: 14px;    margin-top: 10px;    text-align: center;}/* Estilos para o switch de alternância */.toggle-switch {    position: relative;    display: inline-block;    width: 60px;    height: 34px;}.toggle-switch input {    opacity: 0;    width: 0;    height: 0;}.slider {    position: absolute;    cursor: pointer;    top: 0;    left: 0;    right: 0;    bottom: 0;    background-color: #ccc;    -webkit-transition: .4s;    transition: .4s;    border-radius: 34px;}.slider:before {    position: absolute;    content: "";    height: 26px;    width: 26px;    left: 4px;    bottom: 4px;    background-color: white;    -webkit-transition: .4s;    transition: .4s;    border-radius: 50%;}input:checked + .slider {    background-color: #2196F3;}input:focus + .slider {    box-shadow: 0 0 1px #2196F3;}input:checked + .slider:before {    -webkit-transform: translateX(26px);    -ms-transform: translateX(26px);    transform: translateX(26px);}.char-counter {    font-size: 12px;    color: #666;    text-align: right;    margin-top: 4px;}.form-group.with-counter {    position: relative;}.form-group.with-counter .char-counter {    position: absolute;    right: 0;    bottom: -15px;}/* Estilo para botão desabilitado */.botao-geral:disabled {    background-color: #cccccc;    cursor: not-allowed;}/* Estilo para a pré-visualização da imagem */.bunner-preview-container .bunner-image {    max-width: 100%;    height: auto;    border-radius: 8px;    box-shadow: 0 2px 4px rgba(0,0,0,0.1);}/* Container principal */.container-geral {    max-width: 600px; /* Largura máxima do contêiner */    width: 100%; /* Largura total, mas limitada pelo max-width */    border: 0px solid #ddd;    padding: 20px;    margin: 5px auto; /* Centraliza o contêiner */    border-radius: 5px;    background-color: #ffffff;}.container-superior {    max-width: 1150px; /* Largura máxima do contêiner */    width: 100%; /* Largura total, mas limitada pelo max-width */    border: 0px solid #ddd;    padding: 20px;    margin: 20px auto; /* Centraliza o contêiner */    border-radius: 5px;    background-color: #ffffff;}.container-central {    display: flex;    flex-direction: column;    align-items: center;    justify-content: center;}.container-imagem {    max-height: 450px;    overflow: hidden;}.container-navegacao {			/* Parte inferior, onde está botão de avançar e voltar.*/    display: flex;    flex-direction: row;    gap: 10px;    width: 100%;	margin-top: 15px;}.container-divisoes {			/* Parte inferior, onde está botão de avançar e voltar.*/    display: flex;    flex-direction: row;    gap: 10px;    align-items: center;    width: 100%;	margin-top: 15px;}/* Textos */.titulo-categoria,.titulo-geral,.subtitulo-geral,.texto-geral {	font-family: Arial, sans-serif;    color: inherit; /* Herdar a cor do texto */    text-decoration: none; /* Remover sublinhado */    cursor: text; /* Cursor de texto, como em um parágrafo comum */}.titulo-categoria {    text-align: center;    font-size: 20px;    color: #272626;    font-weight: bold;    margin-bottom: 25px;    font-size: 20px;}.titulo-geral {    font-size: 20px;    font-weight: bold;    flex: 1;    display: flex;    flex-direction: column;    justify-content: center;    align-items: flex-start;	margin-bottom: 5px;}.subtitulo-geral {    text-align: justify;    font-size: 17px;    color: #272626;    margin-bottom: 10px;}.texto-geral {	font-family: Arial, sans-serif;    font-size: 16px;    color: #272626;    margin-bottom: 10px;}.texto-geral-bold {	font-family: Arial, sans-serif;    font-size: 16px;    color: #272626;    margin-bottom: 10px;	font-weight: bold;}.descricao-geral {	font-family: Arial, sans-serif;    font-size: 14px;    color: #272626;    margin-bottom: 10px;    margin-bottom: 2px;}.microdescricao-geral {	font-family: Arial, sans-serif;    font-size: 12px;    color: #272626;    margin-bottom: 4px;}.generoliterario-geral {    display: inline-block;    background-color: #f1f1f1;    padding: 5px 10px;    border-radius: 5px;    margin-right: 5px;    margin-button: 5px;    font-size: 12px;}.generoliterario-geral {    display: inline-block;    background-color: #f1f1f1;    padding: 5px 10px;    border-radius: 5px;    margin-right: 5px;    margin-button: 5px;    font-size: 12px;}.preco-geral {	font-family: Arial, sans-serif;    font-size: 18px;    font-weight: bold;}/* B O T Õ E S */.botao-geral,.botao-tipo1,.botao-tipo2,.botao-tipo3,.botao-complemento,.botao-editar,.botao-adicionar-mais {    font-family: Arial, sans-serif;    font-size: 14px;    font-weight: bold;    padding: 10px 12px;    border-radius: 10px;    cursor: pointer;    transition: background-color 0.3s ease;    box-sizing: border-box;    align-items: center;    justify-content: center;	text-align: center;	text-decoration: none;}.botao-geral {    color: #FFFFFF;    background-color: #F25C05;    border: none;    display: flex;}.botao-geral:hover {    background-color: #FA7020;}.botao-tipo1 {    color: #272626;    background-color: #D9D9D9;    border: 2px solid #D9D9D9;    text-align: center;}.botao-tipo1:hover {    background-color: #E2E2E2;}.botao-tipo2 {    color: #F25C05;    background-color: #FFFFFF;    border: 2px solid #F25C05;	text-align: center;	display: flex;}.botao-tipo2:hover {    background-color: #FCE7D8;}.botao-tipo3 {    color: #6B26CB;    background-color: #FFFFFF;    border: 0px solid #6B26CB;	text-align: center;    align-items: center;}/* Botões específicos */.botao-geral-navegacao1 {    gap: 5px;    width: 70%;}.botao-geral-navegacao2 {    width: 30%;}.botao-geral-navegacao3 {    width: 100%;}.botao-geral-navegacao4 {    width: 85%;}.botao-geral-navegacao5 {    width: 15%;}.botao-ver-carrinho:hover,.botao-geral-navegacao1:hover:not(:disabled) {    background: #5A1FA8;}.input-geral {    padding: 10px;    font-size: 16px;    border-radius: 10px;    width: 100%;    margin-bottom: 10px;    display: block;    box-sizing: border-box;}/* Header da loja */.header-loja {    display: flex;    justify-content: space-between;    align-items: center;    width: 100%;    margin-bottom: 10px;}.logo-loja {    width: 120px;    height: 120px;    border-radius: 50%;    object-fit: cover;    margin-bottom: 10px;}.imagem-geral {    width: 120px;    height: 120px;    border-radius: 5%;    object-fit: cover;    margin-bottom: 10px;}.bunner-geral {    width: 100%;    border-radius: 5%;    object-fit: cover;    margin-bottom: 10px;}/* DIVISÕES */.divisao-geral-1 {    width: 70%;}.divisao-geral-2 {    width: 30%;}.divisao-geral-3 {    width: 100%;}.divisao-geral-4 {    width: 85%;}.divisao-geral-5 {    width: 15%;}.divisao-geral-6 {    width: 50%;}.espaco-geral-2 {    width: 30%;}/* Ícones  e imagens*/.icone-geral {    width: 20px;    height: 20px;	align-items: center;	text-align: center;	margin: 3px 3px 3px 3px;}.imagem-geral-l {    width: 70px;    max-width: 70px;    height: 70px;    object-fit: cover;}.categorias-container {    display: flex;    flex-direction: column;}.categorias-container {    width: 100%;    margin-bottom: 10px;}/* Categorias */.botao-categoria {    display: block;    width: 100%;    padding: 15px;    background: #fff;    color: #444;    text-decoration: none;    border: 3px solid #444;    border-radius: 5px;    transition: background-color 0.3s;}.botao-categoria:hover {    background: #f0f0f0;}/* Produtos */	.produto-item {    display: flex;    align-items: center;    justify-content: space-between;    padding: 15px;    background: #fff;    border: 3px solid #444;    border-radius: 5px;    margin-bottom: 10px;    text-decoration: none;    color: #000;    cursor: pointer;}.produto-info {    display: flex;    align-items: center;    flex-grow: 1;}.produto-logo {    width: 50px;    height: 50px;    object-fit: cover;    margin-right: 10px;}.produto-nome {    text-align: left;}.produto-item:hover {    background: #f0f0f0;}.produto-logo {    width: 50px;    height: 50px;    object-fit: cover;    margin-right: 10px;}.produto-nome {    flex-grow: 1;    text-align: left;}/* Responsividade para telas menores */@media screen and (max-width: 768px) {    .container-geral {		max-width: 90%; 		/* Largura máxima do contêiner */    }    		.pedido-conteudo {		max-width: 90%; 		/* Largura máxima do contêiner */    }	    .titulo-categoria {        font-size: 22px; 		/* Ajuste do tamanho da fonte */    }    .titulo-geral {        font-size: 20px; 		/* Ajuste do tamanho da fonte */    }    .subtitulo-geral {        font-size: 18px; 		/* Ajuste do tamanho da fonte */    }    .texto-geral {        font-size: 16px; 		/* Ajuste do tamanho da fonte */    }    .foto-geral img {        width: 100px; 			/* Ajuste do tamanho da foto */    }    .pagination .page-number {        padding: 8px 10px; 		/* Ajuste do tamanho do botão de paginação */        font-size: 14px; 		/* Ajuste da fonte para paginação */    }    .separador {        margin-top: 20px; 		/* Ajuste das margens no separador */        margin-bottom: 20px;    }}.modal {    display: none;    position: fixed;    top: 0;    left: 0;    width: 100%;    height: 100%;    background-color: rgba(0, 0, 0, 0.5);    z-index: 1000;}.modal-content {    background-color: #fff;    margin: 15% auto;    padding: 20px;    border: 1px solid #888;    width: 80%;    max-width: 500px;    border-radius: 8px;    position: relative;}.close {    position: absolute;    top: 10px;    right: 15px;    font-size: 20px;    cursor: pointer;}.botoes-header {    display: flex;    justify-content: flex-end;    align-items: center;    gap: 10px;    width: 100%;}.botao-ajustes, .botao-carrinho {    margin: 0; /* Remove margens para evitar interferência no gap */}/* Estilização específica para o botão carrinho */.botao-carrinho {    display: flex;    align-items: center;    justify-content: center;    gap: 5px; /* Espaçamento entre ícone e texto */    width: 100%; /* Garante que o botão interno ocupe a largura da classe pai */}/* Header da loja */.header-loja {    display: flex;    align-items: center;    width: 100%;    margin-bottom: 10px;    gap: 10px; /* Espaçamento entre os elementos */}/* Logo da loja */.logo-geral {    width: 100%; /* Ocupa 30% da largura */    max-width: 120px; /* Limite máximo para manter proporções */    height: 120px;    border-radius: 50%;    object-fit: cover;    flex-shrink: 0; /* Impede compressão */}/* Contêiner dos botões */.botoes-header {    display: flex;    align-items: center;    justify-content: flex-end;    gap: 10px; /* Espaçamento entre botões */    width: 80%; /* Soma de 30% (carrinho) + 10% (ajustes) */}/* Botão Ver carrinho */.botao-carrinho {    width: 75%; /* 30% do total (30/40 do botoes-header) */    max-width: 150px; /* Limite máximo para estética */    min-width: 140px; /* Limite máximo para estética */    display: flex;    align-items: center;    justify-content: center;    gap: 5px; /* Espaço entre ícone e texto */    padding: 10px 15px;    box-sizing: border-box;}