body { font-family: "Inter", sans-serif; } .nav-tabs-container { overflow-x: auto; overflow-y: hidden; white-space: nowrap; padding-bottom: 10px; -webkit-overflow-scrolling: touch; max-width: 100%; cursor: grab; } .nav-tabs-container::-webkit-scrollbar { display: none; } .nav-tabs { display: inline-flex; /* importante! */ flex-wrap: nowrap; gap: 6px; border-bottom: none; } .nav-tabs .nav-link { border: none; background: transparent; color: #768499; font-weight: 500; padding: 6px 8px; border-radius: 8px; white-space: nowrap; transition: all 0.3s ease; } .nav-tabs .nav-link.active { background: #eee; color: #000; font-weight: 700; } .nav-tabs-wrapper-fixed { position: sticky; top: 0; z-index: 999; background: #fff; transition: all 0.3s ease; } .nav-tabs-wrapper-fixed.sticky-active { border-radius: 0 0 16px 16px; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12); } .produto-container { display: flex; align-items: center; gap: 15px; padding: 15px 0; border-bottom: 1px solid #bbb; background: #fff; cursor: pointer; /* Remover bordas externas */ border-top: none !important; border-left: none !important; border-right: none !important; } .produto-container:last-child { border-bottom: none; } .list-group { border: none; padding: 0; margin: 0; } .produto-img { width: 120px; height: 110px; border-radius: 5px; object-fit: cover; } .produto-info { flex: 1; } .produto-nome { font-size: 17px; font-weight: 600; color: #333; } .produto-container .produto-descricao { font-size: 14px; color: #666; margin-top: 5px; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; } .produto-preco { font-size: 12px; font-weight: 700; color: #333; margin-top: 5px; } .modal.fade .modal-dialog { transform: translateY(100%); transition: transform 0.2s ease-out; margin: 0 auto; max-width: 100%; width: 100%; position: fixed; bottom: 0; left: 0; right: 0; } .modal.show .modal-dialog { transform: translateY(0); } .modal-content { border: none; background: transparent; box-shadow: none; border-radius: 20px 20px 0 0; } .modal-text-content .produto-descricao { overflow: visible; display: block; -webkit-line-clamp: unset; -webkit-box-orient: initial; } .modal-body { padding: 0; max-height: 90vh; overflow-y: auto; background: transparent; } .modal-header-line { width: 60px; height: 5px; background-color: #ccc; border-radius: 10px; margin: 10px auto; cursor: grab; } .modal-body img { width: 100%; height: auto; max-height: 50vh; object-fit: cover; display: block; border-radius: 20px 20px 0 0; } .modal-text-content { background: #fff; padding: 20px; min-height: 30vh; display: flex; flex-direction: column; justify-content: flex-start; } .modal-text-content .produto-nome { font-size: 22px; font-weight: bold; color: #333; } .modal-text-content .produto-preco { font-size: 18px; font-weight: bold; margin-top: 10px; color: #000; } .modal-text-content .produto-descricao { font-size: 16px; color: #666; margin-top: 10px; } .modal-dialog { margin: 0 !important; bottom: 0; } #searchResults { margin-top: 20px; display: none; } .carousel-item { transition: transform 0.6s ease; } .carousel-item img { width: 100%; height: auto; max-height: 450px; object-fit: cover; display: block; margin: 0 auto; background: #000; border-radius: 10px; } /* Indicadores circulares */ .carousel-indicators [data-bs-target] { width: 8px; height: 8px; border-radius: 50%; background-color: #ccc; opacity: 1; margin: 0 5px; border: none; transition: background-color 0.3s ease; } .carousel-indicators .active { background-color: #fff; } /* Clique e arraste */ .carousel-inner.dragging { cursor: grabbing; scroll-behavior: auto; } @media (max-width: 768px) { .carousel-item img { max-height: 250px; } } /* Efeito de slide mais suave */ .carousel-inner { border-radius: 10px; background-color: #000; /* evitar "branco" ao trocar imagens */ overflow: hidden; } /* Remove setas duplicadas */ .carousel-control-prev, .carousel-control-next { display: none !important; } /* Setas */ .carousel-control-prev-icon, .carousel-control-next-icon { filter: drop-shadow(0 0 3px rgba(0, 0, 0, 0.5)); } @media (max-width: 768px) { .carousel-item img { max-height: 250px; } } .sticky-tabs { position: sticky; top: 0; z-index: 999; background: #fff; transition: all 0.3s ease; } /* Só ativa quando estiver no topo */ .sticky-tabs.sticky-active { box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1); padding-top: 10px; padding-left: 5px; padding-bottom: 10px; border-bottom-left-radius: 12px; border-bottom-right-radius: 12px; } .produto-container:last-child { border-bottom: none !important; } .produto-container { display: flex; gap: 10px; padding: 10px; border-bottom: 1px solid #ddd !important; background: #fff; } .produto-img { width: 80px; height: 80px; object-fit: cover; } .produto-info { flex: 1; } #loadingSpinner { text-align: center; margin-top: 20px; } .tab-content-container h5 { font-size: 18px; font-weight: bold; color: #333; margin-bottom: 10px; margin-top: 30px; } .categoria-titulo { scroll-margin-top: 70px; /* altura da barra fixa + margem */ } .search-container { flex: 1; } .search-container input { width: 100%; font-weight: 600; font-size: 14px; height: 38px; padding: 6px 12px; border-radius: 8px; background-color: #f1f5f9; } .offcanvas.offcanvas-start { width: 300px; /* reduz largura */ transition: transform 0.4s ease-in-out !important; border-top-right-radius: 12px; border-bottom-right-radius: 12px; box-shadow: 2px 0 10px rgba(0, 0, 0, 0.1); } .offcanvas-body { padding-top: 0; font-size: 14px; } .offcanvas-header { background-color: #fff; } .offcanvas .btn-close { margin-top: -5px; } .footer-custom { border-top: 1px solid #ddd; font-size: 13px; color: #666; } .footer-custom a:hover { color: #000; } html, body { scroll-padding-top: 132px; } /* Carrossel */ #carouselExampleIndicators .carousel-item { background-color: transparent !important; transition: transform 0.8s ease-in-out; } #carouselExampleIndicators img { object-fit: cover; height: 100%; width: 100%; display: block; } /* Menus fixos e abas */ .sticky-menu-top { position: sticky; top: 0; background: #fff; z-index: 100; box-shadow: 0 2px 12px #0001; } /* Abas categorias */ .nav-tabs-container { overflow-x: auto; white-space: nowrap; padding-bottom: 0; background: #fff; } .nav-tabs { margin-bottom: 0; padding-bottom: 5px; } /* subcategorias */ .nav-subtabs-container { overflow-x: auto; overflow-y: hidden; white-space: nowrap; padding-bottom: 10px; -webkit-overflow-scrolling: touch; max-width: 100%; cursor: grab; } .nav-subtabs-container::-webkit-scrollbar { display: none; } .nav-subtabs { display: inline-flex; /* importante! */ flex-wrap: nowrap; gap: 6px; border-bottom: none; } .nav-subtabs .nav-link { border: none; background: transparent; color: #768499; font-weight: 500; padding: 6px 8px; border-radius: 8px; white-space: nowrap; transition: all 0.3s ease; } .nav-subtabs .nav-link.active { background: #eee; color: #000; font-weight: 700; } .nav-subtabs-wrapper-fixed { position: sticky; top: 0; z-index: 999; background: #fff; transition: all 0.3s ease; } .nav-subtabs-wrapper-fixed.sticky-active { border-radius: 0 0 16px 16px; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12); } .nav-subtab-btn { border: none; background: none; color: #768499; border-radius: 6px; padding: 5px 8px; font-weight: 500; font-size: 15px; transition: background 0.2s, color 0.2s; cursor: pointer; white-space: nowrap; box-shadow: none; } .nav-subtab-btn.active, .nav-subtab-btn:focus { background: #f1f5f9; color: #000; font-weight: 700; border-radius: 6px; box-shadow: none; } .subcategoria-titulo { margin-top: 22px !important; margin-bottom: 8px; font-size: 1.1rem; color: #212529; } .highlight { box-shadow: 0 0 0 2px #ffd600; border-radius: 1em; transition: box-shadow 0.5s; } .categoria-titulo { margin-top: 32px !important; } #subcategoriasTabsContainer { overflow-x: auto; white-space: nowrap; width: 100%; max-width: 100vw; -webkit-overflow-scrolling: touch; }