/*
 * Estilo editável das páginas do site (GYN Editor): as escolhas de cor e fonte de cada página e seção
 * chegam como variáveis (ver GYN_Page_Style::scope_css) e cada uma tem como reserva o valor de sempre,
 * então sem nenhuma escolha a página fica idêntica ao protótipo aprovado.
 * Cobertura atual: cor e fonte dos títulos e cor dos botões de ação. Tamanhos e cor do texto entram
 * junto com o painel de estilo das novas páginas.
 */
.gx .gx-h-title{color:var(--gyn-title-color,inherit);font-family:var(--gyn-title-font,var(--f-title))}
.gx .gx-btn--act{background:var(--gyn-btn-bg,var(--action));color:var(--gyn-btn-text,var(--ink))}
.gx .gx-btn--act:hover{background:var(--gyn-btn-bg-hover,var(--action-hover))}

/*
 * Isolamento do tema Eduma: o que o tema define para botões e campos (caixa alta, espaçamento de letras,
 * preenchimento, borda, sombra) vaza para dentro das páginas. A especificidade aqui é MENOR que a de qualquer
 * regra de componente (.gx .gx-algo ...), então só atinge o que o componente não estilizou.
 */
.gx button,.gx input,.gx select,.gx textarea{text-transform:none;letter-spacing:normal;text-shadow:none;box-shadow:none}
.gx button{padding:0;border:0;border-radius:0;background:none;font-weight:inherit}
.gx label{margin:0;font-weight:inherit;color:inherit}
.gx select,.gx option{font-weight:inherit}
.gx img{max-width:100%;height:auto}

/*
 * Fundo do topo por página (P2 v7: `.site[data-page=catalogo|video] .phero`). O conversor descarta regras que
 * dependem de [data-page]; aqui viram classes do próprio topo (is-catalogo, is-videoaula). Categoria: o verde padrão.
 */
.gx .gx-phero.is-catalogo{background:linear-gradient(135deg,var(--ink),var(--ink-deep))}
.gx .gx-phero.is-videoaula{background:linear-gradient(135deg,var(--magenta),#6C2478)}

/*
 * Moldura (navbar e rodapé do P1) dentro do tema Eduma.
 * A busca (gyn-search.js) abre o painel com `is-open`; o painel de conta abre à direita.
 */
.gx .gx-panel.is-open{display:block}
.gx .gx-panel.gx-small.gx-small--right{left:auto;right:0}
/* O Eduma pinta o texto de botões e links no hover/foco (branco, cores do tema). Os componentes que mudam a cor
   nesses estados usam seletores mais específicos (.gx .gx-algo:hover) e continuam valendo. */
.gx button:hover,.gx button:focus,.gx button:active{color:inherit}
.gx a:hover,.gx a:focus{color:inherit}

/* Cabeçalho do tema com o navbar do P1: o Eduma já fixa o #masthead no topo e empurra o conteúdo na altura dele
   (.content-pusher). Aqui só se anula o "esconder ao rolar para baixo" (menu-hidden): o navbar fica à vista nos dois
   sentidos, como no P1 e no navbar anterior. */
body.gyn-chrome #masthead{transform:none!important;box-shadow:none}
body.gyn-chrome #masthead .gx{max-width:none}
/* Com login de administrador há a barra do WordPress (32 px; 46 px até 782 px de largura): o navbar fixo fica abaixo dela. */
body.gyn-chrome.admin-bar #masthead{top:32px}
@media (max-width:782px){body.gyn-chrome.admin-bar #masthead{top:46px}}
@media (max-width:600px){body.gyn-chrome.admin-bar #masthead{top:0}}
/* Página de curso (a de apresentação; a aula tem o player em tela cheia, com o cabeçalho próprio, e fica de fora): o Eduma
   não fixa o cabeçalho nas páginas de curso (a condição `is_singular('lp_course')` o exclui). O navbar do P1 é fixo em
   todas as páginas, então aqui ele fica fixo também e o conteúdo desce a altura dele (56 px; 52 px até 900 px de largura),
   igual ao que o tema faz nas demais páginas. */
body.gyn-chrome.single-lp_course:not(.course-item-popup) #masthead{position:fixed;top:0;left:0;right:0;margin:auto;z-index:1000}
body.gyn-chrome.single-lp_course:not(.course-item-popup) .content-pusher{padding-top:56px}
body.gyn-chrome.single-lp_course:not(.course-item-popup).admin-bar #masthead{top:32px}
@media (max-width:782px){body.gyn-chrome.single-lp_course:not(.course-item-popup).admin-bar #masthead{top:46px}}
@media (max-width:900px){body.gyn-chrome.single-lp_course:not(.course-item-popup) .content-pusher{padding-top:52px}}
@media (max-width:600px){body.gyn-chrome.single-lp_course:not(.course-item-popup) #masthead,body.gyn-chrome.single-lp_course:not(.course-item-popup).admin-bar #masthead{top:0}}
/* O navbar é fixo: painéis altos (menu do celular, mega-menu) rolam por dentro em vez de passar do fim da tela. */
.gx .gx-panel{max-height:calc(100vh - 60px);overflow-y:auto;overscroll-behavior:contain}
.gx .gx-panel.gx-small{overflow:visible}

/* Trecho sem quebra de linha dentro de textos editáveis (ex.: "NR-35"). */
.gx .gx-nw{white-space:nowrap}

/*
 * Página inicial (P1): regras que dependiam de [data-bg|data-fx|data-ov|data-noscroll] no protótipo.
 * Estado aprovado: foto de fundo nos banners (escurecimento e foco vêm de --ov e --fx em cada banner), sem a
 * ilustração do lado; setas dos trilhos somem quando não há o que rolar.
 */
.gx .gx-hero .gx-bg{display:block}
.gx .gx-hero .gx-slide.gx-photo::before{z-index:1;background:linear-gradient(90deg,rgba(var(--tint),var(--ov,.72)) 0%,rgba(var(--tint),calc(var(--ov,.72) * .8)) 46%,rgba(var(--tint),calc(var(--ov,.72) * .3)) 100%)}
.gx .gx-hero .gx-slide-in{grid-template-columns:minmax(0,1fr)}
.gx .gx-rail-wrap[data-noscroll="1"] .gx-rbtn{display:none}
@media (max-width:600px){
	.gx .gx-hero .gx-slide.gx-photo::before{background:linear-gradient(180deg,rgba(var(--tint),calc(var(--ov,.72) * .85)) 0%,rgba(var(--tint),calc(var(--ov,.72) * 1.1)) 100%)}
}
/* Painel de cursos da área: 5 cards no computador e no tablet; no celular os 9 (3 páginas de 3). */
@media (min-width:601px){.gx #railCat>*:nth-child(n+6){display:none}}

/*
 * Página de curso (P3): o protótipo fixava o quadro de matrícula abaixo do navbar medindo a barra de controles
 * (--ctl-h). No site o navbar é fixo e tem 56 px; com a barra do WordPress soma 32 px.
 */
.gx .gx-cside{top:74px}
body.admin-bar .gx .gx-cside{top:106px}
@media (max-width:900px){.gx .gx-cside{top:auto}}
.gx .gx-lessons li[hidden]{display:none}
.gx .gx-lessons{padding:0;list-style:none}
/* LearnPress: o botão de matrícula (lp-button) ganha a aparência dos botões do P3. */
.gx .gx-sidecard form.enroll-course{margin:0}
.gx .gx-sidecard .lp-button.gx-btn{width:100%;min-height:44px;margin:0;padding:0 20px;border-radius:8px;font-size:15px;line-height:1.55;text-transform:none;letter-spacing:normal}
.gx .gx-sidecard .gx-btn--act.lp-button{background:var(--action);color:var(--ink);border:2px solid transparent;font-weight:700}
.gx .gx-sidecard .gx-btn--act.lp-button:hover{background:var(--action-hover);color:var(--ink)}
/* O texto do curso pode trazer imagens largas: a coluna do celular não pode crescer por causa delas. */
.gx .gx-cmain{min-width:0}
@media (max-width:900px){.gx .gx-cbody{grid-template-columns:minmax(0,1fr)}}
.gx .gx-about img{max-width:100%;height:auto}
@media (max-width:600px){.gx .gx-sidecard .lp-button.gx-btn{min-height:42px;padding:0 16px;font-size:14.5px}}

/* Páginas institucionais (P4): o índice lateral e os títulos ficam abaixo do navbar fixo. */
.gx .gx-toc{top:84px}
body.admin-bar .gx .gx-toc{top:116px}
.gx .gx-doc h2{scroll-margin-top:84px}
.gx .gx-fgroup[hidden],.gx details[hidden],.gx .gx-fempty[hidden]{display:none}
.gx .gx-wa{display:inline-flex;align-items:center;gap:8px}

/*
 * Entrar / criar conta / esqueci minha senha (P4). Na tela de visitante o título "Minha conta" do tema sai (o cartão já
 * tem o próprio título) e os contêineres do tema perdem o recuo lateral, como nas demais páginas de largura total.
 * `:is(#learn-press-profile,body)` dá a especificidade de um id sem exigir que o LearnPress esteja na página (o
 * esqueci-a-senha é do WooCommerce): é o que vence o botão `#learn-press-profile button[type=submit]` do Eduma.
 */
body.gyn-account-screen .top_heading_out{display:none}
body.gyn-account-screen .container.site-content{max-width:none;width:100%;margin:0;padding:0}
body.gyn-account-screen .container.site-content>.row{margin:0}
body.gyn-account-screen #main.site-main{padding:0}
.gx .gx-acct-wrap{width:100%}
.gx .gx-acard form{display:grid;gap:16px;margin:0}
.gx .gx-acard .gyn-auth-panel{display:grid;gap:16px;align-content:start}
.gx .gx-acard .gyn-auth-panel[hidden]{display:none}
.gx .gx-acard .woocommerce-notices-wrapper:empty{display:none}
.gx .gx-acard .gx-fld{margin:0}
:is(#learn-press-profile,body) .gx .gx-acard button.gx-btn.gyn-auth-submit{text-transform:none;letter-spacing:normal;font-size:15px;font-weight:700;line-height:1.2;height:auto;min-height:44px;padding:0 20px;border-radius:8px;border:2px solid transparent;width:100%}
@media (max-width:600px){:is(#learn-press-profile,body) .gx .gx-acard button.gx-btn.gyn-auth-submit{min-height:42px;padding:0 16px;font-size:14.5px}}
:is(#learn-press-profile,body) .gx .gx-acard button.gx-btn--act.gyn-auth-submit{background:var(--action);color:var(--ink)}
:is(#learn-press-profile,body) .gx .gx-acard button.gx-btn--act.gyn-auth-submit:hover{background:var(--action-hover,#E8A200);color:var(--ink)}
.gx .gx-acard button.gyn-auth-submit.is-loading{opacity:.7;cursor:progress}
:is(#learn-press-profile,body) .gx .gx-atabs button{text-transform:none;font-size:15px;font-weight:700;line-height:inherit;padding:10px;border-radius:7px;background:transparent;color:var(--ink-soft);height:auto}
:is(#learn-press-profile,body) .gx .gx-atabs button[aria-selected="true"]{background:var(--surface);color:var(--ink)}
.gx .gx-arow2 input[type=checkbox]{appearance:auto;-webkit-appearance:checkbox;width:13px;min-width:13px;height:13px;flex:none;margin:3px 3px 3px 4px;padding:0;border:0;background:none;accent-color:var(--teal)}
.gx .gyn-social-buttons{display:grid;gap:10px}
.gx .gyn-social-item{position:relative;display:block}
.gx .gyn-social-item a{display:block;text-decoration:none;color:var(--ink)}
.gx .gyn-social-item .nsl-button{display:flex!important;align-items:center;justify-content:center;gap:10px;width:100%;min-height:48px;margin:0;padding:0!important;border:2px solid var(--line)!important;border-radius:8px!important;background:#fff!important;box-shadow:none!important;box-sizing:border-box}
.gx .gyn-social-item .nsl-button:hover{border-color:var(--ink)!important}
.gx .gyn-social-item .nsl-button-svg-container{margin:0;padding:0;display:grid;place-items:center;flex:none}
.gx .gyn-social-item .nsl-button-svg-container svg{width:22px;height:22px;display:block}
.gx .gyn-social-item .nsl-button-label-container{margin:0;padding:0;flex:none;font:700 15.5px/1.2 var(--f-body)!important;color:var(--ink)!important}
.gx .gyn-badge-lastused{position:absolute;right:10px;top:-9px;z-index:2;background:var(--teal);color:#fff;border-radius:999px;padding:2px 9px;font-size:11px;font-weight:700}
:is(#learn-press-profile,body) .gx .gx-pw .gyn-password-toggle{position:absolute;right:4px;top:4px;width:38px;height:38px;padding:0;border:0;background:none;border-radius:6px;display:grid;place-items:center;color:var(--ink-soft)}
:is(#learn-press-profile,body) .gx .gx-pw .gyn-password-toggle:hover{background:var(--cream)}
.gx .gx-pw .gyn-password-toggle.is-visible{color:var(--teal)}
.gx .gx-acard .learn-press-message,.gx .gx-acard .woocommerce-error,.gx .gx-acard .woocommerce-message{margin:0;padding:12px 14px;border-radius:8px;border-left:4px solid #A3202E;background:#FBECEE;color:var(--ink);list-style:none}
.gx .gx-acard .woocommerce-message,.gx .gx-acard .learn-press-message.success{border-left-color:var(--teal);background:var(--teal-bg)}
/* Avisos do LearnPress (senha errada, e-mail já cadastrado) na tela de entrar/criar conta: faixa no mesmo vocabulário dos erros do P4. */
body.gyn-account-screen .learn-press-message{position:relative;z-index:2;display:block;box-sizing:border-box;width:calc(100% - 32px);max-width:1020px!important;margin:24px auto -16px;padding:12px 16px;border:0;border-left:4px solid #A3202E!important;border-radius:8px;background:#FBECEE;color:var(--gyn-ink,#30303C);font:400 15px/1.5 Roboto,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
body.gyn-account-screen .learn-press-message::before{display:none}
body.gyn-account-screen .learn-press-message strong,body.gyn-account-screen .learn-press-message b{font-weight:700;color:inherit}
body.gyn-account-screen .learn-press-message.success{border-left-color:var(--gyn-teal,#0A6E64);background:#E6F2F0}
/* Aviso depois de salvar a nova senha (esqueci minha senha). */
.gx-pwok-wrap{width:100%}
.gx .gx-pwok{box-sizing:border-box;max-width:1020px;margin:24px auto 0;padding:14px 16px;border-left:4px solid var(--teal);border-radius:8px;background:var(--teal-bg);color:var(--ink);font:400 15px/1.5 Roboto,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.gx .gx-pwok b{font-weight:700}

/*
 * Formulários de certificado (P5): o título "Solicitar certificado" do tema sai (cada página tem o H1 no topo), a coluna
 * do resumo gruda abaixo da barra de navegação e o aviso de erro do servidor usa o vocabulário dos erros do P4.
 */
body.gyn-forms-screen .top_heading_out{display:none}
.gx .gx-sumcol{top:74px}
body.admin-bar .gx .gx-sumcol{top:106px}
.gx .gx-fbad{padding:12px 16px;border-radius:8px;border-left:4px solid #A3202E;background:#FBECEE;color:var(--ink)}
.gx .gx-rlist a{color:var(--teal);font-weight:700;text-decoration:underline}
.gx .gx-chk input[type=checkbox]{appearance:auto;-webkit-appearance:checkbox;width:13px;min-width:13px;height:13px;flex:none;margin:3px 3px 3px 4px;padding:0;border:0;background:none;accent-color:var(--teal)}
.gx .gx-fcard #cform{display:grid;gap:16px}
.gx .gx-vdl dt,.gx .gx-vdl dd{line-height:inherit}

/*
 * Telas acima de 1600 px: o protótipo desenhava a página dentro de uma moldura de 1600 px. No site os fundos das seções
 * (hero, faixas, rodapé) ocupam a largura toda da janela e só o conteúdo de cada seção fica no contêiner de 1200 px.
 */
.gx{max-width:none}

/* Avisos do WooCommerce dentro do cartão de "esqueci minha senha" (usuário inexistente, link vencido): o tema e o WooCommerce pintam
   o aviso em rosa com ícone e contorno amarelo de foco; aqui ele segue o vocabulário dos erros do P4. */
.woocommerce-page .gx .gx-acard ul.woocommerce-error.woocommerce-error{display:block;margin:0;padding:12px 14px!important;border:0!important;border-left:4px solid #A3202E!important;border-radius:8px;background:#FBECEE!important;color:var(--ink);list-style:none;outline:none!important;box-shadow:none}
.woocommerce-page .gx .gx-acard ul.woocommerce-error::before,.woocommerce-page .gx .gx-acard ul.woocommerce-error li::before{display:none!important;content:none!important}
.woocommerce-page .gx .gx-acard ul.woocommerce-error li{margin:0;padding:0}
.gx .gx-pwok--in{max-width:none;margin-left:0;margin-right:0}

/* Listas dentro dos textos dos documentos (termos, privacidade): "- item" no texto vira lista. */
.gx .gx-doc ul{margin:0 0 14px;padding-left:22px;max-width:72ch;list-style:disc}
.gx .gx-doc li{margin:0 0 7px;overflow-wrap:anywhere}
/* Índice lateral dos documentos longos (termos têm 18 seções): rola por dentro quando não cabe na tela. */
.gx .gx-toc{max-height:calc(100vh - 110px);overflow-y:auto;overscroll-behavior:contain}
