/*
Theme Name: LokGeets
Theme URI: https://lokgeets.com
Author: LokGeets
Author URI: https://lokgeets.com
Description: Ultra-lightweight, high-performance blog theme. Zero jQuery, minimal DOM, Core Web Vitals optimized.
Version: 3.0.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: lokgeets
Tags: blog, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready
*/

/* === Reset (minimal) === */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;font-size:1rem;line-height:1.75;color:#1a1a2e;background:#fafafa;-webkit-font-smoothing:antialiased;text-rendering:optimizeSpeed}

/* === Typography === */
h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.3;color:#0f0f23;margin-bottom:.5em}
h1{font-size:2.25rem}
h2{font-size:1.75rem}
h3{font-size:1.375rem}
h4{font-size:1.125rem}
p{margin-bottom:1.5em}
a{color:#e94560;text-decoration:none;transition:color .15s ease}
a:hover,a:focus{color:#c73651}
a:focus-visible{outline:2px solid #e94560;outline-offset:2px}
img{max-width:100%;height:auto;display:block}
ul,ol{margin:0 0 1.5em 1.5em}
blockquote{border-left:4px solid #e94560;padding:.75em 1.25em;margin:1.5em 0;background:#fff;font-style:italic;color:#444}
pre{background:#1a1a2e;color:#e0e0e0;padding:1.25em;border-radius:6px;overflow-x:auto;margin-bottom:1.5em;font-family:Consolas,monospace;font-size:.875rem}
code{background:#f0f0f5;padding:.15em .4em;border-radius:3px;font-family:Consolas,monospace;font-size:.875rem}
pre code{background:0;padding:0}
hr{border:none;border-top:1px solid #e0e0e0;margin:2em 0}
table{width:100%;border-collapse:collapse;margin-bottom:1.5em}
th,td{padding:.75em;border:1px solid #e0e0e0;text-align:left}
th{background:#f5f5f5;font-weight:600}

/* === Layout === */
.lokgeets-container{max-width:1140px;margin:0 auto;padding:0 1.25rem}
.lokgeets-content-area{display:flex;flex-wrap:wrap;gap:2.5rem;padding:2rem 0}
.lokgeets-main{flex:1;min-width:0}
.lokgeets-sidebar{width:300px;flex-shrink:0}

/* === Header — sticky, minimal repaint === */
.lokgeets-header{background:#fff;border-bottom:1px solid #e8e8e8;position:sticky;top:0;z-index:100;contain:layout style}
.lokgeets-header-inner{display:flex;align-items:center;justify-content:space-between;padding:.875rem 1.25rem;max-width:1140px;margin:0 auto}
.lokgeets-site-branding{display:flex;align-items:center;gap:.75rem}
.lokgeets-site-branding img{max-height:40px;width:auto}
.lokgeets-site-title{font-size:1.5rem;font-weight:800;margin:0;line-height:1.2}
.lokgeets-site-title a{color:#0f0f23;text-decoration:none}
.lokgeets-site-title a:hover{color:#e94560}
.lokgeets-site-description{font-size:.8rem;color:#777;margin:0}

/* === Navigation === */
.lokgeets-nav ul{list-style:none;display:flex;gap:.25rem;margin:0;padding:0}
.lokgeets-nav a{display:block;padding:.5rem .875rem;color:#333;font-size:.9rem;font-weight:500;border-radius:4px;text-decoration:none;transition:background .15s,color .15s}
.lokgeets-nav a:hover,.lokgeets-nav .current-menu-item>a{background:#fef0f3;color:#e94560;text-decoration:none}
.lokgeets-nav li{position:relative}
.lokgeets-nav ul ul{display:none;position:absolute;top:100%;left:0;background:#fff;border:1px solid #e8e8e8;border-radius:6px;min-width:200px;flex-direction:column;box-shadow:0 4px 12px rgba(0,0,0,.08);z-index:200;padding:.25rem 0}
.lokgeets-nav li:hover>ul,.lokgeets-nav li:focus-within>ul{display:flex}
.lokgeets-nav ul ul a{padding:.5rem 1rem;border-radius:0}
.lokgeets-menu-toggle{display:none;background:0;border:0;cursor:pointer;padding:.5rem}
.lokgeets-menu-toggle svg{width:24px;height:24px;fill:#333}

/* === Post Cards === */
.lokgeets-post{background:#fff;border-radius:8px;border:1px solid #e8e8e8;margin-bottom:1.75rem;overflow:hidden;transition:box-shadow .15s ease}
.lokgeets-post:hover{box-shadow:0 2px 12px rgba(0,0,0,.06)}
.lokgeets-post-thumbnail{aspect-ratio:16/9;overflow:hidden}
.lokgeets-post-thumbnail img,.lokgeets-thumb-fallback{width:100%;height:100%;object-fit:cover}
.lokgeets-post-content{padding:1.5rem}
.lokgeets-post-meta{display:flex;flex-wrap:wrap;gap:.75rem;font-size:.8rem;color:#777;margin-bottom:.75rem}
.lokgeets-post-meta a{color:#e94560;font-weight:500}
.lokgeets-post-title{font-size:1.375rem;margin-bottom:.5em;line-height:1.35}
.lokgeets-post-title a{color:#0f0f23}
.lokgeets-post-title a:hover{color:#e94560;text-decoration:none}
.lokgeets-post-excerpt{color:#555;line-height:1.7;margin-bottom:1em}
.lokgeets-read-more{display:inline-block;font-size:.875rem;font-weight:600;color:#e94560;padding:.4rem 0;border-bottom:2px solid transparent}
.lokgeets-read-more:hover{border-bottom-color:#e94560;text-decoration:none}

/* === Single Post === */
.lokgeets-single .lokgeets-post{border:none;background:0;border-radius:0}
.lokgeets-single .lokgeets-post:hover{box-shadow:none}
.lokgeets-single .lokgeets-post-content{padding:0}
.lokgeets-single .lokgeets-post-title{font-size:2rem}
.lokgeets-single .lokgeets-post-thumbnail{border-radius:8px;margin-bottom:1.5rem}
.lokgeets-entry-content{font-size:1.0625rem;line-height:1.8}
.lokgeets-entry-content h2{margin-top:2em}
.lokgeets-entry-content h3{margin-top:1.5em}
.lokgeets-entry-content img{border-radius:6px;margin:1.5em 0}

/* === Post Tags === */
.lokgeets-post-tags{margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e8e8e8}
.lokgeets-post-tags a{display:inline-block;background:#f5f5f5;color:#555;padding:.25rem .75rem;border-radius:4px;font-size:.8rem;margin:.25rem .25rem .25rem 0;transition:background .15s}
.lokgeets-post-tags a:hover{background:#e94560;color:#fff;text-decoration:none}

/* === Post Navigation === */
.lokgeets-post-navigation{display:flex;justify-content:space-between;gap:1.5rem;margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid #e8e8e8}
.lokgeets-post-navigation a{font-weight:500;font-size:.9rem;color:#333}
.lokgeets-post-navigation a:hover{color:#e94560}
.lokgeets-post-navigation .nav-next{text-align:right;margin-left:auto}

/* === Archive Header === */
.lokgeets-archive-header{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid #e8e8e8}
.lokgeets-archive-title{font-size:1.75rem;color:#0f0f23}
.lokgeets-archive-description{color:#666;margin-top:.5em}

/* === Pagination (plain links, minimal DOM) === */
.lokgeets-pagination{display:flex;justify-content:center;align-items:center;gap:.375rem;margin:2rem 0;flex-wrap:wrap}
.lokgeets-pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:2.25rem;height:2.25rem;padding:0 .5rem;border-radius:4px;font-size:.875rem;font-weight:500;color:#555;background:#fff;border:1px solid #e0e0e0;transition:background .15s,color .15s}
.lokgeets-pagination .page-numbers:hover{background:#fef0f3;color:#e94560;border-color:#e94560;text-decoration:none}
.lokgeets-pagination .page-numbers.current{background:#e94560;color:#fff;border-color:#e94560}

/* === Sidebar === */
.lokgeets-sidebar .widget{background:#fff;border:1px solid #e8e8e8;border-radius:8px;padding:1.25rem;margin-bottom:1.5rem}
.lokgeets-sidebar .widget-title{font-size:1rem;font-weight:700;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:2px solid #e94560;color:#0f0f23}
.lokgeets-sidebar .widget ul{list-style:none;margin:0;padding:0}
.lokgeets-sidebar .widget li{padding:.4rem 0;border-bottom:1px solid #f0f0f0}
.lokgeets-sidebar .widget li:last-child{border-bottom:0}
.lokgeets-sidebar .widget li a{color:#444;font-size:.9rem}
.lokgeets-sidebar .widget li a:hover{color:#e94560}
.lokgeets-sidebar .search-form{display:flex}
.lokgeets-sidebar .search-field{flex:1;padding:.5rem .75rem;border:1px solid #e0e0e0;border-right:0;border-radius:4px 0 0 4px;font-size:.875rem;font-family:inherit;outline:0}
.lokgeets-sidebar .search-field:focus{border-color:#e94560}
.lokgeets-sidebar .search-submit{padding:.5rem 1rem;background:#e94560;color:#fff;border:1px solid #e94560;border-radius:0 4px 4px 0;cursor:pointer;font-family:inherit;font-weight:500}

/* === Comments — lazy render === */
.lokgeets-comments{margin-top:2.5rem;padding-top:2rem;border-top:1px solid #e8e8e8;content-visibility:auto;contain-intrinsic-size:auto 500px}
.lokgeets-comments-title{font-size:1.375rem;margin-bottom:1.5rem}
.comment-list{list-style:none;margin:0;padding:0}
.comment-list .comment{padding:1.25rem 0;border-bottom:1px solid #f0f0f0}
.comment-list .children{list-style:none;margin:0;padding-left:2rem}
.comment-author{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}
.comment-author img{border-radius:50%;width:40px;height:40px}
.comment-author .fn{font-weight:600;font-size:.9375rem}
.comment-metadata{font-size:.8rem;color:#999;margin-bottom:.75rem}
.comment-content{font-size:.9375rem;line-height:1.7}
.comment-reply-link{font-size:.8rem;font-weight:600;color:#e94560}
.comment-respond{margin-top:2rem}
.comment-respond .comment-reply-title{font-size:1.25rem;margin-bottom:1rem}
.comment-form label{display:block;font-size:.875rem;font-weight:500;margin-bottom:.25rem;color:#444}
.comment-form input[type="text"],.comment-form input[type="email"],.comment-form input[type="url"],.comment-form textarea{width:100%;padding:.625rem .875rem;border:1px solid #e0e0e0;border-radius:4px;font-size:.9375rem;font-family:inherit;margin-bottom:1rem;outline:0;transition:border-color .15s}
.comment-form input:focus,.comment-form textarea:focus{border-color:#e94560}
.comment-form textarea{min-height:140px;resize:vertical}
.comment-form .form-submit .submit{background:#e94560;color:#fff;border:0;padding:.7rem 1.75rem;border-radius:4px;font-size:.9375rem;font-weight:600;cursor:pointer;font-family:inherit;transition:background .15s}
.comment-form .form-submit .submit:hover{background:#c73651}

/* === Footer — lazy render === */
.lokgeets-footer{background:#0f0f23;color:#b0b0c0;padding:2rem 0;margin-top:2rem;content-visibility:auto;contain-intrinsic-size:auto 120px}
.lokgeets-footer-inner{max-width:1140px;margin:0 auto;padding:0 1.25rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}
.lokgeets-footer a{color:#d0d0e0}
.lokgeets-footer a:hover{color:#e94560}
.lokgeets-footer-copyright{font-size:.85rem}
.lokgeets-footer-links{display:flex;gap:1.25rem}
.lokgeets-footer-links a{font-size:.85rem}

/* === 404 === */
.lokgeets-404{text-align:center;padding:4rem 0}
.lokgeets-404 h1{font-size:4rem;color:#e94560;margin-bottom:.25em}
.lokgeets-404 p{font-size:1.125rem;color:#666}

/* === Accessibility === */
.screen-reader-text{clip:rect(1px,1px,1px,1px);position:absolute!important;height:1px;width:1px;overflow:hidden;word-wrap:normal!important}
.screen-reader-text:focus{background:#fff;border-radius:3px;box-shadow:0 0 2px 2px rgba(0,0,0,.6);clip:auto!important;color:#0f0f23;display:block;font-size:.875rem;font-weight:700;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}

/* === WP Alignment Defaults === */
.alignleft{float:left;margin:.5em 1.5em 1em 0}
.alignright{float:right;margin:.5em 0 1em 1.5em}
.aligncenter{display:block;margin:1em auto}
.wp-caption{max-width:100%;margin-bottom:1.5em}
.wp-caption-text{font-size:.8rem;color:#777;text-align:center;margin-top:.5em}
.sticky .lokgeets-post-title::before{content:"★ ";color:#e94560}

/* === Responsive — Mobile first breakpoints === */
@media(max-width:767px){
.lokgeets-header-inner{flex-wrap:wrap}
.lokgeets-menu-toggle{display:block}
.lokgeets-nav{display:none;width:100%;order:3;padding-top:.75rem}
.lokgeets-nav.is-active{display:block}
.lokgeets-nav ul{flex-direction:column}
.lokgeets-nav ul ul{position:static;box-shadow:none;border:0;padding-left:1rem}
.lokgeets-content-area{flex-direction:column}
.lokgeets-sidebar{width:100%}
.lokgeets-site-title{font-size:1.25rem}
h1{font-size:1.75rem}
h2{font-size:1.375rem}
.lokgeets-single .lokgeets-post-title{font-size:1.5rem}
.lokgeets-post-navigation{flex-direction:column}
.lokgeets-footer-inner{flex-direction:column;text-align:center}
}
@media(min-width:768px) and (max-width:1023px){
.lokgeets-sidebar{width:260px}
}
@media print{
body{background:#fff;color:#000;font-size:12pt}
.lokgeets-header,.lokgeets-footer,.lokgeets-sidebar,.lokgeets-nav,.lokgeets-pagination,.lokgeets-comments{display:none!important}
.lokgeets-main{width:100%}
a{color:#000;text-decoration:underline}
}
