/*
Theme Name: News
Theme URI: 
Author: AW
Author URI: 
Description: A modern, fast and optimized news theme
Version: 0.6
Requires at least: 6.5
Tested up to: 6.7
Requires PHP: 8.2
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: news-theme
Tags: news, blog, grid-layout, one-column, two-columns, custom-logo, custom-menu, featured-images, footer-widgets, full-width-template, translation-ready

This theme is designed with performance and SEO in mind.
*/

/* ===== SELF-HOSTED FONTS =====
 * No local() sources — Firefox's font visibility policy (in strict privacy /
 * resistFingerprinting mode) blocks local font lookups and prints a console
 * warning. By shipping only url()-based sources we avoid that warning and
 * drop the external fonts.googleapis.com / fonts.gstatic.com dependency.
 *
 * font-display: swap — text paints immediately with the fallback and
 * re-paints with the web font when it loads (best LCP, no FOIT).
 */
@font-face{
    font-family:'Montserrat';font-style:normal;font-weight:400;font-display:swap;
    src:url('assets/fonts/montserrat-400.woff2') format('woff2');
    unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}
@font-face{
    font-family:'Montserrat';font-style:normal;font-weight:500;font-display:swap;
    src:url('assets/fonts/montserrat-500.woff2') format('woff2');
    unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}
@font-face{
    font-family:'Montserrat';font-style:normal;font-weight:600;font-display:swap;
    src:url('assets/fonts/montserrat-600.woff2') format('woff2');
    unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}
@font-face{
    font-family:'Montserrat';font-style:normal;font-weight:700;font-display:swap;
    src:url('assets/fonts/montserrat-700.woff2') format('woff2');
    unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}
@font-face{
    font-family:'Montserrat Alternates';font-style:normal;font-weight:400;font-display:swap;
    src:url('assets/fonts/montserrat-alternates-400.woff2') format('woff2');
    unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}
@font-face{
    font-family:'Montserrat Alternates';font-style:normal;font-weight:500;font-display:swap;
    src:url('assets/fonts/montserrat-alternates-500.woff2') format('woff2');
    unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}
@font-face{
    font-family:'Montserrat Alternates';font-style:normal;font-weight:600;font-display:swap;
    src:url('assets/fonts/montserrat-alternates-600.woff2') format('woff2');
    unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}
@font-face{
    font-family:'Montserrat Alternates';font-style:normal;font-weight:700;font-display:swap;
    src:url('assets/fonts/montserrat-alternates-700.woff2') format('woff2');
    unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}
@font-face{
    font-family:'Open Sans';font-style:normal;font-weight:400;font-display:swap;
    src:url('assets/fonts/open-sans-400.woff2') format('woff2');
    unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}
@font-face{
    font-family:'Open Sans';font-style:normal;font-weight:500;font-display:swap;
    src:url('assets/fonts/open-sans-500.woff2') format('woff2');
    unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}
@font-face{
    font-family:'Open Sans';font-style:normal;font-weight:600;font-display:swap;
    src:url('assets/fonts/open-sans-600.woff2') format('woff2');
    unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}
@font-face{
    font-family:'Open Sans';font-style:normal;font-weight:700;font-display:swap;
    src:url('assets/fonts/open-sans-700.woff2') format('woff2');
    unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}

:root {
    --container-width: 1000px;
    --header-height: 60px;
    --header-bg: #ffffff;
    --header-text: #333333;
    --sidebar-width: 300px;
    --content-spacing: 30px;
    --max-width: 1000px;
    --blockquote-color: #4a5568;
    --heading-color: #2d3748;
    --paragraph-color: #333;
    --dark-mode-text-color: #e2e8f0;
    --dark-mode-heading-color: #e2e8f0;
    --site-background: #f7fafc;
    --body-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
    --heading-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
    --header-background: #f8f8f8;
    --header-bg-overlay: rgba(248, 248, 248, 0.78);
    --header-border: rgba(15, 23, 42, 0.08);
    --tool-hover-bg: rgba(0, 0, 0, 0.05);
    --dark-site-background: #1a202c;
    --dark-header-background: #0e121c;
    --dark-header-bg-overlay: rgba(14, 18, 28, 0.82);
    --dark-header-border: rgba(255, 255, 255, 0.08);
    --dark-tool-hover-bg: rgba(255, 255, 255, 0.08);
    --accent-color: #007bff;
    --dark-accent-color: #4299e1;
    --single-content-width: 800px;
}

/* Reset and base styles */
* {
    margin: 0;
    padding: 0;
    /*box-sizing: border-box;*/
}

body {
    background-color: var(--site-background);
    color: var(--paragraph-color);
    font-family: var(--body-font);
    line-height: 1.6;
}

/* ============================================================================
   A11Y — screen-reader-only text + skip link + global focus ring.
   ============================================================================ */
.screen-reader-text {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
    white-space: nowrap;
}
.skip-link {
    position: absolute;
    top: 4px;
    left: 4px;
    z-index: 100000;
    padding: 10px 16px;
    background: var(--accent-color);
    color: #fff !important;
    font-weight: 700;
    text-decoration: none;
    border-radius: 4px;
}
.skip-link:not(:focus) {
    /* Hidden visually but reachable by keyboard. */
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
    white-space: nowrap;
}
/* Visible focus ring on every interactive element (keyboard nav). Tone it
   down on input fields where browsers already render a clear focus. */
a:focus-visible,
button:focus-visible,
[role="button"]:focus-visible,
summary:focus-visible {
    outline: 2px solid var(--accent-color);
    outline-offset: 2px;
    border-radius: 3px;
}
[data-theme="dark"] a:focus-visible,
[data-theme="dark"] button:focus-visible,
[data-theme="dark"] [role="button"]:focus-visible,
[data-theme="dark"] summary:focus-visible {
    outline-color: var(--dark-accent-color);
}

h1, h2, h3, h4, h5, h6 {
    font-family: var(--heading-font);
    color: var(--heading-color);
    line-height: 1.3;
}

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

/* Header and Logo Styles */
/* ===== SITE HEADER =====
 * Distinct from proit/finway/kurazh (which use centered logo + sticky nav
 * below). Here we keep a single fixed top row: logo left, nav center-right,
 * tool buttons at the far right. Polished with:
 *  - subtle border-bottom + tiny shadow on scroll (CSS-only via sticky
 *    back-drop feel — actual shadow added via JS IntersectionObserver);
 *  - underline-slide animation on nav items;
 *  - rounded hover backgrounds on tool buttons.
 */
.site-header {
    background: var(--header-bg-overlay);
    backdrop-filter: saturate(180%) blur(14px);
    -webkit-backdrop-filter: saturate(180%) blur(14px);
    border-bottom: 1px solid var(--header-border);
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1000;
    height: var(--header-height);
    display: flex;
    align-items: center;
    transition: box-shadow .25s ease, background-color .25s ease;
}
.site-header.is-scrolled {
    box-shadow: 0 4px 12px rgba(15, 23, 42, .06), 0 2px 4px rgba(15, 23, 42, .04);
}
[data-theme="dark"] .site-header {
    background: var(--dark-header-bg-overlay);
    border-bottom-color: var(--dark-header-border);
}
[data-theme="dark"] .site-header.is-scrolled {
    box-shadow: 0 4px 12px rgba(0, 0, 0, .40), 0 2px 4px rgba(0, 0, 0, .20);
}

.header-content {
    max-width: var(--container-width);
    width: 100%;
    height: 100%;
    margin: 0 auto;
    padding: 0 var(--content-spacing);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.site-branding {
    display: flex;
    align-items: center;
    height: auto;
    flex-shrink: 0;
}

.site-logo {
    height: calc(var(--header-height) - 24px);
    display: flex;
    align-items: center;
}

.logo-link {
    display: block;
    height: 100%;
}

.custom-logo {
    height: 100%;
    width: auto;
    display: block;
}

.light-mode-logo { display: block; }
.dark-mode-logo { display: none; }
[data-theme="dark"] .light-mode-logo { display: none; }
[data-theme="dark"] .dark-mode-logo { display: block; }

/* Primary nav — uppercase, compact, Minprom-like */
.main-navigation ul {
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
    gap: 1.5rem;
    text-transform: uppercase;
}

.main-navigation a {
    position: relative;
    display: inline-flex;
    align-items: center;
    padding: 0.5rem 0;
    color: var(--heading-color);
    font-weight: 700;
    font-size: 0.8125rem;
    letter-spacing: 0.06em;
    text-decoration: none;
    transition: color .2s ease;
}
.main-navigation a:hover,
.main-navigation .current-menu-item > a,
.main-navigation .current_page_item > a,
.main-navigation .current-menu-ancestor > a {
    color: var(--accent-color);
}

/* Animated underline on hover — top-level items only (mirrors .footer-menu). */
.main-navigation .main-menu > li > a::after {
    content: '';
    position: absolute;
    left: 2px;
    right: 2px;
    bottom: 2px;
    height: 1px;
    background: currentColor;
    opacity: 0;
    transform: translateY(2px);
    transition: opacity .2s ease, transform .2s ease;
}
.main-navigation .main-menu > li > a:hover::after {
    opacity: 1;
    transform: translateY(0);
}

/* Header tool buttons (search / theme / lang) — Minprom-style square pills.
   Wraps every interactive icon so a single gap controls icon spacing. */
.header-actions {
    display: flex;
    align-items: center;
    gap: 4px;
}

.tool-btn,
.theme-toggle,
.search-toggle {
    background: none;
    border: none;
    width: 36px;
    height: 36px;
    padding: 0;
    cursor: pointer;
    color: var(--heading-color);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    transition: background-color .2s ease, color .2s ease;
    text-decoration: none;
    flex-shrink: 0;
}
.tool-btn:hover,
.theme-toggle:hover,
.search-toggle:hover {
    background: var(--tool-hover-bg);
    color: var(--accent-color);
}
.tool-btn:focus-visible,
.theme-toggle:focus-visible,
.search-toggle:focus-visible {
    outline: 2px solid var(--accent-color);
    outline-offset: 2px;
}
.tool-btn svg,
.theme-toggle svg,
.search-toggle svg { width: 20px; height: 20px; display: block; }

/* Language switcher — small popup on hover/focus, sits in header tools row. */
.lang-switcher {
    position: relative;
    display: inline-flex;
    align-items: center;
}
.lang-switcher__btn {
    /* uses .tool-btn base styles */
}
.lang-switcher__popup {
    position: absolute;
    top: calc(100% + 6px);
    right: 0;
    min-width: 88px;
    margin: 0;
    padding: 6px;
    list-style: none;
    background: var(--header-background);
    border: 1px solid var(--header-border);
    border-radius: 8px;
    box-shadow: 0 12px 32px rgba(15, 23, 42, .10), 0 4px 8px rgba(15, 23, 42, .06);
    opacity: 0;
    visibility: hidden;
    transform: translateY(-6px);
    transition: opacity .15s ease, transform .15s ease, visibility 0s linear .15s;
    z-index: 1050;
}
.lang-switcher:hover .lang-switcher__popup,
.lang-switcher:focus-within .lang-switcher__popup,
.lang-switcher.is-open .lang-switcher__popup {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    transition-delay: 0s;
}
.lang-switcher__item {
    margin: 0;
}
.lang-switcher__item > a,
.lang-switcher__item > span {
    display: block;
    padding: 6px 12px;
    font-size: 0.8125rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--heading-color);
    text-decoration: none;
    border-radius: 6px;
    transition: background-color .15s ease, color .15s ease;
}
.lang-switcher__item > a:hover,
.lang-switcher__item > a:focus {
    background: var(--tool-hover-bg);
    color: var(--accent-color);
}
.lang-switcher__item.is-current > span {
    color: var(--accent-color);
    cursor: default;
}
[data-theme="dark"] .lang-switcher__popup {
    background: var(--dark-header-background);
    border-color: var(--dark-header-border);
    box-shadow: 0 12px 32px rgba(0, 0, 0, .50), 0 4px 8px rgba(0, 0, 0, .30);
}
[data-theme="dark"] .lang-switcher__item > a,
[data-theme="dark"] .lang-switcher__item > span {
    color: var(--dark-mode-text-color);
}
[data-theme="dark"] .lang-switcher__item > a:hover,
[data-theme="dark"] .lang-switcher__item > a:focus {
    background: var(--dark-tool-hover-bg);
    color: var(--dark-accent-color);
}
[data-theme="dark"] .lang-switcher__item.is-current > span {
    color: var(--dark-accent-color);
}

.light-icon {
    display: block;
}

.dark-icon {
    display: none;
}

[data-theme="dark"] .light-icon {
    display: none;
}

[data-theme="dark"] .dark-icon {
    display: block;
}

[data-theme="dark"] .main-navigation a,
[data-theme="dark"] .social-icon,
[data-theme="dark"] .tool-btn,
[data-theme="dark"] .theme-toggle,
[data-theme="dark"] .search-toggle {
    color: var(--dark-mode-text-color);
}
[data-theme="dark"] .main-navigation a:hover,
[data-theme="dark"] .main-navigation .current-menu-item > a,
[data-theme="dark"] .main-navigation .current_page_item > a,
[data-theme="dark"] .main-navigation .current-menu-ancestor > a {
    color: var(--dark-accent-color);
}
[data-theme="dark"] .tool-btn:hover,
[data-theme="dark"] .theme-toggle:hover,
[data-theme="dark"] .search-toggle:hover {
    background: var(--dark-tool-hover-bg);
    color: var(--dark-accent-color);
}

/* Dropdown Menu Styles */
.main-navigation .menu-item-has-children {
    position: relative;
}

.main-navigation .menu-item-has-children > a {
    position: relative;
    padding-right: 1.5rem;
}

.main-navigation .menu-item-has-children > a::after {
    content: '';
    display: inline-block;
    width: 6px;
    height: 6px;
    border: solid currentColor;
    border-width: 0 2px 2px 0;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-75%) rotate(45deg);
    transition: transform 0.3s ease;
}

.main-navigation .sub-menu {
    display: none;
    position: absolute;
    top: 100%;
    left: -0.5rem;
    min-width: 12rem;
    margin: 0;
    list-style: none;
    background: var(--header-background);
    border: 1px solid var(--header-border);
    border-radius: 8px;
    box-shadow: 0 12px 32px rgba(15, 23, 42, .10), 0 4px 8px rgba(15, 23, 42, .06);
    padding: 6px;
    z-index: 1000;
}

.main-navigation .menu-item-has-children:hover > .sub-menu {
    display: block;
}

.main-navigation .sub-menu li {
    margin: 0;
    padding: 0;
}

.main-navigation .sub-menu a {
    display: block;
    padding: 6px 12px;
    font-size: 0.8125rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--heading-color);
    text-decoration: none;
    border-radius: 6px;
    white-space: nowrap;
    transition: background-color .15s ease, color .15s ease;
}

.main-navigation .sub-menu a:hover {
    background: var(--tool-hover-bg);
    color: var(--accent-color);
}

/* Dark mode styles for dropdown */
[data-theme="dark"] .main-navigation .sub-menu {
    background: var(--dark-header-background);
    border-color: var(--dark-header-border);
    box-shadow: 0 12px 32px rgba(0, 0, 0, .50), 0 4px 8px rgba(0, 0, 0, .30);
}

[data-theme="dark"] .main-navigation .sub-menu a {
    color: var(--dark-mode-text-color);
}

[data-theme="dark"] .main-navigation .sub-menu a:hover {
    background: var(--dark-tool-hover-bg);
    color: var(--dark-accent-color);
}

/* Mobile dropdown styles */
@media (max-width: 768px) {
    .main-navigation .sub-menu {
        display: none;
        position: static;
        width: 100%;
        background: rgba(0, 0, 0, 0.03);
        box-shadow: none;
        border: none;
        border-radius: 0;
        margin: 0.5rem 0;
        padding: 0.5rem 0;
    }

    [data-theme="dark"] .main-navigation .sub-menu {
        background: rgba(255, 255, 255, 0.05);
    }

    .main-navigation .menu-item-has-children {
        position: relative;
    }

    .main-navigation .menu-item-has-children > a {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding-right: 35px;
    }

    .main-navigation .menu-item-has-children > a::after {
        right: 15px;
        width: 8px;
        height: 8px;
        border-width: 0 2px 2px 0;
    }

    .main-navigation .menu-item-has-children.active > a::after {
        transform: translateY(-25%) rotate(-135deg);
    }

    .main-navigation .sub-menu li {
        margin: 0;
    }

    .main-navigation .sub-menu a {
        padding: 0.8rem 2rem;
        font-size: 0.95em;
        border-left: 2px solid transparent;
        transition: all 0.3s ease;
    }

    .main-navigation .sub-menu a:hover,
    .main-navigation .sub-menu a:focus {
        background: transparent;
        border-left-color: var(--accent-color);
        padding-left: 2.5rem;
    }

    [data-theme="dark"] .main-navigation .sub-menu a:hover,
    [data-theme="dark"] .main-navigation .sub-menu a:focus {
        border-left-color: var(--dark-accent-color);
    }

    .main-navigation .menu-item-has-children > .sub-menu {
        max-height: 0;
        overflow: hidden;
        opacity: 0;
        transition: all 0.3s ease-in-out;
    }

    .main-navigation .menu-item-has-children.active > .sub-menu {
        max-height: 1000px;
        opacity: 1;
        display: block;
    }
}

/* Responsive Styles */
@media (max-width: 768px) {
    .menu-toggle {
        display: block;
        order: 1;
    }

    .header-right {
        position: fixed;
        top: 60px;
        left: 0;
        width: 100%;
        flex-direction: column;
        background: var(--header-background);
        padding: 20px;
        transform: translateX(-100%);
        transition: transform 0.3s ease;
        z-index: 100;
    }

    .header-right.active {
        transform: translateX(0);
    }

    .main-navigation ul {
        flex-direction: column;
        align-items: center;
    }

    .main-navigation li {
        margin: 10px 0;
    }

    .header-actions {
        justify-content: center;
    }

    [data-theme="dark"] .header-right {
        background: var(--dark-header-background);
    }
}

/* Dark mode styles */
[data-theme="dark"] body {
    background-color: var(--dark-site-background);
}

[data-theme="dark"] .light-mode-logo {
    opacity: 0;
}

[data-theme="dark"] .dark-mode-logo {
    opacity: 1;
}

[data-theme="dark"] .post-navigation a {
    color: #F0F0F0;
}

[data-theme="dark"] .widget-title {
    color: #657387;
}



/* Navigation */
.main-navigation {
    flex: 1;
}

.main-menu {
    list-style: none;
    display: flex;
    justify-content: center;
    gap: 20px;
}

.main-menu li {
    position: relative;
}

.main-menu a {
    color: var(--heading-color);
    text-decoration: none;
    font-size: 0.8125rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    transition: color 0.2s ease;
}

.main-menu a:hover {
    color: var(--accent-color);
}

[data-theme="dark"] .main-menu a {
    color: var(--dark-mode-text-color);
}
[data-theme="dark"] .main-menu a:hover {
    color: var(--dark-accent-color);
}

/* Social icons — sit inside .header-actions; share its 4px rhythm. */
.social-icons {
    display: flex;
    gap: 4px;
    align-items: center;
}

.social-icon {
    color: var(--header-text);
    text-decoration: none;
    transition: color 0.3s ease;
}

.social-icon:hover {
    color: var(--accent-color);
}

/* Theme toggle — sun/moon icon swap. Base button styles inherit from .tool-btn. */
.theme-toggle svg {
    stroke-width: 1.6;
    transition: transform 0.3s ease;
}
.theme-toggle .sun-icon { display: none; }
.theme-toggle .moon-icon { display: block; }
[data-theme="dark"] .theme-toggle .sun-icon {
    display: block;
    stroke: currentColor;
}
[data-theme="dark"] .theme-toggle .moon-icon { display: none; }

/* Container */
.site-content {
    display: flex;
    gap: var(--content-spacing);
    margin: var(--header-height) auto 0;
    max-width: var(--container-width);
    padding: 0 var(--content-spacing);
}

.sidebar,
#secondary.widget-area {
    width: var(--sidebar-width);
    flex-shrink: 0;
}

.site-main {
    flex: 1;
}

.home .sidebar,
.home #secondary.widget-area {
    order: -1; /* Left side on homepage */
}

.single .sidebar,
.single #secondary.widget-area {
    order: 1; /* Right side on single post */
}

/* Admin bar spacing */
.admin-bar .site-header {
    top: 32px;
}



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

    .admin-bar .site-content {
     /*   margin-top: calc(var(--header-height) + 46px);*/
    }
	
	.home .sidebar,
	.home #secondary.widget-area,
	.single #secondary.widget-area {
	width: 100%;
}


}

/* Article styles */
.article-card {
    display: flex;
    flex-direction: column;
    border: 1px solid #eee;
    border-radius: 4px;
    overflow: hidden;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    background: #fff;
    margin-bottom: 20px;
}

.article-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 5px 15px rgba(0,0,0,0.1);
}

.article-card .post-thumbnail {
    position: relative;
    /*aspect-ratio: 16/9;*/
    overflow: hidden;
    margin: 0;
}

.article-card .post-thumbnail img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.article-card .post-content {
    padding: 20px;
}

.article-card .post-meta {
    font-size: 0.9em;
    color: #666;
    margin-bottom: 10px;
    display: flex;
    align-items: center;
    gap: 15px;
}

.article-card .post-title {
    font-size: 1.3em;
    margin: 0 0 15px;
    line-height: 1.4;
}

.article-card .post-excerpt {
    color: #666;
    line-height: 1.6;
    margin: 0;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* Post Navigation */
.post-navigation {
    margin: 2rem 0;
    padding: 1rem 0;
    border-top: 1px solid #e2e8f0;
    border-bottom: 1px solid #e2e8f0;
}

.post-navigation .nav-links {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

.post-navigation .nav-previous,
.post-navigation .nav-next {
    margin: 1rem 0;
}

.post-navigation a {
    text-decoration: none;
    color: inherit;
}

.post-navigation .nav-subtitle {
    display: block;
    font-size: 0.875rem;
    color: #68768b;
    margin-bottom: 0.5rem;
}

.post-navigation .nav-title {
    font-size: 1.1rem;
    font-weight: 600;
    color: #2d3748;
}

.post-navigation a {
    text-decoration: none;
    display: block;
}

.post-navigation .nav-next {
    text-align: right;
}

/* Style 1 - Classic */
.nav-style1 {
    display: flex;
    justify-content: space-between;
    gap: 2rem;
}

.nav-style1 .nav-previous,
.nav-style1 .nav-next {
    flex: 1;
}

.nav-style1 .nav-next {
    text-align: right;
}

/* Style 2 - Modern Cards */
.nav-style2 {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 1.5rem;
}

.nav-style2 .nav-previous,
.nav-style2 .nav-next {
    background: #fff;
    border-radius: 8px;
    padding: 1rem;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease;
}

.nav-style2 .nav-thumbnail {
    margin-bottom: 1rem;
    border-radius: 4px;
    overflow: hidden;
}

.nav-style2 .nav-thumbnail img {
    width: 100%;
    height: 150px;
    object-fit: cover;
}

.nav-style2 .nav-previous:hover,
.nav-style2 .nav-next:hover {
    transform: translateY(-4px);
}

/* Style 3 - Minimal Arrows */
.nav-style3 {
    display: flex;
    justify-content: space-between;
    gap: 2rem;
}

.nav-style3 .nav-previous,
.nav-style3 .nav-next {
    position: relative;
    padding: 1rem 2rem;
}

.nav-style3 .nav-previous::before,
.nav-style3 .nav-next::after {
    content: '';
    position: absolute;
    top: 50%;
    width: 20px;
    height: 20px;
    border: 2px solid #718096;
    border-width: 2px 2px 0 0;
    transition: all 0.3s ease;
}

.nav-style3 .nav-previous::before {
    left: 0;
    transform: translateY(-50%) rotate(-135deg);
}

.nav-style3 .nav-next::after {
    right: 0;
    transform: translateY(-50%) rotate(45deg);
}

.nav-style3 .nav-previous:hover::before {
    left: -5px;
}

.nav-style3 .nav-next:hover::after {
    right: -5px;
}

/* Style 4 - Split Screen */
.nav-style4 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0;
    margin: 3rem 0;
    background: #f7fafc;
    border-radius: 12px;
    overflow: hidden;
}

.nav-style4 .nav-previous,
.nav-style4 .nav-next {
    position: relative;
    padding: 2rem;
    margin: 0;
    background: #f8f9fa;
    transition: all 0.3s ease;
}

.nav-style4 .nav-thumbnail {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0.2;
    transition: opacity 0.3s ease;
}

.nav-style4 .nav-thumbnail img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.nav-style4 .nav-content {
    position: relative;
    z-index: 1;
}

.nav-style4 .nav-previous:hover,
.nav-style4 .nav-next:hover {
    background: #2d3748;
}

.nav-style4 .nav-previous:hover .nav-title,
.nav-style4 .nav-next:hover .nav-title {
    color: #fff;
}

.nav-style4 .nav-previous:hover .nav-subtitle,
.nav-style4 .nav-next:hover .nav-subtitle {
    color: #e2e8f0;
}

.nav-style4 .nav-previous:hover .nav-thumbnail,
.nav-style4 .nav-next:hover .nav-thumbnail {
    opacity: 0.1;
}

/* Dark Mode Styles */
[data-theme="dark"] .post-navigation {
    border-color: #4a5568;
}

[data-theme="dark"] .nav-title {
    color: #e2e8f0;
}

[data-theme="dark"] .nav-subtitle {
    color: #a0aec0;
}

[data-theme="dark"] .nav-style2 .nav-previous,
[data-theme="dark"] .nav-style2 .nav-next {
    background: #2d3748;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
}

[data-theme="dark"] .nav-style3 .nav-previous::before,
[data-theme="dark"] .nav-style3 .nav-next::after {
    border-color: #a0aec0;
}

[data-theme="dark"] .nav-style4 {
    background: #2d3748;
}

[data-theme="dark"] .nav-style4 .nav-previous,
[data-theme="dark"] .nav-style4 .nav-next {
    background: #1a202c;
}

[data-theme="dark"] .nav-style4 .nav-previous:hover,
[data-theme="dark"] .nav-style4 .nav-next:hover {
    background: #2d3748;
}

/* Tags styling */
.entry-tags-wrapper {
    margin: 40px 0;
    padding: 30px;
    background: #f8f9fa;
    border-radius: 12px;
}

.entry-tags-wrapper.no-box {
    background: none;
    padding: 0;
    margin-top: 1rem;
}

.entry-tags-wrapper.no-box .entry-tags {
    margin: 0;
}

.tags-title {
    font-size: 1.2em;
    margin-bottom: 20px;
    color: #2d3748;
    font-weight: 600;
}

.entry-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.entry-tags a {
    display: inline-block;
    margin: 0.3rem;
    text-decoration: none;
    transition: all 0.2s ease;
}

.entry-tags[data-tag-style="tag-style1"] a {
    padding: 0.4rem 1.2rem;
    background: #f8f9fa;
    color: #4a5568;
    border-radius: 20px;
    font-size: 0.9em;
    box-shadow: 0 2px 4px rgba(0,0,0,0.05);
}

.entry-tags[data-tag-style="tag-style1"] a:hover {
    background: #e9ecef;
    color: #1a202c;
    transform: translateY(-1px);
    box-shadow: 0 4px 6px rgba(0,0,0,0.08);
}

.entry-tags[data-tag-style="tag-style2"] a {
    padding: 0.4rem 1.2rem;
    border: 1px solid #cbd5e0;
    color: #4a5568;
    border-radius: 4px;
    font-size: 0.9em;
}

.entry-tags[data-tag-style="tag-style2"] a:hover {
    border-color: #4a5568;
    color: #1a202c;
    background: rgba(74, 85, 104, 0.05);
}

.entry-tags[data-tag-style="tag-style3"] a {
    padding: 0.5rem 1.2rem;
    background: #4a5568;
    color: white;
    border-radius: 25px;
    font-size: 0.9em;
    font-weight: 500;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

.entry-tags[data-tag-style="tag-style3"] a:hover {
    background: #2d3748;
    transform: translateY(-1px);
    box-shadow: 0 4px 6px rgba(0,0,0,0.15);
}

.entry-tags[data-tag-style="tag-style4"] a {
    padding: 0.4rem 1.2rem;
    background: #e4e4e4;
    border-radius: 3px;
    color: #333;
    font-size: 0.9em;
    position: relative;
    z-index: 1;
    overflow: hidden;
}

.entry-tags[data-tag-style="tag-style4"] a::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(45deg, #6B7280, #4B5563);
    opacity: 0;
    z-index: -1;
    transition: opacity 0.3s ease;
}

.entry-tags[data-tag-style="tag-style4"] a:hover {
    color: white;
}

.entry-tags[data-tag-style="tag-style4"] a:hover::before {
    opacity: 1;
}

.entry-tags[data-tag-style="tag-style5"] a {
    padding: 0.4rem 1rem;
    background: rgba(128, 128, 128, 0.15);
    color: #666;
    font-size: 0.85em;
    position: relative;
    clip-path: polygon(0 0, 100% 0, 95% 100%, 0 100%);
}

.entry-tags[data-tag-style="tag-style5"] a:hover {
    background: rgba(128, 128, 128, 0.25);
    color: #333;
    transform: translateX(2px);
}

.entry-tags[data-tag-style="tag-style6"] a {
    padding: 0.3rem 0.6rem;
    color: #666;
    font-size: 0.9em;
    border: 1px solid #e0e0e0;
    position: relative;
}

.entry-tags[data-tag-style="tag-style6"] a::after {
    content: '';
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 0;
    height: 2px;
    background: #4a5568;
    transition: width 0.3s ease;
}

.entry-tags[data-tag-style="tag-style6"] a:hover {
    border-color: transparent;
    color: #333;
}

.entry-tags[data-tag-style="tag-style6"] a:hover::after {
    width: 100%;
}

.entry-tags[data-tag-style="tag-style7"] a {
    padding: 0.5rem 1.2rem;
    background: #fff;
    color: #4a5568;
    border-radius: 20px;
    font-size: 0.9em;
    box-shadow: 0 4px 6px rgba(0,0,0,0.1);
    transform: translateY(0);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.entry-tags[data-tag-style="tag-style7"] a:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 15px rgba(0,0,0,0.15);
    background: #4a5568;
    color: #fff;
}

.entry-tags[data-tag-style="tag-style8"] a {
    padding: 0.4rem 1.2rem;
    background: #1a202c;
    color: #fff;
    border-radius: 4px;
    font-size: 0.9em;
    position: relative;
    overflow: hidden;
    transition: all 0.3s ease;
}

.entry-tags[data-tag-style="tag-style8"] a::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(74, 222, 128, 0.2);
    opacity: 0;
    z-index: -1;
    transition: opacity 0.3s ease;
}

.entry-tags[data-tag-style="tag-style8"] a:hover {
    box-shadow: 0 0 15px rgba(74, 222, 128, 0.5);
}

.entry-tags[data-tag-style="tag-style8"] a:hover::before {
    opacity: 1;
}

.entry-tags[data-tag-style="tag-style9"] a {
    padding: 0.3rem 0.8rem 0.3rem 1.2rem;
    color: #4a5568;
    font-size: 0.9em;
    position: relative;
}

.entry-tags[data-tag-style="tag-style9"] a::before {
    content: '•';
    position: absolute;
    left: 0.4rem;
    color: #4a5568;
    opacity: 0.6;
}

.entry-tags[data-tag-style="tag-style9"] a:hover {
    color: #1a202c;
}

.entry-tags[data-tag-style="tag-style9"] a:hover::before {
    opacity: 1;
}

.entry-tags[data-tag-style="tag-style10"] a {
    padding: 0.5rem 1.2rem;
    background: #e2e8f0;
    color: #4a5568;
    border-radius: 6px;
    font-size: 0.9em;
    position: relative;
    transform-style: preserve-3d;
    transform: translateZ(0);
    transition: transform 0.3s ease, background 0.3s ease;
}

.entry-tags[data-tag-style="tag-style10"] a::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #cbd5e0;
    transform: translateZ(-6px);
    border-radius: 6px;
}

.entry-tags[data-tag-style="tag-style10"] a:hover {
    transform: translateZ(10px);
    background: #4a5568;
    color: #fff;
}

/* Dark mode tag styles */
[data-theme="dark"] .entry-tags[data-tag-style="tag-style1"] a {
    background: #2d3748;
    color: var(--dark-mode-text-color);
}

[data-theme="dark"] .entry-tags[data-tag-style="tag-style1"] a:hover {
    background: #4a5568;
    color: #fff;
}

[data-theme="dark"] .entry-tags[data-tag-style="tag-style2"] a {
    border-color: #4a5568;
    color: var(--dark-mode-text-color);
}

[data-theme="dark"] .entry-tags[data-tag-style="tag-style2"] a:hover {
    border-color: #e2e8f0;
    background: rgba(255, 255, 255, 0.1);
    color: #fff;
}

[data-theme="dark"] .entry-tags[data-tag-style="tag-style3"] a {
    background: #4a5568;
    color: #fff;
}

[data-theme="dark"] .entry-tags[data-tag-style="tag-style3"] a:hover {
    background: #2d3748;
}

[data-theme="dark"] .entry-tags[data-tag-style="tag-style4"] a {
    background: #2d3748;
    color: var(--dark-mode-text-color);
}

[data-theme="dark"] .entry-tags[data-tag-style="tag-style4"] a::before {
    background: linear-gradient(45deg, #4a5568, #2d3748);
}

[data-theme="dark"] .entry-tags[data-tag-style="tag-style4"] a:hover {
    color: #fff;
}

[data-theme="dark"] .entry-tags[data-tag-style="tag-style5"] a {
    background: rgba(255, 255, 255, 0.1);
    color: var(--dark-mode-text-color);
}

[data-theme="dark"] .entry-tags[data-tag-style="tag-style5"] a:hover {
    background: rgba(255, 255, 255, 0.15);
    color: #fff;
}

[data-theme="dark"] .entry-tags[data-tag-style="tag-style6"] a {
    color: var(--dark-mode-text-color);
    border-color: #4a5568;
}

[data-theme="dark"] .entry-tags[data-tag-style="tag-style6"] a::after {
    background: #e2e8f0;
}

[data-theme="dark"] .entry-tags[data-tag-style="tag-style6"] a:hover {
    color: #fff;
}

[data-theme="dark"] .entry-tags[data-tag-style="tag-style7"] a {
    background: #2d3748;
    color: var(--dark-mode-text-color);
    box-shadow: 0 4px 6px rgba(0,0,0,0.2);
}

[data-theme="dark"] .entry-tags[data-tag-style="tag-style7"] a:hover {
    background: #4a5568;
    color: #fff;
}

[data-theme="dark"] .entry-tags[data-tag-style="tag-style8"] a {
    background: #1a202c;
    border: 1px solid rgba(74, 222, 128, 0.3);
}

[data-theme="dark"] .entry-tags[data-tag-style="tag-style8"] a:hover {
    box-shadow: 0 0 15px rgba(74, 222, 128, 0.3);
}

[data-theme="dark"] .entry-tags[data-tag-style="tag-style9"] a {
    color: var(--dark-mode-text-color);
}

[data-theme="dark"] .entry-tags[data-tag-style="tag-style9"] a::before {
    color: var(--dark-mode-text-color);
}

[data-theme="dark"] .entry-tags[data-tag-style="tag-style9"] a:hover {
    color: #fff;
}

[data-theme="dark"] .entry-tags[data-tag-style="tag-style10"] a {
    background: #2d3748;
    color: var(--dark-mode-text-color);
}

[data-theme="dark"] .entry-tags[data-tag-style="tag-style10"] a::before {
    background: #1a202c;
}

[data-theme="dark"] .entry-tags[data-tag-style="tag-style10"] a:hover {
    background: #4a5568;
    color: #fff;
}

/* Single Post */
.single-content {
    /*max-width: 800px;
    margin: 0 auto;*/
    padding: 20px 20px 20px 0px;
}

.wp-block-gallery {
    margin-bottom: 10px;
}

.entry-header {
    margin-bottom: 2rem;
}

.entry-title {
    font-size: 2.1em;
    line-height: 1.2;
    margin: 0 0 1.5rem;
    color: #2d3748;
}

.entry-meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 1.5rem;
    padding-top: 1rem;
    border-top: 1px solid #e2e8f0;
}

.meta-left {
    flex: 1;
    min-width: 250px;
}

.post-author {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.author-avatar img {
    width: 40px;
    height: 40px;
    border-radius: 50%;
}

.author-info {
    display: flex;
    flex-direction: column;
}

.author-name {
    font-weight: 600;
    color: #2d3748;
    text-decoration: none;
}

.author-position {
    font-size: 0.9em;
    color: #68768b;
}

.meta-right {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    font-size: 0.9em;
}

.entry-date {
    color: #657387;
}

.entry-categories {
    display: flex;
    gap: 0.5rem;
}

.entry-categories a {
    padding: 0.3rem 0.8rem;
    background: #edf2f7;
    border-radius: 20px;
    color: #4a5568;
    text-decoration: none;
    transition: all 0.2s ease;
}

.entry-categories a:hover {
    background: #e2e8f0;
    color: #2d3748;
}

.entry-meta .category a:hover {
    background-color: var(--accent-color-hover);
    color: #fff;
}

/* Breadcrumbs */
.breadcrumbs {
    margin-bottom: 2rem;
   /* padding: 0.8rem 1.2rem;*/
    font-size: 0.9em;
    color: #718096;
}

.breadcrumbs a {
    color: #4a5568;
    text-decoration: none;
    transition: color 0.2s ease;
}

.breadcrumbs a:hover {
    color: #2d3748;
}

.breadcrumbs .separator {
    margin: 0 0.5rem;
    color: #a0aec0;
}

.breadcrumbs .current {
    color: #657387;
}

/* Breadcrumbs Styles */
.breadcrumbs-wrapper {
    margin-bottom: 2rem;
}

/* Style 1 - Classic */
.breadcrumbs-style1 {
    font-size: 0.875rem;
    color: #718096;
}

.breadcrumbs-style1 a {
    color: #2d3748;
    text-decoration: none;
    transition: color 0.2s ease;
}

.breadcrumbs-style1 a:hover {
    color: #1a202c;
}

.breadcrumbs-style1 .separator {
    margin: 0 0.5rem;
    color: #cbd5e0;
}

.breadcrumbs-style1 .separator::before,
.breadcrumbs-style2 .separator::before,
.breadcrumbs-style3 .separator::before,
.breadcrumbs-style6 .separator::before {
    content: '/';
}

/* Style 2 - Minimal Line */
.breadcrumbs-style2 {
    display: flex;
    align-items: center;
    font-size: 0.875rem;
}

.breadcrumbs-style2 a {
    color: #4a5568;
    text-decoration: none;
    position: relative;
}

.breadcrumbs-style2 a::after {
    content: '';
    position: absolute;
    width: 100%;
    height: 1px;
    bottom: -2px;
    left: 0;
    background-color: currentColor;
    transform: scaleX(0);
    transform-origin: right;
    transition: transform 0.3s ease;
}

.breadcrumbs-style2 a:hover::after {
    transform: scaleX(1);
    transform-origin: left;
}

.breadcrumbs-style2 .separator {
    margin: 0 0.5rem;
    height: 1px;
    width: 1.5rem;
    background-color: #e2e8f0;
}

/* Style 3 - Simple Text */
.breadcrumbs-style3 {
    font-size: 0.875rem;
    color: #718096;
}

.breadcrumbs-style3 a {
    color: #4a5568;
    text-decoration: none;
    transition: opacity 0.2s ease;
}

.breadcrumbs-style3 a:hover {
    opacity: 0.8;
}

.breadcrumbs-style3 .separator {
    margin: 0 0.5rem;
    opacity: 0.5;
}

/* Style 4 - Chevron Style */
.breadcrumbs-style4 {
    font-size: 0.875rem;
    color: #718096;
}

.breadcrumbs-style4 a {
    color: #4a5568;
    text-decoration: none;
    transition: color 0.2s ease;
}

.breadcrumbs-style4 a:hover {
    color: #2d3748;
}

.breadcrumbs-style4 .separator {
    margin: 0 0.5rem;
    color: #cbd5e0;
}

.breadcrumbs-style4 .separator::before {
    content: '>';
}

/* Style 5 - Dot Separator */
.breadcrumbs-style5 {
    font-size: 0.875rem;
    color: #718096;
}

.breadcrumbs-style5 a {
    color: #4a5568;
    text-decoration: none;
    transition: color 0.2s ease;
}

.breadcrumbs-style5 a:hover {
    color: #2d3748;
}

.breadcrumbs-style5 .separator {
    margin: 0 0.75rem;
    color: #cbd5e0;
}

.breadcrumbs-style5 .separator::before {
    content: '•';
}

/* Style 6 - Subtle Fade */
.breadcrumbs-style6 {
    font-size: 0.875rem;
    color: #718096;
}

.breadcrumbs-style6 a {
    color: #4a5568;
    text-decoration: none;
    transition: all 0.3s ease;
    position: relative;
}

.breadcrumbs-style6 a:hover {
    color: #2d3748;
}

.breadcrumbs-style6 a::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 100%;
    height: 1px;
    background: currentColor;
    opacity: 0;
    transform: translateY(3px);
    transition: opacity 0.2s ease, transform 0.2s ease;
}

.breadcrumbs-style6 a:hover::after {
    opacity: 0.5;
    transform: translateY(0);
}

.breadcrumbs-style6 .separator {
    margin: 0 0.5rem;
    color: #e2e8f0;
}

/* Dark Mode Support */
[data-theme="dark"] .breadcrumbs-style1,
[data-theme="dark"] .breadcrumbs-style3,
[data-theme="dark"] .breadcrumbs-style4,
[data-theme="dark"] .breadcrumbs-style5,
[data-theme="dark"] .breadcrumbs-style6 {
    color: #a0aec0;
}

[data-theme="dark"] .breadcrumbs-style1 a,
[data-theme="dark"] .breadcrumbs-style3 a,
[data-theme="dark"] .breadcrumbs-style4 a,
[data-theme="dark"] .breadcrumbs-style5 a,
[data-theme="dark"] .breadcrumbs-style6 a {
    color: #e2e8f0;
}

[data-theme="dark"] .breadcrumbs-style1 a:hover,
[data-theme="dark"] .breadcrumbs-style4 a:hover,
[data-theme="dark"] .breadcrumbs-style5 a:hover,
[data-theme="dark"] .breadcrumbs-style6 a:hover {
    color: #f7fafc;
}

[data-theme="dark"] .breadcrumbs-style2 a {
    color: #e2e8f0;
}

[data-theme="dark"] .breadcrumbs-style2 .separator {
    background-color: #4a5568;
}

[data-theme="dark"] .breadcrumbs-style1 .separator,
[data-theme="dark"] .breadcrumbs-style3 .separator,
[data-theme="dark"] .breadcrumbs-style4 .separator,
[data-theme="dark"] .breadcrumbs-style5 .separator,
[data-theme="dark"] .breadcrumbs-style6 .separator {
    color: #4a5568;
}

/* Dark mode styles */
[data-theme="dark"] .breadcrumbs {
    color: #a0aec0;
}

[data-theme="dark"] .breadcrumbs a {
    color: #e2e8f0;
}

[data-theme="dark"] .breadcrumbs a:hover {
    color: #fff;
}

[data-theme="dark"] .entry-title {
    color: #e2e8f0;
}

[data-theme="dark"] .entry-meta {
    border-top-color: #4a5568;
}

[data-theme="dark"] .author-name {
    color: #e2e8f0;
}

[data-theme="dark"] .author-position,
[data-theme="dark"] .entry-date {
    color: #a0aec0;
}

[data-theme="dark"] .entry-categories a {
    background: #2d2d2d;
    color: #e2e8f0;
}

[data-theme="dark"] .entry-categories a:hover {
    background: #4a5568;
    color: #fff;
}

/* Responsive styles */
@media screen and (max-width: 768px) {
    .entry-title {
        font-size: 1.7em;
    }

    .entry-meta {
        
        align-items: flex-start;
        gap: 1rem;
    }

    .meta-right {
        align-items: center;

        gap: 0.8rem;
    }

    .entry-categories {
        flex-wrap: wrap;
    }
}



/* Footer — Minprom-style two-row layout:
   top row: brand (logo + about) | menu (right-aligned)
   bottom row: copyright (centered above the page edge). */
.site-footer {
    background: #f7fafc;
    padding: 2.5rem 0 1.25rem;
    margin-top: 4rem;
}

.footer-content {
    max-width: var(--container-width);
    margin: 0 auto;
    padding: 0 var(--content-spacing);
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.footer-top {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: start;
    gap: 2rem;
}

.footer-brand {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    max-width: 32rem;
}

/* Footer logo — noticeably smaller than before */
.footer-logotype {
    width: 130px;
    max-width: 100%;
    margin: 0;
}
.footer-logotype .site-logo { height: auto; display: block; }
.footer-logotype .logo-link { display: block; }
.footer-logotype img {
    /* `display` is left to .light-mode-logo / .dark-mode-logo global rules
       so the correct logo shows per theme. Only size is forced here. */
    width: 100%;
    height: auto;
}

/* Fallback title when no logo is set */
.footer-logotype .site-title {
    margin: 0;
    font-size: 1.15rem;
    font-weight: 700;
}
.footer-logotype .site-title a { color: inherit; text-decoration: none; }

.footer-about {
    margin: 0;
    color: var(--paragraph-color);
    font-size: 0.875rem;
    line-height: 1.6;
}

.footer-bottom {
    border-top: 1px solid var(--header-border);
    padding-top: 1rem;
}

.footer-copyright {
    text-align: left;
    color: var(--paragraph-color);
    font-size: 0.82rem;
    line-height: 1.6;
    margin: 0 auto;
}

/* Footer menu — horizontal pills aligned to the right column on desktop. */
.footer-nav {
    display: flex;
    justify-content: flex-end;
}
.footer-menu {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 4px 18px;
}

@media (max-width: 767px) {
    .footer-top {
        grid-template-columns: 1fr;
        gap: 1.25rem;
    }
    .footer-nav,
    .footer-menu {
        justify-content: flex-start;
    }
}
.footer-menu li { margin: 0; padding: 0; }
.footer-menu a {
    display: inline-block;
    padding: 6px 2px;
    font-size: .82rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .4px;
    color: var(--paragraph-color);
    text-decoration: none;
    transition: color .2s ease;
    position: relative;
}
.footer-menu a::after {
    content: '';
    position: absolute;
    left: 2px; right: 2px; bottom: 2px;
    height: 1px;
    background: currentColor;
    opacity: 0;
    transform: translateY(2px);
    transition: opacity .2s ease, transform .2s ease;
}
.footer-menu a:hover,
.footer-menu .current-menu-item > a {
    color: var(--accent-color);
}
.footer-menu a:hover::after {
    opacity: 1;
    transform: translateY(0);
}

/* Dark Mode Footer — solid colour matching the dark-header overlay base. */
[data-theme="dark"] .site-footer {
    background: var(--dark-header-background);
}
[data-theme="dark"] .footer-copyright,
[data-theme="dark"] .footer-about {
    color: var(--dark-mode-text-color);
}
[data-theme="dark"] .footer-menu a {
    color: var(--dark-mode-text-color);
}
[data-theme="dark"] .footer-menu a:hover,
[data-theme="dark"] .footer-menu .current-menu-item > a {
    color: var(--dark-accent-color);
}

/* ============================================================================
   NEWS FEED — theme-owned news ticker rendered at the top of every sidebar.
   Replaces the third-party news-ticker plugin. Structure:
     <section.news-feed>
       <h3.news-feed__heading>
       <div.news-feed__list>
         <span.news-feed__day-label>{date}</span>           (one per day)
         <a.news-feed__item>
           <time.news-feed__time>{HH:MM}</time>
           <p.news-feed__title>
             <span.news-feed__top-badge>⚡</span>            (only on TOP category)
             {title — bold when TOP, normal otherwise}
           </p>
         </a>
       <a.news-feed__more>
   ============================================================================ */
.news-feed {
    /* Default — flush with the sidebar column on archive/single/search/author.
       The .widget rule already provides padding-top before any widget that
       follows the feed, so no bottom margin is needed either. */
    margin: 0;
}
/* On the home grid the feed sits in the same row as the slider — give it the
   matching 1.5rem so both columns start at the same y-coordinate. */
.site-content.is-home .news-feed {
    margin-top: 1.5rem;
}
/* Single posts have no archive-header above the layout, so the sidebar's
   first child (the feed) would otherwise sit flush against the fixed header.
   Push it down to align with the breadcrumb / article-header row. */
.single .news-feed {
    margin-top: 1.5rem;
}

.news-feed__heading {
    margin: 0 0 1rem;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid var(--accent-color);
    font-size: 0.875rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--heading-color);
}

.news-feed__list {
    display: flex;
    flex-direction: column;
}

.news-feed__day-label {
    display: block;
    margin: 1rem 0 0.5rem;
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--accent-color);
}
.news-feed__day-label:first-child { margin-top: 0; }

.news-feed__item {
    display: grid;
    grid-template-columns: 3rem 1fr;
    align-items: start;
    gap: 0.5rem;
    padding: 0.75rem 0;
    border-bottom: 1px solid var(--header-border);
    text-decoration: none;
    color: var(--heading-color);
    transition: color .15s ease;
}
.news-feed__item:hover { color: var(--accent-color); }
.news-feed__item:hover .news-feed__title { text-decoration: none; }

.news-feed__time {
    font-size: 0.75rem;
    font-weight: 600;
    line-height: 1.45;
    color: #737373;
}

.news-feed__title {
    margin: 0;
    font-size: 0.925rem;
    font-weight: 400;
    line-height: 1.4;
    color: inherit;
}
.news-feed__title b { font-weight: 700; }

.news-feed__top-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-right: 0.25rem;
    color: var(--accent-color);
    vertical-align: -1px;
}

.news-feed__more {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    margin-top: 1rem;
    font-size: 0.8125rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--accent-color);
    text-decoration: none;
    transition: gap .15s ease;
}
.news-feed__more:hover { gap: 0.625rem; }

/* Dark theme */
[data-theme="dark"] .news-feed__heading { color: var(--dark-mode-heading-color); }
[data-theme="dark"] .news-feed__day-label { color: var(--dark-accent-color); }
[data-theme="dark"] .news-feed__item {
    border-bottom-color: var(--dark-header-border);
    color: var(--dark-mode-text-color);
}
[data-theme="dark"] .news-feed__item:hover { color: var(--dark-accent-color); }
[data-theme="dark"] .news-feed__time { color: #9ca3af; }
[data-theme="dark"] .news-feed__top-badge { color: var(--dark-accent-color); }
[data-theme="dark"] .news-feed__more { color: var(--dark-accent-color); }

/* Sidebar Widgets */
.widget {
    margin-bottom: 30px;
    padding-top: 20px;
   /* background: #f8f9fa;
    border-radius: 8px;*/
}

.widget-title {
    font-size: 1.2rem;
    margin-bottom: 1rem;
    color: var(--header-text);
}

.home .news-grid {
    margin-top: 1.5rem;
}

/* Dark mode */
[data-theme="dark"] {
    background-color: #1a202c;
    color: var(--dark-mode-text-color);
}

[data-theme="dark"] .site-header {
   /* background: #2d2d2d;*/
}

[data-theme="dark"] .article-card {
    background: #1a202c;
    border-color: #404040;
}

[data-theme="dark"] .post-navigation .nav-previous,
[data-theme="dark"] .post-navigation .nav-next {
    background: #232936;
}

[data-theme="dark"] .post-navigation .nav-previous:hover,
[data-theme="dark"] .post-navigation .nav-next:hover {
    background: #1a202c;
}

[data-theme="dark"] .post-navigation .nav-title {
    color: #f0f0f0;
}

[data-theme="dark"] .entry-tags a {
    background-color: #2d3748;
    color: var(--dark-mode-text-color);
}

[data-theme="dark"] .entry-tags a:hover {
    background-color: #4a5568;
}

[data-theme="dark"] .news-title {
    color: #e2e8f0 !important;
}

/* Responsive Design */
@media (min-width: 768px) {
    .news-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 1024px) {
    .site-content {
        flex-direction: column;
    }

    .sidebar {
        max-width: 100%;
        order: 1 !important;
        margin: 0px auto;
    }

    /* Home mobile order: slider (above) → sidebar → main blocks.
       The slider is already outside .site-content, so we just need sidebar
       BEFORE main on home. Overrides the default `order:1` above. */
    .home .sidebar {
        order: -1 !important;
    }
}

@media (max-width: 768px) {
    .header-content {
        padding: 0.5rem 1rem;
        justify-content: space-between;
    }
    

    
    .main-menu {
        display: none; /* Will be handled by JS for mobile menu */
    }
    
 
    
    .single-content {
        padding: 20px 15px;
    }
    
    .footer-widgets {
        grid-template-columns: 1fr;
    }
}

/* Print Styles */
@media print {
    .site-header,
    .site-footer,
    .pagination,
    .entry-tags,
    .comments-area {
        display: none;
    }
    
    .site-content {
        margin: 0;
        padding: 0;
    }
    
    .entry-content {
        font-size: 12pt;
    }
}

.widget .news-date {
    margin-bottom: 10px;
    color: #657387;
}

.widget .news-title {
    font-size: 15px;
    color: #333;
}

.widget .news-time {
    color: #657387;
}

/* List Styles */
.entry-content ul,
.entry-content ol {
    margin: 1.5em 0;
    padding-left: 2.5em;
}

.entry-content ul {
    list-style: none;
}

.entry-content ul li {
    position: relative;
    margin-bottom: 0.8em;
}

.entry-content ul li::before {
    content: '';
    position: absolute;
    left: -1.5em;
    top: 0.5em;
    width: 6px;
    height: 6px;
    background-color: var(--blockquote-color);
    border-radius: 50%;
}

.entry-content ol {
    list-style: none;
    counter-reset: custom-counter;
}

.entry-content ol li {
    position: relative;
    margin-bottom: 0.8em;
    counter-increment: custom-counter;
}

.entry-content ol li::before {
    content: counter(custom-counter);
    position: absolute;
    left: -2.5em;
    width: 1.8em;
    height: 1.8em;
    line-height: 1.8em;
    text-align: center;
    background-color: var(--blockquote-color);
    color: white;
    border-radius: 50%;
    font-size: 0.8em;
    font-weight: 600;
}

/* Nested lists */
.entry-content ul ul,
.entry-content ol ol,
.entry-content ul ol,
.entry-content ol ul {
    margin: 0.8em 0;
}

/* Blockquote styles */
/* Style 1 - Classic (Default) */
blockquote.style1 {
    position: relative;
    margin: 2.5rem 0;
    padding: 2rem 3rem 2rem 4rem;
    background: #f8f9fa;
    border-radius: 8px;
    font-size: 1.1em;
    line-height: 1.6;
    color: #2d3748;
}

blockquote.style1::before {
    content: '"';
    position: absolute;
    left: 1rem;
    top: 1.5rem;
    font-family: Georgia, serif;
    font-size: 4em;
    line-height: 1;
    color: var(--blockquote-color);
    opacity: 0.3;
}

/* Style 2 - Modern Border Left */
blockquote.style2 {
    margin: 2.5rem 0;
    padding: 1.5rem 2rem;
    border-left: 4px solid var(--blockquote-color);
    background: linear-gradient(to right, rgba(var(--blockquote-color), 0.1), transparent);
    font-size: 1.1em;
    line-height: 1.6;
}

/* Style 3 - Minimal */
blockquote.style3 {
    margin: 2.5rem 0;
    padding: 2rem 0;
    border-top: 2px solid var(--blockquote-color);
    border-bottom: 2px solid var(--blockquote-color);
    text-align: center;
    font-size: 1.2em;
    line-height: 1.6;
    font-style: italic;
}

/* Style 4 - Box with Icon */
blockquote.style4 {
    position: relative;
    margin: 2.5rem 0;
    padding: 2.5rem 2rem 2rem;
    background: #f8f9fa;
    border-radius: 8px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

blockquote.style4::before {
    content: '❝';
    position: absolute;
    top: -1rem;
    left: 2rem;
    width: 2rem;
    height: 1.6rem;
    padding-top: 0.4rem;
    background: var(--blockquote-color);
    color: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5em;
    line-height: 1;
}

/* Common blockquote styles */
blockquote p {
    margin: 0 0 1rem 0;
}

blockquote p:last-child {
    margin-bottom: 0;
}

blockquote cite {
    display: block;
    margin-top: 1rem;
    font-size: 0.9em;
    color: #718096;
    font-style: italic;
}

blockquote cite::before {
    content: '—';
    margin-right: 0.5rem;
}

/* Dark mode blockquote styles */
[data-theme="dark"] blockquote.style1,
[data-theme="dark"] blockquote.style4 {
    background: #2d2d2d;
    color: #e2e8f0;
}

[data-theme="dark"] blockquote.style2 {
    background: linear-gradient(to right, rgba(var(--blockquote-color), 0.2), transparent);
}

[data-theme="dark"] blockquote cite {
    color: #a0aec0;
}

/* Responsive blockquote */
@media screen and (max-width: 768px) {
    blockquote {
        margin: 2rem 0;
        padding: 1.5rem 1.5rem 1.5rem 3rem;
        font-size: 1em;
    }

    blockquote::before {
        font-size: 3em;
        left: 0.8rem;
        top: 1.2rem;
    }
}

/* Tag Styles */
/* Style 1 - Classic (Default) */
.tag-style1 {
    display: inline-block;
    padding: 0.4rem 1rem;
    margin: 0.3rem;
    background: #f3f4f6;
    border-radius: 20px;
    color: #4a5568;
    text-decoration: none;
    transition: all 0.2s ease;
}

.tag-style1:hover {
    background: #e5e7eb;
    color: #1a202c;
}

/* Style 2 - Minimal Outline */
.tag-style2 {
    display: inline-block;
    padding: 0.4rem 1rem;
    margin: 0.3rem;
    border: 1px solid #cbd5e0;
    border-radius: 4px;
    color: #4a5568;
    text-decoration: none;
    transition: all 0.2s ease;
}

.tag-style2:hover {
    border-color: #4a5568;
    color: #1a202c;
}

/* Style 3 - Solid Rounded */
.tag-style3 {
    display: inline-block;
    padding: 0.5rem 1.2rem;
    margin: 0.3rem;
    background: #4a5568;
    border-radius: 25px;
    color: white;
    font-weight: 500;
    text-decoration: none;
    transition: all 0.2s ease;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

.tag-style3:hover {
    background: #2d3748;
    transform: translateY(-1px);
    box-shadow: 0 4px 6px rgba(0,0,0,0.1);
}

/* Style 4 - Modern Gradient (Updated) */
.tag-style4 {
    display: inline-block;
    padding: 0.4rem 1.2rem;
    margin: 0.3rem;
    background: #e4e4e4;
    border-radius: 3px;
    color: #333;
    font-size: 0.9em;
    text-decoration: none;
    transition: all 0.2s ease;
}

.tag-style4:hover {
    background: #d4d4d4;
    color: #000;
}

/* Style 5 - Sharp Corners (Updated) */
.tag-style5 {
    display: inline-block;
    padding: 0.3rem 0.8rem;
    margin: 0.3rem;
    background: rgba(128, 128, 128, 0.15);
    color: #666;
    text-decoration: none;
    font-size: 0.85em;
    transition: all 0.2s ease;
}

.tag-style5:hover {
    background: rgba(128, 128, 128, 0.25);
    color: #333;
}

/* Style 6 - Underlined (Updated) */
.tag-style6 {
    display: inline-block;
    padding: 0.3rem 0.6rem;
    margin: 0.3rem;
    color: #666;
    text-decoration: none;
    font-size: 0.9em;
    border: 1px solid #e0e0e0;
    transition: all 0.2s ease;
}

.tag-style6:hover {
    border-color: #999;
    color: #333;
}

/* Dark mode tag styles */
[data-theme="dark"] .tag-style4 {
    background: #2d3748;
    color: #e2e8f0;
}

[data-theme="dark"] .tag-style4:hover {
    background: #4a5568;
    color: #fff;
}

[data-theme="dark"] .tag-style5 {
    background: rgba(255, 255, 255, 0.1);
    color: #e2e8f0;
}

[data-theme="dark"] .tag-style5:hover {
    background: rgba(255, 255, 255, 0.15);
    color: #fff;
}

[data-theme="dark"] .tag-style6 {
    color: #e2e8f0;
    border-color: #4a5568;
}

[data-theme="dark"] .tag-style6:hover {
    border-color: #e2e8f0;
    color: #fff;
}

/* Entry Meta Styles */
.entry-meta {
    margin: 1.5rem 0;
    font-size: 0.875rem;
}

/* Style 1 - Classic */
.meta-style1 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
}

.meta-style1 .post-author {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.meta-style1 .author-avatar img {
    border-radius: 50%;
    width: 40px;
    height: 40px;
    object-fit: cover;
}

.meta-style1 .author-info {
    display: flex;
    flex-direction: column;
}

.meta-style1 .author-name {
    font-weight: 600;
    color: #2d3748;
}

.meta-style1 .author-position {
    color: #718096;
    font-size: 0.8125rem;
}

.meta-style1 .meta-right {
    display: flex;
    align-items: center;
    gap: 1.5rem;
}

/* Style 2 - Compact */
.meta-style2 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.75rem 0;
    border-bottom: 1px solid #e2e8f0;
}

.meta-style2 .author-info {
    display: inline-flex;
    gap: 0.5rem;
    align-items: baseline;
}

.meta-style2 .author-name {
    font-weight: 500;
}

.meta-style2 .meta-right {
    display: flex;
    gap: 1rem;
    color: #718096;
}

/* Style 3 - Minimal */
.meta-style3 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 0.8125rem;
    color: #718096;
}

.meta-style3 .author-position {
    display: none;
}

.meta-style3 .meta-right {
    display: flex;
    gap: 1rem;
}

/* Style 4 - Category First */
.meta-style4 {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    padding: 0.75rem 0;
    font-size: 0.875rem;
    color: #718096;
}

.meta-style4 .meta-category-date {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.meta-style4 .entry-categories {
    font-weight: 500;
}

.meta-style4 .meta-author {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    margin-left: auto;
}

.meta-style4 .author-name {
    font-weight: 500;
    color: #2d3748;
}

.meta-style4 .author-position {
    font-size: 0.8125rem;
    color: #718096;
}

/* Dark Mode Support */
[data-theme="dark"] .meta-style1 {
    border-color: #4a5568;
}

[data-theme="dark"] .meta-style1 .author-name,
[data-theme="dark"] .meta-style4 .author-name {
    color: #e2e8f0;
}

[data-theme="dark"] .meta-style1 .author-position,
[data-theme="dark"] .meta-style2,
[data-theme="dark"] .meta-style3,
[data-theme="dark"] .meta-style4 {
    color: #a0aec0;
}

[data-theme="dark"] .meta-style2 {
    border-color: #4a5568;
}

/* Post Content Styles */
.entry-content h2 {
    font-size: 1.875rem;
    line-height: 1.3;
    font-weight: 700;
    margin: 2rem 0 1.5rem;
    color: var(--heading-color);
}

.entry-content h3 {
    font-size: 1.5rem;
    line-height: 1.4;
    font-weight: 600;
    margin: 1.75rem 0 1.25rem;
    color: var(--heading-color);
}

.entry-content h4 {
    font-size: 1.25rem;
    line-height: 1.4;
    font-weight: 600;
    margin: 1.5rem 0 1rem;
    color: var(--heading-color);
}

.entry-content p {
    font-size: 1.125rem;
    line-height: 1.7;
    margin-bottom: 1.5rem;
    color: var(--paragraph-color);
}

/* Social Sharing */
.social-sharing {
    margin: 2rem 0;
    padding: 1.5rem;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
}

.social-sharing h3 {
    margin: 0 0 1rem;
    font-size: 1.25rem;
    color: var(--heading-color);
}

.share-buttons {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
}

.share-button {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1.25rem;
    border-radius: 6px;
    text-decoration: none;
    color: #fff;
    font-size: 0.875rem;
    transition: opacity 0.2s ease;
}

.share-button:hover {
    opacity: 0.9;
}

.share-button svg {
    width: 20px;
    height: 20px;
    fill: currentColor;
}

.share-button.facebook {
    background-color: #1877f2;
}

.share-button.telegram {
    background-color: #0088cc;
}

.share-button.viber {
    background-color: #665cac;
}

/* Social Sharing Styles */

/* Style 1 - Default */
.social-sharing.style1 {
    margin: 2rem 0;
    padding: 1.5rem;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
}

.social-sharing.style1 h3 {
    margin: 0 0 1rem;
    font-size: 1.25rem;
    color: var(--heading-color);
}

.social-sharing.style1 .share-buttons {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
}

.social-sharing.style1 .share-button {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1.25rem;
    border-radius: 6px;
    text-decoration: none;
    color: #fff;
    font-size: 0.875rem;
    transition: opacity 0.2s ease;
}

/* Style 2 - Tags Style */
.social-sharing.style2 {
    margin: 2rem 0;
}

.social-sharing.style2 h3 {
    margin: 0 0 1rem;
    font-size: 1rem;
    color: var(--heading-color);
}

.social-sharing.style2 .share-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.social-sharing.style2 .share-button {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    background: #f7fafc;
    border-radius: 4px;
    color: var(--heading-color);
    text-decoration: none;
    font-size: 0.875rem;
    transition: all 0.2s ease;
}

.social-sharing.style2 .share-button:hover {
    background: var(--heading-color);
    color: #fff;
}

.social-sharing.style2 .share-button svg {
    width: 16px;
    height: 16px;
    fill: currentColor;
}

/* Style 3 - Compact */
.social-sharing.style3 {
    margin: 1rem 0;
    text-align: center;
}

.social-sharing.style3 h3 {
    display: none;
}

.social-sharing.style3 .share-buttons {
    display: inline-flex;
    padding: 0.25rem;
    gap: 1.5rem;
}

.social-sharing.style3 .share-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.5rem;
    border-radius: 4px;
    border: 1px solid currentColor;
    color: var(--heading-color);
    transition: all 0.2s ease;
    background: transparent;
}

.social-sharing.style3 .share-button svg {
    width: 20px;
    height: 20px;
    fill: currentColor;
}

.social-sharing.style3 .share-button span {
    display: none;
}

.social-sharing.style3 .share-button:hover {
    transform: translateY(-2px);
}

.social-sharing.style3 .share-button.facebook {
    color: #1877f2;
}

.social-sharing.style3 .share-button.telegram {
    color: #0088cc;
}

.social-sharing.style3 .share-button.viber {
    color: #665cac;
}

[data-theme="dark"] .social-sharing.style3 .share-button {
    color: var(--dark-mode-text-color);
}

[data-theme="dark"] .social-sharing.style3 .share-button:hover {
    opacity: 0.8;
}

/* Style 4 - Modern */
.social-sharing.style4 {
    margin: 2rem 0;
    padding: 2rem;
    background: #f7fafc;
    border-radius: 12px;
}

.social-sharing.style4 h3 {
    margin: 0 0 1.5rem;
    font-size: 1.25rem;
    color: var(--heading-color);
    text-align: center;
}

.social-sharing.style4 .share-buttons {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 1rem;
}

.social-sharing.style4 .share-button {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
    padding: 1rem;
    border-radius: 8px;
    color: #fff;
    font-size: 0.875rem;
    transition: transform 0.2s ease;
}

.social-sharing.style4 .share-button:hover {
    transform: translateY(-2px);
}

/* Style 5 - Rounded */
.social-sharing.style5 {
    margin: 2rem 0;
}

.social-sharing.style5 h3 {
    margin: 0 0 1rem;
    font-size: 1.125rem;
    color: var(--heading-color);
}

.social-sharing.style5 .share-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
}

.social-sharing.style5 .share-button {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    border-radius: 50px;
    background: #f7fafc;
    color: var(--heading-color);
    font-size: 0.875rem;
    transition: all 0.2s ease;
}

.social-sharing.style5 .share-button:hover {
    color: #fff;
}

.social-sharing.style5 .share-button.facebook:hover {
    background: #1877f2;
}

.social-sharing.style5 .share-button.telegram:hover {
    background: #0088cc;
}

.social-sharing.style5 .share-button.viber:hover {
    background: #665cac;
}

.social-sharing.style5 .share-button svg {
    width: 16px;
    height: 16px;
}

/* Dark Mode Support for all styles */
[data-theme="dark"] .social-sharing.style1 {
    border-color: #4a5568;
}

[data-theme="dark"] .social-sharing.style2 .share-button {
    background: #2d3748;
    color: var(--dark-mode-text-color);
}

[data-theme="dark"] .social-sharing.style2 .share-button:hover {
    background: var(--dark-mode-heading-color);
    color: #1a202c;
}

[data-theme="dark"] .social-sharing.style3 .share-buttons {
    background: #2d3748;
}

[data-theme="dark"] .social-sharing.style4 {
    background: #2d3748;
}

[data-theme="dark"] .social-sharing.style5 .share-button {
    background: #2d3748;
    color: var(--dark-mode-text-color);
}

/* Common hover behaviour for all share-button variants. Base brand colours
   and svg sizing are defined once near .social-sharing.style1 above. */
.share-button:hover {
    opacity: 0.9;
}

/* Dark Mode Colors */
[data-theme="dark"] {
    background-color: #1a202c;
    color: var(--dark-mode-text-color);
}

[data-theme="dark"] .entry-content h1,
[data-theme="dark"] .entry-content h2,
[data-theme="dark"] .entry-content h3,
[data-theme="dark"] .entry-content h4,
[data-theme="dark"] .entry-content h5,
[data-theme="dark"] .entry-content h6 {
    color: var(--dark-mode-heading-color);
}

[data-theme="dark"] .entry-content p,
[data-theme="dark"] .entry-content li,
[data-theme="dark"] .entry-content blockquote {
    color: var(--dark-mode-text-color);
}

[data-theme="dark"] .author-name {
    color: var(--dark-mode-heading-color);
}

[data-theme="dark"] .author-name:hover {
    color: #4299e1;
}

[data-theme="dark"] .author-position,
[data-theme="dark"] .entry-date,
[data-theme="dark"] .entry-categories a {
    color: #a0aec0;
}

[data-theme="dark"] .social-sharing {
    border-color: #4a5568;
}

[data-theme="dark"] .social-sharing h3 {
    color: var(--dark-mode-heading-color);
}

/* Base styles */
a {
    color: var(--accent-color);
    text-decoration: none;
    transition: color 0.3s ease;
}

a:hover {
    color: var(--accent-color);
    opacity: 0.8;
}

/* Header colors — base styles defined above; this block kept for link tone only. */
.main-navigation a {
    color: var(--heading-color);
}

.main-navigation a:hover {
    color: var(--accent-color);
}

.social-icon {
    color: var(--heading-color);
}

.social-icon:hover {
    color: var(--accent-color);
}

/* Dark Mode Styles */
[data-theme="dark"] {
    background-color: var(--dark-site-background);
}

[data-theme="dark"] a {
    color: var(--dark-accent-color);
}

[data-theme="dark"] a:hover {
    color: var(--dark-accent-color);
    opacity: 0.8;
}

[data-theme="dark"] .main-navigation a {
    color: var(--dark-mode-text-color);
}

[data-theme="dark"] .main-navigation a:hover {
    color: var(--dark-accent-color);
}

[data-theme="dark"] .social-icon {
    color: var(--dark-mode-text-color);
}

[data-theme="dark"] .social-icon:hover {
    color: var(--dark-accent-color);
}

/* Footer Logo */
.footer-logo {
    max-width: 200px;
    margin: 0 auto;
}

.footer-logo .light-mode-logo {
    display: block;
    width: 100%;
    height: auto;
}

.footer-logo .dark-mode-logo {
    display: none;
    width: 100%;
    height: auto;
}

[data-theme="dark"] .footer-logo .custom-logo {
    display: none;
}

[data-theme="dark"] .footer-logo .dark-logo {
    display: block;
}

/* Archive Layout */
.content-with-sidebar {
    display: grid;
    grid-template-columns: 1fr 300px;
    gap: 2rem;
    max-width: var(--container-width);
    margin: 0 auto;
}


/* ============================================================================
   ARCHIVE / SEARCH / AUTHOR cards — Minprom-style newscard.
   Grid: thumb (13rem) | content. Thumb has fixed 4:3 aspect-ratio with rounded
   corners + hover scale. Title is editorial-weighted, excerpt clamps to 3 lines.
   ============================================================================ */
.post-card {
    display: grid;
    grid-template-columns: 13rem 1fr;
    gap: 1rem;
    padding: 1rem 0;
    margin: 0;
    border-bottom: 1px solid var(--header-border);
    align-items: start;
}
.post-card:first-of-type { padding-top: 0; }
.post-card:last-of-type  { border-bottom: 0; padding-bottom: 0; }

.post-card .post-thumbnail {
    position: relative;
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    border-radius: 4px;
    background: #f1f5f9;
}
.post-card .post-thumbnail img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .35s ease;
}
.post-card:hover .post-thumbnail img { transform: scale(1.04); }

.post-card .post-thumbnail-placeholder {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #cbd5e0;
}
.post-card .post-thumbnail-placeholder .dashicons {
    width: 40px;
    height: 40px;
    font-size: 40px;
}

/* Featured image on single posts — subtle rounding + light elevation, Minprom-style. */
.single .post-thumbnail {
    border-radius: 4px;
    overflow: hidden;
    box-shadow: 0 1px 2px rgba(15, 23, 42, .04), 0 1px 3px rgba(15, 23, 42, .06);
	margin-bottom: 2rem;
}
.single .post-thumbnail img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.post-content {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    min-width: 0;
}

.post-categories {
    margin-bottom: 0.25rem;
}

.category-link {
    font-size: 0.875rem;
    color: var(--accent-color);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.post-title {
    font-size: 1.0625rem;
    font-weight: 600;
    line-height: 1.35;
    margin: 0;
}

.post-title a {
    color: var(--heading-color);
    text-decoration: none;
}

.post-title a:hover {
    color: var(--accent-color);
}

.post-meta {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.75rem;
    color: var(--paragraph-color);
}
.post-meta time { color: inherit; }

.post-excerpt {
    color: var(--paragraph-color);
    font-size: 0.875rem;
    line-height: 1.5;
    margin: 0;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.post-excerpt p {
    margin: 0;
}

/* Dark Mode */
[data-theme="dark"] .post-card {
    border-bottom-color: var(--dark-header-border);
}
[data-theme="dark"] .post-card .post-thumbnail { background: #232936; }

[data-theme="dark"] .post-title a {
    color: var(--dark-mode-text-color);
}

[data-theme="dark"] .post-meta {
    color: var(--dark-mode-text-color);
}

[data-theme="dark"] .post-excerpt {
    color: var(--dark-mode-text-color);
}



/* Archive Header */
.archive-header {
    text-align: center;
    margin-bottom: 3rem;
    padding: 2rem 1rem;
  
    border-bottom: 1px solid #edf2f7;
}

.archive-title {
    font-size: 2rem;
    color: var(--heading-color);
    margin: 0;
}

.archive-description {
    max-width: 700px;
    margin: 1rem auto 0;
    color: #657387;
	font-size:10pt;
}

/* Pagination */


.pagination .page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 1.5rem;
    height: 1.5rem;
    padding: 0 0.5rem;
    margin: 0 0.25rem;
    border-radius: 4px;
    background: #fff;
    color: var(--heading-color);
    text-decoration: none;
    transition: all 0.2s ease;
}

.pagination .current {
    border: 1px solid var(--accent-color);
    background: none;
    color: #fff;
}

.pagination a.page-numbers:hover {
    background: var(--accent-color);
    color: #fff;
}

[data-theme="dark"] .pagination .page-numbers {
    background: #2d3748;
    color: var(--dark-mode-text-color);
}

.posts-grid {
    /*display: grid;*/
    gap: 1.5rem;
}

.post-thumbnail a {
    display: block;
    width: 100%;
    height: 100%;
}

.post-thumbnail img {
    width: 100%;
    height: auto;
    object-fit: cover;
}

.post-thumbnail-placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f7fafc;
    color: #cbd5e0;
}

.post-thumbnail-placeholder .dashicons {
    width: 48px;
    height: 48px;
    font-size: 48px;
}

/* Responsive */
@media (max-width: 1024px) {
    .content-with-sidebar {
        display: block;
        grid-template-columns: 1fr;
    }
    .posts-grid {
        display: block;
    }
}

@media (max-width: 600px) {
    .post-card {
        grid-template-columns: 8rem 1fr;
        gap: 0.75rem;
    }
    .post-title { font-size: 0.9375rem; }
    /* Hide the third excerpt line on small screens — title + meta + 2-line lead. */
    .post-excerpt { -webkit-line-clamp: 2; }
}
@media (max-width: 420px) {
    .post-card { grid-template-columns: 1fr; }
}

/* Pagination */
.pagination {
    margin-top: 2rem;
   /* display: flex;
    gap: 0.5rem;
    justify-content: center;
    align-items: center;*/
    text-align: center;
}

.pagination .page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.5rem 0.75rem;
    background: #f7fafc;
    color: var(--heading-color);
    text-decoration: none;
    border-radius: 4px;
    font-size: 0.875rem;
}



.pagination a.page-numbers:hover {
    background: var(--accent-color);
    color: #fff;
}

/* Dark Mode — archive header + pagination only (post-card overrides live above) */
[data-theme="dark"] .archive-title,
[data-theme="dark"] .page-title {
    color: var(--dark-mode-heading-color);
}
[data-theme="dark"] .archive-header {
    border-bottom-color: var(--dark-header-border);
}

[data-theme="dark"] .pagination .page-numbers {
    background: #2d3748;
    color: var(--dark-mode-text-color);
}

/* ============================================================================
   TAGS PAGE — alphabet navigation (page-tags.php). One letter loaded at a time;
   active letter server-rendered, others swapped via AJAX. Adapted from Finway.
   Wrapper sizing inherits from `.site-content` (max-width, padding, top margin
   under the fixed header); no per-template overrides needed.
   ============================================================================ */
.tags-alphabet {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    margin-bottom: 20px;
}
.tags-alphabet__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 32px;
    height: 32px;
    padding: 0 4px;
    border-radius: 4px;
    font-size: .82rem;
    font-weight: 700;
    color: var(--heading-color);
    background: #f7fafc;
    border: 1px solid var(--header-border);
    cursor: pointer;
    text-decoration: none;
    transition: background .15s ease, color .15s ease, border-color .15s ease;
}
.tags-alphabet__btn:hover,
.tags-alphabet__btn.is-active {
    background: var(--accent-color);
    color: #fff;
    border-color: var(--accent-color);
}
.tags-alphabet__btn.is-empty {
    opacity: .25;
    pointer-events: none;
    cursor: default;
}

.tags-content { transition: opacity .15s ease; }

.tags-letter__list {
    list-style: none;
    padding: 0;
    margin: 0;
    column-count: 3;
    column-gap: 20px;
}
.tags-letter__item {
    break-inside: avoid;
    margin-bottom: 2px;
}
.tags-letter__item a {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 4px 0;
    font-size: .9rem;
    color: var(--heading-color);
    text-decoration: none;
    transition: color .2s ease;
}
.tags-letter__item a:hover { color: var(--accent-color); }
.tags-letter__count {
    font-size: .7rem;
    color: var(--paragraph-color);
    background: #f1f5f9;
    padding: 1px 6px;
    border-radius: 10px;
    font-weight: 600;
    line-height: 1.4;
    flex-shrink: 0;
}
.tags-page__total {
    font-size: .82rem;
    color: var(--paragraph-color);
    margin-top: 16px;
}

@media (max-width: 768px) { .tags-letter__list { column-count: 2; } }
@media (max-width: 480px) { .tags-letter__list { column-count: 1; } }

/* Dark theme overrides — tokens map to existing dark palette. */
[data-theme="dark"] .tags-alphabet__btn {
    color: var(--dark-mode-text-color);
    background: #232936;
    border-color: var(--dark-header-border);
}
[data-theme="dark"] .tags-alphabet__btn:hover,
[data-theme="dark"] .tags-alphabet__btn.is-active {
    background: var(--dark-accent-color);
    color: #fff;
    border-color: var(--dark-accent-color);
}
[data-theme="dark"] .tags-letter__item a { color: var(--dark-mode-text-color); }
[data-theme="dark"] .tags-letter__item a:hover { color: var(--dark-accent-color); }
[data-theme="dark"] .tags-letter__count {
    background: rgba(255, 255, 255, .08);
    color: var(--dark-mode-text-color);
}

/* Hamburger Menu — fixed 40×40 hit-area (matches Apple HIG minimum) so the
   button is tappable across its full quadrant, not only on the 24×2 bars. */
.menu-toggle {
    display: none;
    background: none;
    border: none;
    cursor: pointer;
    position: relative;
    z-index: 1000;
    width: 40px;
    height: 40px;
    padding: 0;
    align-items: center;
    justify-content: center;
}

.hamburger-icon,
.hamburger-icon::before,
.hamburger-icon::after {
    display: block;
    width: 24px;
    height: 2px;
    background: var(--heading-color);
    transition: all 0.3s ease;
}

/* Anchor pseudo-bars to the middle bar itself, not the (now 40px) button,
   so the three lines stay together regardless of button hit-area size. */
.hamburger-icon { position: relative; }

.hamburger-icon::before,
.hamburger-icon::after {
    content: '';
    position: absolute;
    left: 0;
}

.hamburger-icon::before {
    top: -6px;
}

.hamburger-icon::after {
    bottom: -6px;
}

[data-theme="dark"] .hamburger-icon,
[data-theme="dark"] .hamburger-icon::before,
[data-theme="dark"] .hamburger-icon::after {
    background: var(--dark-mode-text-color);
}

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

    .social-icons {
        display: none;
    }

    /* Drop backdrop-filter on mobile so `.site-header` stops being a
       containing block for fixed children. Without this, .main-navigation
       (position: fixed) is contained by the header's stacking context and
       can end up rendered UNDER the homepage slider despite its z-index. */
    .site-header {
        backdrop-filter: none;
        -webkit-backdrop-filter: none;
        background: var(--header-background);
    }
    [data-theme="dark"] .site-header {
        background: var(--dark-header-background);
    }

    .main-navigation {
        position: fixed;
        top: 60px;
        left: -100%;
        width: 100%;
        height: calc(100vh - 60px);
        background: var(--header-background);
        /*padding: 20px;*/
        transition: left 0.3s ease;
        z-index: 1001;
    }

    .main-navigation.active {
        left: 0;
        overflow-y: auto;
    }

    /* Lock the background while the drawer or the search overlay is open —
       same trick Minprom uses (body.has-drawer-open). The drawer is fixed
       and covers the viewport; locking body scroll prevents the underlying
       page from sliding behind it. */
    body.menu-open,
    body.search-open {
        overflow: hidden;
    }

    /* When search is active, hide the hamburger (and the other tool buttons
       that would otherwise show up alongside the X close button). The close
       button itself is inside .search-modal and is therefore unaffected. */
    body.search-open .menu-toggle,
    body.search-open .theme-toggle,
    body.search-open .search-toggle,
    body.search-open .lang-switcher {
        display: none;
    }

    .main-navigation ul {
        flex-direction: column;
        align-items: center;
    }

    .main-navigation li {
        margin: 10px 0;
    }

    .menu-toggle[aria-expanded="true"] .hamburger-icon {
        background: transparent;
    }

    .menu-toggle[aria-expanded="true"] .hamburger-icon::before {
        transform: rotate(45deg);
        top: 0;
    }

    .menu-toggle[aria-expanded="true"] .hamburger-icon::after {
        transform: rotate(-45deg);
        bottom: 0;
    }

    [data-theme="dark"] .main-navigation {
        background: var(--dark-header-background);
    }
}

/* Search Modal — Minprom-style overlay: covers the header row in place.
   IMPORTANT: position: absolute (not fixed) because .site-header has
   backdrop-filter, which makes it the containing block for fixed children.
   inset: 0 makes the modal fill the header exactly. */
.search-modal {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    /* Explicit height instead of `inset: 0` so the modal NEVER outgrows the
       header row, regardless of nested flex children. */
    height: var(--header-height);
    background: var(--header-bg-overlay);
    backdrop-filter: saturate(180%) blur(14px);
    -webkit-backdrop-filter: saturate(180%) blur(14px);
    padding: 0 var(--content-spacing);
    z-index: 5;
    opacity: 0;
    transform: scaleX(0.96);
    transform-origin: center;
    transition: opacity .22s ease, transform .22s ease;
    align-items: center;
}
[data-theme="dark"] .search-modal {
    background: var(--dark-header-bg-overlay);
}

.search-modal.active {
    display: flex;
    opacity: 1;
    transform: scaleX(1);
}

.search-modal-content {
    width: 100%;
    max-width: var(--container-width);
    margin: 0 auto;
    position: relative;
}

.search-form {
    display: flex;
    align-items: center;
    gap: 12px;
}

.search-field {
    flex: 1 1 auto;
    min-width: 0;
    padding: 0.5rem 0;
    border: none;
    background: transparent;
    font-size: 1.0625rem;
    font-weight: 500;
    color: var(--heading-color);
    outline: none;
}

.search-field::placeholder {
    color: rgba(0, 0, 0, .4);
}

.search-submit {
    background: transparent;
    color: var(--heading-color);
    border: none;
    width: 36px;
    height: 36px;
    padding: 0;
    border-radius: 8px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: background-color .2s ease, color .2s ease;
}
.search-submit:hover {
    background: var(--tool-hover-bg);
    color: var(--accent-color);
}
.search-submit svg { width: 20px; height: 20px; display: block; }

.search-close {
    background: transparent;
    border: none;
    width: 36px;
    height: 36px;
    padding: 0;
    border-radius: 50%;
    cursor: pointer;
    color: var(--heading-color);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: background-color .2s ease, color .2s ease;
}
.search-close:hover {
    background: var(--tool-hover-bg);
    color: var(--accent-color);
}
.search-close svg { width: 22px; height: 22px; display: block; }

/* Dark Mode */
[data-theme="dark"] .hamburger-icon,
[data-theme="dark"] .hamburger-icon::before,
[data-theme="dark"] .hamburger-icon::after {
    background: var(--dark-mode-text-color);
}

[data-theme="dark"] .search-toggle {
    color: var(--dark-mode-text-color);
}

[data-theme="dark"] .search-field {
    background: transparent;
    color: var(--dark-mode-text-color);
}
[data-theme="dark"] .search-field::placeholder {
    color: rgba(255, 255, 255, .4);
}
[data-theme="dark"] .search-submit,
[data-theme="dark"] .search-close {
    color: var(--dark-mode-text-color);
}
[data-theme="dark"] .search-submit:hover,
[data-theme="dark"] .search-close:hover {
    background: var(--dark-tool-hover-bg);
    color: var(--dark-accent-color);
}

/* Responsive */
@media (max-width: 768px) {
    .main-navigation,
    .post-navigation,
    /* Scope to single post — don't hide homepage block thumbnails. */
    .single .post-thumbnail {
        display: none;
    }

    .menu-toggle {
        display: block;
        flex-shrink: 0;
    }
    .search-toggle,
    .theme-toggle {
        display: flex;
        flex-shrink: 0;
    }

    /* Constrain the logo so it doesn't push the icon row off-screen.
       `.site-branding` is set to flex-shrink:1 so it absorbs leftover
       space, and the logo image is capped at 140px + object-fit to scale
       down gracefully. Without this, a naturally-wide logo
       (e.g. 400×100 px) overflows the flex row. */
    .header-content { gap: 8px; align-items: center; }
    .site-branding {
        flex-shrink: 1;
        min-width: 0;
        overflow: hidden;
        display: flex;
        align-items: center;
        height: 100%;
    }
    .site-logo {
        height: auto;
        max-height: 40px;
        max-width: 100%;
        display: flex;
        align-items: center;
    }
    .custom-logo {
        max-width: 140px;
        width: auto;
        height: auto;
        /* Match icon-button height (36px) — keeps logo visually aligned with
           the .header-actions row instead of being optically taller. */
        max-height: 36px;
        object-fit: contain;
        /* `display` is NOT forced here — `.light-mode-logo` / `.dark-mode-logo`
           global rules control which one is visible per theme. Setting
           `display:block` would show both logos at once in light mode. */
    }
    /* Equalise visual height of all header buttons */
    .menu-toggle,
    .search-toggle,
    .theme-toggle {
        align-self: center;
    }

    .homepage-block-title {
        padding-left: 1.5rem;
    }

    .posts-style3 {
        margin-left: 1.5rem;
        margin-right: 1.5rem;
    }
}

/* Homepage Post Block Styles */
.homepage-block {
    margin: 0 0 2rem;
}
.homepage-block:first-child { margin-top: 0; }

.homepage-block .post-meta {
    display: none;
}

/* Matches .news-feed__heading — uppercase editorial label with accent rule. */
.homepage-block-title {
    margin: 0 0 1rem;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid var(--accent-color);
    font-size: 0.875rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--heading-color);
}

/* Style 1 - Single Column */
.posts-style1 {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

/* Style 2 - Two Columns */
.posts-style2 {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 1rem;
}

@media (min-width: 768px) {
    .posts-style2 {
        grid-template-columns: repeat(2, 1fr);
        gap: 1rem;
    }
}

/* Style 3 - Compact */
.posts-style3 {
    display: flex;
    flex-direction: column;
    /*gap: 1rem;*/
}

.posts-style3 article {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.posts-style3 .article-card {
    flex-direction: row;
    background: none;
}

.posts-style3 .article-card:hover {
    transform: none;
    box-shadow: none;
}

.posts-style3 .post-title {
    font-size: 1rem;
}

.posts-style3 .post-excerpt {
    display: none;
}

.posts-style3 .post-thumbnail {
    flex: 0 0 100px;
}

.posts-style3 .post-thumbnail img {
    width: 100px;
    height: 70px;
    object-fit: cover;
}

.posts-style3 .entry-title {
    font-size: 1rem;
    margin: 0;
}

.posts-style3 .entry-meta,
.posts-style3 .entry-content {
    display: none;
}

[data-theme="dark"] .homepage-block-title {
    border-bottom-color: var(--dark-accent-color);
    color: var(--dark-mode-heading-color);
}

/* ===== HOME GRID LAYOUT =====
   `.site-content.is-home` is a grid with named areas so we can swap the
   arrangement for mobile without duplicating markup:
     Desktop: [sidebar | slider]
              [sidebar | blocks ]  (sidebar spans both rows)
     Mobile:  [slider ]
              [sidebar]
              [blocks ]
*/
.site-content.is-home {
    display: grid;
    grid-template-columns: var(--sidebar-width) 1fr;
    grid-template-rows: auto 1fr;
    grid-template-areas:
        "sidebar slider"
        "sidebar blocks";
    column-gap: var(--content-spacing);
    row-gap: 1.5rem;
}
.site-content.is-home > .sidebar,
.site-content.is-home > #secondary.widget-area { grid-area: sidebar; width: 100%; }
.site-content.is-home > .home-slider-wrap { grid-area: slider; min-width: 0; }
.site-content.is-home > .site-main { grid-area: blocks; min-width: 0; }

/* On tablets & mobile collapse to a single column with slider first,
   then sidebar, then news blocks. */
@media (max-width: 1024px) {
    .site-content.is-home {
        grid-template-columns: 1fr;
        grid-template-rows: auto auto auto;
        grid-template-areas:
            "slider"
            "sidebar"
            "blocks";
    }
}

/* ===== TOP NEWS SLIDER ===== */
.top-news-slider-container {
    /* Top margin gives breathing room under the fixed header (matches the
       1.5rem the sidebar feed gets at the same row). Bottom margin is 0 —
       the grid row-gap on .site-content.is-home (or stacked block margins
       on mobile) controls separation from what follows. */
    margin: 1.5rem 0 0 0;
    position: relative;
    overflow: hidden;
    background-color: #f1f5f9;
    border-radius: 4px;
    box-shadow: 0 4px 18px rgba(0, 0, 0, .08);
}
[data-theme="dark"] .top-news-slider-container {
    background-color: #2d3748;
    box-shadow: 0 4px 18px rgba(0, 0, 0, .35);
}

.top-news-slider {
    position: relative;
    width: 100%;
    height: 460px;
    overflow: hidden;
    border-radius: 4px;
}

.top-news-slider .slide {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    visibility: hidden;
    transition: opacity .55s ease, visibility .55s ease;
}

.top-news-slider .slide.active {
    opacity: 1;
    visibility: visible;
}

.slide-image {
    width: 100%;
    height: 100%;
    position: relative;
    overflow: hidden;
}

.slide-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 6s ease;
}
.top-news-slider .slide.active .slide-image img {
    transform: scale(1.04); /* slow Ken Burns zoom while slide is active */
}

.slide-no-image {
    width: 100%;
    height: 100%;
    background-color: #e2e8f0;
    display: flex;
    align-items: center;
    justify-content: center;
}
[data-theme="dark"] .slide-no-image {
    background-color: #1a202c;
}

.slide-content {
    position: absolute;
    bottom: 0;
    /* `left:0; right:0` bound the element to parent edges regardless of
       the global box-sizing setting (which is content-box in this theme),
       so padding doesn't overflow 100% width. */
    left: 0;
    right: 0;
    box-sizing: border-box;
    padding: 80px 48px 48px;
    text-align: center;
    background: linear-gradient(to top, rgba(0, 0, 0, .95) 0%, rgba(0, 0, 0, .7) 40%, rgba(0, 0, 0, .2) 75%, transparent 100%);
    color: #fff;
}

.slide-title {
    margin: 0 auto;
    max-width: 820px;
    font-size: 28px;
    font-weight: 700;
    line-height: 1.25;
    text-shadow: 0 2px 8px rgba(0, 0, 0, .5);
    box-sizing: border-box;
}

.slide-title a {
    color: #fff;
    text-decoration: none;
    transition: color .2s ease;
}

.slide-title a:hover {
    color: rgba(255, 255, 255, .82);
}

/* ===== SLIDER ARROWS (fade in on hover) ===== */
.slider-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 46px;
    height: 46px;
    border-radius: 50%;
    border: none;
    background: rgba(255, 255, 255, .9);
    color: #1a202c;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    opacity: 0;
    transition: opacity .25s ease, background .2s ease, color .2s ease, transform .2s ease;
    box-shadow: 0 2px 10px rgba(0, 0, 0, .18);
    z-index: 8;
    padding: 0;
}
.slider-arrow svg {
    width: 22px;
    height: 22px;
}
.slider-arrow:hover {
    background: var(--accent-color);
    color: #fff;
    transform: translateY(-50%) scale(1.05);
}
.slider-arrow:focus-visible {
    opacity: 1;
    outline: 2px solid var(--accent-color);
    outline-offset: 2px;
}
.top-news-slider-container:hover .slider-arrow { opacity: 1; }
.slider-prev { left: 14px; }
.slider-next { right: 14px; }

[data-theme="dark"] .slider-arrow {
    background: rgba(26, 32, 44, .9);
    color: #e2e8f0;
}
[data-theme="dark"] .slider-arrow:hover {
    background: var(--dark-accent-color);
    color: #fff;
}

/* ===== DOT INDICATORS ===== */
.slider-nav {
    display: flex;
    justify-content: center;
    gap: 6px;
    position: absolute;
    bottom: 14px;
    left: 0;
    right: 0;
    z-index: 10;
}

.slider-dot {
    width: 26px;
    height: 3px;
    border-radius: 2px;
    background-color: rgba(255, 255, 255, .45);
    cursor: pointer;
    transition: background-color .3s ease, width .3s ease;
}
.slider-dot:hover { background-color: rgba(255, 255, 255, .75); }
.slider-dot.active {
    background-color: var(--accent-color);
    width: 34px;
}

/* Mobile Styles for Slider */
@media (max-width: 768px) {
    .top-news-slider-container { border-radius: 8px; }
    .top-news-slider { height: 340px; border-radius: 8px; }
    .slide-content { padding: 60px 20px 44px; }
    .slide-title { font-size: 20px; }
    .slider-arrow {
        width: 40px; height: 40px;
        opacity: 1; /* on touch devices show permanently */
        background: rgba(255, 255, 255, .85);
    }
    .slider-arrow svg { width: 18px; height: 18px; }
    .slider-prev { left: 10px; }
    .slider-next { right: 10px; }

    .bottom-news-slider-wrap { display: none; }
}

@media (max-width: 480px) {
    .top-news-slider { height: 260px; }
    .slide-content { padding: 50px 16px 40px; }
    .slide-title { font-size: 17px; }
    .slider-arrow { width: 36px; height: 36px; }
    .slider-arrow svg { width: 16px; height: 16px; }
}

/* Fix empty rulesets */
.site-header .container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem 2rem;
}

.site-footer .widget-title {
    font-size: 1.2rem;
    margin-bottom: 1rem;
    color: var(--header-text);
}


/* Mobile Menu — full-height overlay below the header */
.mobile-menu {
    display: none;
    position: fixed;
    top: var(--header-height);
    left: 0;
    right: 0;
    bottom: 0;
    background: var(--header-background);
    padding: 0.5rem 0;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    z-index: 999;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
}

.mobile-menu.active {
    display: block;
}

.mobile-menu-list,
.mobile-menu .sub-menu {
    list-style: none;
    margin: 0;
    padding: 0;
}

.mobile-menu-list li {
    margin: 0;
    padding: 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}
.mobile-menu-list li:last-child { border-bottom: none; }

/* Base link — consistent padding & typography across all menu levels */
.mobile-menu-list a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.85rem var(--content-spacing);
    color: var(--header-text);
    text-decoration: none;
    font-size: 0.95rem;
    font-weight: 500;
    line-height: 1.3;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.mobile-menu-list a:hover,
.mobile-menu-list a:focus {
    background: rgba(0, 0, 0, 0.04);
    color: var(--accent-color);
}

/* Parent-with-children — chevron indicator on the right */
.mobile-menu .menu-item-has-children { position: relative; }
.mobile-menu .menu-item-has-children > a { padding-right: calc(var(--content-spacing) + 20px); }
.mobile-menu .menu-item-has-children > a::after {
    content: '';
    position: absolute;
    right: var(--content-spacing);
    top: 50%;
    width: 8px;
    height: 8px;
    border: solid currentColor;
    border-width: 0 2px 2px 0;
    transform: translateY(-65%) rotate(45deg);
    transition: transform 0.25s ease;
}
.mobile-menu .menu-item-has-children.active > a::after {
    transform: translateY(-35%) rotate(-135deg);
}

/* Sub-menu — subtle background strip + inline with parent, same metrics */
.mobile-menu .sub-menu {
    display: none;
    background: rgba(0, 0, 0, 0.025);
    border-top: 1px solid rgba(0, 0, 0, 0.05);
}
.mobile-menu .menu-item-has-children.active > .sub-menu { display: block; }

.mobile-menu .sub-menu li { border-bottom-color: rgba(0, 0, 0, 0.04); }
.mobile-menu .sub-menu li:last-child { border-bottom: none; }

/* Submenu anchor — same typography rhythm as parent level:
   identical font-size / line-height / vertical padding, only indentation
   and font-weight differ. Explicitly declared to override any legacy
   em-based rules that might compound. */
.mobile-menu .sub-menu a {
    display: flex;
    align-items: center;
    padding: 0.85rem var(--content-spacing) 0.85rem calc(var(--content-spacing) + 20px);
    color: var(--header-text);
    font-size: 0.95rem;
    font-weight: 400;
    line-height: 1.3;
    text-decoration: none;
    position: relative;
}
.mobile-menu .sub-menu a::before {
    content: '';
    position: absolute;
    left: var(--content-spacing);
    top: 50%;
    transform: translateY(-50%);
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: currentColor;
    opacity: 0.4;
    transition: opacity 0.2s ease;
}
.mobile-menu .sub-menu a:hover,
.mobile-menu .sub-menu a:focus {
    color: var(--accent-color);
    background: rgba(0, 0, 0, 0.04);
}
.mobile-menu .sub-menu a:hover::before,
.mobile-menu .sub-menu a:focus::before { opacity: 1; }

/* Third level — deeper indent, same typography */
.mobile-menu .sub-menu .sub-menu a {
    padding-left: calc(var(--content-spacing) + 36px);
}
.mobile-menu .sub-menu .sub-menu a::before {
    left: calc(var(--content-spacing) + 16px);
}

/* Dark mode styles for mobile menu */
[data-theme="dark"] .mobile-menu {
    background: var(--dark-header-background);
    border-top: 1px solid rgba(255, 255, 255, 0.1);
}

[data-theme="dark"] .mobile-menu-list a {
    color: var(--dark-mode-text-color);
}

[data-theme="dark"] .news-date {
    color: var(--dark-mode-text-color) !important;
	border-color: var(--dark-mode-text-color) !important;
}

[data-theme="dark"] .mobile-menu-list a:hover,
[data-theme="dark"] .mobile-menu-list a:focus {
    background: rgba(255, 255, 255, 0.05);
}

[data-theme="dark"] .mobile-menu-list li { border-bottom-color: rgba(255, 255, 255, 0.08); }
[data-theme="dark"] .mobile-menu .sub-menu {
    background: rgba(255, 255, 255, 0.03);
    border-top-color: rgba(255, 255, 255, 0.06);
}
[data-theme="dark"] .mobile-menu .sub-menu li { border-bottom-color: rgba(255, 255, 255, 0.04); }
[data-theme="dark"] .mobile-menu .sub-menu a {
    color: var(--dark-mode-text-color);
}
[data-theme="dark"] .mobile-menu-list a:hover,
[data-theme="dark"] .mobile-menu-list a:focus,
[data-theme="dark"] .mobile-menu .sub-menu a:hover,
[data-theme="dark"] .mobile-menu .sub-menu a:focus {
    color: var(--dark-accent-color);
    background: rgba(255, 255, 255, 0.05);
}


span.author-position {
	display: none;
}

/* Header height stays compact (60px) across breakpoints — was bumped to 80px
   previously; reverted for the new Minprom-style compact look. */

.page-header {
	margin-top: 40px;
	margin-bottom: 20px;
}

.page .aw-toc {
	display: none;
}


.entry-content a {
	border-bottom: 2px solid #e0e2eb;
    padding-bottom: 3px;
    font-weight: 600;
}

[data-theme="dark"] .entry-content a {
	border-bottom: 2px solid #3f4356;
}




.header-style2 .header-content { display:flex; align-items:center; gap:20px; }

.header-style2 .header-style2-inner { display:flex; align-items:center; justify-content:space-between; width:100%; /*gap:20px;*/ }

.header-style2 .menu-left, .header-style2 .menu-right { flex:1 1 0; }

.header-style2 .menu-left .main-menu { display:flex; /*gap:16px;*/ justify-content:flex-start; }

.header-style2 .menu-right .main-menu { display:flex; /*gap:16px;*/ justify-content:flex-end; }

.header-style2 .center-logo { text-align:center; }

.header-style2 .header-actions { display:flex; gap:12px; align-items:center; }

.header-style2 .main-menu > .menu-item { position:relative; }

.header-style2 .sub-menu { position:absolute; top:100%; left:0; min-width:200px; background:var(--header-background, #fff); border:1px solid rgba(0,0,0,.06); box-shadow: 0 8px 20px rgba(0,0,0,.08); padding:8px 0; display:none; z-index:1000; }

[data-theme="dark"] .header-style2 .sub-menu { background: var(--dark-header-background, #1a202c); border-color:#2d3748; }

.header-style2 .sub-menu .menu-item { position:relative; }

.header-style2 .sub-menu .sub-menu { top:0; left:100%; }

.header-style2 .menu-item-has-children > a { padding-right:18px; }

.header-style2 .menu-item-has-children > a::after { content:""; display:inline-block; margin-left:6px; border:4px solid transparent; border-top-color: currentColor; vertical-align: middle; }

.header-style2 .menu-item:hover > .sub-menu, .header-style2 .menu-item:focus-within > .sub-menu, .header-style2 .menu-item.open > .sub-menu { display:block; }

.header-style2 .main-menu a { display:inline-block;font-weight:bold;text-transform:uppercase;}

@media (max-width: 992px){
	.header-style2 .header-style2-inner { display:none; }
	.header-style2 .header-style2-mobile { display:flex; align-items:center; justify-content:space-between; width:100%; gap:12px; }
	.header-style2 .header-style2-mobile .mobile-actions { display:flex; align-items:center; gap:12px; }
	.header-style2 .menu-toggle { display:block; }
	.header-style2 .center-logo .custom-logo { max-height:48px; height:auto; width:auto; }
}

/* Desktop defaults */
.header-style2 .header-style2-mobile { display:none; }



[data-theme="dark"] .aw-related, [data-theme="dark"] .aw-post-views {
	color: #dedede;
}

[data-theme="dark"] blockquote.style1, [data-theme="dark"] blockquote.style4, [data-theme="dark"] .entry-categories a {
    background: #262e3d !important;
}
[data-theme="dark"] .post-navigation .nav-previous, [data-theme="dark"] .post-navigation .nav-next {
	background: none;
}

/* Ensure Style 2 mobile header is visible on small screens */
@media (max-width: 992px){
    .header-style2 .header-style2-mobile { display:flex !important; align-items:center; justify-content:space-between; width:100%; gap:12px; }
    .header-style2 .header-style2-mobile .mobile-actions { display:flex; align-items:center; gap:12px; }
    .header-style2 .menu-toggle { display:block !important; }
    .header-style2 .search-toggle, .header-style2 .theme-toggle { display:inline-flex; align-items:center; justify-content:center; }
}

/* Style 2: Mobile submenu full-width and collapsible */
@media (max-width: 992px){
    /* Override desktop dropdown positioning for mobile menu only */
    .header-style2 .mobile-menu .sub-menu {
        position: static;
        top: auto;
        left: auto;
        width: 100%;
        display: none;
        background: var(--header-background);
        border: none;
        box-shadow: none;
        margin: 0.25rem 0 0;
        padding: 0.25rem 0;
    }
    [data-theme="dark"] .header-style2 .mobile-menu .sub-menu {
        background: var(--dark-header-background);
        border: none;
        box-shadow: none;
    }
    .header-style2 .mobile-menu .menu-item-has-children.active > .sub-menu { display: block !important; }
    .header-style2 .mobile-menu .sub-menu .menu-item { position: static; }
    .header-style2 .mobile-menu .sub-menu .sub-menu { position: static; padding-left: 1rem; }
    .header-style2 .mobile-menu .sub-menu a {
        display: block;
        padding: 0.75rem calc(var(--content-spacing));
        border-left: 2px solid transparent;
    }
    .header-style2 .mobile-menu .sub-menu a:hover,
    .header-style2 .mobile-menu .sub-menu a:focus {
        border-left-color: var(--accent-color);
        background: transparent;
    }
    /* On mobile, hide dropdowns for non-active items only; .active shows submenu */
    .header-style2 .mobile-menu .menu-item:not(.active):hover > .sub-menu,
    .header-style2 .mobile-menu .menu-item:not(.active):focus-within > .sub-menu,
    .header-style2 .mobile-menu .menu-item:not(.active).open > .sub-menu {
        display: none !important;
    }
}


.tag-style9 {
	align-items: center;
    background-color: transparent;
    border: 1px solid #dedede;
    border-radius: 10px;
    font-size: 11px;
	color: #333;
    justify-content: center;
    line-height: 25px;
    padding-left: 15px;
    padding-right: 15px;
    padding-top: 1px;
	text-transform: uppercase;
}

.tag-style9:before {
	background-color: var(--accent-color);
    border-radius: 100%;
    display: inline-block;
    height: 9px;
    margin-right: 5px;
    content: '';
    width: 9px;
    vertical-align: middle;
}

.tag-style9:hover {
	background-color: var(--accent-color); 
	color: #fff;
}

.tag-style10 {
	text-transform: uppercase;
    color: #4e4d4d;
    padding: 6px 12px 5px;
    margin-right: 8px;
    margin-bottom: 8px;
    display: inline-block;
    font-size: 13px !important;
	font-weight: bold;
	background: #eee;
	border-radius: 6px;
}
.tag-style10:before {
	margin-right: 2px;
    content: '#';
    opacity: 0.5;
}

.tag-style4 {
    display: inline-block;
    padding: 0.5rem 1.2rem;
    margin: 0.3rem;
    background: #e8f4fd;
    border: 1px solid #bee5eb;
    border-radius: 25px;
    color: #0c5460;
    font-weight: 500;
    text-decoration: none;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}
.tag-style4::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 0;
    height: 0;
    background: rgba(255, 255, 255, 0.6);
    border-radius: 50%;
    transform: translate(-50%, -50%);
    transition: width 0.3s, height 0.3s;
}
.tag-style4:hover {
    background: #0c5460;
    color: white;
    border-color: #0c5460;
    transform: translateY(-2px);
    box-shadow: 0 6px 12px rgba(12, 84, 96, 0.3);
}
.tag-style4:hover::before {
    width: 300px;
    height: 300px;
}

/* Style 5 - Business Professional */
.tag-style5 {
    display: inline-block;
    padding: 0.5rem 1.3rem;
    margin: 0.3rem;
    background: linear-gradient(135deg, #2c3e50 0%, #34495e 100%);
    border: 1px solid #34495e;
    border-radius: 6px;
    color: #ffffff;
    font-weight: 500;
    font-size: 0.9em;
    text-decoration: none;
    text-transform: capitalize;
    letter-spacing: 0.3px;
    transition: all 0.25s ease;
    box-shadow: 0 2px 4px rgba(44, 62, 80, 0.2);
    position: relative;
    overflow: hidden;
}

.tag-style5::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.1), transparent);
    transition: left 0.4s ease;
}

.tag-style5:hover {
    background: linear-gradient(135deg, #1a252f 0%, #2c3e50 100%);
    border-color: #2c3e50;
    color: #ffffff;
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(44, 62, 80, 0.3);
}

.tag-style5:hover::before {
    left: 100%;
}

.tag-style5:active {
    transform: translateY(0);
    box-shadow: 0 2px 4px rgba(44, 62, 80, 0.2);
}

/* Style 6 - Material Design */
.tag-style6 {
    display: inline-block;
    padding: 0.5rem 1.3rem;
    margin: 0.3rem;
    background: #ffffff;
    border-radius: 4px;
    color: #424242;
    font-weight: 500;
    text-decoration: none;
    transition: all 0.2s cubic-bezier(0.4, 0.0, 0.2, 1);
    box-shadow: 0 2px 4px rgba(0,0,0,0.12), 0 0 6px rgba(0,0,0,0.04);
    position: relative;
}
.tag-style6::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 4px;
    opacity: 0;
    transition: opacity 0.2s;
    background: rgba(158, 158, 158, 0.2);
}
.tag-style6:hover {
    box-shadow: 0 8px 16px rgba(0,0,0,0.16), 0 4px 10px rgba(0,0,0,0.08);
    transform: translateY(-2px);
}
.tag-style6:hover::after {
    opacity: 1;
}

/* Style 7 - Retro Badge */
.tag-style7 {
    display: inline-block;
    padding: 0.4rem 1rem;
    margin: 0.3rem;
    background: var(--accent-color);
	opacity: 0.7;
    border: 3px solid #ffffff;
    border-radius: 50px;
    color: white;
    font-weight: bold;
    text-decoration: none;
    text-transform: uppercase;
    font-size: 0.8em;
    letter-spacing: 0.5px;
    transition: all 0.2s ease;
    box-shadow: 0 4px 0 var(--dark-accent-color), 0 6px 6px rgba(0,0,0,0.2);
    position: relative;
    top: 0;
}
.tag-style7:hover {
    top: 2px;
    box-shadow: 0 2px 0 var(--dark-accent-color), 0 4px 4px rgba(0,0,0,0.2);
    background: var(--dark-accent-color);
	color: #fff;
}

/* Style 8 - Minimalist Underline */
.tag-style8 {
    display: inline-block;
    padding: 0.4rem 0.8rem;
    margin: 0.3rem;
    background: transparent;
    color: #2c3e50;
    font-weight: 500;
    text-decoration: none;
    position: relative;
    transition: all 0.3s ease;
    border-bottom: 2px solid transparent;
}
.tag-style8::before {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 0;
    height: 2px;
    background: #3498db;
    transition: width 0.3s ease;
}
.tag-style8:hover {
    color: #3498db;
    transform: translateY(-1px);
}
.tag-style8:hover::before {
    width: 100%;
}


@media (max-width: 769px) {
	.site-content, .content-with-sidebar {
		padding: 0 15px;
	}
	
	.widget {
		padding: 0 20px;
        margin-top: 20px;
	}
	
	.entry-content p {
		font-size: 1.025rem;
	}

    .entry-content h2 {
        font-size: 1.375rem;
    }
	
	.category #secondary {
		display: none;
	}
	
	.header-style2 .menu-item-has-children > a::after { 
		/*border:4px solid transparent; */
		border: solid currentColor;
        border-width: 0 2px 2px 0;
	}
}


.meta-style1 {
	border: 0px !important;
	padding: 0;
}

.meta-style1 .author-avatar {
	display: none;
}


.meta-style1 .author-name {
	font-weight: normal;
}

.meta-style1 .author-name:before {

	content:"Автор:";
	margin-right: 2px;
}

.bottom-news-slider a {
	color: #333;
}

[data-theme="dark"] .bottom-news-slider a {
	color: #dedede;
}

/* ===== NEWS TICKER WIDGET (plugin overrides) =====
 * Adopts the theme's CSS variables so the widget blends in both light
 * and dark modes. Uses `--accent-color` / `--heading-color` plus safe
 * fallbacks for variables that don't exist in this theme's :root
 * (`--border-light`, `--text-muted`). */
.news-widget{font-family:inherit}
.news-widget-list{list-style:none;margin:0;padding:0}
.news-item{display:flex;align-items:flex-start;margin-bottom:10px;padding-bottom:10px;border-bottom:1px solid var(--border-light,#e2e8f0)}
.news-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}
.news-time{font-size:.75rem;color:var(--text-muted,#737373)!important;margin-right:10px;width:15%;flex-shrink:0;font-weight:500}
.news-title{font-size:.9rem!important;color:var(--heading-color,#2d3748)!important;text-decoration:none;width:85%;line-height:1.4;font-weight:500;transition:color .2s}
.news-title:hover{color:var(--accent-color)!important;text-decoration:none}
.news-widget-list .news-title.top-news{font-weight:700;color:var(--heading-color,#2d3748)}
.news-widget-list .news-title.top-news:hover{color:var(--accent-color)}
.news-date{font-size:.6rem!important;font-weight:700;display:inline-block;padding:.25rem .5rem!important;text-transform:uppercase;border:.13rem solid var(--accent-color)!important;border-radius:2.9375rem;line-height:normal!important;color:var(--accent-color)!important;background:transparent;margin-bottom:8px}
.all-news-link-container{margin-top:15px;text-align:center}
.all-news-link{font-size:.6rem!important;font-weight:700;display:inline-block;padding:.25rem 1rem!important;text-transform:uppercase;border:.13rem solid var(--accent-color)!important;border-radius:2.9375rem;line-height:normal!important;text-decoration:none;color:var(--accent-color)!important;background:transparent;transition:background .2s,color .2s}
.all-news-link:hover{background:var(--accent-color);color:#fff!important;text-decoration:none!important;opacity:1!important}
[data-theme="dark"] .news-item{border-bottom-color:rgba(255,255,255,.08)}
[data-theme="dark"] .news-title{color:var(--dark-mode-heading-color,#e2e8f0)!important}
[data-theme="dark"] .news-title:hover,
[data-theme="dark"] .news-date,
[data-theme="dark"] .all-news-link{color:var(--dark-accent-color)!important;border-color:var(--dark-accent-color)!important}
[data-theme="dark"] .news-title:hover{background:transparent}
[data-theme="dark"] .all-news-link:hover{background:var(--dark-accent-color);color:#fff!important}
