/* ============================================================
   FIA Business School — Folha de marca da Comunidade CAD
   Sobre o tema Woffice. Tokens/mapeamento: ver spec do projeto.
   ============================================================ */

:root {
	--fia-decidido: #C3FA75; /* lima — assinatura/destaque (texto escuro) */
	--fia-profundo: #084734; /* estrutural */
	--fia-azul:     #142D59; /* secundária */
	--fia-cha:      #75A365;
	--fia-solido:   #ABBD88;
	--fia-sereno:   #E9F2DC; /* fundo claro */
	--fia-cinza:    #696A65;
	--fia-branco:   #FFFFFF;

	--fia-font: "DM Sans", system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
	--fia-grad: linear-gradient(120deg, #C3FA75 0%, #75A365 52%, #E9F2DC 100%);
	--fia-radius: 14px;
	--fia-shadow: 0 18px 50px -24px rgba(8, 71, 52, .55);
}

/* ============================================================
   1. TIPOGRAFIA GLOBAL — DM Sans (todo o site)
   ============================================================ */
body,
button, input, select, optgroup, textarea,
.woffice-page, #content, #main-content,
.bp-feedback, .buddypress-wrap,
.woffice-table, .panel, .widget {
	font-family: var(--fia-font) !important;
}

h1, h2, h3, h4, h5, h6,
.entry-title, .page-title, .widget-title, .panel-title {
	font-family: var(--fia-font) !important;
	letter-spacing: -.02em;
	font-weight: 700;
}
h1, .page-title { font-weight: 900; letter-spacing: -.03em; }

/* ============================================================
   2. BOTÕES DE MARCA
   ============================================================ */
.fia-btn {
	display: inline-flex; align-items: center; gap: .5em;
	font-family: var(--fia-font); font-weight: 700; font-size: 1rem;
	line-height: 1; letter-spacing: -.01em;
	padding: .95em 1.6em; border-radius: 999px;
	border: 2px solid transparent; cursor: pointer;
	text-decoration: none; transition: transform .15s ease, background .15s ease, color .15s ease, border-color .15s ease;
}
.fia-btn:hover { transform: translateY(-2px); }
.fia-btn--lime { background: var(--fia-decidido); color: var(--fia-profundo); }
.fia-btn--lime:hover { background: #d4ff96; color: var(--fia-profundo); }
.fia-btn--ghost { background: transparent; color: var(--fia-sereno); border-color: rgba(233,242,220,.45); }
.fia-btn--ghost:hover { border-color: var(--fia-decidido); color: var(--fia-decidido); }
.fia-btn--ghost-dark { background: transparent; color: var(--fia-sereno); border-color: rgba(233,242,220,.35); }
.fia-btn--ghost-dark:hover { color: var(--fia-decidido); border-color: var(--fia-decidido); }

/* ============================================================
   3. FIO CONDUTOR (motivo de assinatura) + GRADIENTE
   ============================================================ */
.fia-fio { position: absolute; pointer-events: none; }
.fia-fio--hero {
	top: 96px; right: 6%; width: min(38vw, 460px); height: 300px;
	border-top: 2px solid var(--fia-decidido);
	border-right: 2px solid var(--fia-decidido);
	border-top-right-radius: 4px;
}
.fia-fio--band {
	left: 4%; bottom: 32px; width: 180px; height: 120px;
	border-left: 2px solid var(--fia-profundo);
	border-bottom: 2px solid var(--fia-profundo);
	opacity: .5;
}

/* ============================================================
   4. LANDING PÚBLICA
   ============================================================ */
.fia-landing { font-family: var(--fia-font); color: var(--fia-profundo); background: var(--fia-branco); overflow-x: hidden; }
.fia-landing img { max-width: 100%; height: auto; }
.fia-landing a { text-decoration: none; }

/* Header */
.fia-l-header {
	position: absolute; top: 0; left: 0; right: 0; z-index: 5;
	display: flex; align-items: center; justify-content: space-between;
	padding: 26px clamp(20px, 5vw, 64px);
}
.fia-l-brand img { display: block; height: 40px; width: auto; }
.fia-l-nav { display: flex; align-items: center; gap: clamp(14px, 2.4vw, 34px); }
.fia-l-nav > a { color: var(--fia-sereno); font-weight: 500; font-size: .98rem; letter-spacing: -.01em; }
.fia-l-nav > a:not(.fia-btn):hover { color: var(--fia-decidido); }
.fia-l-nav .fia-btn { padding: .6em 1.25em; font-size: .92rem; }

/* Hero */
.fia-hero {
	position: relative; isolation: isolate;
	background: var(--fia-profundo); color: var(--fia-sereno);
	padding: clamp(140px, 18vh, 220px) clamp(20px, 5vw, 64px) clamp(70px, 10vh, 120px);
	overflow: hidden;
}
.fia-hero__grad {
	position: absolute; z-index: -1; inset: auto -10% -40% auto;
	width: min(70vw, 820px); height: min(70vw, 820px);
	background: var(--fia-grad); border-radius: 50%;
	filter: blur(60px); opacity: .5;
}
.fia-hero__inner { max-width: 1180px; margin: 0 auto; }
.fia-eyebrow { text-transform: uppercase; letter-spacing: .16em; font-size: .8rem; font-weight: 600; color: var(--fia-decidido); margin: 0 0 22px; }
.fia-hero__title {
	font-size: clamp(3.2rem, 11vw, 8.5rem); font-weight: 900; line-height: .92;
	letter-spacing: -.04em; margin: 0 0 28px; color: var(--fia-branco);
}
.fia-hero__lead { font-size: clamp(1.1rem, 2vw, 1.45rem); line-height: 1.45; max-width: 30ch; color: var(--fia-sereno); margin: 0 0 38px; }
.fia-hero__cta { display: flex; flex-wrap: wrap; gap: 14px; }

/* Seções */
.fia-section { padding: clamp(64px, 9vw, 120px) clamp(20px, 5vw, 64px); max-width: 1180px; margin: 0 auto; }
.fia-section__head { margin-bottom: 56px; }
.fia-kicker, .fia-card__n {
	display: inline-block; text-transform: uppercase; letter-spacing: .14em;
	font-size: .78rem; font-weight: 700; color: var(--fia-cha); margin-bottom: 16px;
}
.fia-section h2, .fia-band h2 {
	font-size: clamp(1.9rem, 4.4vw, 3.4rem); font-weight: 800; line-height: 1.02;
	letter-spacing: -.03em; margin: 0; color: var(--fia-profundo);
}

/* Cards de valor */
.fia-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 22px; }
.fia-card {
	background: var(--fia-sereno); border-radius: var(--fia-radius);
	padding: 34px 30px 30px; position: relative;
	border: 1px solid rgba(8,71,52,.08);
	transition: transform .2s ease, box-shadow .2s ease;
}
.fia-card::before {
	content: ""; position: absolute; left: 30px; top: 0; width: 38px; height: 4px;
	background: var(--fia-decidido); border-radius: 0 0 3px 3px;
}
.fia-card:hover { transform: translateY(-4px); box-shadow: var(--fia-shadow); }
.fia-card__n { color: var(--fia-cha); margin-bottom: 14px; }
.fia-card h3 { font-size: 1.3rem; font-weight: 700; line-height: 1.15; margin: 0 0 12px; color: var(--fia-profundo); }
.fia-card p { font-size: 1rem; line-height: 1.55; color: #3c4b43; margin: 0; }

/* Faixa lima — momento de assinatura */
.fia-band { position: relative; background: var(--fia-decidido); color: var(--fia-profundo); padding: clamp(64px, 9vw, 110px) clamp(20px, 5vw, 64px); overflow: hidden; }
.fia-band__inner { max-width: 1180px; margin: 0 auto; position: relative; z-index: 1; }
.fia-band h2 { color: var(--fia-profundo); margin-bottom: 22px; }
.fia-band p { font-size: clamp(1.05rem, 1.8vw, 1.3rem); line-height: 1.5; max-width: 46ch; margin: 0 0 32px; color: #0c5a43; }

/* Sobre */
.fia-section--split { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: start; }
.fia-section--split .fia-section__head { margin-bottom: 0; }
.fia-prose p { font-size: 1.12rem; line-height: 1.6; color: #3c4b43; margin: 0 0 18px; }
.fia-prose strong { color: var(--fia-profundo); }

/* Footer */
.fia-l-footer {
	background: var(--fia-profundo); color: var(--fia-sereno);
	padding: clamp(48px, 7vw, 80px) clamp(20px, 5vw, 64px);
	display: grid; grid-template-columns: 1fr auto; gap: 28px 40px; align-items: center;
}
.fia-l-footer__brand img { display: block; height: 30px; width: auto; }
.fia-l-footer__brand p { margin: 14px 0 0; color: var(--fia-decidido); font-weight: 600; letter-spacing: -.01em; }
.fia-l-footer__copy { grid-column: 1 / -1; margin: 0; padding-top: 22px; border-top: 1px solid rgba(233,242,220,.15); font-size: .85rem; color: rgba(233,242,220,.6); }

@media (max-width: 720px) {
	.fia-l-nav a:not(.fia-btn) { display: none; }
	.fia-section--split { grid-template-columns: 1fr; }
	.fia-l-footer { grid-template-columns: 1fr; }
	.fia-fio--hero { display: none; }
}

/* ============================================================
   5. ÁREA DO MEMBRO (Woffice + BuddyPress) — acentos FIA
   As cores-base vêm das opções do tema (já mapeadas p/ FIA);
   aqui ficam os realces de assinatura (lima) e ajustes finos.
   ============================================================ */

/* Item de navegação ativo: marca lima à esquerda */
#navigation .menu-item.current-menu-item > a,
#navigation .menu-item.current_page_item > a,
.woffice-nav .current-menu-item > a {
	box-shadow: inset 3px 0 0 0 var(--fia-decidido);
}

/* Barras de progresso de projeto -> lima */
.progress .progress-bar,
.woffice-progress .progress-bar,
.project-progress .progress-bar {
	background-color: var(--fia-decidido) !important;
	color: var(--fia-profundo) !important;
}

/* Badges / pontos GamiPress / etiquetas de destaque */
.gamipress-points,
.badge.badge-primary, .label-primary,
.bp-badge, .woffice-badge {
	background-color: var(--fia-decidido) !important;
	color: var(--fia-profundo) !important;
}

/* Etiquetas de status de projeto -> paleta FIA */
.project-status.badge {
	font-family: var(--fia-font) !important;
	font-weight: 600 !important; letter-spacing: -.01em;
}
.project-status.badge.planned     { background: var(--fia-sereno) !important;   color: var(--fia-profundo) !important; }
.project-status.badge.in_progress { background: var(--fia-decidido) !important; color: var(--fia-profundo) !important; }
.project-status.badge.in_review   { background: var(--fia-solido) !important;   color: var(--fia-profundo) !important; }
.project-status.badge.done,
.project-status.badge.completed   { background: var(--fia-profundo) !important; color: var(--fia-sereno) !important; }
.project-status.badge.archived    { background: var(--fia-cinza) !important; color: #fff !important; }

/* Etiqueta de categoria do projeto (sutil) */
.project-cateogry-badge {
	background: rgba(8, 71, 52, .07) !important;
	color: var(--fia-cha) !important;
	font-weight: 600;
}

/* Botões primários no app: garante texto legível sobre verde profundo */
.btn-primary, .woffice-button, .button.primary,
#buddypress .generic-button a, #buddypress a.button {
	font-family: var(--fia-font) !important;
	font-weight: 600;
}

/* Tag de "novo"/destaque e links de ação com hover lima */
#buddypress .generic-button a:hover,
.woffice-button:hover { filter: brightness(1.05); }

/* Caixa de título com borda de assinatura (a cor vem da opção title_box_bordercolor) */
.title-box, .woffice-title-box { border-radius: 10px; }

/* Botões de envio do BuddyPress (Salvar Alterações etc.) — texto legível */
#buddypress input[type="submit"],
#buddypress button[type="submit"],
#buddypress .submit input,
#profile-group-edit-submit,
.standard-form button[type="submit"],
.standard-form input[type="submit"] {
	background: var(--fia-profundo) !important;
	color: #fff !important;
	border: none !important;
	border-radius: 999px !important;
	font-family: var(--fia-font) !important;
	font-weight: 600 !important;
}
#buddypress input[type="submit"]:hover,
#profile-group-edit-submit:hover,
.standard-form button[type="submit"]:hover { background: #0c5a43 !important; }

/* ---- Rodapé: alinhar colunas à direita da sidebar (evita corte em telas menores) ---- */
@media (min-width: 993px) {
	#main-footer #widgets {
		box-sizing: border-box;
		padding-left: min(16.66667%, 320px);
	}
	body.navigation-hidden #main-footer #widgets { padding-left: 0; }
}

/* ---- Documentos ([fia_docs]) ---- */
.fia-docs-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 14px; margin: 10px 0; }
.fia-doc-card {
	display: flex; align-items: center; gap: 14px; padding: 16px 18px;
	background: var(--fia-sereno); border: 1px solid rgba(8, 71, 52, .08);
	border-radius: 14px; text-decoration: none;
	transition: transform .18s ease, box-shadow .18s ease;
}
.fia-doc-card:hover { transform: translateY(-3px); box-shadow: 0 14px 30px -18px rgba(8, 71, 52, .5); }
.fia-doc-ico {
	flex: 0 0 auto; width: 44px; height: 44px; border-radius: 12px;
	background: var(--fia-decidido); color: var(--fia-profundo);
	display: flex; align-items: center; justify-content: center; font-size: 19px;
}
.fia-doc-body { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.fia-doc-title { font-weight: 700; color: var(--fia-profundo); letter-spacing: -.01em; line-height: 1.2; }
.fia-doc-meta { font-size: .8rem; color: var(--fia-cinza); }

/* ---- Form de edição de perfil: caixa natural nos rótulos/opções ----
   O tema aplica text-transform:capitalize, que erra a grafia em português
   ("Gestão De Projetos"). A exibição do perfil já sai correta. */
.standard-form.profile-edit .editfield label,
.standard-form.profile-edit .editfield legend {
	text-transform: none !important;
}

/* ---- Ícone do item "Documentos" (BP Docs) no menu do membro ----
   O BP Docs injeta o item #docs-personal-li, mas o Woffice não tem glifo
   mapeado para ele (tentava \f061, inexistente na fonte woffice-icon → vazio).
   Usamos o glifo "file" (\e939) da própria woffice-icon p/ manter o estilo. */
#member-primary-nav #docs-personal-li > a::before,
#docs-personal-li.bp-personal-tab > a::before {
	font-family: 'woffice-icon' !important;
	content: '\e939' !important;
}

/* Linha de ícones sociais do card do perfil: ocultada — os links já
   aparecem na seção "Contato & Redes" do corpo (evita redundância). */
.users-single-social {
	display: none;
}

/* ===== Perfil do membro — nova versão (seções, hierarquia, contexto) ===== */
/* Cargo/área sob o nome no card do membro (card branco → texto escuro) */
.fia-header-context {
	margin: 7px auto 2px;
	max-width: 230px;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.35;
	letter-spacing: -.005em;
	text-align: center;
	color: var(--fia-cha, #75A365);
}

/* Esconde o heading genérico "Ver Perfil" do corpo (já há o cabeçalho + abas) */
#item-body .screen-heading.view-profile-screen { display: none; }

/* Corpo do perfil em cards seccionados */
.fia-profile { display: flex; flex-direction: column; gap: 16px; }
.fia-pf-card {
	background: var(--fia-branco, #fff);
	border: 1px solid rgba(8, 71, 52, .09);
	border-radius: 16px;
	padding: 20px 22px;
	box-shadow: 0 1px 2px rgba(8, 71, 52, .04);
}
.fia-pf-title {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0 0 14px;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .09em;
	text-transform: uppercase;
	color: var(--fia-profundo, #084734);
}
.fia-pf-title i { color: var(--fia-cha, #75A365); font-size: 14px; }

.fia-pf-lead {
	margin: 0;
	font-size: 19px;
	font-weight: 700;
	letter-spacing: -.02em;
	line-height: 1.25;
	color: var(--fia-profundo, #084734);
}
.fia-pf-sub { margin: 5px 0 0; font-size: 15px; line-height: 1.45; color: var(--fia-cinza, #696A65); }

/* Centros de Conhecimento — chips da marca */
.fia-chips { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.fia-chip {
	display: inline-flex;
	align-items: center;
	padding: 7px 14px;
	background: var(--fia-sereno, #E9F2DC);
	color: var(--fia-profundo, #084734);
	border: 1px solid rgba(8, 71, 52, .10);
	border-radius: 999px;
	font-size: 13.5px;
	font-weight: 600;
	letter-spacing: -.01em;
	line-height: 1.1;
}

/* Contato & Redes */
.fia-pf-contact { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 11px; }
.fia-pf-contact li { display: flex; align-items: center; gap: 12px; font-size: 15px; color: var(--fia-profundo, #084734); }
.fia-pf-contact li > i {
	flex: 0 0 auto;
	width: 34px; height: 34px;
	border-radius: 10px;
	display: inline-flex; align-items: center; justify-content: center;
	background: var(--fia-sereno, #E9F2DC);
	color: var(--fia-profundo, #084734);
	font-size: 14px;
}
.fia-pf-contact a { color: var(--fia-azul, #142D59); font-weight: 600; text-decoration: none; }
.fia-pf-contact a:hover { text-decoration: underline; }

.fia-pf-empty { color: var(--fia-cinza, #696A65); font-style: italic; }

/* ---- Widget "Próximos Aniversários" — cards verde profundo (estilo convite) ---- */
.widget_woffice_birthdays .birthdays-list {
	list-style: none; margin: 0; padding: 0;
	display: flex; flex-direction: column; gap: 10px;
}
.widget_woffice_birthdays .birthdays-list li {
	position: relative; overflow: hidden;
	height: auto !important; min-height: 0 !important;
	display: flex !important; align-items: center; gap: 9px;
	margin: 0 !important; padding: 11px 12px !important;
	background: var(--fia-profundo) !important;
	border: 0 !important; border-radius: 16px !important;
	box-shadow: 0 6px 16px -7px rgba(8, 71, 52, .55), 0 2px 4px -2px rgba(8, 71, 52, .4) !important;
}
.widget_woffice_birthdays .birthdays-list li::after {
	content: ""; position: absolute; top: -38px; right: -38px;
	width: 78px; height: 78px; border-radius: 50%; pointer-events: none;
	background: radial-gradient(circle at 30% 70%, rgba(195, 250, 117, .18), rgba(195, 250, 117, 0) 70%);
}
.widget_woffice_birthdays .birthdays-list li > a { flex: 0 0 auto; line-height: 0; position: relative; z-index: 1; }
.widget_woffice_birthdays .birthdays-list img.avatar {
	width: 36px !important; height: 36px !important; min-width: 36px;
	border-radius: 50% !important; object-fit: cover; padding: 0; border: 0 !important;
	box-shadow: 0 0 0 3px rgba(195, 250, 117, .18);
}
.widget_woffice_birthdays .birthday-item-content {
	position: relative; z-index: 1;
	display: flex !important; flex-direction: column; align-items: flex-start;
	font-size: 0 !important; line-height: 1.1; min-width: 0; padding-top: 1px;
}
.widget_woffice_birthdays .birthday-item-content strong {
	font-size: 12px !important; font-weight: 600; letter-spacing: -.03em;
	color: #FFFFFF !important; line-height: 1.12; margin-bottom: 4px; white-space: nowrap;
}
.widget_woffice_birthdays .birthday-item-content i {
	font-style: normal; font-size: 10.5px !important; font-weight: 500;
	color: var(--fia-solido) !important; margin: 0 0 8px 0; letter-spacing: .01em;
}
.widget_woffice_birthdays .birthday-item-content .badge {
	display: inline-flex; align-items: center; gap: 4px;
	font-size: 11.5px !important; font-weight: 700; letter-spacing: -.01em;
	background: var(--fia-decidido) !important; color: var(--fia-profundo) !important;
	border-radius: 999px; padding: 4px 10px; white-space: nowrap; text-transform: none;
}
.widget_woffice_birthdays .birthday-item-content .badge::before {
	content: "\1F382"; font-size: 11px; -webkit-font-smoothing: auto;
}
