/*
Theme Name: GeeKPress Forest
Theme URI: https://pluginpress.net/
Author: Clerk Software
Author URI: https://pluginpress.net/
Description: A theatrical movie & TV database theme for the GeeKPress plugin. "A spotlight on a gold-on-evergreen forest stage" — full-width stage bands with curtain-scallop edges, soft limelight beams, playbill serif titles and numbered ACT section legends over a deep forest ground with gold and champagne accents. Breaks the plugin's default movie-page skeleton in two layers (template_include @99 + structural geekui skins).
Version: 1.0.2
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 8.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: geekpress-forest
Tags: dark, grid-layout, custom-menu, custom-logo, translation-ready
*/

/* =========================================================================
   LIMELIGHT — base tokens + reset.
   Concept: "A spotlight on an gold-on-evergreen stage" — theatrical stage bands,
   curtain scallops, limelight beams; gold + champagne over deep emerald.
   Layout system lives in assets/css/theme.css; plugin skins in geekui-*.css.
   ========================================================================= */

:root {
	/* ground (gold-on-evergreen stage) */
	--lml-bg: #0a0f0b;
	--lml-bg-2: #0d1410;
	--lml-surface: #081311;
	--lml-surface-2: #0e1b17;
	--lml-surface-3: #1a2a21;

	/* hairlines */
	--lml-line: #3a3920;
	--lml-line-2: #564f2a;
	--lml-line-hot: #3f7d5d;

	/* ink */
	--lml-text: #ece5d0;
	--lml-text-dim: #bdb89c;
	--lml-text-mute: #83805f;

	/* accents */
	--lml-lime: #d4a72e;     /* antique-gold limelight */
	--lml-lime-2: #ecd9a0;
	--lml-lime-deep: #97781d;
	--lml-cream: #f0e3c4;    /* champagne */
	--lml-cream-dim: #cdbf9c;
	--lml-hot: #cf8b3a;      /* salmon */

	/* spotlight */
	--lml-beam: radial-gradient(60% 100% at 50% 0%, rgba(236, 217, 160, 0.14), transparent 70%);
	--lml-glow: rgba(212, 167, 46, 0.35);

	/* shape */
	--lml-radius: 6px;
	--lml-radius-lg: 10px;
	--lml-shadow: 0 14px 34px rgba(0, 0, 0, 0.45), 0 0 18px rgba(212, 167, 46, 0.10);

	/* type */
	--lml-font-display: 'DM Serif Display', 'Georgia', serif;
	--lml-font-base: 'Figtree', system-ui, sans-serif;
	--lml-font-mono: 'Space Mono', ui-monospace, monospace;

	/* ── PALETTE ENGINE role tokens (2026-06-12) ─────────────────────
	   The whole theme (chrome + geekui vars + skins) reads ONLY these;
	   palettes.css re-binds them per body.lml-palette-{slug}. These
	   :root values ARE the default palette: MIRKWOOD. */
	--lml-deep: #060a07;
	--lml-card: #0a1512;
	--lml-card-2: #102019;
	--lml-card-alt: #0c1714;
	--lml-line-strong: #8a7434;
	--lml-line-mid: #4a452a;
	--lml-cream-bright: #fff5dd;
	--lml-hot-2: #e2b066;
	--lml-danger: #e06a47;
	--lml-tone-good: #e8c06b;
	--lml-tone-great: #cfc068;
	--lml-ink-on-gold: #241a06;
	--lml-btn-hi: #e7c455;
	--lml-btn-lo: #b3871e;

	/* rgba() families — variants swap the triplets */
	--lml-bg-rgb: 10, 15, 11;
	--lml-surface-rgb: 8, 19, 17;
	--lml-deep-rgb: 6, 10, 7;
	--lml-lime-rgb: 212, 167, 46;
	--lml-lime2-rgb: 236, 217, 160;
	--lml-cream-rgb: 240, 227, 196;
	--lml-hot-rgb: 207, 139, 58;
}

/* ---- reset ---- */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
	margin: 0;
	background:
		radial-gradient(1100px 480px at 50% -160px, rgba(212, 167, 46, 0.07), transparent 70%),
		var(--lml-bg);
	color: var(--lml-text);
	font-family: var(--lml-font-base);
	font-size: 16px;
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
}
img { max-width: 100%; height: auto; display: block; }
a { color: var(--lml-lime); text-decoration: none; }
a:hover { color: var(--lml-lime-2); }
h1, h2, h3, h4, h5, h6 {
	font-family: var(--lml-font-display);
	font-weight: 400;
	line-height: 1.12;
	margin: 0 0 0.5em;
	color: var(--lml-text);
	text-wrap: balance;
}
p { margin: 0 0 1em; }
button, input, select, textarea { font: inherit; color: inherit; }

.screen-reader-text {
	border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%);
	height: 1px; width: 1px; margin: -1px; overflow: hidden;
	padding: 0; position: absolute !important; word-wrap: normal !important;
}
.skip-link {
	position: absolute; left: -9999px; top: 0; z-index: 999;
	background: var(--lml-lime); color: #241a06;
	padding: 10px 18px; border-radius: 0 0 var(--lml-radius) 0;
	font-weight: 700;
}
.skip-link:focus { left: 0; clip: auto; clip-path: none; width: auto; height: auto; }

::selection { background: rgba(212, 167, 46, 0.32); color: #ecfff5; }

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; scroll-behavior: auto !important; }
}
