/* Corpfront: whole-site styling. Works with GeneratePress and block themes (e.g. Twenty Twenty-Five). */

/*
 * Repaint the theme's own colour palette, so every part of the theme that
 * uses it turns dark too: GeneratePress global colours and block-theme presets.
 */
body.cf-dark {
	--base: #1e2c3d;
	--base-2: #0a0f16;
	--base-3: #111a25;
	--contrast: #d6dee8;
	--contrast-2: #8a99ab;
	--contrast-3: #2a3a4d;
	--accent: var(--cf-accent, #ff6a00);
	--wp--preset--color--base: #0a0f16;
	--wp--preset--color--contrast: #d6dee8;
	--wp--preset--color--accent-1: var(--cf-accent, #ff6a00);
	--wp--preset--color--accent-4: #8a99ab;
	--wp--preset--color--accent-5: #182433;
	--wp--preset--color--accent-6: #2a3a4d;
	--wp--preset--color--white: #111a25;
	--wp--preset--color--black: #d6dee8;
}
html:has(body.cf-dark) { background-color: #0a0f16; }
html body.cf-dark {
	background-color: #0a0f16 !important;
	background-image:
		radial-gradient(1200px 600px at 85% -10%, rgba(255, 106, 0, .09), transparent 60%),
		radial-gradient(900px 500px at -10% 30%, rgba(52, 96, 160, .12), transparent 60%) !important;
	background-attachment: fixed;
	color: var(--nx-text, #d6dee8);
	font-family: var(--nx-body, "Barlow", system-ui, sans-serif);
}
/* Theme wrappers that paint their own white background. */
body.cf-dark .site,
body.cf-dark #page,
body.cf-dark .wp-site-blocks,
body.cf-dark .site-main,
body.cf-dark .content-area,
body.cf-dark .entry-content,
body.cf-dark .wp-site-blocks > main,
body.cf-dark .wp-site-blocks .has-base-background-color { background-color: transparent !important; color: var(--nx-text, #d6dee8); }
body.cf-dark .wp-site-blocks header.wp-block-template-part,
body.cf-dark .wp-site-blocks > header { background-color: rgba(10, 15, 22, .85); border-bottom: 1px solid #2a3a4d; }
body.cf-dark .wp-block-navigation__responsive-container.is-menu-open { background-color: #111a25 !important; color: #d6dee8 !important; }
body.cf-dark :where(a:not(.eck a):not(.cf a)) { color: var(--cf-accent, #ff6a00); }
body.cf-dark :where(a:not(.eck a):not(.cf a)):hover { color: #fff; }
body.cf-dark h1, body.cf-dark h2, body.cf-dark h3, body.cf-dark h4, body.cf-dark h5, body.cf-dark h6,
body.cf-dark .entry-title, body.cf-dark .entry-title a {
	color: #fff; font-family: var(--nx-hud, "Rajdhani", sans-serif); font-weight: 700;
}

/* Header and menu */
body.cf-dark .site-header {
	background: rgba(10, 15, 22, .85) !important;
	-webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
	border-bottom: 1px solid var(--nx-frame, #2a3a4d);
	position: sticky; top: 0; z-index: 100;
}
body.cf-dark.admin-bar .site-header { top: 32px; }
body.cf-dark .main-navigation,
body.cf-dark .main-navigation ul ul { background: transparent !important; }
body.cf-dark .main-navigation ul ul { background: var(--nx-plate, #182433); border: 1px solid var(--nx-frame, #2a3a4d); }
body.cf-dark .main-title, body.cf-dark .site-title { font-family: var(--nx-hud, "Rajdhani", sans-serif); font-weight: 700; font-size: 1.6em; }
body.cf-dark .main-title a, body.cf-dark .site-title a { color: #fff; text-decoration: none; }
body.cf-dark .site-description { color: var(--nx-muted, #8a99ab); }
body.cf-dark .main-navigation .main-nav ul li a,
body.cf-dark .menu-toggle,
body.cf-dark .main-navigation .menu-bar-items {
	color: var(--nx-muted, #8a99ab); font-family: var(--nx-hud, "Rajdhani", sans-serif); font-weight: 600; font-size: 1.12em; letter-spacing: .02em;
}
body.cf-dark .main-navigation .main-nav ul li:hover > a,
body.cf-dark .main-navigation .main-nav ul li.current-menu-item > a,
body.cf-dark .main-navigation .main-nav ul li[class*="current-menu-"] > a { color: #fff; background: transparent; box-shadow: inset 0 -2px 0 var(--cf-accent, #ff6a00); }
body.cf-dark .menu-toggle { background: transparent; }

/* Content containers become see-through so the page background shows. */
body.cf-dark .site-content,
body.cf-dark.separate-containers .inside-article,
body.cf-dark.separate-containers .comments-area,
body.cf-dark.separate-containers .page-header,
body.cf-dark.one-container .container,
body.cf-dark.one-container .site-content,
body.cf-dark.separate-containers .paging-navigation,
body.cf-dark .inside-article,
body.cf-dark .inside-page-header,
body.cf-dark .container.grid-container,
body.cf-dark .site.grid-container { background: transparent !important; color: var(--nx-text, #d6dee8); }
body.cf-dark .sidebar .widget,
body.cf-dark .footer-widgets { background: var(--nx-hull, #111a25); color: var(--nx-text, #d6dee8); }
body.cf-dark .site-footer,
body.cf-dark .site-info { background: transparent !important; color: var(--nx-muted, #8a99ab); border-top: 1px solid var(--nx-frame, #2a3a4d); }

body.cf-dark input, body.cf-dark textarea, body.cf-dark select {
	background: var(--nx-void, #0a0f16); color: #fff; border-color: var(--nx-frame, #2a3a4d);
}
body.cf-dark button, body.cf-dark .button, body.cf-dark input[type="submit"] {
	background: var(--cf-accent, #ff6a00); color: #160a00; font-family: var(--nx-hud, "Rajdhani", sans-serif); font-weight: 700;
}
body.cf-dark ::selection { background: var(--cf-accent, #ff6a00); color: #160a00; }

/* Corpfront pages show their own big titles, so hide the theme's. */
body.cf-is-home .entry-header,
body.cf-is-home .page-header,
body.cf-own-title .entry-header,
body.cf-is-home .wp-block-post-title,
body.cf-own-title .wp-block-post-title { display: none; }
body.cf-is-home .inside-article { padding-top: 8px; }

/* Corpfront pages use the full width (the sidebar is switched off in PHP for GeneratePress). */
body.cf-dark.no-sidebar .site-main,
body.cf-dark.no-sidebar .content-area { width: 100%; margin-left: 0; margin-right: 0; }

/* Regular page and post content (Rules, news posts) */
body.cf-dark .entry-content { line-height: 1.65; }
body.cf-dark .entry-content > h2 { font-size: 1.9em; margin: 1.6em 0 .5em; }
body.cf-dark .entry-content > ol, body.cf-dark .entry-content > ul { padding-left: 1.4em; }
body.cf-dark .entry-content > ol li, body.cf-dark .entry-content > ul li { margin-bottom: .55em; padding-left: .2em; }
body.cf-dark .entry-content > ol li::marker { color: var(--cf-accent, #ff6a00); font-family: var(--nx-hud, "Rajdhani", sans-serif); font-weight: 700; }
body.cf-dark .entry-content > ul li::marker { color: var(--cf-accent, #ff6a00); }
body.cf-dark .entry-meta, body.cf-dark .entry-meta a { color: var(--nx-muted, #8a99ab); }
body.cf-dark .main-navigation .menu-bar-items { display: flex; align-items: center; }
