/* Tema 2026 para o CONTEÚDO das páginas do layout antigo (fase 2A).
 *
 * Carregado por render_header() depois de portal.css / portal-modules.css /
 * bolao-*.css e antes do CSS próprio de cada página; os <style> das páginas
 * continuam mandando. Tudo restrito a body.gor-shell26-body (a casca 2026
 * põe essa classe em todas as páginas antigas).
 *
 * Paleta e tipografia: landing-2026.css. O portal.css desenha tudo a partir
 * das variáveis abaixo, então trocá-las já muda cores de cards, bordas,
 * textos e botões. */

body.gor-shell26-body{
  --gor-blue:#082f6f;          /* era #023373 */
  --gor-blue-dark:#0b1d37;     /* era #01152e */
  --gor-yellow:#ffd92f;        /* era #F2CB05 */
  --gor-bg:#f7f9fc;            /* era #f3f6fa */
  --gor-surface:#ffffff;
  --gor-surface-soft:#f7f9fc;
  --gor-border:#e6ebf2;        /* era #d8e2ee */
  --gor-text:#0b1d37;          /* era #122746 */
  --gor-text-soft:#66758a;     /* era #5f738d */
  --gor-shadow:0 1px 2px rgba(11,29,55,.04);
  --gor26-link:#0d66d0;
  --gor26-link-hover:#082f6f;
  --gor26-focus:rgba(13,102,208,.18);

  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-weight:400;
  color:var(--gor-text);
  background:var(--gor-bg);
  -webkit-font-smoothing:antialiased;
}

/* Texto */
body.gor-shell26-body .content-wrap{max-width:1180px}
/* Só links de texto corrido (sem classe): links com classe própria mantêm o estilo da página. */
body.gor-shell26-body .content-wrap a:not([class]){color:var(--gor26-link)}
body.gor-shell26-body .content-wrap a:not([class]):hover{color:var(--gor26-link-hover)}
body.gor-shell26-body .content-wrap h1,
body.gor-shell26-body .content-wrap h2,
body.gor-shell26-body .content-wrap h3,
body.gor-shell26-body .content-wrap .h1,
body.gor-shell26-body .content-wrap .h2,
body.gor-shell26-body .content-wrap .h3{font-weight:800;letter-spacing:-.025em;line-height:1.12}
body.gor-shell26-body .content-wrap h4,
body.gor-shell26-body .content-wrap h5,
body.gor-shell26-body .content-wrap h6{font-weight:750;letter-spacing:-.01em}
body.gor-shell26-body .content-wrap strong,
body.gor-shell26-body .content-wrap b{font-weight:700}
body.gor-shell26-body .content-wrap p,
body.gor-shell26-body .content-wrap li{line-height:1.6}
body.gor-shell26-body label{font-weight:650;color:var(--gor-text)}
body.gor-shell26-body .muted,
body.gor-shell26-body .text-muted{color:var(--gor-text-soft)!important}
body.gor-shell26-body small,
body.gor-shell26-body .small{font-weight:500}

/* Cabeçalho de página (hero / gor-page-head) no estilo das páginas novas */
body.gor-shell26-body .hero,
body.gor-shell26-body .gor-page-head{
  gap:12px;
  padding:32px 28px!important;
  border:1px solid var(--gor-border);
  border-radius:24px;
  background:#fff;
  box-shadow:none;
}
body.gor-shell26-body .hero h1,
body.gor-shell26-body .gor-page-head h1{font-size:clamp(30px,4vw,48px);font-weight:860;letter-spacing:-.04em;line-height:1.04}
body.gor-shell26-body .hero p,
body.gor-shell26-body .gor-page-head p{color:var(--gor-text-soft);font-size:clamp(16px,1.5vw,18px);line-height:1.6}
body.gor-shell26-body .gor-page-kicker{
  padding:0;
  border:0;
  background:none;
  color:var(--gor26-link);
  font-size:12px;
  font-weight:850;
  letter-spacing:.14em;
}

/* Cards e blocos */
body.gor-shell26-body .card{border:1px solid var(--gor-border);border-radius:20px;box-shadow:none}
body.gor-shell26-body .card-header{border-radius:20px 20px 0 0;background:#f7f9fc;border-bottom-color:var(--gor-border);font-weight:700}
body.gor-shell26-body .gor-stat-pill{background:#fff;font-weight:600}

/* Botões: pílula, azul-marinho */
body.gor-shell26-body .btn{
  min-height:44px;
  padding:.55rem 1.15rem;
  border-radius:999px;
  font-weight:750;
  letter-spacing:0;
  box-shadow:none;
}
body.gor-shell26-body .btn:hover{transform:none}
body.gor-shell26-body .btn-sm{min-height:34px;padding:.3rem .85rem;font-size:.85rem}
body.gor-shell26-body .btn-lg{min-height:52px;padding:.7rem 1.5rem}
body.gor-shell26-body .btn-primary{border-color:#082f6f;background:#082f6f;color:#fff;box-shadow:none}
body.gor-shell26-body .btn-primary:hover,
body.gor-shell26-body .btn-primary:focus,
body.gor-shell26-body .btn-primary:not(:disabled):not(.disabled):active{border-color:#0d66d0;background:#0d66d0;color:#fff}
body.gor-shell26-body .btn-outline-primary{border-color:#cdd9e8;background:#fff;color:#082f6f}
body.gor-shell26-body .btn-outline-primary:hover,
body.gor-shell26-body .btn-outline-primary:focus{border-color:#082f6f;background:#f0f5fb;color:#082f6f}
body.gor-shell26-body .btn-outline-secondary{border-color:var(--gor-border);background:#fff;color:var(--gor-text-soft)}
body.gor-shell26-body .btn-outline-secondary:hover{border-color:#c9d6e6;background:#f7f9fc;color:var(--gor-text)}
body.gor-shell26-body .btn-success{border-color:#16703a;background:#16703a}
body.gor-shell26-body .btn-success:hover{border-color:#125c30;background:#125c30}
body.gor-shell26-body .btn-warning{border-color:#ffd92f;background:#ffd92f;color:#0b1d37}
body.gor-shell26-body .btn:focus,
body.gor-shell26-body .btn.focus{box-shadow:0 0 0 4px var(--gor26-focus)}

/* Formulários */
body.gor-shell26-body .form-control,
body.gor-shell26-body .custom-select{
  min-height:46px;
  border:1px solid #d5dfeb;
  border-radius:12px;
  font-weight:500;
  color:var(--gor-text);
}
body.gor-shell26-body .form-control:focus,
body.gor-shell26-body .custom-select:focus{border-color:#0d66d0;box-shadow:0 0 0 4px var(--gor26-focus)}
body.gor-shell26-body .form-control::placeholder{color:#9aa7b8;font-weight:400}
body.gor-shell26-body .form-text{color:var(--gor-text-soft)}

/* Avisos e selos */
body.gor-shell26-body .alert{border-radius:14px;border-width:1px;font-weight:500;line-height:1.55}
body.gor-shell26-body .alert-info{background:#eef5ff;border-color:#d3e4fb;color:#0b4fa8}
body.gor-shell26-body .alert-success{background:#e9f7ef;border-color:#cbead7;color:#16703a}
body.gor-shell26-body .alert-warning{background:#fff8e1;border-color:#f6e3a6;color:#7a5600}
body.gor-shell26-body .alert-danger{background:#fdecec;border-color:#f6cfcf;color:#b42318}
body.gor-shell26-body .alert-light{background:#f7f9fc;border-color:var(--gor-border);color:var(--gor-text)}
body.gor-shell26-body .badge{padding:.38em .72em;border-radius:999px;font-weight:750;letter-spacing:.01em}
body.gor-shell26-body .badge-primary{background:#082f6f}
body.gor-shell26-body .badge-light{background:#eef2f7;color:var(--gor-text)}

/* Tabelas */
body.gor-shell26-body .table{color:var(--gor-text)}
body.gor-shell26-body .table thead th{border-bottom:1px solid var(--gor-border);color:var(--gor-text-soft);font-size:12px;font-weight:800;letter-spacing:.06em}
body.gor-shell26-body .table td,
body.gor-shell26-body .table th{border-top-color:var(--gor-border)}

@media(max-width:767px){
  body.gor-shell26-body .hero,
  body.gor-shell26-body .gor-page-head{padding:24px 20px!important;border-radius:20px}
}

/* ---------------------------------------------------------------------
 * Loja (/shop/) — fase 2C.1. O shop.css é carregado depois deste arquivo;
 * estas regras vencem pela especificidade (body.gor-shell26-body + classe).
 * Tira degradês e sombras pesadas e usa a paleta 2026.
 * ------------------------------------------------------------------- */
body.gor-shell26-body .gor-shop-product,
body.gor-shell26-body .gor-shop-product-featured,
body.gor-shell26-body .gor-shop-toolbar-card,
body.gor-shell26-body .gor-shop-related-card,
body.gor-shell26-body .gor-shop-product-detail-card,
body.gor-shell26-body .gor-shop-product-description-card,
body.gor-shell26-body .gor-shop-product-logistics-card{border-color:var(--gor-border);background:#fff;box-shadow:none}
body.gor-shell26-body .gor-shop-product{transition:border-color .18s ease,transform .18s ease}
body.gor-shell26-body .gor-shop-product:hover{border-color:#c9d6e6;transform:translateY(-2px)}
body.gor-shell26-body .gor-shop-product-visual,
body.gor-shell26-body .gor-shop-product-visual-featured{border-color:var(--gor-border);background:#f7f9fc}
body.gor-shell26-body .gor-shop-featured-kicker{background:#eef5ff;color:#0d66d0;font-weight:850;letter-spacing:.1em}
body.gor-shell26-body .gor-shop-product-title-link{color:var(--gor-text)}
body.gor-shell26-body .gor-shop-product-title-link:hover{color:#0d66d0}
body.gor-shell26-body .gor-shop-price{font-weight:850;letter-spacing:-.02em;color:var(--gor-text)}
body.gor-shell26-body .gor-shop-price.is-sale{color:#b42318}
body.gor-shell26-body .gor-shop-price-prefix,
body.gor-shell26-body .gor-shop-product-logistics-label,
body.gor-shell26-body .gor-shop-variant-title{font-weight:800;color:var(--gor-text-soft)}
body.gor-shell26-body .gor-shop-product-card-link{color:var(--gor-text-soft);font-weight:650}
body.gor-shell26-body .gor-shop-product-card-link:hover{color:#0d66d0}
body.gor-shell26-body .gor-shop-category-pill{min-height:40px;border-color:var(--gor-border);font-weight:700;box-shadow:none}
body.gor-shell26-body .gor-shop-category-pill:hover{border-color:#c9d6e6;color:#082f6f;box-shadow:none;transform:none}
body.gor-shell26-body .gor-shop-category-pill.is-active{background:#082f6f;border-color:#082f6f;color:#fff;box-shadow:none}
body.gor-shell26-body .gor-shop-toolbar-row{grid-template-columns:minmax(0,1fr) minmax(360px,.85fr)}
body.gor-shell26-body .gor-shop-search-input-wrap .form-control{border-radius:12px;min-height:46px}
body.gor-shell26-body .gor-shop-inline-flag.is-featured{background:#082f6f;border-color:#082f6f;box-shadow:none}
body.gor-shell26-body .gor-shop-inline-flag.is-low{box-shadow:none}
body.gor-shell26-body .gor-shop-product-logistics-item,
body.gor-shell26-body .gor-shop-variant-option{border-color:var(--gor-border);background:#fff}
body.gor-shell26-body .gor-shop-product-logistics-item strong{color:var(--gor-text);font-weight:800}
body.gor-shell26-body .gor-shop-variant-option:hover{border-color:#c9d6e6;box-shadow:none;transform:none}
body.gor-shell26-body .gor-shop-variant-option.is-active{border-color:#082f6f;background:#f0f5fb;box-shadow:none}
body.gor-shell26-body .gor-shop-notify-modal-highlight{border-color:var(--gor-border);background:#f7f9fc}
body.gor-shell26-body .gor-shop-product-zoom-button,
body.gor-shell26-body .gor-shop-zoom-close,
body.gor-shell26-body .gor-shop-notify-modal-close{background:#082f6f;box-shadow:none}
body.gor-shell26-body .gor-shop-product-thumb-button{border-color:var(--gor-border)}
body.gor-shell26-body .gor-shop-product-thumb-button.is-active{border-color:#082f6f;box-shadow:none}
body.gor-shell26-body .gor-shop-step-number,
body.gor-shell26-body .gor-shop-cart-badge{background:#082f6f}
@media(max-width:991px){body.gor-shell26-body .gor-shop-toolbar-row{grid-template-columns:1fr}}
@media(max-width:767px){body.gor-shell26-body .gor-shop-search-form{flex-wrap:wrap}body.gor-shell26-body .gor-shop-search-input-wrap{flex:1 1 100%}body.gor-shell26-body .gor-shop-search-form .btn{flex:1 1 0;width:auto}}

/* ---------------------------------------------------------------------
 * Conta (/cadastro/) — fase 2C.2. As telas de formulário curto (senha,
 * confirmação, ativação) ficam numa coluna estreita e centralizada, como o
 * login novo (/acesso/). Classes de página vêm de gor_layout_body_class().
 * ------------------------------------------------------------------- */
body.gor-page-cadastro-esqueci .content-wrap,
body.gor-page-cadastro-redefinir .content-wrap,
body.gor-page-cadastro-ativar .content-wrap{max-width:600px}
/* pendente e confirmar têm cartão próprio de duas colunas */
body.gor-page-cadastro-pendente .content-wrap,
body.gor-page-cadastro-confirmar .content-wrap{max-width:1000px}
body.gor-area-cadastro .hero .badge{padding:0;background:none;color:#0d66d0;font-size:12px;font-weight:850;letter-spacing:.14em;text-transform:uppercase}
body.gor-area-cadastro .hero h3{font-size:clamp(26px,3.2vw,34px);font-weight:850;letter-spacing:-.03em}
body.gor-area-cadastro .card.p-4{padding:28px!important}
body.gor-area-cadastro .btn-block{min-height:48px}

/* ---------------------------------------------------------------------
 * Planos (/planos/) — fase 2C.3. A página é uma grade; sem minmax(0,1fr)
 * a coluna crescia até a largura mínima da tabela (1.020 px) e a página
 * inteira ficava mais larga que o celular. Agora só a tabela rola
 * (.gor-table-wrap já tem overflow-x:auto). Também suaviza os pesos
 * 700/900 herdados da Rajdhani.
 * ------------------------------------------------------------------- */
body.gor-area-planos .gor-plans-page{grid-template-columns:minmax(0,1fr)}
body.gor-area-planos .gor-plans-page > *{min-width:0}
body.gor-area-planos .gor-card{border-color:var(--gor-border);border-radius:20px;box-shadow:none}
body.gor-area-planos .gor-hero{padding:32px 28px}
body.gor-area-planos .gor-hero h1{font-size:clamp(30px,4vw,48px);font-weight:860;letter-spacing:-.04em;line-height:1.04}
body.gor-area-planos .gor-hero p,
body.gor-area-planos .gor-compare p,
body.gor-area-planos .gor-status-copy{font-weight:400;color:var(--gor-text-soft)}
body.gor-area-planos .gor-compare h2{font-weight:800}
body.gor-area-planos .gor-feature-col p,
body.gor-area-planos .gor-plan-tagline,
body.gor-area-planos .gor-plan-hint,
body.gor-area-planos .gor-value-text{font-weight:500}
body.gor-area-planos .gor-plan-title-line h3,
body.gor-area-planos .gor-feature-col h3,
body.gor-area-planos .gor-row-title strong{font-weight:750}
body.gor-area-planos .gor-plan-price,
body.gor-area-planos .gor-plan-total span,
body.gor-area-planos .gor-value-number{font-weight:800}
body.gor-area-planos .gor-feature-col{background:#f7f9fc}
@media(max-width:767px){body.gor-area-planos .gor-hero{padding:24px 20px}}

/* ---------------------------------------------------------------------
 * Institucionais (contato, privacidade, consultas…) — fase 2C.4.
 * Artigos com a leitura das páginas novas (guias): letra maior, mais
 * espaço entre linhas e coluna de texto confortável.
 * ------------------------------------------------------------------- */
body.gor-shell26-body .gor-content-article p,
body.gor-shell26-body .gor-content-article li{font-size:17px;line-height:1.75;color:#33445c}
body.gor-shell26-body .gor-content-article h2{margin-top:2rem;font-size:clamp(22px,2.4vw,28px);font-weight:800;letter-spacing:-.02em;color:var(--gor-text)}
body.gor-shell26-body .gor-content-article h2:first-child{margin-top:0}
body.gor-shell26-body .gor-content-article ul{padding-left:22px}
body.gor-shell26-body .gor-content-aside p{font-size:15px;line-height:1.6}
body.gor-shell26-body .gor-contact-email a{font-size:clamp(18px,2.2vw,24px);font-weight:800}
body.gor-area-politica-de-privacidade .gor-content-article,
body.gor-area-termos-de-uso .gor-content-article{max-width:860px}
body.gor-area-consultas .card h2{font-size:clamp(22px,2.4vw,28px);font-weight:800}

/* ---------------------------------------------------------------------
 * Sorteio e bolão — fase 2C.5. O tema geral já cobre quase tudo; aqui
 * só o selo solto dentro de um .card (flex em coluna), que esticava na
 * largura inteira (ex.: "Bolão encerrado" no resultado final).
 * ------------------------------------------------------------------- */
body.gor-shell26-body .card > .badge{align-self:flex-start}
/* Abaixo de 420 px o portal.css reduz o recuo do .content-wrap para 10 px, mas
 * as .row do Bootstrap seguem com margem de -15 px: as colunas vazavam 5 px
 * para a direita (página "escorregando" no celular). */
@media(max-width:420px){
  body.gor-shell26-body .content-wrap .row,
  body.gor-shell26-body .content-wrap .form-row{margin-left:-10px;margin-right:-10px}
  body.gor-shell26-body .content-wrap .row > [class*="col"]{padding-left:10px;padding-right:10px}
}

/* -------------------------------------------------------------------
 * Mapa (/mapa/) — fase 2C.6. Quadro "Plano atual" sobre o mapa: os
 * rótulos não tinham estilo nenhum (saíam como texto solto ao lado do
 * nome do plano) e a lista mostrava dois marcadores, porque cada item já
 * traz o "•" no texto.
 * ------------------------------------------------------------------- */
body.gor-shell26-body.gor-area-mapa .gor-plan-badge{display:inline-flex;align-items:center;padding:3px 9px;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.16);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;line-height:1.4;white-space:nowrap}
body.gor-shell26-body.gor-area-mapa .gor-plan-title{margin-top:6px;font-size:17px;font-weight:800;letter-spacing:-.01em}
body.gor-shell26-body.gor-area-mapa .gor-plan-list{list-style:none;padding-left:0}
body.gor-shell26-body.gor-area-mapa .gor-plan-list li{line-height:1.5}

/* -------------------------------------------------------------------
 * Pagamento (/pagamento/) — fase 2C.7, só visual. As telas de Pix, cartão,
 * escolha do meio e retorno usavam peso 700 em quase todo o texto (pensado
 * para a Rajdhani, que é fina); com a Inter tudo virava negrito pesado.
 * Os títulos, valores e botões continuam fortes; o texto corrido volta ao
 * peso normal. Os [style*=...] pegam os pesos escritos direto no HTML.
 * ------------------------------------------------------------------- */
body.gor-shell26-body.gor-area-pagamento .content-wrap :is(.pay-subtitle,.pay-muted,.gor-pay-option p,.gor-overlay-box p){font-weight:500}
body.gor-shell26-body.gor-area-pagamento .content-wrap .pay-summary{font-weight:600;line-height:1.6}
body.gor-shell26-body.gor-area-pagamento .content-wrap .emv-input{font-weight:500}
body.gor-shell26-body.gor-area-pagamento .content-wrap :is(p,.alert,div)[style*="font-weight:700"]{font-weight:500!important}
body.gor-shell26-body.gor-area-pagamento .content-wrap :is(h1,h2,h3)[style*="font-weight:900"]{font-weight:800!important}
/* "Atualizar" do Pix: contorno escuro destoava dos outros botões. */
body.gor-shell26-body.gor-area-pagamento .content-wrap .btn-outline-dark{border-color:var(--gor-border,#e6ebf2);color:var(--gor-text,#0b1d37);background:#fff}
body.gor-shell26-body.gor-area-pagamento .content-wrap .btn-outline-dark:hover{border-color:var(--gor-text-soft,#66758a);background:#f7f9fc}
