/*
 * Gofas: identidade visual escura (issue #125).
 * Tokens, base tipográfica, header, rodapé e componentes dos módulos Beaver Builder do tema.
 */
:root{
	--ink:#0A0E13;
	--surface:#111820;
	--surface-2:#161F29;
	--line:#1E2A36;
	--line-soft:#18222C;
	--text:#F3F7FA;
	--muted:#AAB8C5;
	--dim:#8392A0;
	--blue:#127EAF;
	--blue-hover:#1690C7;
	--blue-lit:#41A6DC;
	--blue-glow:rgba(18,126,175,.16);
	--add:#3FB68B;
	--add-bg:rgba(63,182,139,.10);
	--del:#E0716B;
	--del-bg:rgba(224,113,107,.10);
	--radius:3px;
	--maxw:1240px;
	--f-display:'Space Grotesk',system-ui,sans-serif;
	--f-text:'IBM Plex Sans',system-ui,-apple-system,'Segoe UI',sans-serif;
	--f-mono:'IBM Plex Mono',ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
}

/* Base */
html,body,.fl-page,.fl-page-content,.fl-content-full,.fl-page-content .container{background:var(--ink)!important;color:var(--text)}
body{font-family:var(--f-text);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,h5,h6,.fl-heading,.fl-post-title{font-family:var(--f-display)!important;font-style:normal!important;font-weight:600!important;color:var(--text)!important;letter-spacing:-.02em;line-height:1.15}
h1{letter-spacing:-.035em}
p,li,td,th,label,.fl-rich-text{color:inherit}
a{color:var(--blue-lit)}
a:hover,a:focus{color:#7CC3EA}
code,kbd,pre,samp,.g-mono{font-family:var(--f-mono)!important}
hr{border-color:var(--line)}
::selection{background:var(--blue);color:#fff}
:focus-visible{outline:2px solid var(--blue-lit);outline-offset:2px}
img{max-width:100%}
.fl-row-content-wrap{color:var(--text)}
#breadcrumbsdiv{max-width:var(--maxw);margin:0 auto;padding:14px 16px 0;font-family:var(--f-mono);font-size:12px;color:var(--dim)}
#breadcrumbsdiv a{color:var(--muted)}
#breadcrumbsdiv,#breadcrumbsdiv *,#breadcrumbs{background:transparent!important;color:var(--dim)!important;border:0!important}
#breadcrumbsdiv a{color:var(--muted)!important}
#breadcrumbsdiv .breadcrumb_last{color:var(--text)!important}

/* Header */
.fl-page-header,.fl-page-header-wrap,.fl-page-header-primary,.fl-page-header-fixed,.fl-page-nav-wrap,.fl-page-nav{background:rgba(10,14,19,.78)!important;border-color:var(--line)!important}
.fl-page-header-primary,.fl-page-header-fixed{-webkit-backdrop-filter:saturate(140%) blur(12px);backdrop-filter:saturate(140%) blur(12px);border-bottom:1px solid var(--line)!important}
.fl-page-header-fixed{box-shadow:none!important}
.fl-page-nav .navbar-nav>li>a,.fl-page-nav .navbar-nav li a,.fl-page-header .fl-page-nav-search a.fa-search{font-family:var(--f-text);font-size:14px;font-weight:500;color:var(--muted)!important}
.fl-page-nav .navbar-nav>li>a:hover,.fl-page-nav .navbar-nav>li.current-menu-item>a{color:var(--text)!important}
.fl-page-nav ul.sub-menu{background:var(--surface)!important;border:1px solid var(--line)!important;border-radius:var(--radius)}
.fl-page-nav ul.sub-menu li a{color:var(--muted)!important}
.fl-page-nav ul.sub-menu li a:hover{color:var(--text)!important;background:var(--surface-2)!important}
.fl-page-nav .navbar-toggle,.fl-page-nav-toggle-icon .fl-page-nav .navbar-toggle{color:var(--text)!important;background:transparent!important;border-color:var(--line)!important}
.fl-page-nav-search form{background:var(--surface)!important;border-color:var(--line)!important}

/* Logo */
.fl-page-header-logo img,.fl-logo-img{max-height:38px!important;width:auto!important}
.fl-page-header-fixed .fl-logo-img{max-height:30px!important}
.fl-page-header-container{padding-top:14px!important;padding-bottom:14px!important}

/* Rodapé */
.fl-page-footer-wrap,.fl-page-footer,.fl-page-footer-widgets{background:var(--ink)!important;border-top:1px solid var(--line)!important;color:var(--muted)!important}
.fl-page-footer,.fl-page-footer p,.fl-page-footer .fl-page-footer-text{font-family:var(--f-mono);font-size:12px;color:var(--dim)!important}
.fl-page-footer a,.fl-page-footer-widgets a{color:var(--muted)!important}
.fl-page-footer a:hover{color:var(--text)!important}

/* Botões */
.fl-builder-content a.fl-button,.fl-builder-content a.fl-button:visited,button,input[type=submit],.g-btn{font-family:var(--f-text);font-weight:600;font-size:15px;border-radius:var(--radius)!important;transition:background .15s,border-color .15s,color .15s}
.fl-builder-content a.fl-button,.fl-builder-content a.fl-button:visited,input[type=submit],.g-btn{background:var(--blue)!important;border:1px solid var(--blue)!important;color:#fff!important}
.fl-builder-content a.fl-button *,.g-btn *{color:#fff!important}
.fl-builder-content a.fl-button:hover,input[type=submit]:hover,.g-btn:hover{background:var(--blue-hover)!important;border-color:var(--blue-hover)!important}
.g-btn-ghost a.fl-button,.g-btn-ghost a.fl-button:visited,.g-btn.g-ghost{background:transparent!important;border:1px solid var(--line)!important;color:var(--text)!important}
.g-btn-ghost a.fl-button *,.g-btn.g-ghost *{color:var(--text)!important}
.g-btn-ghost a.fl-button:hover,.g-btn.g-ghost:hover{border-color:var(--muted)!important;background:var(--surface)!important}
.g-btn-mono a.fl-button,.g-btn-mono a.fl-button *{font-family:var(--f-mono)!important;font-size:13px!important;font-weight:500!important}
.g-btn{display:inline-block;padding:12px 20px;text-decoration:none}

/* Formulários */
input[type=text],input[type=email],input[type=password],input[type=search],input[type=url],input[type=tel],input[type=number],textarea,select{background:var(--surface)!important;border:1px solid var(--line)!important;color:var(--text)!important;border-radius:var(--radius)!important}
input:focus,textarea:focus,select:focus{border-color:var(--blue)!important;box-shadow:0 0 0 3px var(--blue-glow)!important}
::placeholder{color:var(--dim)!important}

/* Utilitários para linhas e módulos nativos (Aparência > Classe) */
.g-eyebrow,.g-eyebrow *{font-family:var(--f-mono)!important;font-size:11px!important;font-weight:500!important;text-transform:uppercase;letter-spacing:.14em!important;color:var(--dim)!important;line-height:1.6!important}
.g-lede,.g-lede p{font-size:19px;line-height:1.55;color:var(--muted)!important;max-width:40em}
.g-muted,.g-muted p{color:var(--muted)!important}
.g-section>.fl-row-content-wrap{border-top:1px solid var(--line)}
.g-surface>.fl-row-content-wrap{background:var(--surface)!important}
.g-hero>.fl-row-content-wrap{position:relative;overflow:hidden}
.g-hero>.fl-row-content-wrap:before{content:"";position:absolute;inset:-30% auto auto 50%;width:900px;height:620px;transform:translateX(-50%);background:radial-gradient(closest-side,var(--blue-glow),transparent);filter:blur(30px);pointer-events:none}
.g-hero>.fl-row-content-wrap>*{position:relative}
.g-hero h1{font-size:clamp(38px,5.4vw,68px)!important;font-weight:700!important;line-height:1.02!important}
.g-h2 h2,.g-h2 .fl-heading{font-size:clamp(28px,3.4vw,40px)!important}
.g-card>.fl-module-content,.g-card>.fl-col-content{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}

/* Diff */
.g-diff{font-family:var(--f-mono);font-size:14px;line-height:1.5;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);overflow:hidden}
.g-diff-head{display:flex;justify-content:space-between;gap:12px;padding:8px 14px;border-bottom:1px solid var(--line);color:var(--dim);font-size:12px}
.g-diff-line{display:grid;grid-template-columns:28px 1fr;padding:6px 14px 6px 0}
.g-diff-line span:first-child{text-align:center;user-select:none}
.g-diff-del{background:var(--del-bg);color:#F0A7A3}
.g-diff-del span:first-child{color:var(--del)}
.g-diff-add{background:var(--add-bg);color:#9BDDBF}
.g-diff-add span:first-child{color:var(--add)}
.g-diff-ctx{color:var(--muted)}

/* Destaque (spotlight) */
.g-spot{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:24px}
.g-spot-top{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.g-spot-name{font-family:var(--f-display);font-size:22px;font-weight:600;color:var(--text);margin:6px 0 2px}
.g-spot-slug,.g-spot-ver{font-family:var(--f-mono);font-size:12px;color:var(--dim)}
.g-spot dl{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin:20px 0 0;background:var(--line);border:1px solid var(--line)}
.g-spot dl div{background:var(--surface-2);padding:14px}
.g-spot dt{font-family:var(--f-mono);font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--dim)}
.g-spot dd{margin:4px 0 0;font-family:var(--f-display);font-size:24px;font-weight:600;color:var(--text)}
.g-spot-note{margin:14px 0 0;font-size:12px;color:var(--dim)}
.g-spot .g-btn{margin-top:18px;width:100%;text-align:center}

/* Faixa de números */
.g-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
.g-stat{background:var(--ink);padding:22px 20px}
.g-stat b{display:block;font-family:var(--f-display);font-size:34px;font-weight:600;color:var(--text);letter-spacing:-.02em;line-height:1.1}
.g-stat span{display:block;margin-top:6px;font-family:var(--f-mono);font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--dim)}

/* Registro de módulos */
.g-reg{width:100%;border-collapse:collapse;font-size:15px}
.g-reg th{font-family:var(--f-mono);font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.12em;color:var(--dim);text-align:left;padding:10px 14px;border-bottom:1px solid var(--line);background:transparent}
.g-reg td{padding:16px 14px;border-bottom:1px solid var(--line-soft);vertical-align:middle;background:transparent}
.g-reg tr:hover td{background:var(--surface)}
.g-reg .g-num{text-align:right;font-family:var(--f-mono);font-variant-numeric:tabular-nums;white-space:nowrap}
.g-reg-name a{font-weight:600;color:var(--text);text-decoration:none}
.g-reg-name a:hover{color:var(--blue-lit)}
.g-reg-slug{display:block;font-family:var(--f-mono);font-size:12px;color:var(--dim);margin-top:2px}
.g-reg-ver{font-family:var(--f-mono);font-size:13px;color:var(--muted)}
.g-reg-bar{display:block;height:2px;background:var(--line);margin-top:6px}
.g-reg-bar i{display:block;height:2px;background:var(--blue)}
.g-reg-price{font-family:var(--f-mono);font-size:13px;color:var(--muted);white-space:nowrap}
.g-reg-price.g-free{color:var(--add)}
.g-reg-act a{font-family:var(--f-mono);font-size:13px;white-space:nowrap}
.g-reg-note{margin-top:12px;font-size:12px;color:var(--dim)}

/* Pilares e listas de linhas */
.g-pillars .fl-col-group:has(.g-pillar){border:1px solid var(--line);border-radius:var(--radius)}
.g-pillars .fl-col+.fl-col{border-left:1px solid var(--line)}
.g-pillar>.fl-col-content{padding:28px}
.g-index,.g-index *{font-family:var(--f-mono)!important;font-size:12px!important;color:var(--blue-lit)!important;letter-spacing:.1em}
.g-rows .fl-col-group{border-top:1px solid var(--line)}
.g-rows .fl-col-group:last-child{border-bottom:1px solid var(--line)}

/* Markdown dos repositórios (documents-from-git) */
.fl-rich-text table,.fl-html table{width:100%;border-collapse:collapse}
.fl-rich-text th,.fl-rich-text td,.fl-html th,.fl-html td{border:1px solid var(--line);padding:8px 12px}
.fl-rich-text th,.fl-html th{background:var(--surface);font-family:var(--f-mono);font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
.fl-rich-text pre,.fl-html pre,pre{background:var(--surface)!important;border:1px solid var(--line)!important;border-radius:var(--radius);color:var(--text)!important;padding:14px 16px;overflow:auto;font-size:13px}
.fl-rich-text code,.fl-html code{background:var(--surface-2);color:#CFE3F1;border-radius:2px;padding:1px 5px;font-size:.88em}
.fl-rich-text pre code,.fl-html pre code{background:transparent;padding:0}
blockquote{border-left:2px solid var(--blue)!important;background:var(--surface);color:var(--muted);padding:10px 16px;margin-left:0}

/* Blog e fórum */
.fl-post,.fl-widget,.fl-sidebar .fl-widget{color:var(--text)}
.fl-post-meta,.fl-post-meta a{font-family:var(--f-mono);font-size:12px;color:var(--dim)!important}
.fl-sidebar .fl-widget-title{font-family:var(--f-mono)!important;font-size:11px!important;text-transform:uppercase;letter-spacing:.14em;color:var(--dim)!important}
#bbpress-forums,#bbpress-forums ul.bbp-forums,#bbpress-forums ul.bbp-topics,#bbpress-forums ul.bbp-replies{border-color:var(--line)!important;background:transparent!important;color:var(--text)!important;font-size:15px}
#bbpress-forums li.bbp-header,#bbpress-forums li.bbp-footer{background:var(--surface)!important;border-color:var(--line)!important;font-family:var(--f-mono);font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--dim)!important}
#bbpress-forums li.bbp-body ul.forum,#bbpress-forums li.bbp-body ul.topic,#bbpress-forums div.odd,#bbpress-forums div.even,#bbpress-forums ul.odd,#bbpress-forums ul.even{background:var(--ink)!important;border-color:var(--line-soft)!important}
#bbpress-forums div.bbp-reply-header,#bbpress-forums div.bbp-topic-header{background:var(--surface)!important;border-color:var(--line)!important}
#bbpress-forums .bbp-meta,#bbpress-forums .bbp-author-role,#bbpress-forums p.bbp-topic-meta{color:var(--dim)!important}

@media (max-width:940px){
	.g-stats{grid-template-columns:repeat(2,1fr)}
	.g-pillars .fl-col+.fl-col{border-left:0;border-top:1px solid var(--line)}
	.g-reg thead{display:none}
	.g-reg,.g-reg tbody,.g-reg tr,.g-reg td{display:block;width:100%}
	.g-reg tr{display:grid;grid-template-columns:1fr 1fr;gap:4px 16px;padding:14px 0;border-bottom:1px solid var(--line-soft)}
	.g-reg td{border:0;padding:2px 0}
	.g-reg td.g-reg-name{grid-column:1/-1}
	.g-reg .g-num{text-align:left}
	.g-reg td[data-label]:before{content:attr(data-label);display:block;font-family:var(--f-mono);font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--dim)}
}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
/* Também fazemos */
.g-also{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.g-also li{display:grid;grid-template-columns:minmax(160px,1fr) 2fr auto;gap:8px 24px;align-items:baseline;padding:18px 0;border-bottom:1px solid var(--line)}
.g-also strong{font-family:var(--f-display);font-size:19px;font-weight:600;color:var(--text)}
.g-also span{color:var(--muted)}
.g-also a{font-family:var(--f-mono);font-size:13px;white-space:nowrap}
@media (max-width:940px){.g-also li{grid-template-columns:1fr}}
/* Grupo de botões do hero: o segundo é fantasma */
.g-btn-group .fl-button-group-button:nth-child(n+2) a.fl-button,.g-btn-group .fl-button-group-button:nth-child(n+2) a.fl-button:visited{background:transparent!important;border:1px solid var(--line)!important}
.g-btn-group .fl-button-group-button:nth-child(n+2) a.fl-button *{color:var(--text)!important}
.g-btn-group .fl-button-group-button:nth-child(n+2) a.fl-button:hover{border-color:var(--muted)!important;background:var(--surface)!important}

/* Aviso de cookies (cookie-law-info) */
#cookie-law-info-bar{background:var(--surface)!important;color:var(--muted)!important;border-top:1px solid var(--line)!important;box-shadow:none!important;font-family:var(--f-text);font-size:13px}
#cookie-law-info-bar a.cli-plugin-button,#cookie-law-info-bar .cli_action_button{background:var(--blue)!important;color:#fff!important;border-radius:var(--radius)!important;font-weight:600}
/* Markdown do GitHub (documents-from-git, .markdown-body) */
.markdown-body{color:var(--text)!important;background:transparent!important;font-family:var(--f-text)!important;font-size:16px}
.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4{color:var(--text)!important;border-bottom-color:var(--line)!important;font-family:var(--f-display)!important}
.markdown-body a{color:var(--blue-lit)!important}
.markdown-body hr{background:var(--line)!important;border:0}
.markdown-body table tr{background:transparent!important;border-top-color:var(--line)!important}
.markdown-body table tr:nth-child(2n){background:var(--surface)!important}
.markdown-body table th,.markdown-body table td{border-color:var(--line)!important}
.markdown-body code,.markdown-body tt{background:var(--surface-2)!important;color:#CFE3F1!important}
.markdown-body pre,.markdown-body .highlight pre{background:var(--surface)!important;border:1px solid var(--line)}
.markdown-body blockquote{color:var(--muted)!important;border-left-color:var(--blue)!important}
.markdown-body img{background:transparent!important;border-radius:var(--radius)}
.markdown-body kbd{background:var(--surface-2)!important;color:var(--text)!important;border-color:var(--line)!important;box-shadow:none!important}

/* Compartilhamento (Jetpack) e modal de cookies */
.sharedaddy .sd-button,.sharedaddy .sd-button span{background:var(--surface)!important;color:var(--muted)!important;border-color:var(--line)!important;box-shadow:none!important}
.cli-modal .cli-modal-content,.cli-modal .cli-tab-header,.cli-modal .cli-privacy-content-text,.cli-modal .cli-nav-link{background:var(--surface)!important;color:var(--text)!important}
/* Grade de posts do Beaver Builder (lista de módulos, blog) */
.fl-post-grid-post,.fl-post-feed-post,.fl-post-gallery-post{background:var(--surface)!important;border:1px solid var(--line)!important;border-radius:var(--radius)!important;box-shadow:none!important;color:var(--text)!important;overflow:hidden}
.fl-post-grid-post:hover{border-color:var(--dim)!important}
.fl-post-grid-title,.fl-post-grid-title a,.fl-post-feed-title a{color:var(--text)!important;font-family:var(--f-display)!important}
.fl-post-grid-meta,.fl-post-grid-meta a{font-family:var(--f-mono);font-size:12px;color:var(--dim)!important}
.fl-post-grid-content,.fl-post-grid-content p{color:var(--muted)!important}
.fl-post-grid-image img{display:block;width:100%;height:auto}
/* Parceiros oficiais */
.g-parceiros .fl-col-group:has(.g-parceiro){gap:0;border:1px solid var(--line);border-radius:var(--radius)}
.g-parceiro>.fl-col-content{padding:32px}
.g-parceiro+.g-parceiro{border-left:1px solid var(--line)}
.g-parceiro-destaque>.fl-col-content{background:linear-gradient(180deg,var(--surface),transparent)}
.g-parceiro-logo img{max-height:64px;width:auto!important}
.g-parceiro-selo img{max-height:28px;width:auto!important;opacity:.85}
@media (max-width:940px){.g-parceiro+.g-parceiro{border-left:0;border-top:1px solid var(--line)}}

/* Selo de parceria nas páginas de módulo */
.g-selo-parceria{max-width:var(--maxw);margin:16px auto 8px;padding:0 16px}
.g-selo-parceria>div{display:flex;align-items:center;gap:16px;flex-wrap:wrap;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:14px 18px}
.g-selo-parceria img{height:30px;width:auto}
.g-selo-parceria span{color:var(--muted);font-size:14px}
.g-selo-parceria b{font-family:var(--f-mono);font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.14em;color:var(--dim)}
.g-selo-parceria a{margin-left:auto;font-family:var(--f-mono);font-size:13px;white-space:nowrap}/* Parceiros: três blocos iguais, CTA no rodapé do card e tarifas exclusivas */
.g-parceiros .fl-col-group:has(.g-parceiro){display:flex;flex-wrap:wrap}
.g-parceiro{display:flex;float:none}
.g-parceiro>.fl-col-content{display:flex;flex-direction:column;width:100%}
.g-parceiro .g-parceiro-cta{margin-top:auto;padding-top:8px}
.g-parceiro+.g-parceiro-destaque>.fl-col-content,.g-parceiro-destaque>.fl-col-content{background:linear-gradient(180deg,var(--surface),transparent)}
.g-tarifas{margin-top:8px}
.g-tarifas .fl-rich-text{border-top:1px solid var(--line);padding-top:16px}
.g-tarifas .g-tarifas-titulo{font-family:var(--f-mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0 0 10px}
.g-tarifas ul{list-style:none;margin:0 0 12px;padding:0}
.g-tarifas li{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px dashed var(--line);font-size:14px}
.g-tarifas li span{color:var(--muted)}
.g-tarifas li b{font-family:var(--f-mono);font-weight:500;color:var(--text);text-align:right;white-space:nowrap}
.g-tarifas .g-tarifas-nota{font-size:13px;color:var(--muted);margin:0}
.g-tarifas code{font-family:var(--f-mono);color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:4px;padding:1px 6px}
@media (max-width:940px){.g-parceiro{width:100%!important}}
/* Parceiros: logos na mesma altura e módulos integrados em chips */
.g-parceiro .g-parceiro-logo img{height:44px!important;max-height:none;width:auto!important;max-width:100%;object-fit:contain;object-position:left center}
.g-parceiro .g-parceiro-selo img{height:26px!important;max-height:none;opacity:1}
.g-modulos{margin-top:8px}
.g-modulos .fl-rich-text{border-top:1px solid var(--line);padding-top:16px}
.g-modulos .g-modulos-titulo{font-family:var(--f-mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0 0 12px}
.g-modulos ul{list-style:none;margin:0 0 4px;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.g-modulos li{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:999px;padding:5px 12px;font-size:13px;background:var(--surface)}
.g-modulos li a{color:var(--text);text-decoration:none}
.g-modulos li a:hover{color:var(--blue)}
.g-modulos li em{font-style:normal;font-family:var(--f-mono);font-size:11px;color:var(--muted)}
.g-parceiro .g-parceiro-logo img.wp-image-17550{height:64px!important}
