/* =====================================================================
   Tema Gordin Garage: preto com detalhes em vermelho (site público).
   Carregado depois de main.css só fora do painel (views/partials/header.php).
   A primeira parte espelha os seletores dos CSS originais trocando as cores;
   a parte "AJUSTES MANUAIS" no fim tem prioridade.
   ===================================================================== */
:root {
    --gg-bg: #0a0a0b;
    --gg-surface: #16181c;
    --gg-surface-2: #1f2228;
    --gg-menu: #262b33;
    --gg-input: #0f1013;
    --gg-border: #2b2f36;
    --gg-text: #f4f4f5;
    --gg-muted: #a1a1aa;
    --gg-red: #e30613;
    --gg-red-dark: #b0040f;
}

/* --- pages/404.css --- */
.container-404 {
    background-color: var(--gg-surface);
}
.container-404 div h4 {
    color: var(--gg-text);
}
.container-404 div p {
    color: var(--gg-text);
}
.container-404 div button {
    background-color: var(--gg-red);
}
@media only screen and (max-width: 600px) {
.container-404 div button {
    background-color: var(--gg-red);
}
}

/* --- pages/cadastrar.css --- */
.register-form {
    background-color: var(--gg-surface);
    color: var(--gg-muted);
}
.register-form form label {
    color: var(--gg-text);
}
.register-form form input[type="text"],input[type="tel"], input[type="password"] {
    border: solid 1px var(--gg-border);
    color: var(--gg-muted);
}
.register-form form button {
    background-color: var(--gg-red);
}

/* --- pages/campanhas.css --- */
.control-campaigns-list {
    background-color: var(--gg-surface);
}
.control-campaigns-list div p {
    color: var(--gg-muted);
}
.control-campaigns-list div button:hover {
    background-color: var(--gg-surface);
}

/* --- pages/comunicados.css --- */
.communications .header-communications h4 {
    color: var(--gg-muted);
}
.communications .communication {
    background-color: var(--gg-surface);
    color: var(--gg-muted);
}

/* --- pages/contato.css --- */
.form-contact form {
    background-color: var(--gg-surface);
    color: var(--gg-muted);
}
.form-contact form label {
    color: var(--gg-text);
}
.form-contact form input, textarea {
    border: solid 1px var(--gg-border);
    color: var(--gg-muted);
}
.form-contact form p {
    color: var(--gg-muted);
}
.form-contact form button {
    background-color: var(--gg-red);
}
.form-contact form button:hover {
    background-color: var(--gg-red);
}

/* --- pages/home.css --- */
body section .container {
    background-color: var(--gg-surface);
}
body section .container .title h1 {
    color: var(--gg-text);
}
body section .container .title p {
    color: var(--gg-muted);
}
body section .container .favorite-campaign span {
    background-color: var(--gg-red);
}
body section .container .favorite-campaign h2 {
    color: var(--gg-text);
    background-color: var(--gg-surface);
}
body section .container .favorite-campaign p {
    color: var(--gg-muted);
    background-color: var(--gg-surface);
}
body section .container .grid-campaign-actives .campaign {
    background-color: var(--gg-surface);
}
body section .container .grid-campaign-actives .campaign .info-campaign h3 {
    color: var(--gg-text);
}
body section .container .grid-campaign-actives .campaign .info-campaign p {
    color: var(--gg-muted);
}
body section .container .grid-campaign-actives .campaign .info-campaign span {
    background-color: var(--gg-red);
}
body section .container .grid-campaign-actives .campaign .info-campaign .draw-date i {
    color: var(--gg-muted);
}
body section .container .grid-campaign-actives .campaign .info-campaign .draw-date p {
    color: var(--gg-muted);
}
body section .container .btn-support a {
    background-color: var(--gg-surface);
}
body section .container .btn-support a span {
    background-color: var(--gg-surface);
}
body section .container .btn-support a div h3 {
    color: var(--gg-text);
}
body section .container .btn-support a div p {
    color: var(--gg-muted);
}
body section .container .winners .title-winners h3 {
    color: var(--gg-text);
}
body section .container .winners .title-winners p {
    color: var(--gg-muted);
}
body section .container .winners .grid-winner .grid-winners {
    background-color: var(--gg-surface);
    color: var(--gg-text);
}
body section .container .winners .grid-winner .grid-winners .img-user-home {
    border: solid 2px var(--gg-red);
}
body section .container .winners .grid-winner .grid-winners .info-winner-home p:first-child {
    color: var(--gg-text);
}
body section .container .winners .grid-winner .grid-winners .info-winner-home p {
    color: var(--gg-muted);
}
body section .container .winners .grid-winner .grid-winners .info-winner-home h3 {
    color: var(--gg-muted);
}
body section .container .faq .title-faq h2 {
    color: var(--gg-text);
}
body section .container .faq .container-faq {
    background-color: var(--gg-surface);
}
body section .container .faq .container-faq h4 {
    color: var(--gg-text);
}
body section .container .faq .container-faq p {
    color: var(--gg-muted);
}

/* --- pages/meusnumeros.css --- */
.form-search-orders {
    background-color: var(--gg-surface);
    color: var(--gg-muted);
}
.form-search-orders h1 {
    color: var(--gg-muted);
    border-bottom: solid 1px var(--gg-border);
}
.form-search-orders input {
    border: solid 1px var(--gg-border);
    color: var(--gg-muted);
}
.form-search-orders button[type="submit"] {
    background-color: var(--gg-red);
}
.grid-results-order {
    background-color: var(--gg-surface);
    color: var(--gg-muted);
}
.order-status-badge.status-pago {
    background-color: var(--gg-surface);
    color: var(--gg-text);
    border: solid 1px var(--gg-border);
}
.order-status-badge.status-pendente {
    background-color: var(--gg-surface);
    color: var(--gg-text);
    border: solid 1px var(--gg-border);
}
.order-status-badge.status-cancelado {
    background-color: var(--gg-surface);
    color: var(--gg-text);
    border: solid 1px var(--gg-border);
}
.btn-order-checkout {
    background-color: var(--gg-surface-2);
}
.btn-download-receipt {
    background-color: var(--gg-red);
}
.btn-download-receipt:hover {
    background-color: var(--gg-red);
}
.order-cancelled-message {
    color: var(--gg-text);
    background-color: var(--gg-surface);
    border: solid 1px var(--gg-border);
}
.grid-results-order .info-order .result-order-info h4 {
    color: var(--gg-text);
    background-color: var(--gg-surface);
}
.grid-results-order .info-order .result-order-info span {
    color: var(--gg-text);
}
.grid-results-order .info-order .result-order-info p {
    color: var(--gg-text);
}
.grid-results-order .result-number-order button {
    background-color: var(--gg-surface-2);
}
.message-empty {
    color: var(--gg-muted);
}

/* --- pages/obrigado.css --- */
.draw-title-winner {
    background-color: var(--gg-surface);
}
.congratulation h4 {
    color: var(--gg-text);
}
.congratulation h5 {
    color: var(--gg-text);
}
.congratulation p {
    color: var(--gg-text);
}
.congratulation .numbers-contemplated h6 {
    color: var(--gg-text);
}

/* --- pages/orderDetails.css --- */
.status-order-pending {
    background-color: var(--gg-surface-2);
}
.payment-info {
    background-color: var(--gg-surface);
}
.section-qrcode .description-payment #pixCode {
    border: solid 1px var(--gg-border);
    color: var(--gg-text);
}
.section-qrcode .description-payment .warn-description {
    color: var(--gg-text);
    background-color: var(--gg-surface);
    border: solid 1px var(--gg-border);
}
.section-qrcode .qrcode-payment .description-qrcode p {
    color: var(--gg-text);
}
.reload-page-message {
    border: solid 1px var(--gg-border);
    background-color: var(--gg-surface);
    color: var(--gg-text);
}
.order-info {
    background-color: var(--gg-surface);
}
.order-info h4 {
    color: var(--gg-muted);
}
.order-info p {
    color: var(--gg-text);
    border-bottom: solid 1px var(--gg-border);
}
.order-info button {
    background-color: var(--gg-surface-2);
}
.contact-payment {
    color: var(--gg-muted);
}
.contact-payment:hover {
    color: var(--gg-text);
}
@media only screen and (max-width: 600px) {
.section-qrcode .qrcode-payment .description-qrcode p {
    color: var(--gg-text);
}
}

/* --- pages/single.css --- */
.info-single .background-gradient span {
    background-color: var(--gg-red);
}
.date-price .date-single p {
    color: var(--gg-text);
}
.date-price .date-single span {
    background-color: var(--gg-surface);
}
.date-price .price-single p {
    color: var(--gg-text);
}
.winner-single {
    background-color: var(--gg-red);
}
.progress-bar {
    background-color: var(--gg-surface-2);
}
.progress-bar .progress_inner {
    background: repeating-linear-gradient(
        45deg,
        var(--gg-red),
        var(--gg-red) 10px,
        var(--gg-red) 10px,
        var(--gg-red) 20px
    );
}
.description-single {
    background-color: var(--gg-surface);
}
.description-single .btn-Description:hover {
    color: var(--gg-red);
}
.description-single .description {
    color: var(--gg-text);
}

/* --- pages/termodeuso.css --- */
.term-of-use {
    background-color: var(--gg-surface);
    color: var(--gg-muted);
}

/* --- partials/automatic.css --- */
.select-single p {
    color: var(--gg-muted);
    background-color: var(--gg-surface);
}
.select-single .content-select .popular {
    border: 2px solid var(--gg-red);
}
.select-single .content-select .popular button {
    background-color: var(--gg-red);
}
.select-single .add-to-cart .quantity-input {
    background-color: var(--gg-surface);
}
.select-single .add-to-cart .quantity-input .bi-dash-circle {
    color: var(--gg-muted);
}
.select-single .add-to-cart .quantity-input input[type="number"] {
    border: solid 1px var(--gg-border);
    color: var(--gg-muted);
}
.select-single .add-to-cart .btn-add-to-cart {
    background-color: var(--gg-red);
}

/* --- partials/biggersmaller.css --- */
.bigger-smaller .bigger-smaller-title h4 {
    color: var(--gg-text);
}
.bigger-smaller .bigger-smaller-title h4 span {
    background-color: var(--gg-surface-2);
}
.bigger-smaller .bigger-smaller-container div span {
    background-color: var(--gg-red);
}

/* --- partials/drawtitles.css --- */
.draw-titles-single .title-award h4 {
    color: var(--gg-text);
}
.draw-titles-single .title-award p {
    color: var(--gg-muted);
}
.draw-titles-single .draw-titles-content .title-content .number-title {
    background-color: var(--gg-surface);
}

/* --- partials/footer.css --- */
footer {
    background-color: var(--gg-surface);
}
footer .container-footer {
    color: var(--gg-text);
}
footer .container-footer span:last-child {
    background-color: var(--gg-red);
}

/* --- partials/navbar.css --- */
nav .container-nav .sub-menu-nav {
    border-top: 1px solid var(--gg-border);
}
nav .container-nav .popup-nav .container-popup-nav .options-nav ul li {
    border-bottom: solid 1px var(--gg-border);
}
nav .container-nav .popup-nav .container-popup-nav .options-nav ul li .new {
    background-color: var(--gg-red);
}
nav .container-nav .popup-nav .container-popup-nav .options-nav button {
    background-color: var(--gg-red);
}
nav .container-nav .popup-nav .container-popup-nav .options-nav button:hover {
    background-color: var(--gg-red);
}

/* --- partials/normal.css --- */
.normal-single .normal-title h4 {
    color: var(--gg-text);
}
.normal-single .normal-title p {
    color: var(--gg-muted);
}
.normal-single .controls-normal .btn-normal {
    background-color: var(--gg-surface);
}
.normal-single .controls-normal .btn-normal .result-reservados {
    background-color: var(--gg-surface-2);
}
.normal-single .controls-normal .btn-normal .result-pagos {
    background-color: var(--gg-red);
}
.normal-single .select-normal input[type="number"] {
    border: solid 1px var(--gg-border);
    color: var(--gg-muted);
}
.normal-single .modal-normal .modal-normal-content {
    background-color: var(--gg-surface);
}
.normal-single .modal-normal .modal-normal-content .add-to-cart-normal .input-quantity-raffle-normal input {
    border: solid 1px var(--gg-border);
    color: var(--gg-muted);
}
.normal-single .modal-normal .modal-normal-content .add-to-cart-normal .btn-add-rn {
    background-color: var(--gg-red);
}
@media only screen and (max-width: 600px) {
.normal-single .modal-normal .modal-normal-content {
    background-color: var(--gg-surface);
}
}

/* --- partials/paymentmodal.css --- */
.modal-payment .modal-payment-content {
    background-color: var(--gg-surface);
}
.modal-payment .modal-payment-content .header-modal span {
    border-bottom: solid 1px var(--gg-border);
}
.modal-payment .modal-payment-content .header-modal span h3 {
    color: var(--gg-text);
}
.modal-payment .modal-payment-content .header-modal span i {
    color: var(--gg-muted);
}
.modal-payment .modal-payment-content .header-modal .target-quantity p {
    border: solid 1px var(--gg-border);
    background-color: var(--gg-surface);
    color: var(--gg-text);
}
.modal-payment .modal-payment-content .form-1 label {
    color: var(--gg-text);
}
.modal-payment .modal-payment-content .form-1 #phone {
    border: solid 1px var(--gg-border);
    color: var(--gg-muted);
}
.modal-payment .modal-payment-content .form-1 .order-bump {
    background-color: var(--gg-surface);
    border: solid 1px var(--gg-border);
}
.modal-payment .modal-payment-content .form-1 .order-bump span label {
    color: var(--gg-text);
}
.modal-payment .modal-payment-content .form-1 button {
    background-color: var(--gg-red);
}
.modal-payment .modal-payment-content .form-1 h4 {
    color: var(--gg-muted);
}
.modal-payment .modal-payment-content .form-1 h4 strong {
    color: var(--gg-text);
}
.modal-payment .modal-payment-content .form-2 p {
    background-color: var(--gg-surface);
    border: solid 1px var(--gg-border);
    color: var(--gg-text);
}
.modal-payment .modal-payment-content .form-2 label {
    color: var(--gg-text);
}
.modal-payment .modal-payment-content .form-2 input {
    border: solid 1px var(--gg-border);
    color: var(--gg-muted);
}
.modal-payment .modal-payment-content .form-2 button {
    background-color: var(--gg-red);
}
.modal-payment .modal-payment-content .form-3 .target-user-registered {
    background-color: var(--gg-surface);
    color: var(--gg-text);
    border: solid 1px var(--gg-border);
}
.modal-payment .modal-payment-content .form-3 label {
    color: var(--gg-text);
}
.modal-payment .modal-payment-content .form-3 #phone3 {
    border: solid 1px var(--gg-border);
    color: var(--gg-muted);
}
.modal-payment .modal-payment-content .form-3 button {
    background-color: var(--gg-red);
}

/* --- partials/promotions.css --- */
.promotions .promotion-single h3 {
    color: var(--gg-text);
}
.promotions .promotion-single p {
    color: var(--gg-muted);
}
.promotions .promotion-content {
    background-color: var(--gg-surface);
}
.promotions .promotion-content div {
    background-color: var(--gg-red);
}

/* --- partials/ranking.css --- */
.ranking .title-ranking h4 {
    color: var(--gg-text);
}
.ranking .title-ranking h4 span {
    background-color: var(--gg-surface-2);
}
.ranking .title-ranking p {
    color: var(--gg-muted);
}
.ranking .container-ranking div {
    background-color: var(--gg-surface);
}
.ranking .container-ranking div p {
    color: var(--gg-muted);
}
@media only screen and (max-width: 600px) {
.ranking .container-ranking div p {
    color: var(--gg-muted);
}
}

/* --- partials/socialsicons.css --- */
.socials-icons span .telegram-dr {
    background-color: var(--gg-surface-2);
}
.socials-icons span .support-dr {
    background-color: var(--gg-surface-2);
}


/* =====================================================================
   AJUSTES MANUAIS (têm prioridade sobre a parte gerada acima)
   ===================================================================== */

html, body {
    background-color: var(--gg-bg) !important;
    color: var(--gg-text);
}

::selection { background: var(--gg-red); color: #fff; }

/* faixa colorida atrás do topo de cada página: some no tema preto */
body section .back-range { background-color: var(--gg-bg) !important; }

body section .container {
    background-color: var(--gg-bg) !important;
    color: var(--gg-text);
}

body section .container .title h1,
body section .container h1,
body section .container h2,
body section .container h3,
body section .container h4 { color: var(--gg-text); }

body section .container .title p { color: var(--gg-muted); }

/* campos de formulário */
section input[type="text"], section input[type="tel"], section input[type="email"],
section input[type="password"], section input[type="number"], section input[type="search"],
section textarea, section select,
.modal-content input, .modal-content select {
    background-color: var(--gg-input) !important;
    color: var(--gg-text) !important;
    border: 1px solid var(--gg-border) !important;
}
section input::placeholder, section textarea::placeholder { color: #6b7079; }
section input:focus, section textarea:focus, section select:focus {
    outline: none;
    border-color: var(--gg-red) !important;
    box-shadow: 0 0 0 3px rgba(227, 6, 19, .25) !important;
}

a { color: inherit; }

/* ---------- Topo (logo + botão do menu) ---------- */
nav, nav.gg-nav {
    background-color: #000 !important;
    border-bottom: 1px solid #1d1d1d;
    padding: 12px 0 !important;
}
nav .container-nav .header-nav { padding: 0 14px; }
nav .container-nav .header-nav .gg-logo img {
    max-width: 230px;
    max-height: 64px;
    display: block;
}
nav .container-nav .header-nav .gg-menu-btn {
    background: transparent;
    border: none;
    color: #fff;
    font-size: 34px;
    line-height: 1;
    padding: 4px;
    cursor: pointer;
}
nav .container-nav .header-nav .gg-menu-btn i { color: #fff; font-size: 36px; }
nav .container-nav .sub-menu-nav { display: none !important; }

/* ---------- Menu (janela) ---------- */
nav .container-nav .popup-nav {
    background-color: rgba(0, 0, 0, .65) !important;
    backdrop-filter: blur(3px);
    -webkit-backdrop-filter: blur(3px);
    padding: 14px;
    box-sizing: border-box;
}
nav .container-nav .popup-nav .gg-menu-card {
    max-width: 560px;
    margin: 56px auto 0;
    background-color: var(--gg-menu);
    border-radius: 26px;
    padding: 26px 22px 30px;
    box-shadow: 0 24px 60px rgba(0, 0, 0, .55);
    animation: ggMenuIn .18s ease-out;
}
@keyframes ggMenuIn {
    from { transform: translateY(-10px); opacity: 0; }
    to { transform: none; opacity: 1; }
}
.gg-menu-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 22px;
}
.gg-menu-head span {
    color: #fff;
    font-weight: 700;
    font-size: 1.2em;
    display: flex;
    align-items: center;
    gap: 12px;
}
.gg-menu-head span i { font-size: 1.3em; }
.gg-menu-head button {
    background: transparent;
    border: none;
    color: #fff;
    font-size: 1.5em;
    cursor: pointer;
    padding: 4px 6px;
}
.gg-menu-user {
    display: flex;
    align-items: center;
    gap: 12px;
    background-color: rgba(255, 255, 255, .05);
    border-radius: 14px;
    padding: 10px 14px;
    margin-bottom: 10px;
    color: #fff;
}
.gg-menu-user .img-user-nav {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background-size: cover;
    background-position: center;
    flex-shrink: 0;
}
.gg-menu-list { list-style: none; margin: 0 0 22px; padding: 0; }
.gg-menu-list li a {
    display: flex;
    align-items: center;
    gap: 28px;
    color: #fff !important;
    font-weight: 700;
    font-size: 1.12em;
    padding: 15px 4px;
    border-radius: 12px;
    text-decoration: none;
    transition: background-color .15s;
}
.gg-menu-list li a:hover { background-color: rgba(255, 255, 255, .05); }
.gg-menu-list li a i { font-size: 1.45em; width: 30px; text-align: center; }
.gg-btn-entrar {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    width: 100%;
    background-color: var(--gg-red);
    color: #fff !important;
    font-weight: 700;
    font-size: 1.15em;
    border-radius: 10px;
    padding: 14px 0;
    text-decoration: none !important;
    transition: background-color .15s;
}
.gg-btn-entrar:hover { background-color: var(--gg-red-dark); }
.gg-btn-entrar i { font-size: 1.2em; }

/* ---------- Galeria da rifa (passa sozinha) ---------- */
.info-single {
    border-radius: 16px;
    overflow: hidden;
    background-color: #000;
    margin-top: 6px;
}
.gg-carousel {
    position: relative;
    width: 100%;
    aspect-ratio: 4 / 3;  /* celular: a Saveiro inteira na largura da tela */
    overflow: hidden;
    touch-action: pan-y;
}
.gg-carousel .gg-slide {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    opacity: 0;
    transition: opacity .7s ease;
}
/* fotos já recortadas em paisagem com o carro no centro; celular baixa a versão leve (WebP 800px) */
.gg-carousel .gg-slide { background-image: var(--img-sm); }
.gg-carousel .gg-slide.is-active { opacity: 1; }
@media (min-width: 768px) {
    .gg-carousel { aspect-ratio: 2 / 1; }  /* computador: formato largo */
    .gg-carousel .gg-slide { background-image: var(--img-full); }
}
.gg-carousel .slide-control {
    position: absolute;
    top: 45%;
    transform: translateY(-50%);
    z-index: 5;
    font-size: 2.1em;
    color: #fff;
    text-shadow: 0 2px 10px rgba(0, 0, 0, .8);
    cursor: pointer;
    padding: 10px;
    user-select: none;
}
.gg-carousel #prevSlide { left: 4px; }
.gg-carousel #nextSlide { right: 4px; }
.gg-dots {
    position: absolute;
    top: 12px;
    left: 0;
    right: 0;
    display: flex;
    justify-content: center;
    gap: 6px;
    z-index: 5;
}
.gg-dots button {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    border: none;
    padding: 0;
    background-color: rgba(255, 255, 255, .45);
    cursor: pointer;
    transition: width .2s, background-color .2s;
}
.gg-dots button.is-active { width: 22px; border-radius: 6px; background-color: var(--gg-red); }
.gg-carousel .background-gradient {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: auto;
    margin: 0;
    padding: 70px 16px 14px;
    z-index: 4;
    background-image: linear-gradient(180deg, rgba(0, 0, 0, 0) 0, rgba(0, 0, 0, .9) 75%);
}
.gg-carousel .background-gradient span {
    background-color: var(--gg-red) !important;
    font-size: .78em;
    padding: 3px 9px;
}
.gg-carousel .background-gradient h3 {
    font-size: 1.35em;
    font-weight: 600;
    color: #fff;
    margin-top: 8px;
}
.gg-carousel .background-gradient p { font-size: .9em; color: rgba(255, 255, 255, .7); }
.info-single a button {
    background: linear-gradient(90deg, #0d0d0d, #262626) !important;
    color: #fff;
    font-size: 1em;
    font-weight: 500;
    letter-spacing: .5px;
    text-transform: uppercase;
    padding: 12px 0;
    border-radius: 0 !important;
}
.info-single a button i { margin-right: 6px; }

/* preço e data */
.date-price { margin-top: 14px; }
.date-price .price-single p, .date-price .date-single p { color: var(--gg-text); font-weight: 600; }
.date-price .price-single div {
    background-color: #000 !important;
    border: 1px solid #2c2c2c;
    font-size: 1.05em;
    font-weight: 700;
    padding: 6px 12px;
}
.date-price .date-single span { background-color: var(--gg-surface) !important; color: var(--gg-text); }

/* barra de progresso */
.progress-bar { background-color: var(--gg-surface-2) !important; }
.progress-bar .progress_inner {
    background: repeating-linear-gradient(45deg, #b0040f, #b0040f 10px, #e30613 10px, #e30613 20px) !important;
}

/* ---------- Escolha de quantidade ---------- */
.select-single > p { color: var(--gg-text) !important; background: transparent !important; box-shadow: none !important; }
.select-single .content-select .select {
    background-color: #000 !important;
    border: 1px solid #1f1f1f;
    border-radius: 10px;
    transition: transform .1s, border-color .15s;
}
.select-single .content-select .select:hover { border-color: var(--gg-red); }
.select-single .content-select .select:active { transform: scale(.97); }
.select-single .content-select .select h3,
.select-single .content-select .select span { color: #fff !important; font-weight: 700; }
.select-single .content-select .select p { color: #8a8a8a !important; }
.select-single .content-select .popular {
    background-color: var(--gg-red) !important;
    border-color: var(--gg-red) !important;
}
.select-single .content-select .popular p { color: rgba(255, 255, 255, .85) !important; }
.select-single .content-select .popular button {
    background-color: #ff2a36 !important;
    color: #fff !important;
}
.select-single .add-to-cart .quantity-input {
    background-color: #000 !important;
    border: 1px solid #1f1f1f;
}
.select-single .add-to-cart .quantity-input i { color: #fff !important; }
.select-single .add-to-cart .quantity-input input[type="number"] {
    background-color: transparent !important;
    border: none !important;
    color: #fff !important;
    font-weight: 700;
}
.select-single .add-to-cart .btn-add-to-cart { background-color: var(--gg-red) !important; }
.select-single .add-to-cart .btn-add-to-cart:hover { background-color: var(--gg-red-dark) !important; }

/* descrição */
.description-single { background-color: var(--gg-surface) !important; }
.description-single .btn-Description { color: var(--gg-text); }
.description-single .btn-Description:hover { color: var(--gg-red) !important; }
.description-single .description { color: var(--gg-muted) !important; }

/* cards da página inicial e de campanhas */
body section .container .favorite-campaign h2,
body section .container .favorite-campaign p,
body section .container .grid-campaign-actives .campaign {
    background-color: var(--gg-surface) !important;
}
body section .container .favorite-campaign span,
body section .container .grid-campaign-actives .campaign .info-campaign span {
    background-color: var(--gg-red) !important;
}

/* janela de compra (cadastro/telefone) */
.modal-content, .payment-modal, .container-payment-modal {
    background-color: var(--gg-surface) !important;
    color: var(--gg-text) !important;
}

/* ---------- Rodapé ---------- */
footer {
    background-color: #000 !important;
    border-top: 1px solid #1d1d1d;
    margin-top: 20px;
}
footer .container-footer { color: #8a8a8a !important; padding: 26px 14px; }
footer .gg-footer-logo { max-width: 180px; margin: 0 auto 14px; display: block; }
footer .gg-footer-links {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 6px 16px;
    margin-bottom: 12px;
}
footer .gg-footer-links a { color: #cfcfcf; font-size: .95em; text-decoration: none; }
footer .gg-footer-links a:hover { color: var(--gg-red); }

/* ---------- Página de Auditoria (Busca de Cota) ---------- */
.gg-audit-hero {
    background: linear-gradient(120deg, #8a0009 0%, var(--gg-red) 100%);
    border-radius: 22px;
    padding: 24px 22px;
    margin: 8px 0 16px;
    color: #fff;
}
.gg-audit-hero h1 { color: #fff !important; font-size: 1.9em; font-weight: 700; margin: 0 0 6px; }
.gg-audit-hero p { color: rgba(255, 255, 255, .92); font-size: 1em; margin: 0; }
.gg-audit-box {
    background-color: var(--gg-surface);
    border: 1px solid var(--gg-border);
    border-radius: 18px;
    padding: 20px;
    margin-bottom: 14px;
}
.gg-audit-box h2 { color: #fff !important; font-size: 1.12em; font-weight: 700; margin: 0 0 14px; }
.gg-audit-hint { color: var(--gg-muted); font-size: .9em; margin: 10px 0 0; }
.gg-audit-status { color: var(--gg-muted); font-size: .92em; margin: 10px 0 0; }
.gg-audit-status.ok { color: #6ee7a0; }
.gg-audit-status strong { color: #fff; }

.gg-audit-download { display: flex; align-items: center; gap: 12px; padding: 10px 0; border-top: 1px solid var(--gg-border); }
.gg-audit-download:first-of-type { border-top: none; padding-top: 0; }
.gg-audit-img { width: 56px; min-width: 56px; height: 56px; border-radius: 10px; background-size: cover; background-position: center; }
.gg-audit-download-info { flex: 1; min-width: 0; }
.gg-audit-download-info strong { display: block; color: #fff; text-transform: uppercase; font-size: .95em; }
.gg-audit-download-info span { color: var(--gg-muted); font-size: .82em; }
.gg-audit-btn-download {
    background-color: #000;
    border: 1px solid var(--gg-red);
    color: #fff !important;
    border-radius: 10px;
    padding: 10px 14px;
    font-weight: 600;
    white-space: nowrap;
    text-decoration: none !important;
}
.gg-audit-btn-download:hover { background-color: var(--gg-red); }

.gg-audit-file {
    display: flex;
    align-items: center;
    gap: 12px;
    background-color: var(--gg-input);
    border: 1px solid var(--gg-border);
    border-radius: 12px;
    padding: 12px;
    cursor: pointer;
    margin: 0;
    min-width: 0;
}
.gg-audit-file input { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
.gg-audit-file:focus-within { border-color: var(--gg-red); }
.gg-audit-file-btn { background-color: #2a2e35; color: #fff; border-radius: 8px; padding: 8px 12px; font-weight: 600; white-space: nowrap; }
.gg-audit-file-name { color: var(--gg-text); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; min-width: 0; }

#auditQuota { width: 100%; border-radius: 12px; padding: 16px 14px; font-size: 16px !important; }
.gg-audit-btn {
    width: 100%;
    margin-top: 16px;
    background-color: var(--gg-red);
    color: #fff;
    border: none;
    border-radius: 12px;
    padding: 16px 0;
    font-weight: 700;
    font-size: 1.1em;
    cursor: pointer;
}
.gg-audit-btn:hover { background-color: var(--gg-red-dark); }

.gg-audit-result:empty { display: none; }
.gg-audit-result { margin-top: 16px; }
.gg-audit-msg { background-color: #000; border: 1px solid var(--gg-border); border-radius: 12px; padding: 14px; color: var(--gg-text); }
.gg-audit-msg.warn { border-color: #8a6d1a; color: #f5d77a; }
.gg-audit-found { background-color: rgba(34, 197, 94, .08); border: 1px solid rgba(34, 197, 94, .45); border-radius: 12px; padding: 14px; }
.gg-audit-found p { color: #6ee7a0; font-weight: 700; margin: 0 0 10px; }
.gg-audit-found ul { list-style: none; margin: 0; padding: 0; }
.gg-audit-found li { display: flex; justify-content: space-between; gap: 12px; padding: 7px 0; border-top: 1px solid rgba(255, 255, 255, .06); }
.gg-audit-found li span { color: var(--gg-muted); }
.gg-audit-found li strong { color: #fff; text-align: right; word-break: break-word; }

.gg-audit-steps { margin: 0; padding-left: 22px; color: var(--gg-text); line-height: 1.9; }
@media (max-width: 600px) {
    .gg-audit-hero h1 { font-size: 1.55em; }
    .gg-audit-box { padding: 16px; }
}

/* abas Ativos/Concluídos e ajustes finos */
.control-campaigns-list div button { background-color: #24272d; color: var(--gg-muted); }
.control-campaigns-list div button:hover { background-color: #30343b; }

/* página do pedido: passos, "Copiar" e "Já fiz o pagamento" em vermelho
   (verde fica só no status "pago") */
.section-qrcode .description-payment button,
.section-qrcode .description-payment #copyButton { background-color: var(--gg-red) !important; color: #fff !important; border: none; }
.section-qrcode .description-payment button:hover { background-color: var(--gg-red-dark) !important; }
.section-qrcode .description-payment span[style] { border-bottom-color: var(--gg-border) !important; }
.order-info button { color: var(--gg-red) !important; }

/* Meus títulos: botão de busca, comprovante e paginação */
.form-search-orders button[type="submit"], .btn-download-receipt { background-color: var(--gg-red) !important; }
.btn-download-receipt:hover { background-color: var(--gg-red-dark) !important; }
.pagination a { color: var(--gg-text) !important; background-color: var(--gg-surface); }
.pagination a:hover { background-color: var(--gg-surface-2) !important; }
.pagination a.active { background-color: var(--gg-red) !important; color: #fff !important; }

/* =====================================================================
   CELULAR
   ===================================================================== */
html, body { overflow-x: clip; -webkit-text-size-adjust: 100%; }

/* logo: proporção certa em qualquer tela */
nav .container-nav .header-nav .gg-logo img { width: auto; height: 60px; max-width: 62vw; max-height: none; object-fit: contain; }
footer .gg-footer-logo { width: 180px; height: auto; }

/* menu: rola se a tela for baixa; respeita a área do notch */
nav .container-nav .popup-nav { overflow-y: auto; padding-top: max(14px, env(safe-area-inset-top)); }
nav .container-nav .popup-nav .gg-menu-card { max-height: calc(100dvh - 90px); overflow-y: auto; }
footer { padding-bottom: env(safe-area-inset-bottom); }

/* toque confortável: mínimo ~44px */
.select-single .content-select .select { min-height: 72px; cursor: pointer; }
.select-single .add-to-cart .quantity-input i { font-size: 1.7em; padding: 6px; cursor: pointer; }
.select-single .add-to-cart .btn-add-to-cart { min-height: 52px; cursor: pointer; }
footer .gg-footer-links a { padding: 6px 2px; display: inline-block; }
.description-single .btn-Description { padding: 10px 0; width: 100%; }

@media (max-width: 600px) {
    /* iPhone não dá zoom ao tocar em campo com fonte >= 16px */
    section input, section select, section textarea,
    .modal-content input, .modal-content select { font-size: 16px !important; }

    nav .container-nav .header-nav .gg-logo img { height: 52px; }
    body section .container { padding-left: 10px !important; padding-right: 10px !important; }
    .gg-carousel .slide-control { font-size: 1.7em; padding: 8px 4px; }
    .gg-carousel .background-gradient { padding: 56px 14px 12px; }
    .gg-carousel .background-gradient h3 { font-size: 1.15em; }
    .gg-carousel .background-gradient p { font-size: .82em; }
    .select-single .content-select .select h3 { font-size: 1.35em; }
    .gg-menu-list li a { gap: 22px; }
}

@media (prefers-reduced-motion: reduce) {
    .gg-carousel .gg-slide { transition: none; }
    nav .container-nav .popup-nav .gg-menu-card { animation: none; }
}

/* ---------- Janela "Meus Títulos" (Login por telefone) ---------- */
.gg-titles {
    position: fixed;
    inset: 0;
    z-index: 10001;
    display: none;
    background-color: rgba(0, 0, 0, .65);
    backdrop-filter: blur(3px);
    -webkit-backdrop-filter: blur(3px);
    padding: max(14px, env(safe-area-inset-top)) 14px 14px;
    overflow-y: auto;
}
.gg-titles.show { display: block; }
.gg-titles-card {
    max-width: 560px;
    margin: 12vh auto 0;
    background-color: var(--gg-menu);
    border-radius: 26px;
    padding: 0 0 28px;
    box-shadow: 0 24px 60px rgba(0, 0, 0, .55);
    animation: ggMenuIn .18s ease-out;
}
.gg-titles-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 22px 26px 20px;
    border-bottom: 1px solid rgba(255, 255, 255, .07);
}
.gg-titles-head span { color: #fff; font-size: 1.45em; font-weight: 500; display: flex; align-items: center; gap: 14px; }
.gg-titles-head span i { font-size: 1em; }
.gg-titles-close { background: transparent; border: none; color: #fff; font-size: 1.45em; cursor: pointer; padding: 4px 6px; }
.gg-titles-form { padding: 22px 26px 0; }
.gg-titles-form label { display: block; color: #fff; font-weight: 700; font-size: 1.05em; margin-bottom: 14px; }
.gg-titles-input {
    display: flex;
    align-items: center;
    gap: 10px;
    background-color: #141821;
    border: 1px solid #2c323c;
    border-radius: 8px;
    padding: 0 14px;
    transition: border-color .15s, box-shadow .15s;
}
.gg-titles-input:focus-within { border-color: var(--gg-red); box-shadow: 0 0 0 3px rgba(227, 6, 19, .25); }
.gg-titles-input span { color: #fff; font-weight: 700; font-size: 1.05em; }
.gg-titles-input input {
    flex: 1;
    min-width: 0;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    outline: none;
    color: #fff !important;
    font-size: 16px !important;   /* sem zoom no iPhone */
    padding: 16px 0;
}
.gg-titles-input input::placeholder { color: #7b8190; }
.gg-titles-error { color: #ff6b73; font-size: .85em; min-height: 1.2em; margin: 8px 0 18px; }
.gg-titles-submit {
    width: 100%;
    background-color: var(--gg-red);
    color: #fff;
    border: none;
    border-radius: 8px;
    font-weight: 700;
    font-size: 1.12em;
    padding: 14px 0;
    cursor: pointer;
    transition: background-color .15s;
}
.gg-titles-submit:hover { background-color: var(--gg-red-dark); }
@media (max-width: 600px) {
    .gg-titles-card { margin-top: 8vh; border-radius: 22px; }
    .gg-titles-head { padding: 18px 20px 16px; }
    .gg-titles-form { padding: 20px 20px 0; }
}

/* ---------- Pacotes de números (estilo grade 3x2, "Mais popular" no meio) ---------- */
.select-single .content-select {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
    margin-top: 22px;
}
.select-single .content-select .select {
    width: auto !important;
    margin: 0 !important;
    min-height: 0;
    padding: 18px 6px 14px !important;
    border-radius: 6px;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.select-single .content-select .select span {
    font-size: 2.3em !important;
    font-weight: 600 !important;
    line-height: 1.1;
    letter-spacing: -.5px;
    white-space: nowrap;
}
.select-single .content-select .select h3 { font-size: 1em !important; margin: 0 0 0 1px; font-weight: 600; }
.select-single .content-select .select p {
    margin-top: 8px !important;
    font-size: .95em !important;
    letter-spacing: .5px;
    color: #8a8a8a !important;
}
.select-single .content-select .popular { border: none !important; padding: 18px 6px 14px !important; }
.select-single .content-select .popular p { color: rgba(255, 255, 255, .9) !important; }
.select-single .content-select .popular button {
    top: -13px !important;
    width: auto !important;
    white-space: nowrap;
    padding: 3px 10px !important;
    border-radius: 6px !important;
    font-size: .82em !important;
    font-weight: 500;
}
@media (max-width: 600px) {
    .select-single .content-select { gap: 6px; }
    .select-single .content-select .select { padding: 14px 4px 10px !important; }
    .select-single .content-select .select span { font-size: 1.5em !important; }
    .select-single .content-select .select p { font-size: .72em !important; margin-top: 4px !important; }
    .select-single .content-select .popular button { font-size: .7em !important; top: -11px !important; padding: 2px 8px !important; }
}
@media (max-width: 370px) {
    .select-single .content-select .select span { font-size: 1.3em !important; }
}
.gg-audit-steps li { list-style: decimal; padding-left: 4px; }

/* quantidade digitável (rifa automática) */
/* o automatic.css original travava o campo (pointer-events: none) */
.select-single .add-to-cart .quantity-input input[type="number"] { pointer-events: auto !important; cursor: text; border-radius: 4px; }
.select-single .add-to-cart .quantity-input input[type="number"]:focus {
    outline: none;
    box-shadow: inset 0 -2px 0 var(--gg-red);
    background-color: #111 !important;
}
.select-single .add-to-cart .quantity-input input[type="number"]::-webkit-outer-spin-button,
.select-single .add-to-cart .quantity-input input[type="number"]::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.gg-qty-hint { margin: 8px 2px 0; font-size: .8em; color: #8a8a8a; text-align: center; }

/* botão do Instagram, sozinho e centralizado (sem botões de compartilhar) */
.share-buttons.gg-insta-only { justify-content: center; padding-top: 14px; }
.share-buttons .btn-insta {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 150px;
    min-height: 46px;
    padding: 0 24px;
    border-radius: 8px;
    color: #fff !important;
    font-size: 1.45em;
    text-decoration: none;
    background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%);
    box-shadow: 0 4px 12px rgba(220, 39, 67, .25);
    transition: transform .15s ease, filter .15s ease;
}
.share-buttons .btn-insta:hover { filter: brightness(1.08); transform: translateY(-1px); }
.share-buttons .btn-insta:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
