/*
Theme Name: Investloop Portal
Theme URI: https://investloop.pl/
Author: NexlifyLabs · Leveloop · Investloop
Author URI: https://investloop.pl/
Description: Nowoczesny, mobile‑first motyw dla portalu finansowo‑informacyjnego z wbudowaną obsługą WooCommerce. Zaprojektowany pod szybkie ładowanie, czytelność analiz rynkowych oraz maksymalną zgodność z SEO i Answer Engine Optimization (AEO).
Version: 1.0.1
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: investloop-portal
Tags: blog, news, custom-menu, featured-images, footer-widgets, full-site-editing, block-styles, e-commerce, woocommerce, responsive-layout, custom-colors, custom-logo, editor-style, sticky-post, theme-options, threaded-comments, translation-ready
*/


/* ==========================================================================
   Zmienne CSS (jasny / ciemny przez .theme-dark na body)
   ========================================================================== */
:root {
	--color-bg: #FFFFFF;
	--color-bg-alt: #F8F9FA;
	--color-surface: #FFFFFF;
	--color-surface-elevated: #FFFFFF;
	--color-text: #212121;
	--color-text-secondary: #757575;
	--color-accent: #E88F1A;
	--color-accent-hover: #d17e14;
	--shadow-card: 0 2px 8px rgba(0, 0, 0, 0.08);
	--border-color: #e0e0e0;
}

body.theme-dark,
html.theme-dark {
	--color-bg: #121212;
	--color-bg-alt: #1E1E1E;
	--color-surface: #1E1E1E;
	--color-surface-elevated: #2C2C2C;
	--color-text: #E0E0E0;
	--color-text-secondary: #A0A0A0;
	--shadow-card: 0 2px 12px rgba(0, 0, 0, 0.3);
	--border-color: #333;
}

/* Base - mobile first */
html {
	box-sizing: border-box;
	font-size: 16px;
	scroll-behavior: smooth;
}

*,
*::before,
*::after {
	box-sizing: inherit;
}

body {
	background-color: var(--color-bg);
	color: var(--color-text);
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, sans-serif;
	line-height: 1.6;
	margin: 0;
	min-height: 100vh;
}

img {
	max-width: 100%;
	height: auto;
	display: block;
}

a {
	color: var(--color-accent);
	text-decoration: none;
}

a:hover {
	color: var(--color-accent-hover);
	text-decoration: underline;
}

/* Tap target min 44px */
button,
a.button,
input[type="submit"],
.wp-block-button__link {
	min-height: 44px;
	min-width: 44px;
	padding: 0.75rem 1.25rem;
	cursor: pointer;
}

/* H1–H3 hierarchia */
h1, .h1 { font-size: 1.75rem; line-height: 1.25; margin: 0 0 0.5rem; }
h2, .h2 { font-size: 1.5rem; line-height: 1.3; margin: 1.5rem 0 0.75rem; }
h3, .h3 { font-size: 1.25rem; line-height: 1.35; margin: 1rem 0 0.5rem; }

@media (min-width: 768px) {
	h1, .h1 { font-size: 2.25rem; }
	h2, .h2 { font-size: 1.75rem; }
	h3, .h3 { font-size: 1.375rem; }
}
