/*
Theme Name: Antipatriot
Theme URI: https://antipatriot.ru
Author: MiMoCode
Author URI: https://example.com
Description: Военно-патриотический новостной шаблон для WordPress
Version: 1.0.0
Requires at least: 6.0
Tested up to: 7.0
Requires PHP: 8.1
License: GNU General Public License v2 or later
Text Domain: antipatriot
*/

/* === Reset & Variables === */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}

:root{
    --bg-body:#0d1117;
    --bg-card:#161b22;
    --bg-card-hover:#1c2333;
    --bg-header:#0a0e14;
    --bg-nav:#1a2332;
    --bg-red:#8b0000;
    --bg-red-hover:#a50000;
    --bg-gold:#c5a04e;
    --bg-gold-dark:#9a7d3e;
    --bg-green:#1a3a2a;
    --bg-green-light:#2d5a3e;
    --accent-red:#dc2626;
    --accent-gold:#d4af37;
    --accent-blue:#3b82f6;
    --text-primary:#e6edf3;
    --text-secondary:#8b949e;
    --text-muted:#484f58;
    --border-color:#21262d;
    --border-accent:#30363d;
    --shadow:0 2px 12px rgba(0,0,0,0.4);
    --radius:6px;
    --radius-lg:10px;
    --transition:0.2s ease;
    --font-main:'Segoe UI',system-ui,-apple-system,sans-serif;
    --font-heading:'Georgia','Times New Roman',serif;
    --max-width:1280px;
}

html{scroll-behavior:smooth}

body{
    font-family:var(--font-main);
    background:var(--bg-body);
    color:var(--text-primary);
    line-height:1.6;
    -webkit-font-smoothing:antialiased;
}

a{color:var(--accent-gold);text-decoration:none;transition:color var(--transition)}
a:hover{color:#f0d060}

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

ul,ol{list-style:none}

/* === Utility === */
.wrap{max-width:var(--max-width);margin:0 auto;padding:0 20px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}

/* === Top Bar === */
.top-bar{
    background:var(--bg-nav);
    border-bottom:1px solid var(--border-color);
    font-size:13px;
    padding:6px 0;
}
.top-bar .wrap{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px}
.top-bar-date{color:var(--text-secondary)}
.top-bar-socials{display:flex;gap:12px}
.top-bar-socials a{color:var(--text-secondary);font-size:14px}
.top-bar-socials a:hover{color:var(--accent-gold)}

/* === Header === */
.site-header{
    background:linear-gradient(180deg,var(--bg-header) 0%,var(--bg-nav) 100%);
    border-bottom:3px solid var(--bg-red);
    position:sticky;top:0;z-index:1000;
}
.header-inner{display:flex;align-items:center;justify-content:space-between;padding:12px 0;gap:20px}

.site-logo{display:flex;align-items:center;gap:12px;color:var(--text-primary);font-size:1.6rem;font-weight:700;font-family:var(--font-heading);letter-spacing:1px}
.site-logo .logo-star{color:var(--accent-red);font-size:1.8rem}
.site-logo .logo-sub{display:block;font-size:0.65rem;color:var(--text-secondary);font-weight:400;letter-spacing:2px;text-transform:uppercase;font-family:var(--font-main)}

.header-search{flex:1;max-width:360px}
.header-search form{display:flex;border:1px solid var(--border-accent);border-radius:var(--radius);overflow:hidden;background:var(--bg-card)}
.header-search input{flex:1;padding:10px 14px;border:none;background:transparent;color:var(--text-primary);font-size:14px;min-width:0}
.header-search input:focus{outline:none}
.header-search input::placeholder{color:var(--text-muted)}
.header-search button{padding:10px 16px;background:var(--bg-red);border:none;color:#fff;cursor:pointer;transition:background var(--transition);font-size:14px}
.header-search button:hover{background:var(--bg-red-hover)}

/* === Navigation === */
.main-nav{background:var(--bg-nav);border-bottom:1px solid var(--border-color)}
.nav-list{display:flex;gap:0;overflow-x:auto;scrollbar-width:none}
.nav-list::-webkit-scrollbar{display:none}
.nav-list li a{
    display:flex;align-items:center;gap:6px;
    padding:12px 18px;color:var(--text-primary);
    font-size:14px;font-weight:600;
    white-space:nowrap;
    border-bottom:3px solid transparent;
    transition:all var(--transition);
    text-transform:uppercase;
    letter-spacing:0.5px;
}
.nav-list li a:hover,
.nav-list li a.active{
    color:#fff;border-bottom-color:var(--accent-red);background:rgba(139,0,0,0.15);
}
.nav-count{
    background:var(--bg-red);color:#fff;
    font-size:11px;padding:2px 7px;
    border-radius:10px;font-weight:700;
}

/* === Hero Breaking News === */
.breaking-bar{
    background:linear-gradient(90deg,var(--bg-red) 0%,#5c0000 100%);
    padding:10px 0;overflow:hidden;
}
.breaking-bar .wrap{display:flex;align-items:center;gap:15px}
.breaking-label{
    background:var(--accent-gold);color:#000;
    padding:4px 14px;border-radius:3px;
    font-size:12px;font-weight:700;
    white-space:nowrap;text-transform:uppercase;
    letter-spacing:1px;
}
.breaking-ticker{overflow:hidden;flex:1}
.breaking-ticker-inner{
    display:flex;gap:60px;
    animation:ticker 30s linear infinite;
    white-space:nowrap;
}
.breaking-ticker a{color:#fff;font-size:14px;font-weight:600}
@keyframes ticker{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* === Main Layout === */
.main-content{padding:30px 0}
.content-grid{display:grid;grid-template-columns:1fr 340px;gap:30px}

/* === Section Headers === */
.section-header{
    display:flex;align-items:center;justify-content:space-between;
    margin-bottom:20px;padding-bottom:12px;
    border-bottom:2px solid var(--border-color);
}
.section-title{
    font-family:var(--font-heading);font-size:1.3rem;
    font-weight:700;display:flex;align-items:center;gap:10px;
}
.section-title::before{
    content:'';display:inline-block;width:4px;height:22px;
    background:var(--accent-red);border-radius:2px;
}
.section-more{font-size:13px;color:var(--text-secondary);display:flex;align-items:center;gap:4px}
.section-more:hover{color:var(--accent-gold)}

/* === Featured Post === */
.featured-post{
    position:relative;border-radius:var(--radius-lg);
    overflow:hidden;margin-bottom:25px;
    box-shadow:var(--shadow);
}
.featured-post a{display:block}
.featured-post .featured-img{width:100%;height:400px;object-fit:cover}
.featured-post .featured-overlay{
    position:absolute;bottom:0;left:0;right:0;
    background:linear-gradient(transparent 0%,rgba(0,0,0,0.85) 100%);
    padding:30px 25px 25px;
}
.featured-post .featured-category{
    display:inline-block;background:var(--accent-red);color:#fff;
    padding:4px 12px;border-radius:3px;font-size:11px;
    font-weight:700;text-transform:uppercase;letter-spacing:1px;
    margin-bottom:10px;
}
.featured-post .featured-title{
    font-family:var(--font-heading);font-size:1.6rem;
    font-weight:700;color:#fff;line-height:1.3;margin-bottom:8px;
}
.featured-post .featured-meta{font-size:13px;color:var(--text-secondary);display:flex;gap:15px;flex-wrap:wrap}
.featured-post .featured-meta span{display:flex;align-items:center;gap:5px}

/* === News Grid === */
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:30px}

.news-card{
    background:var(--bg-card);border-radius:var(--radius);
    overflow:hidden;box-shadow:var(--shadow);
    transition:transform var(--transition),box-shadow var(--transition);
    border:1px solid var(--border-color);
}
.news-card:hover{transform:translateY(-3px);box-shadow:0 6px 20px rgba(0,0,0,0.5);border-color:var(--border-accent)}
.news-card a{display:block;color:var(--text-primary)}
.news-card .news-img{position:relative;padding-top:60%;overflow:hidden}
.news-card .news-img img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform 0.4s ease}
.news-card:hover .news-img img{transform:scale(1.05)}
.news-card .news-badge{
    position:absolute;top:10px;left:10px;
    background:var(--bg-red);color:#fff;
    padding:3px 10px;border-radius:3px;
    font-size:11px;font-weight:700;
    text-transform:uppercase;letter-spacing:0.5px;
}
.news-card .news-badge.green{background:var(--bg-green-light)}
.news-card .news-badge.gold{background:var(--bg-gold-dark);color:#fff}
.news-card .news-stats{
    position:absolute;bottom:8px;right:8px;
    display:flex;gap:8px;
}
.news-card .news-stat{
    background:rgba(0,0,0,0.7);color:#fff;
    padding:3px 8px;border-radius:3px;
    font-size:11px;display:flex;align-items:center;gap:4px;
}
.news-card .news-body{padding:14px}
.news-card .news-title{font-size:15px;font-weight:600;line-height:1.4;margin-bottom:8px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.news-card .news-meta{font-size:12px;color:var(--text-secondary);display:flex;justify-content:space-between;align-items:center}
.news-card .news-date{display:flex;align-items:center;gap:4px}

/* === News List (horizontal) === */
.news-list{display:flex;flex-direction:column;gap:16px;margin-bottom:30px}
.news-item{
    display:flex;gap:16px;
    background:var(--bg-card);border-radius:var(--radius);
    overflow:hidden;border:1px solid var(--border-color);
    transition:all var(--transition);
}
.news-item:hover{border-color:var(--border-accent);box-shadow:var(--shadow)}
.news-item a{display:flex;gap:16px;color:var(--text-primary);width:100%}
.news-item .news-item-img{width:180px;min-height:120px;flex-shrink:0;overflow:hidden;position:relative}
.news-item .news-item-img img{width:100%;height:100%;object-fit:cover}
.news-item .news-item-body{padding:12px 14px 12px 0;flex:1;display:flex;flex-direction:column;justify-content:center}
.news-item .news-item-badge{
    display:inline-block;width:fit-content;
    background:var(--bg-red);color:#fff;
    padding:2px 8px;border-radius:3px;
    font-size:10px;font-weight:700;
    text-transform:uppercase;letter-spacing:0.5px;
    margin-bottom:8px;
}
.news-item .news-item-title{font-size:15px;font-weight:600;line-height:1.4;margin-bottom:6px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.news-item .news-item-excerpt{font-size:13px;color:var(--text-secondary);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.news-item .news-item-meta{font-size:12px;color:var(--text-muted);margin-top:8px;display:flex;gap:12px}

/* === Sidebar === */
.sidebar{display:flex;flex-direction:column;gap:24px}

.widget{background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border-color);overflow:hidden}
.widget-title{
    font-size:1rem;font-weight:700;
    padding:14px 16px;
    border-bottom:2px solid var(--accent-red);
    display:flex;align-items:center;gap:8px;
    text-transform:uppercase;letter-spacing:0.5px;
    font-family:var(--font-heading);
}
.widget-title .widget-icon{color:var(--accent-red);font-size:16px}
.widget-body{padding:16px}

/* Sidebar Popular */
.popular-item{display:flex;gap:12px;padding:10px 0;border-bottom:1px solid var(--border-color)}
.popular-item:last-child{border-bottom:none;padding-bottom:0}
.popular-item:first-child{padding-top:0}
.popular-item-img{width:70px;height:70px;border-radius:4px;overflow:hidden;flex-shrink:0}
.popular-item-img img{width:100%;height:100%;object-fit:cover}
.popular-item-content{flex:1;min-width:0}
.popular-item-num{font-size:20px;font-weight:700;color:var(--accent-red);line-height:1;margin-bottom:4px;font-family:var(--font-heading)}
.popular-item-title{font-size:13px;font-weight:600;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.popular-item-title a{color:var(--text-primary)}
.popular-item-title a:hover{color:var(--accent-gold)}
.popular-item-date{font-size:11px;color:var(--text-muted);margin-top:4px}

/* Sidebar Categories */
.cat-list-item{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;border-bottom:1px solid var(--border-color);transition:background var(--transition)}
.cat-list-item:last-child{border-bottom:none}
.cat-list-item:hover{background:var(--bg-card-hover)}
.cat-list-item a{display:flex;align-items:center;gap:8px;color:var(--text-primary);font-size:14px;font-weight:500;width:100%}
.cat-list-item a:hover{color:var(--accent-gold)}
.cat-list-item .cat-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
.cat-list-item .cat-count{background:var(--bg-card-hover);padding:2px 8px;border-radius:10px;font-size:11px;color:var(--text-secondary)}

/* Sidebar Tags */
.tags-cloud{display:flex;flex-wrap:wrap;gap:8px}
.tag-item{
    padding:5px 12px;background:var(--bg-card-hover);
    border:1px solid var(--border-color);border-radius:var(--radius);
    font-size:12px;color:var(--text-secondary);
    transition:all var(--transition);
}
.tag-item:hover{background:var(--accent-red);color:#fff;border-color:var(--accent-red)}

/* === Single Post === */
.single-layout{display:grid;grid-template-columns:1fr 340px;gap:30px}
.single-post{background:var(--bg-card);border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--border-color)}
.single-post-header{padding:25px 30px;border-bottom:1px solid var(--border-color)}
.single-post-category{display:inline-block;background:var(--accent-red);color:#fff;padding:4px 12px;border-radius:3px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1px;margin-bottom:12px}
.single-post-title{font-family:var(--font-heading);font-size:1.8rem;font-weight:700;line-height:1.3;margin-bottom:12px}
.single-post-meta{display:flex;flex-wrap:wrap;gap:16px;font-size:13px;color:var(--text-secondary)}
.single-post-meta span{display:flex;align-items:center;gap:5px}
.single-post-thumb{width:100%;line-height:0}
.single-post-thumb img{width:100%;height:auto}
.single-post-content{padding:25px 30px;line-height:1.8}
.single-post-content p{margin-bottom:18px}
.single-post-content h2,.single-post-content h3{font-family:var(--font-heading);margin:24px 0 12px;color:var(--accent-gold)}
.single-post-content h2{font-size:1.4rem}
.single-post-content h3{font-size:1.2rem}
.single-post-content img{border-radius:var(--radius);margin:18px 0}
.single-post-content blockquote{border-left:4px solid var(--accent-red);padding:14px 20px;background:var(--bg-nav);border-radius:0 var(--radius) var(--radius) 0;margin:18px 0;font-style:italic;color:var(--text-secondary)}
.single-post-content ul,.single-post-content ol{padding-left:24px;margin:14px 0}
.single-post-content li{margin-bottom:8px;line-height:1.6}
.single-post-content a{color:var(--accent-gold);text-decoration:underline}
.single-post-content a:hover{color:#f0d060}
.single-post-content pre{background:var(--bg-header);padding:16px;border-radius:var(--radius);overflow-x:auto;margin:18px 0}
.single-post-content code{background:var(--bg-nav);padding:2px 6px;border-radius:3px;font-size:0.9em}
.single-post-content table{width:100%;border-collapse:collapse;margin:18px 0}
.single-post-content th,.single-post-content td{padding:10px 14px;border:1px solid var(--border-color);text-align:left}
.single-post-content th{background:var(--bg-nav);font-weight:600}

.single-post-tags{display:flex;flex-wrap:wrap;gap:8px;padding:18px 30px;border-top:1px solid var(--border-color)}

/* Post Nav */
.post-nav{display:flex;gap:16px;margin:24px 0}
.post-nav a{
    flex:1;padding:14px 18px;
    background:var(--bg-card);border:1px solid var(--border-color);
    border-radius:var(--radius);color:var(--text-primary);
    transition:all var(--transition);font-size:14px;
}
.post-nav a:hover{border-color:var(--accent-red);background:var(--bg-card-hover);color:var(--accent-gold)}
.post-nav-next{text-align:right}

/* === Pagination === */
.pagination{display:flex;justify-content:center;align-items:center;gap:6px;margin-top:30px;padding-top:20px;border-top:1px solid var(--border-color)}
.pagination a,.pagination span{
    padding:8px 14px;border-radius:var(--radius);
    background:var(--bg-card);border:1px solid var(--border-color);
    color:var(--text-primary);font-size:14px;transition:all var(--transition);
}
.pagination a:hover{background:var(--accent-red);border-color:var(--accent-red);color:#fff}
.pagination .current{background:var(--accent-red);border-color:var(--accent-red);color:#fff}

/* === Page Header === */
.page-hero{
    background:linear-gradient(135deg,var(--bg-nav) 0%,var(--bg-header) 100%);
    padding:40px 0;border-bottom:3px solid var(--accent-red);
    margin-bottom:30px;
}
.page-hero h1{font-family:var(--font-heading);font-size:2rem;margin-bottom:8px}
.page-hero p{color:var(--text-secondary);font-size:15px}
.breadcrumb{font-size:13px;color:var(--text-muted);margin-bottom:12px}
.breadcrumb a{color:var(--text-secondary)}
.breadcrumb a:hover{color:var(--accent-gold)}

/* === Comments === */
.comments-wrap{background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-color);padding:25px 30px;margin-top:30px}
.comments-title{font-family:var(--font-heading);font-size:1.3rem;margin-bottom:20px;padding-bottom:12px;border-bottom:2px solid var(--accent-red)}

/* === Footer === */
.site-footer{background:var(--bg-header);border-top:3px solid var(--accent-red);padding:40px 0 0;margin-top:40px}
.footer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-bottom:30px}
.footer-col-title{font-family:var(--font-heading);font-size:1.1rem;font-weight:700;margin-bottom:16px;padding-bottom:10px;border-bottom:2px solid var(--accent-red);display:flex;align-items:center;gap:8px}
.footer-col-title .fc-icon{color:var(--accent-red)}
.footer-about p{font-size:14px;color:var(--text-secondary);line-height:1.7;margin-bottom:12px}
.footer-links ul{display:flex;flex-direction:column;gap:8px}
.footer-links li a{color:var(--text-secondary);font-size:14px;display:flex;align-items:center;gap:6px}
.footer-links li a:hover{color:var(--accent-gold)}
.footer-links li a::before{content:'›';color:var(--accent-red);font-weight:700}
.footer-bottom{
    border-top:1px solid var(--border-color);
    padding:16px 0;
    display:flex;justify-content:space-between;align-items:center;
    flex-wrap:wrap;gap:10px;
    font-size:13px;color:var(--text-muted);
}
.footer-18{background:var(--accent-red);color:#fff;padding:4px 12px;border-radius:4px;font-weight:700}

/* === 404 === */
.error-404{text-align:center;padding:60px 0}
.error-code{font-size:6rem;font-weight:700;color:var(--accent-red);font-family:var(--font-heading);line-height:1}
.error-msg{font-size:1.3rem;margin:16px 0 24px;color:var(--text-secondary)}

/* === Responsive === */
@media(max-width:1024px){
    .content-grid,.single-layout{grid-template-columns:1fr}
    .footer-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:768px){
    .news-grid{grid-template-columns:repeat(2,1fr)}
    .featured-post .featured-title{font-size:1.2rem}
    .featured-post .featured-img{height:280px}
    .news-item{flex-direction:column}
    .news-item .news-item-img{width:100%;min-height:180px}
    .news-item .news-item-body{padding:14px}
    .footer-grid{grid-template-columns:1fr}
    .header-search{display:none}
    .single-post-header{padding:20px}
    .single-post-content{padding:20px}
    .nav-list li a{padding:10px 14px;font-size:13px}
}
@media(max-width:480px){
    .news-grid{grid-template-columns:1fr}
    .site-logo{font-size:1.2rem}
    .featured-post .featured-img{height:200px}
    .single-post-title{font-size:1.3rem}
    .post-nav{flex-direction:column}
}

/* === Scroll to top === */
.scroll-top{
    position:fixed;bottom:30px;right:30px;
    width:44px;height:44px;border-radius:50%;
    background:var(--accent-red);color:#fff;
    border:none;cursor:pointer;font-size:18px;
    display:none;align-items:center;justify-content:center;
    box-shadow:0 4px 12px rgba(139,0,0,0.4);
    z-index:999;
    transition:background var(--transition);
}
.scroll-top:hover{background:var(--bg-red-hover)}
