/**
 * Optional dark shell.
 *
 * Loaded only on pages that contain an Orama shortcode, and only when the
 * setting is on. It paints the page background and the theme's own typography
 * to match the plugin's cards, so they don't float on a white theme.
 *
 * Written to work with Astra, Twenty Twenty-Five and most block themes without
 * targeting any of them by name — everything hangs off `body` and generic
 * WordPress content classes. If your theme fights it, turn the setting off and
 * style the shell in the customiser instead.
 */

body.orama-shell {
	background-color: #0a142b;
	color: #f2f5fb;
}

body.orama-shell .site-content,
body.orama-shell .entry-content,
body.orama-shell .wp-site-blocks,
body.orama-shell #content,
body.orama-shell #primary,
body.orama-shell .ast-container,
body.orama-shell main {
	background-color: transparent;
}

body.orama-shell h1,
body.orama-shell h2,
body.orama-shell h3,
body.orama-shell h4,
body.orama-shell p,
body.orama-shell li,
body.orama-shell dd,
body.orama-shell dt,
body.orama-shell td,
body.orama-shell th,
body.orama-shell label,
body.orama-shell strong {
	color: #f2f5fb;
}

body.orama-shell a:not(.orama-btn):not(.orama-cat):not(.orama-link) {
	color: #d6b36a;
}

body.orama-shell .entry-title,
body.orama-shell .page-title {
	color: #f2f5fb;
}

/* The theme header and footer keep their own styling, but get the brand
   background so the page reads as one surface. */
body.orama-shell .site-header,
body.orama-shell .ast-primary-header-bar,
body.orama-shell .site-footer,
body.orama-shell .ast-footer-overlay {
	background-color: #101d3d;
	border-color: rgba(255, 255, 255, .09);
}

body.orama-shell .site-header a,
body.orama-shell .site-footer a,
body.orama-shell .main-navigation a,
body.orama-shell .ast-builder-menu a {
	color: #f2f5fb;
}

body.orama-shell .site-header a:hover,
body.orama-shell .main-navigation a:hover {
	color: #d6b36a;
}

/* Astra's default content wrapper has a white card; neutralise it. */
body.orama-shell .ast-separate-container .ast-article-single,
body.orama-shell .ast-separate-container .ast-article-post,
body.orama-shell .ast-separate-container #primary {
	background-color: transparent;
	box-shadow: none;
}

/* Forms the theme renders (login, comments) shouldn't stay white-on-white. */
body.orama-shell input[type="text"],
body.orama-shell input[type="email"],
body.orama-shell input[type="password"],
body.orama-shell input[type="number"],
body.orama-shell input[type="tel"],
body.orama-shell input[type="url"],
body.orama-shell select,
body.orama-shell textarea {
	background-color: #16264c;
	border-color: rgba(255, 255, 255, .12);
	color: #f2f5fb;
}

body.orama-shell ::placeholder {
	color: #93a2c0;
}

/* ---------------------------------------------------------------------------
   Theme overrides.

   Astra (like most themes) underlines every link inside the content area with
   a `.entry-content a` rule. That is right for prose and wrong for a card
   grid, where the whole card is a link. These selectors are one step more
   specific than the theme's, which is enough to win without resorting to
   !important — so a site owner can still override them from the customiser.
   --------------------------------------------------------------------------- */

body.orama-shell .orama a {
	text-decoration: none;
}

body.orama-shell .orama a.orama-link:hover,
body.orama-shell .orama .orama-table a:hover {
	text-decoration: underline;
}

body.orama-shell .orama .orama-btn,
body.orama-shell .orama .orama-btn:hover,
body.orama-shell .orama .orama-btn:focus {
	text-decoration: none;
}

/* Astra puts a max-width on content that is fine for articles and tight for a
   market grid. Widen it only on Orama pages. */
body.orama-shell .ast-container,
body.orama-shell .site-content .ast-container {
	max-width: 1240px;
}

/* Keep the theme's own H1 from shouting over the market titles. */
body.orama-shell .entry-title,
body.orama-shell .page-title {
	font-size: 1.9rem;
	margin-bottom: .6em;
}

/* Astra renders form controls with a light background even inside a dark
   section; the plugin's own inputs already handle themselves, this covers the
   theme's login and comment forms. */
body.orama-shell .ast-single-post .entry-content a:not(.orama-btn) {
	color: #d6b36a;
}
