:root {
	--genealogica-forum-accent: #2f6f68;
	--genealogica-forum-accent-dark: #245a54;
	--genealogica-forum-accent-soft: #eaf3f1;
	--genealogica-forum-accent-border: #bfd5d1;
	--genealogica-gold: #a1904f;
	--genealogica-gold-soft: #efe9d3;
	--genealogica-ink: #111827;
	--genealogica-muted: #6b7280;
	--genealogica-border: #dbe3e1;
	--genealogica-page: #f3f4f6;
	--genealogica-link: #21655e;
	--genealogica-link-hover: #163f3b;
	--genealogica-focus: rgba(47, 111, 104, 0.28);
	--genealogica-font-sans: "Open Sans", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	--genealogica-shell: min(calc(100% - 2rem), 72rem);
	--genealogica-green: var(--genealogica-forum-accent);
	--genealogica-green-dark: var(--genealogica-forum-accent-dark);
	--genealogica-green-soft: var(--genealogica-forum-accent-soft);
}

html,
body {
	background: var(--genealogica-page);
}

html {
	scroll-behavior: smooth;
}

body {
	font-family: var(--genealogica-font-sans);
	letter-spacing: 0;
}

body a {
	color: var(--genealogica-link);
}

body a:hover,
body a:focus {
	color: var(--genealogica-link-hover);
}

body button,
body input,
body select,
body textarea,
body .dropmenu,
body #top_info,
body h3.catbg,
body .titlebg,
body .subbg {
	font-family: var(--genealogica-font-sans);
}

.genealogica-top-anchor {
	display: block;
	height: 0;
	scroll-margin-top: 0;
}

.genealogica-app-nav {
	position: sticky;
	top: 0;
	z-index: 100;
	border-bottom: 1px solid rgba(229, 231, 235, 0.6);
	background: rgba(255, 255, 255, 0.9);
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.06);
	backdrop-filter: blur(12px);
}

.genealogica-primary-bar,
.genealogica-mobile-panel-inner,
#wrapper,
#footer .inner_wrap {
	box-sizing: border-box;
	width: var(--genealogica-shell);
	max-width: 72rem;
	margin-right: auto;
	margin-left: auto;
}

.genealogica-primary-bar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.5rem;
	min-height: 3.5rem;
	box-sizing: border-box;
}

.genealogica-brand {
	display: inline-flex;
	align-items: center;
	flex: 0 0 auto;
	border-radius: 6px;
	line-height: 1;
}

.genealogica-brand img {
	display: block;
	height: 2rem;
	width: auto;
	max-width: 9rem;
}

.genealogica-desktop-nav {
	display: none;
	align-items: center;
	gap: 0;
	min-width: 0;
	margin-left: 1.5rem;
	margin-right: auto;
}

.genealogica-nav-group {
	position: relative;
}

.genealogica-nav-trigger {
	display: inline-flex;
	align-items: center;
	gap: 0.375rem;
	min-height: 2.5rem;
	padding: 0 0.75rem;
	border: 0;
	border-radius: 6px;
	background: transparent;
	box-shadow: none;
	color: #6b7280;
	font-family: inherit;
	font-size: 15px;
	font-weight: 400;
	line-height: 1;
	cursor: pointer;
	transition: color 150ms ease, background-color 150ms ease;
}

.genealogica-nav-trigger:hover,
.genealogica-nav-group.is-open .genealogica-nav-trigger {
	color: #374151;
}

.genealogica-nav-trigger:focus,
.genealogica-mobile-toggle:focus,
.genealogica-brand:focus,
.genealogica-nav-item:focus,
.genealogica-mobile-group-trigger:focus,
.genealogica-mobile-link:focus,
.genealogica-primary-actions a:focus,
.genealogica-primary-actions select:focus {
	outline: none;
}

.genealogica-brand:focus-visible,
.genealogica-nav-trigger:focus-visible,
.genealogica-nav-item:focus-visible,
.genealogica-mobile-toggle:focus-visible,
.genealogica-mobile-group-trigger:focus-visible,
.genealogica-mobile-link:focus-visible,
.genealogica-primary-actions a:focus-visible,
.genealogica-primary-actions select:focus-visible {
	outline: 2px solid var(--genealogica-focus);
	outline-offset: 2px;
}

.genealogica-nav-chevron {
	width: 1rem;
	height: 1rem;
	transition: transform 200ms ease;
}

.genealogica-nav-group.is-open .genealogica-nav-chevron {
	transform: rotate(180deg);
}

.genealogica-nav-dropdown[hidden],
.genealogica-mobile-panel[hidden],
.genealogica-mobile-group-panel[hidden] {
	display: none;
}

.genealogica-nav-dropdown {
	position: absolute;
	right: 0;
	top: 100%;
	z-index: 120;
	width: 12rem;
	margin-top: 0.5rem;
	border-radius: 6px;
	box-shadow: 0 10px 15px -3px rgba(15, 23, 42, 0.14), 0 4px 6px -4px rgba(15, 23, 42, 0.14);
	transform-origin: top right;
}

.genealogica-nav-dropdown-surface {
	overflow: hidden;
	border: 1px solid rgba(229, 231, 235, 0.85);
	border-radius: 6px;
	background: #fff;
	padding: 0.25rem 0;
}

.genealogica-nav-item,
.genealogica-mobile-link {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	width: 100%;
	box-sizing: border-box;
	color: #374151;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.5rem;
	text-align: start;
	text-decoration: none;
	transition: color 150ms ease, background-color 150ms ease;
}

.genealogica-nav-item {
	padding: 0.5rem 1rem;
}

.genealogica-nav-item:hover,
.genealogica-nav-item:focus,
.genealogica-nav-item.active {
	background: #f3f4f6;
	color: #374151;
	text-decoration: none;
}

.genealogica-nav-standalone {
	width: auto;
	min-height: 2.5rem;
	padding: 0 0.75rem;
	border-radius: 6px;
	color: #6b7280;
	font-weight: 400;
	line-height: 1;
}

.genealogica-nav-standalone:hover,
.genealogica-nav-standalone:focus,
.genealogica-nav-standalone.active {
	background: transparent;
	box-shadow: none;
	color: #374151;
}

.genealogica-external-mark {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 0.875rem;
	height: 0.875rem;
	flex: 0 0 auto;
	color: #9ca3af;
	font-size: 0.8rem;
	line-height: 1;
}

.genealogica-primary-actions {
	display: inline-flex;
	align-items: center;
	justify-content: flex-end;
	gap: 0.5rem;
	flex: 0 0 auto;
}


.genealogica-login-button,
.genealogica-forum-pill {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 2.5rem;
	padding: 0 0.75rem;
	border-radius: 8px;
	background: linear-gradient(90deg, #22c55e, #16a34a, #15803d);
	color: #f9fafb !important;
	font-size: 15px;
	font-weight: 400;
	text-decoration: none;
	transition: filter 150ms ease;
}

.genealogica-forum-pill {
	background: var(--genealogica-forum-accent);
}

.genealogica-login-button:hover,
.genealogica-forum-pill:hover {
	filter: brightness(0.96);
	color: #fff !important;
	text-decoration: none;
}

.genealogica-mobile-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.5rem;
	height: 2.5rem;
	border: 0;
	border-radius: 8px;
	background: transparent;
	box-shadow: none;
	color: #6b7280;
	cursor: pointer;
	transition: color 150ms ease, background-color 150ms ease;
}

.genealogica-mobile-toggle:hover {
	background: #f3f4f6;
	color: #374151;
}

.genealogica-mobile-icon {
	display: block;
	width: 1.25rem;
	height: 1.25rem;
}

.genealogica-mobile-icon-close {
	display: none;
}

.genealogica-app-nav.is-mobile-open .genealogica-mobile-icon-open {
	display: none;
}

.genealogica-app-nav.is-mobile-open .genealogica-mobile-icon-close {
	display: block;
}

.genealogica-mobile-toggle .screenreader {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.genealogica-mobile-panel {
	max-height: calc(100svh - 3.5rem);
	overflow-y: auto;
	border-top: 1px solid #e5e7eb;
	background: #fff;
}

.genealogica-mobile-panel-inner {
	padding: 0.5rem 0;
}

.genealogica-mobile-groups {
	margin: 0;
	padding: 0;
	list-style: none;
}

.genealogica-mobile-group + .genealogica-mobile-group,
.genealogica-mobile-standalone {
	border-top: 1px solid #f3f4f6;
}

.genealogica-mobile-group-trigger {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	width: 100%;
	padding: 0.85rem 0;
	min-height: 3rem;
	border: 0;
	background: transparent;
	color: #374151;
	font-family: inherit;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.25rem;
	text-align: left;
	cursor: pointer;
}

.genealogica-mobile-chevron {
	width: 1rem;
	height: 1rem;
	color: #9ca3af;
	transition: transform 150ms ease;
}

.genealogica-mobile-group-trigger[aria-expanded="true"] .genealogica-mobile-chevron {
	transform: rotate(180deg);
}

.genealogica-mobile-group-panel {
	padding: 0 0 0.5rem 1.5rem;
}

.genealogica-mobile-link {
	border-radius: 6px;
	padding: 0.5rem 0.625rem;
	color: #4b5563;
	font-size: 0.875rem;
}

.genealogica-mobile-link:hover,
.genealogica-mobile-link:focus,
.genealogica-mobile-link.active {
	background: #f9fafb;
	color: #111827;
	text-decoration: none;
}

#wrapper {
	margin-top: 1rem;
	border-color: var(--genealogica-border);
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.06);
}

#upper_section,
#inner_section,
#content_section {
	background: #fff;
}

#inner_section > #top_section.genealogica-forum-welcome {
	margin: -12px -10px 12px;
	border: 0;
	border-bottom: 1px solid var(--genealogica-border);
	border-radius: 6px 6px 0 0;
	box-shadow: none;
	background: #fff;
}

#inner_section > #top_section.genealogica-forum-welcome .inner_wrap {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5rem 0.75rem;
	width: auto;
	max-width: none;
	min-height: 0;
	margin: 0;
	padding: 10px;
}

#inner_section > #top_section.genealogica-forum-welcome .floatleft,
#inner_section > #top_section.genealogica-forum-welcome .floatright {
	float: none;
}

#inner_section > #top_section.genealogica-forum-welcome ul {
	margin: 0;
}

#top_info {
	display: flex;
	flex: 1 1 auto;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.25rem;
	min-width: min(100%, 18rem);
	padding: 0;
}

#top_info > li {
	float: none;
}

#top_info > li > a,
.dropmenu li a {
	text-shadow: none;
}


#search_form {
	display: flex;
	flex: 0 1 27rem;
	align-items: center;
	gap: 0.5rem;
	margin-left: auto;
	padding: 0;
	white-space: nowrap;
}

#search_form input[type="search"] {
	flex: 1 1 12rem;
	min-width: 10rem;
}

#search_form select {
	flex: 0 0 auto;
	max-width: 10rem;
}

#search_form .button {
	flex: 0 0 auto;
}

body .cat_bar {
	border-color: var(--genealogica-forum-accent-dark);
	background: var(--genealogica-forum-accent);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.14);
	text-shadow: none;
}

body .cat_bar .catbg,
body .cat_bar .catbg a,
body .cat_bar h3,
body .cat_bar h3 a {
	color: #fff;
	text-shadow: none;
}

body .cat_bar .desc,
body .cat_bar .desc a {
	color: rgba(255, 255, 255, 0.92);
}

.dropmenu a.active,
#top_info a.active {
	border-color: var(--genealogica-forum-accent-dark);
	background: var(--genealogica-forum-accent);
	color: #fff;
	font-weight: 600;
	text-shadow: none;
}

.dropmenu > li:hover > a,
.dropmenu > li > a:focus,
#top_info > li:hover > a,
#top_info > li > a:focus,
#top_info > li > a.open {
	border-color: var(--genealogica-forum-accent-dark);
	background: var(--genealogica-forum-accent);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.14);
	color: #fff;
	text-decoration: none;
	text-shadow: none;
}

.dropmenu li a.active:hover,
.dropmenu li:hover a.active,
#top_info a.active:hover {
	border-color: var(--genealogica-forum-accent-dark);
	background: var(--genealogica-forum-accent-dark);
	color: #fff;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);
	text-shadow: none;
}

.dropmenu li ul,
.top_menu {
	border-color: var(--genealogica-forum-accent-border);
	box-shadow: 0 8px 18px rgba(15, 23, 42, 0.14);
}

.dropmenu li:hover li a,
.dropmenu li li a {
	color: var(--genealogica-link);
}

.dropmenu li li:hover > a,
.dropmenu li li a:focus,
.dropmenu li li a:hover {
	border-color: var(--genealogica-forum-accent-border);
	border-top-color: #d9e8e5;
	background: #f4f8f7;
	color: var(--genealogica-link-hover);
}

.dropmenu li li a.chosen {
	font-weight: 600;
	color: var(--genealogica-link-hover);
}

.title_bar {
	border-top-color: rgba(161, 144, 79, 0.5);
	border-bottom-color: var(--genealogica-forum-accent);
}

.titlebg a,
.subbg a {
	color: #424f4d;
}

.windowbg,
.roundframe,
.information,
.navigate_section {
	border-color: var(--genealogica-border);
}

.information,
.roundframe {
	background: #f8faf9;
}

.button_submit,
input[type="submit"].button {
	border-color: var(--genealogica-forum-accent-dark);
	background: var(--genealogica-forum-accent);
	color: #fff;
	text-shadow: none;
}

.button_submit:hover,
input[type="submit"].button:hover {
	background: var(--genealogica-forum-accent-dark);
	color: #fff;
}

#footer {
	background: var(--genealogica-forum-accent-dark);
}

@media (min-width: 1024px) {
	.genealogica-primary-bar {
		min-height: 4rem;
	}

	.genealogica-brand img {
		height: 2.25rem;
	}

	.genealogica-desktop-nav {
		display: flex;
	}

	.genealogica-mobile-toggle {
		display: none;
	}
}

@media (max-width: 720px) {
	:root {
		--genealogica-shell: 100%;
	}

	.genealogica-primary-bar,
	.genealogica-mobile-panel-inner {
		width: calc(100% - 2rem);
	}

	#wrapper {
		margin-top: 0;
	}

	#inner_section > #top_section.genealogica-forum-welcome {
		margin-right: -10px;
		margin-left: -10px;
		border-radius: 0;
	}

	#inner_section > #top_section.genealogica-forum-welcome .inner_wrap {
		gap: 0.5rem;
	}

	#top_info {
		order: 1;
		flex: 1 1 100%;
		justify-content: flex-end;
		min-width: 0;
	}

	#inner_section > #top_section.genealogica-forum-welcome ul.floatleft:not(#top_info) {
		order: 1;
		flex: 1 1 100%;
	}

	#search_form {
		order: 2;
		flex: 1 1 100%;
		width: 100%;
		margin-left: 0;
	}

	#search_form input[type="search"] {
		flex: 1 1 auto;
		min-width: 0;
	}

	#search_form select {
		max-width: 9rem;
	}
}

@media (max-width: 420px) {
	.genealogica-primary-bar {
		width: calc(100% - 1rem);
		gap: 0.25rem;
	}

	.genealogica-brand img {
		max-width: 7.75rem;
	}

	.genealogica-login-button {
		min-height: 2.25rem;
		padding-right: 0.45rem;
		padding-left: 0.45rem;
		font-size: 0.875rem;
	}

	.genealogica-mobile-toggle {
		width: 2.25rem;
		height: 2.25rem;
	}

	.genealogica-primary-actions {
		gap: 0.25rem;
	}

	#search_form {
		flex-wrap: wrap;
	}

	#search_form input[type="search"] {
		flex-basis: calc(100% - 10rem);
	}
}
/* Genealogica refinements 2026-06-29 */
.genealogica-mobile-group-label,
.genealogica-mobile-link-label {
	display: flex;
	align-items: center;
	gap: 0.625rem;
	min-width: 0;
}

.genealogica-mobile-leading-icon {
	width: 1rem;
	height: 1rem;
	flex: 0 0 auto;
	color: #9ca3af;
}

.genealogica-mobile-group-trigger,
.genealogica-mobile-link,
.genealogica-mobile-standalone,
.genealogica-mobile-standalone.active {
	border-radius: 0;
	box-shadow: none;
	text-shadow: none;
}

.genealogica-mobile-group-trigger:hover,
.genealogica-mobile-group-trigger:focus {
	background: transparent;
	color: #111827;
}

.genealogica-mobile-standalone-item {
	border-top: 1px solid #f3f4f6;
}

.genealogica-mobile-standalone {
	border-top: 0;
}

.genealogica-mobile-standalone,
.genealogica-mobile-standalone:hover,
.genealogica-mobile-standalone:focus,
.genealogica-mobile-standalone.active,
.genealogica-mobile-standalone.active:hover,
.genealogica-mobile-standalone.active:focus {
	padding: 0.85rem 0;
	min-height: 3rem;
	background: transparent;
	color: #374151;
	font-weight: 600;
	text-decoration: none;
}

.genealogica-mobile-standalone:hover,
.genealogica-mobile-standalone:focus {
	color: #111827;
}

#inner_section > #top_section.genealogica-forum-welcome #languages_form {
	display: flex;
	align-items: center;
	flex: 0 0 auto;
	margin: 0 0 0 auto;
	padding: 0;
}

#inner_section > #top_section.genealogica-forum-welcome #languages_form select {
	width: 6.75rem;
	min-width: 6.75rem;
	max-width: 6.75rem;
}


#profile_menu,
#pm_menu,
#alerts_menu {
	max-width: min(25rem, calc(100vw - 2rem));
}

.button:hover,
.button:focus,
.quickbuttons > li:hover > a,
.quickbuttons > li > a:focus {
	border-color: #b9ccc8 #d8e2e0 #d8e2e0 #c7d6d3;
	box-shadow: none;
	color: var(--genealogica-link-hover);
}

.button.active,
.button.active:hover,
.button.active:focus {
	border-color: var(--genealogica-forum-accent-dark);
	background: var(--genealogica-forum-accent);
	box-shadow: none;
	color: #fff;
	font-weight: 700;
	text-shadow: none;
}

.windowbg.sticky {
	background: #dce9e6;
}

.windowbg.sticky.locked {
	background: #e6e1d2;
}

@media (max-width: 720px) {
	#top_info {
		flex: 0 1 calc(100% - 7.5rem);
		justify-content: flex-start;
		max-width: calc(100% - 7.5rem);
		min-width: 0;
		margin-right: auto;
	}

	#inner_section > #top_section.genealogica-forum-welcome ul.floatleft:not(#top_info) {
		flex: 0 1 calc(100% - 7.5rem);
		max-width: calc(100% - 7.5rem);
		min-width: 0;
		margin-right: auto;
	}

	#inner_section > #top_section.genealogica-forum-welcome #languages_form {
		order: 1;
		flex: 0 0 6.75rem;
		margin-left: auto;
	}
	
	#inner_section > #top_section.genealogica-forum-welcome .inner_wrap {
		align-items: flex-start;
	}

	#inner_section > #top_section.genealogica-forum-welcome #languages_form {
		align-self: flex-start;
	}

	#profile_menu,
	#pm_menu,
	#alerts_menu {
		max-width: calc(100vw - 2rem);
	}
}

