/*
Theme Name: Kadikoyihl News
Theme URI: https://kadikoyihl.com
Author: Kadikoyihl
Author URI: https://kadikoyihl.com
Description: Lightweight news/magazine base theme built to work with News Kit Elementor Addons (NewsKit). Provides standard WordPress theme supports, a minimal unstyled shell, and full integration with NewsKit's Header/Footer/Single/Archive/404/Popup Theme Builder templates — with graceful fallback to native templates when no NewsKit template is assigned. Built in-house for the Kadikoyihl site portfolio to remove dependency on any specific commercial theme.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
Text Domain: kadikoyihl-news
Tags: blog, news, one-column, two-columns, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

Kadikoyihl News is released under the terms of the GNU Public License.
This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

Kadikoyihl News is based on the _s (Underscores) theme starter,
https://underscores.me/, (C) 2012-2024 Automattic, Inc., [GPLv2 or later]
*/

/* ==========================================================================
   This stylesheet is intentionally minimal. NewsKit's own widgets and
   templates carry their own CSS (registered by the plugin). This file
   only covers:
   - browser resets / accessibility basics ( _s defaults )
   - the theme's own container width (kept fixed per project decision —
     Elementor does NOT get edge-to-edge override here)
   - native fallback templates (header/footer/single/archive/404)
     for the rare case a site has no NewsKit template assigned yet
   ========================================================================== */

/* -------------------------------------------------------------------------
   1.0 Reset / Normalize (trimmed _s defaults)
   ---------------------------------------------------------------------- */
*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	-webkit-text-size-adjust: 100%;
}

body {
	margin: 0;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
	font-size: 16px;
	line-height: 1.6;
	color: #1f2328;
	background: #ffffff;
}

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

a {
	color: #e02424;
	text-decoration: none;
}

a:hover,
a:focus {
	text-decoration: underline;
}

ul,
ol {
	margin: 0 0 1.5em;
	padding-left: 1.5em;
}

.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 14px;
	font-weight: 700;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}

.skip-link {
	left: -9999em;
	top: 0;
}

/* -------------------------------------------------------------------------
   2.0 Theme container — the fixed-width wrapper used by all fallback
   templates (header/footer/single/archive/404). This is intentionally
   NOT overridden by Elementor's full-width settings, per project decision:
   keep one predictable container across the whole 160+ site portfolio.
   ---------------------------------------------------------------------- */
.theme-container {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 20px;
}

@media (max-width: 768px) {
	.theme-container {
		padding: 0 16px;
	}
}

/* -------------------------------------------------------------------------
   3.0 Fallback header / navigation
   (only ever shown if NewsKit has no Header template assigned)
   ---------------------------------------------------------------------- */
.site-header {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 20px 0;
	border-bottom: 1px solid #e5e7eb;
}

.site-branding .site-title {
	margin: 0;
	font-size: 22px;
	font-weight: 800;
}

.site-branding .site-title a {
	color: #16181d;
}

.site-branding .site-description {
	margin: 2px 0 0;
	font-size: 13px;
	color: #6b7280;
}

.main-navigation ul {
	display: flex;
	flex-wrap: wrap;
	gap: 24px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.main-navigation a {
	color: #16181d;
	font-weight: 600;
	font-size: 14px;
}

.main-navigation .menu-toggle {
	display: none;
	background: none;
	border: 1px solid #d1d5db;
	border-radius: 4px;
	padding: 8px 14px;
	font-weight: 700;
	cursor: pointer;
}

@media (max-width: 768px) {
	.main-navigation .menu-toggle {
		display: inline-block;
	}

	.main-navigation ul {
		display: none;
		flex-direction: column;
		gap: 12px;
		width: 100%;
		padding-top: 12px;
	}

	.main-navigation.toggled ul {
		display: flex;
	}
}

/* -------------------------------------------------------------------------
   4.0 Fallback footer
   ---------------------------------------------------------------------- */
.site-footer {
	padding: 24px 0;
	border-top: 1px solid #e5e7eb;
	margin-top: 40px;
}

.site-footer .site-info {
	font-size: 13px;
	color: #6b7280;
}

.site-footer .sep {
	margin: 0 6px;
}

/* -------------------------------------------------------------------------
   5.0 Fallback single post / page / archive
   ---------------------------------------------------------------------- */
.site-main {
	padding: 32px 0 48px;
}

article.post,
article.page {
	margin-bottom: 32px;
}

.entry-title {
	font-size: 30px;
	line-height: 1.3;
	margin: 0 0 12px;
}

.entry-meta {
	display: flex;
	gap: 14px;
	font-size: 13px;
	color: #6b7280;
	margin-bottom: 18px;
}

.entry-content {
	font-size: 16px;
	line-height: 1.75;
}

.entry-content p {
	margin: 0 0 1.4em;
}

.post-thumbnail {
	margin: 0 0 24px;
	border-radius: 6px;
	overflow: hidden;
}

.page-header .page-title {
	font-size: 26px;
	margin: 0 0 8px;
}

.archive-description {
	color: #6b7280;
	margin: 0 0 24px;
}

.post-navigation {
	display: flex;
	justify-content: space-between;
	gap: 20px;
	margin: 32px 0;
	padding-top: 24px;
	border-top: 1px solid #e5e7eb;
}

.post-navigation .nav-subtitle {
	display: block;
	font-size: 12px;
	text-transform: uppercase;
	color: #9ca3af;
	margin-bottom: 4px;
}

.nekit-news-list-wrap .row {
	display: flex;
	gap: 32px;
	align-items: flex-start;
}

.nekit-news-list-wrap .primary-content {
	flex: 1 1 auto;
	min-width: 0;
}

.nekit-news-list-wrap .secondary-sidebar {
	flex: 0 0 300px;
}

@media (max-width: 900px) {
	.nekit-news-list-wrap .row {
		flex-direction: column;
	}

	.nekit-news-list-wrap .secondary-sidebar {
		flex: 1 1 auto;
		width: 100%;
	}
}

/* -------------------------------------------------------------------------
   6.0 404
   ---------------------------------------------------------------------- */
.error-404 .page-title {
	font-size: 40px;
}

/* -------------------------------------------------------------------------
   7.0 Comments (basic, native WP comment form/list)
   ---------------------------------------------------------------------- */
.comments-area {
	margin-top: 40px;
}

.comment-list {
	list-style: none;
	padding: 0;
}

.comment-list .comment {
	margin-bottom: 20px;
	padding-bottom: 20px;
	border-bottom: 1px solid #eee;
}
