/*
Theme Name: SwiftMatch
Theme URI: https://example.com/swiftmatch
Author: Your Name
Author URI: https://example.com
Description: A fast, self-contained theme for music/entertainment blogs, built around a homepage of configurable content sections (e.g. Music, Stories, Albums, Articles), song pages with streaming/download links, a view-based trending sidebar, and list-style archives with Load More pagination. Nothing about it is tied to a specific site, every label, menu, and section is configured from the WordPress admin (Customizer, Menus, and per-post fields).
Version: 1.2.3
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: swiftmatch
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/

/* ==========================================================================
   This file only carries the WordPress theme header above (required by
   WordPress to recognise the theme) plus the CSS reset and design tokens.
   The bulk of the styling lives in assets/css/theme.css, enqueued from
   functions.php, so this file stays small and fast to parse.
   ========================================================================== */

*, *::before, *::after { box-sizing: border-box; }

/*
 * Two full palettes: the default (light) one below, and a dark one under
 * [data-theme="dark"] near the bottom of this file. The header's moon/sun
 * button (see assets/js/main.js) toggles the attribute and remembers the
 * visitor's choice, it never touches WordPress settings, so it works
 * per-visitor on any install without any admin configuration.
 */
:root {
	--swm-accent: #603f83;
	--swm-accent-contrast: #ffffff;
	--swm-bg: #f8f8f8;
	--swm-surface: #ffffff;
	--swm-surface-2: #f1eef5;
	--swm-border: #e7e5eb;
	--swm-text: #1c1a20;
	--swm-text-muted: #6b7280;
	/* The side gutter, used by every full-width wrapper AND by the negative
	   margin that makes the mobile nav bar run edge to edge. One value so the
	   two can never drift apart — change it here and everything follows. */
	--swm-gutter: 20px;
	--swm-radius: 14px;
	--swm-radius-lg: 18px;
	--swm-max-width: 1240px;
	--swm-shadow: 0 2px 10px rgba(20, 10, 30, .06);
	--swm-shadow-lg: 0 6px 20px rgba(20, 10, 30, .10);
	--swm-font-body: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
	--swm-font-heading: var(--swm-font-body);
}

:root[data-theme="dark"] {
	--swm-accent: #9f7fc4;
	--swm-accent-contrast: #1c1a20;
	--swm-bg: #15131a;
	--swm-surface: #201d27;
	--swm-surface-2: #29242f;
	--swm-border: #35303d;
	--swm-text: #f1eef5;
	--swm-text-muted: #a8a1b3;
	--swm-shadow: 0 2px 14px rgba(0, 0, 0, .35);
	--swm-shadow-lg: 0 6px 22px rgba(0, 0, 0, .45);
}

html {
	-webkit-text-size-adjust: 100%;
	/* Stops the double/triple-tap "zoom in" gesture some mobile browsers
	   trigger on quick taps, pinch-to-zoom still works fine either way. */
	touch-action: manipulation;
}

body {
	margin: 0;
	background: var(--swm-bg);
	color: var(--swm-text);
	font-family: var(--swm-font-body);
	line-height: 1.55;
	touch-action: manipulation;
	transition: background-color .15s ease, color .15s ease;
}

img { max-width: 100%; height: auto; display: block; }

a { color: inherit; text-decoration: none; }

ul, ol { padding: 0; margin: 0; list-style: none; }

button, input, textarea, select { font-family: inherit; font-size: inherit; color: inherit; }

h1, h2, h3, h4, h5, h6 { margin: 0 0 .5em; font-family: var(--swm-font-heading); font-weight: 700; line-height: 1.25; }

p { margin: 0 0 1em; }
