/*
Theme Name: Yono Games Store
Theme URI: https://example.com/yono-games-store
Author: Yono Games
Author URI: https://example.com
Description: A lightweight, modern dark gaming APK download theme. SEO optimized, mobile responsive, and built for speed without page builders.
Version: 1.1.0
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: yono-games-store
Tags: dark, gaming, entertainment, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready, blog, one-column, two-columns

Yono Games Store WordPress Theme
Copyright (C) 2026 Yono Games

This theme is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.
*/

/* ==========================================================================
   Legal pages, responsive hardening, and rendering performance
   ========================================================================== */

/*
 * WordPress page content can contain pasted document-level CSS. These guarded
 * rules keep a page's own HTML from adding margins/padding around the complete
 * website header (the cause of the Disclaimer-only header inset).
 */
html {
	width: 100%;
	max-width: 100%;
	overflow-x: hidden;
}

html body {
	width: 100% !important;
	max-width: none !important;
	min-height: 100%;
	margin: 0 !important;
	padding: 0 !important;
	overflow-x: hidden;
}

body > .site-header {
	left: 0 !important;
	right: 0 !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	border-radius: 0 !important;
	transform: none !important;
}

body > .site-header > .header-inner,
body > .site-header > .container.header-inner {
	width: 100% !important;
	max-width: var(--container-width) !important;
	height: var(--header-height) !important;
	margin-right: auto !important;
	margin-left: auto !important;
	padding-right: 20px !important;
	padding-left: 20px !important;
}

body.legal-page {
	background:
		radial-gradient(circle at 0 20%, rgba(126, 58, 242, 0.28), transparent 37rem),
		radial-gradient(circle at 100% 25%, rgba(0, 211, 231, 0.25), transparent 42rem),
		var(--color-bg);
}

body.legal-page > .site-header {
	background: rgba(5, 5, 8, 0.96) !important;
}

.legal-page .page-layout {
	display: block;
	min-height: calc(100vh - var(--header-height));
	padding-top: clamp(42px, 6vw, 72px);
	padding-bottom: clamp(48px, 7vw, 88px);
}

.legal-page .content-area {
	width: 100%;
}

.legal-page .page-header,
.legal-page .page-links,
.legal-page .comments-area {
	width: 100%;
	margin-right: 0;
	margin-left: 0;
}

.legal-page .entry-content {
	width: 100%;
	max-width: 980px;
	margin-right: auto;
	margin-left: 0;
}

.legal-page .page-header {
	margin-bottom: clamp(24px, 4vw, 42px);
}

.legal-page .page-title {
	font-size: clamp(2rem, 4.5vw, 3rem);
	letter-spacing: -0.025em;
	text-transform: capitalize;
}

.legal-page .entry-content {
	overflow-wrap: anywhere;
	word-break: normal;
}

.legal-page .entry-content > :first-child {
	margin-top: 0;
}

.legal-page .entry-content > :last-child {
	margin-bottom: 0;
}

.legal-page .entry-content h2 {
	margin-top: clamp(30px, 5vw, 48px);
	margin-bottom: 14px;
	font-size: clamp(1.35rem, 3vw, 1.85rem);
}

.legal-page .entry-content h3 {
	margin-top: 28px;
	margin-bottom: 12px;
	font-size: clamp(1.1rem, 2.5vw, 1.35rem);
}

.legal-page .entry-content p,
.legal-page .entry-content li {
	color: #c7c7d4;
}

.legal-page .entry-content a {
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}

.legal-page .entry-content :is(img, video, iframe, embed, object, svg) {
	max-width: 100%;
}

.legal-page .entry-content iframe,
.legal-page .entry-content video {
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
}

.legal-page .entry-content table {
	display: block;
	width: 100%;
	max-width: 100%;
	overflow-x: auto;
	border-collapse: collapse;
	-webkit-overflow-scrolling: touch;
}

.legal-page .entry-content th,
.legal-page .entry-content td {
	min-width: 140px;
	padding: 12px 14px;
	border: 1px solid var(--color-border);
	text-align: left;
}

.legal-page .entry-content pre,
.legal-page .entry-content code {
	max-width: 100%;
	overflow-x: auto;
}

/* Keep all common WordPress media and long text inside the viewport. */
.entry-content,
.widget,
.site-footer,
.game-card,
.single-content {
	min-width: 0;
}

.entry-content :is(img, video, iframe, embed, object),
.wp-block-image img,
.wp-block-video video,
.wp-block-embed iframe {
	max-width: 100%;
	height: auto;
}

.game-card,
.widget {
	content-visibility: auto;
	contain-intrinsic-size: 1px 180px;
}

@media (max-width: 768px) {
	body > .site-header > .header-inner,
	body > .site-header > .container.header-inner {
		padding-right: 16px !important;
		padding-left: 16px !important;
	}

	.site-branding .custom-logo {
		max-width: min(180px, 42vw);
		max-height: 44px;
	}

	.legal-page .page-layout {
		padding-top: 36px;
		padding-bottom: 56px;
	}

	.legal-page .page-title {
		font-size: clamp(1.85rem, 8vw, 2.4rem);
	}
}

@media (max-width: 480px) {
	body > .site-header > .header-inner,
	body > .site-header > .container.header-inner {
		gap: 8px;
		padding-right: 12px !important;
		padding-left: 12px !important;
	}

	.site-branding .custom-logo {
		max-width: min(140px, 38vw);
		max-height: 40px;
	}

	.legal-page .page-layout {
		padding-top: 30px;
		padding-bottom: 44px;
	}

	.legal-page .page-header {
		margin-bottom: 22px;
	}

	.legal-page .entry-content {
		font-size: 0.96rem;
	}
}

@media (max-width: 360px) {
	.site-branding .custom-logo {
		max-width: 104px;
	}

	.search-toggle,
	.menu-toggle {
		width: 38px;
		height: 38px;
	}
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	*,
	*::before,
	*::after {
		scroll-behavior: auto !important;
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
	}
}

/* Keep the sticky header below the WordPress admin bar while logged in. */
.admin-bar body > .site-header,
body.admin-bar > .site-header {
	top: 32px;
}

@media (max-width: 782px) {
	.admin-bar body > .site-header,
	body.admin-bar > .site-header {
		top: 46px;
	}

	body.admin-bar .main-navigation .nav-menu {
		top: calc(var(--header-height) + 46px);
	}
}
