/*!
Theme Name: nekxn33
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: nekxn33
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

nekxn33 is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# plugins
	- Jetpack infinite scroll
# Utilities
	- Accessibility
	- Alignments

--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/

/* Normalize
--------------------------------------------- */

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

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

body {
	margin: 0;
	background-color: #ffffff;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
	-webkit-font-smoothing: antialiased;
	color: #1f2937;
}

main {
	display: block;
}

h1 {
	font-size: 2em;
	margin: 0.67em 0;
}

hr {
	box-sizing: content-box;
	height: 0;
	overflow: visible;
	background-color: #ccc;
	border: 0;
	margin-bottom: 1.5em;
}

pre {
	font-family: monospace, monospace;
	font-size: 1em;
	background: #eee;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}

a {
	background-color: transparent;
	color: #4169e1;
}

abbr[title] {
	border-bottom: none;
	text-decoration: underline;
	text-decoration: underline dotted;
}

b,
strong {
	font-weight: bolder;
}

code,
kbd,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

small {
	font-size: 80%;
}

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

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

button,
input,
optgroup,
select,
textarea {
	font-family: inherit;
	font-size: 100%;
	line-height: 1.15;
	margin: 0;
}

button,
input {
	overflow: visible;
}

button,
select {
	text-transform: none;
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
	-webkit-appearance: button;
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

fieldset {
	padding: 0.35em 0.75em 0.625em;
}

legend {
	box-sizing: border-box;
	color: inherit;
	display: table;
	max-width: 100%;
	padding: 0;
	white-space: normal;
}

progress {
	vertical-align: baseline;
}

textarea {
	overflow: auto;
	width: 100%;
}

[type="checkbox"],
[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

[type="search"] {
	-webkit-appearance: textfield;
	outline-offset: -2px;
}

[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit;
}

details {
	display: block;
}

summary {
	display: list-item;
}

template {
	display: none;
}

[hidden] {
	display: none;
}

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

/*--------------------------------------------------------------
# Base Typography & Elements
--------------------------------------------------------------*/
h1, h2, h3, h4, h5, h6 {
	clear: both;
}

p {
	margin-bottom: 1.5em;
}

ul, ol {
	margin: 0 0 1.5em 3em;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

table {
	margin: 0 0 1.5em;
	width: 100%;
}

/* Forms
--------------------------------------------- */
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	border: 1px solid #ccc;
	border-radius: 3px;
	background: #e6e6e6;
	color: rgba(0, 0, 0, 0.8);
	line-height: 1;
	padding: 0.6em 1em 0.4em;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
textarea {
	color: #666;
	border: 1px solid #ccc;
	border-radius: 3px;
	padding: 3px;
}

select {
	border: 1px solid #ccc;
}

/*--------------------------------------------------------------
# Layouts & Container 900px 제한
--------------------------------------------------------------*/
@media (min-width: 992px) {
    .container, 
    .site-header .container {
        max-width: 900px !important;
    }
}

/*--------------------------------------------------------------
# 헤더 및 메뉴 커스텀 스타일 (통합 및 최적화 완료)
--------------------------------------------------------------*/

/* 브랜드 로고 래퍼 */
.navbar-brand {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    text-decoration: none !important;
}

.navbar-brand img {
    height: 32px !important;
    width: auto !important;
    object-fit: contain !important;
    flex-shrink: 0 !important;
}

.navbar-brand .brand-text-wrap {
    display: inline-flex !important;
    align-items: baseline !important;
    gap: 6px !important;
    white-space: nowrap !important;
}

/* 우측 상단 네비게이션 메뉴 가로 한 줄 강제 정렬 */
.site-header .main-navigation ul,
.site-header .navbar-nav {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 4px !important;
}

.site-header .navbar-nav li,
.site-header .navbar-nav .menu-item {
    display: flex !important;
    align-items: center !important;
    white-space: nowrap !important;
    position: relative;
}

/* 첫 번째 메뉴를 제외한 나머지 메뉴들의 '앞(왼쪽)'에 점(·) 배치 */
.site-header .navbar-nav li:not(:first-child)::before,
.site-header .navbar-nav .menu-item:not(:first-child)::before {
    content: "·" !important;
    margin: 0 6px 0 2px !important;
    color: #94a3b8 !important;
    font-weight: normal !important;
}

/* 메뉴 링크 스타일 및 알약 모양 호버 효과 */
.site-header .navbar-nav a {
    color: #4b5563 !important;
    text-decoration: none !important;
    font-weight: 500 !important;
    font-size: 0.95rem !important;
    padding: 6px 12px !important;
    border-radius: 20px !important;
    white-space: nowrap !important;
    transition: all 0.2s ease-in-out !important;
}

.site-header .navbar-nav a:hover {
    color: #2563eb !important;
    background-color: #f1f5f9 !important;
}

/* 현재 선택된 메뉴(Active) 효과 */
.site-header .navbar-nav .current-menu-item > a,
.site-header .navbar-nav .menu-item.active > a {
    color: #2563eb !important;
    background-color: #eff6ff !important;
    font-weight: 600 !important;
}

/*--------------------------------------------------------------
# 기타 유틸리티 및 컴포넌트
--------------------------------------------------------------*/
.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;
}

.alignleft {
	float: left;
	margin-right: 1.5em;
	margin-bottom: 1.5em;
}

.alignright {
	float: right;
	margin-left: 1.5em;
	margin-bottom: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1.5em;
}

/* 가로 스크롤바 원천 차단 및 100% 풀박스 강제 고정 */
html, body {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
}

/* 파란 배너가 화면 끝까지 꽉 차도록 강제 확장 */
.site-content, main, article {
    width: 100% !important;
    box-sizing: border-box !important;
}