/*
Theme Name: Fileteka Tech
Theme URI: https://fileteka.org/
Author: Fileteka
Description: Трёхцветная WordPress-тема Fileteka: тёмная, серая и белая. Серая схема используется по умолчанию, выбор посетителя запоминается в браузере.
Version: 1.0.1
Requires at least: 6.4
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: fileteka
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/

:root {
      --bg: #111315;
      --bg-2: #17191c;
      --panel: #1c1f22;
      --panel-2: #22262a;
      --panel-3: #292d31;
      --line: #34393e;
      --line-soft: #2a2e32;
      --red: #d63a3a;
      --red-bright: #f04b4b;
      --red-dark: #8f2020;
      --text: #e6e8ea;
      --text-soft: #b6bcc2;
      --muted: #7f878e;
      --white: #ffffff;
      --green: #72bd78;
      --max: 1180px;
      --sidebar: 292px;
      --radius: 3px;
      --shadow: 0 8px 28px rgba(0,0,0,.22);
      --font: "Segoe UI", Tahoma, Arial, sans-serif;
      --mono: Consolas, "Courier New", monospace;
    }

    * {
      box-sizing: border-box;
    }

    html {
      scroll-behavior: smooth;
    }

    body {
      margin: 0;
      min-width: 320px;
      color: var(--text);
      background:
        linear-gradient(rgba(255,255,255,.012) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.012) 1px, transparent 1px),
        var(--bg);
      background-size: 24px 24px;
      font-family: var(--font);
      font-size: 13px;
      line-height: 1.48;
    }

    a {
      color: inherit;
      text-decoration: none;
    }

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

    button,
    input {
      font: inherit;
    }

    .site-wrap {
      width: min(calc(100% - 24px), var(--max));
      margin: 0 auto;
    }

    /* =========================================================
       TOP LINE
       ========================================================= */

    .topline {
      border-bottom: 1px solid #24282c;
      background: #0c0d0f;
      color: #8e959b;
      font-size: 11px;
    }

    .topline-inner {
      min-height: 28px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 14px;
    }

    .topline-left,
    .topline-right {
      display: flex;
      align-items: center;
      gap: 14px;
      min-width: 0;
    }

    .topline-label {
      color: #d0d3d6;
      white-space: nowrap;
    }

    .live-dot {
      width: 6px;
      height: 6px;
      border-radius: 50%;
      display: inline-block;
      margin-right: 5px;
      background: var(--green);
      box-shadow: 0 0 8px rgba(114,189,120,.45);
      vertical-align: 1px;
    }

    .topline a:hover {
      color: var(--red-bright);
    }

    /* =========================================================
       HEADER
       ========================================================= */

    .site-header {
      border-bottom: 1px solid var(--red-dark);
      background:
        linear-gradient(180deg, #1b1e21 0%, #16181b 100%);
      box-shadow: 0 4px 16px rgba(0,0,0,.18);
    }

    .header-main {
      min-height: 70px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 22px;
    }

    .brand {
      display: flex;
      align-items: center;
      gap: 11px;
      min-width: 230px;
    }

    .brand-mark {
      width: 38px;
      height: 38px;
      flex: 0 0 38px;
      display: grid;
      place-items: center;
      border: 1px solid var(--red);
      background:
        linear-gradient(135deg, rgba(214,58,58,.18), transparent 50%),
        #111315;
      color: var(--red-bright);
      font-family: var(--mono);
      font-size: 17px;
      font-weight: 700;
      box-shadow: inset 0 0 0 1px rgba(255,255,255,.025);
    }

    .brand-text {
      line-height: 1.05;
    }

    .brand-name {
      color: var(--white);
      font-family: Arial, sans-serif;
      font-size: 23px;
      font-weight: 800;
      letter-spacing: .6px;
      text-transform: uppercase;
    }

    .brand-name span {
      color: var(--red-bright);
    }

    .brand-tagline {
      margin-top: 5px;
      color: var(--muted);
      font-size: 10px;
      letter-spacing: .35px;
      text-transform: uppercase;
    }

    .header-info {
      display: flex;
      align-items: stretch;
      justify-content: flex-end;
      gap: 8px;
    }

    .header-chip {
      min-width: 130px;
      padding: 7px 10px;
      border: 1px solid var(--line);
      border-left: 2px solid var(--red);
      background: #141619;
    }

    .header-chip-label {
      color: var(--muted);
      font-size: 9px;
      text-transform: uppercase;
      letter-spacing: .6px;
    }

    .header-chip-value {
      margin-top: 2px;
      color: #d7dade;
      font-size: 11px;
      white-space: nowrap;
    }

    /* =========================================================
       NAVIGATION
       ========================================================= */

    .nav-bar {
      border-bottom: 1px solid #25292d;
      background: #121416;
    }

    .nav-inner {
      display: flex;
      align-items: center;
      min-height: 35px;
    }

    .main-nav {
      display: flex;
      align-items: stretch;
      min-width: 0;
      flex: 1;
    }

    .main-nav a {
      position: relative;
      display: flex;
      align-items: center;
      min-height: 35px;
      padding: 0 13px;
      border-right: 1px solid #25292d;
      color: #c4c9ce;
      font-size: 11px;
      font-weight: 600;
      text-transform: uppercase;
      letter-spacing: .25px;
    }

    .main-nav a:first-child {
      border-left: 1px solid #25292d;
    }

    .main-nav a:hover,
    .main-nav a.active {
      color: var(--white);
      background: #1d2023;
    }

    .main-nav a.active::after {
      content: "";
      position: absolute;
      left: 9px;
      right: 9px;
      bottom: 0;
      height: 2px;
      background: var(--red-bright);
    }

    .menu-toggle {
      display: none;
      width: 34px;
      height: 34px;
      margin-left: auto;
      border: 0;
      border-left: 1px solid #2b2f33;
      border-right: 1px solid #2b2f33;
      background: transparent;
      color: #ddd;
      cursor: pointer;
    }

    /* =========================================================
       TICKER / BREADCRUMB STRIP
       ========================================================= */

    .ticker {
      margin-top: 12px;
      border: 1px solid var(--line);
      border-left: 2px solid var(--red);
      background: #151719;
      display: grid;
      grid-template-columns: auto 1fr;
      min-height: 32px;
      overflow: hidden;
    }

    .ticker-title {
      display: flex;
      align-items: center;
      padding: 0 11px;
      background: #202327;
      color: #e8e8e8;
      font-size: 10px;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: .45px;
    }

    .ticker-text {
      display: flex;
      align-items: center;
      min-width: 0;
      padding: 0 11px;
      color: #aeb4b9;
      font-size: 11px;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }

    .ticker-text strong {
      margin-right: 5px;
      color: var(--red-bright);
      font-weight: 600;
    }

    /* =========================================================
       MAIN LAYOUT
       ========================================================= */

    .page-grid {
      display: grid;
      grid-template-columns: minmax(0, 1fr) var(--sidebar);
      gap: 14px;
      margin-top: 14px;
      align-items: start;
    }

    .content-column,
    .sidebar {
      min-width: 0;
    }

    .section-head {
      min-height: 34px;
      margin-bottom: 9px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      border: 1px solid var(--line);
      border-left: 3px solid var(--red);
      background: linear-gradient(180deg, #22262a, #1b1e21);
      padding: 0 11px;
    }

    .section-title {
      margin: 0;
      color: #f0f1f2;
      font-size: 12px;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: .5px;
    }

    .section-count {
      color: var(--muted);
      font-size: 10px;
    }

    /* =========================================================
       FEATURED
       ========================================================= */

    .featured {
      position: relative;
      min-height: 238px;
      margin-bottom: 10px;
      overflow: hidden;
      border: 1px solid #454a4f;
      border-left: 3px solid var(--red);
      background:
        radial-gradient(circle at 75% 28%, rgba(214,58,58,.18), transparent 21%),
        linear-gradient(135deg, #25292d 0%, #17191c 55%, #111315 100%);
      box-shadow: var(--shadow);
    }

    .featured-grid {
      min-height: 238px;
      display: grid;
      grid-template-columns: 1.35fr .65fr;
    }

    .featured-content {
      padding: 24px 25px 22px;
      display: flex;
      flex-direction: column;
      justify-content: center;
    }

    .category-label {
      width: max-content;
      margin-bottom: 9px;
      padding: 3px 7px;
      border: 1px solid var(--red-dark);
      color: #ff7979;
      background: rgba(143,32,32,.12);
      font-size: 9px;
      font-weight: 700;
      letter-spacing: .55px;
      text-transform: uppercase;
    }

    .featured h1 {
      max-width: 720px;
      margin: 0;
      color: #fff;
      font-size: 25px;
      line-height: 1.18;
      letter-spacing: -.3px;
    }

    .featured h1 a:hover {
      color: #ff7373;
    }

    .featured-excerpt {
      max-width: 700px;
      margin: 11px 0 0;
      color: #aeb5ba;
      font-size: 12px;
      line-height: 1.55;
    }

    .meta-row {
      margin-top: 14px;
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
      color: #777f86;
      font-size: 10px;
    }

    .meta-row span::before {
      content: "•";
      margin-right: 5px;
      color: var(--red);
    }

    .featured-art {
      position: relative;
      min-height: 220px;
      border-left: 1px solid #3b4045;
      overflow: hidden;
      background:
        linear-gradient(90deg, transparent 49%, rgba(240,75,75,.14) 50%, transparent 51%),
        linear-gradient(0deg, transparent 49%, rgba(240,75,75,.12) 50%, transparent 51%),
        radial-gradient(circle, rgba(240,75,75,.2) 0 2px, transparent 3px),
        #141619;
      background-size: 54px 54px, 54px 54px, 27px 27px, auto;
    }

    .featured-art::before,
    .featured-art::after {
      content: "";
      position: absolute;
      border: 1px solid rgba(240,75,75,.55);
      transform: rotate(45deg);
    }

    .featured-art::before {
      width: 115px;
      height: 115px;
      left: 50%;
      top: 50%;
      margin: -58px 0 0 -58px;
      box-shadow:
        0 0 0 18px rgba(240,75,75,.03),
        0 0 0 36px rgba(240,75,75,.02);
    }

    .featured-art::after {
      width: 42px;
      height: 42px;
      left: 50%;
      top: 50%;
      margin: -21px 0 0 -21px;
      background: rgba(214,58,58,.08);
    }

    .art-code {
      position: absolute;
      right: 11px;
      bottom: 9px;
      color: #777;
      font: 9px var(--mono);
      letter-spacing: .8px;
    }

    /* =========================================================
       POST LIST
       ========================================================= */

    .post-list {
      display: grid;
      gap: 8px;
    }

    .post-card {
      display: grid;
      grid-template-columns: 178px minmax(0, 1fr);
      min-height: 124px;
      border: 1px solid var(--line);
      border-left: 2px solid #4a4f54;
      background: var(--panel);
      transition:
        border-color .16s ease,
        background .16s ease,
        transform .16s ease;
    }

    .post-card:hover {
      border-left-color: var(--red-bright);
      background: #202326;
      transform: translateX(1px);
    }

    .post-thumb {
      position: relative;
      min-height: 122px;
      overflow: hidden;
      border-right: 1px solid var(--line);
      background:
        linear-gradient(135deg, rgba(255,255,255,.03), transparent 45%),
        #151719;
    }

    .post-thumb.theme-red {
      background:
        linear-gradient(135deg, rgba(214,58,58,.23), transparent 48%),
        repeating-linear-gradient(90deg, transparent 0 18px, rgba(255,255,255,.018) 18px 19px),
        #151719;
    }

    .post-thumb.theme-grid {
      background:
        linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px),
        #151719;
      background-size: 18px 18px;
    }

    .post-thumb.theme-terminal {
      background:
        linear-gradient(180deg, rgba(114,189,120,.08), transparent 50%),
        #111613;
    }

    .thumb-label {
      position: absolute;
      left: 10px;
      bottom: 9px;
      padding: 3px 6px;
      border: 1px solid rgba(255,255,255,.12);
      background: rgba(0,0,0,.55);
      color: #c8cdd1;
      font: 9px var(--mono);
      letter-spacing: .5px;
      text-transform: uppercase;
    }

    .post-body {
      min-width: 0;
      padding: 11px 13px 10px;
    }

    .post-topline {
      margin-bottom: 5px;
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 7px;
      color: #777f86;
      font-size: 9px;
    }

    .post-category {
      color: #ff6b6b;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: .4px;
    }

    .post-title {
      margin: 0;
      color: #e8eaec;
      font-size: 15px;
      line-height: 1.24;
      font-weight: 700;
    }

    .post-title a:hover {
      color: #ff6b6b;
    }

    .post-excerpt {
      margin: 6px 0 0;
      color: #9ba2a8;
      font-size: 11px;
      line-height: 1.48;
    }

    .post-footer {
      margin-top: 8px;
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 10px;
      color: #727a80;
      font-size: 9px;
    }

    .read-more {
      margin-left: auto;
      color: #bdc2c6;
      font-weight: 600;
    }

    .read-more:hover {
      color: var(--red-bright);
    }

    /* =========================================================
       PAGINATION
       ========================================================= */

    .pagination {
      margin-top: 12px;
      display: flex;
      flex-wrap: wrap;
      gap: 4px;
    }

    .pagination a,
    .pagination span {
      min-width: 28px;
      height: 28px;
      padding: 0 8px;
      display: grid;
      place-items: center;
      border: 1px solid var(--line);
      background: #191c1f;
      color: #aeb4b9;
      font-size: 10px;
    }

    .pagination a:hover,
    .pagination .current {
      border-color: var(--red);
      background: #26292c;
      color: #fff;
    }

    /* =========================================================
       SIDEBAR
       ========================================================= */

    .sidebar {
      display: grid;
      gap: 10px;
    }

    .widget {
      border: 1px solid var(--line);
      border-top: 2px solid var(--red);
      background: var(--panel);
      box-shadow: 0 5px 16px rgba(0,0,0,.1);
    }

    .widget-title {
      min-height: 31px;
      margin: 0;
      padding: 0 10px;
      display: flex;
      align-items: center;
      border-bottom: 1px solid var(--line);
      background: linear-gradient(180deg, #262a2e, #202327);
      color: #e1e4e6;
      font-size: 10px;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: .55px;
    }

    .widget-body {
      padding: 9px;
    }

    .search-box {
      display: flex;
    }

    .search-box input {
      width: 100%;
      min-width: 0;
      height: 31px;
      padding: 0 9px;
      border: 1px solid #3b4045;
      border-right: 0;
      outline: none;
      background: #111315;
      color: #e5e7e9;
      font-size: 11px;
    }

    .search-box input:focus {
      border-color: var(--red);
    }

    .search-box button {
      flex: 0 0 35px;
      height: 31px;
      border: 1px solid var(--red-dark);
      background: #8f2020;
      color: #fff;
      cursor: pointer;
    }

    .search-box button:hover {
      background: var(--red);
    }

    .category-list,
    .popular-list,
    .download-list {
      margin: 0;
      padding: 0;
      list-style: none;
    }

    .category-list li + li,
    .popular-list li + li,
    .download-list li + li {
      border-top: 1px solid var(--line-soft);
    }

    .category-list a {
      min-height: 29px;
      padding: 0 2px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 10px;
      color: #b9bec3;
      font-size: 11px;
    }

    .category-list a:hover {
      color: #fff;
      padding-left: 3px;
    }

    .category-list a::before {
      content: "›";
      margin-right: 5px;
      color: var(--red-bright);
      font-size: 14px;
    }

    .category-name {
      margin-right: auto;
    }

    .category-count {
      min-width: 20px;
      padding: 1px 5px;
      border: 1px solid #353a3f;
      background: #151719;
      color: #777f86;
      text-align: center;
      font-size: 9px;
    }

    .popular-list a,
    .download-list a {
      display: block;
      padding: 8px 2px;
    }

    .popular-title,
    .download-title {
      color: #cbd0d4;
      font-size: 10px;
      line-height: 1.35;
    }

    .popular-list a:hover .popular-title,
    .download-list a:hover .download-title {
      color: var(--red-bright);
    }

    .popular-meta,
    .download-meta {
      margin-top: 3px;
      color: #747c82;
      font-size: 9px;
    }

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

    .tags a {
      padding: 4px 6px;
      border: 1px solid #34393e;
      background: #16181b;
      color: #929aa0;
      font-size: 9px;
    }

    .tags a:hover {
      border-color: var(--red-dark);
      color: #fff;
    }

    .mini-status {
      display: grid;
      gap: 6px;
    }

    .mini-status-row {
      display: flex;
      justify-content: space-between;
      gap: 12px;
      color: #9ea5aa;
      font-size: 10px;
    }

    .mini-status-value {
      color: #d8dcdf;
    }

    /* =========================================================
       FOOTER
       ========================================================= */

    .site-footer {
      margin-top: 22px;
      border-top: 1px solid var(--red-dark);
      background: #0e1012;
    }

    .footer-main {
      display: grid;
      grid-template-columns: 1.3fr 1fr 1fr 1fr;
      gap: 22px;
      padding: 24px 0 20px;
    }

    .footer-title {
      margin: 0 0 9px;
      color: #dce0e3;
      font-size: 10px;
      text-transform: uppercase;
      letter-spacing: .55px;
    }

    .footer-text {
      margin: 0;
      max-width: 420px;
      color: #747c82;
      font-size: 10px;
      line-height: 1.55;
    }

    .footer-links {
      margin: 0;
      padding: 0;
      list-style: none;
    }

    .footer-links li + li {
      margin-top: 5px;
    }

    .footer-links a {
      color: #8e969c;
      font-size: 10px;
    }

    .footer-links a:hover {
      color: var(--red-bright);
    }

    .footer-bottom {
      min-height: 37px;
      border-top: 1px solid #24282c;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 15px;
      color: #656d73;
      font-size: 9px;
    }

    .footer-bottom strong {
      color: #9da4aa;
      font-weight: 600;
    }

    /* =========================================================
       RESPONSIVE
       ========================================================= */

    @media (max-width: 960px) {
      .header-chip:nth-child(2) {
        display: none;
      }

      .page-grid {
        grid-template-columns: minmax(0, 1fr) 255px;
      }

      :root {
        --sidebar: 255px;
      }

      .featured-grid {
        grid-template-columns: 1fr 230px;
      }

      .footer-main {
        grid-template-columns: 1.4fr 1fr 1fr;
      }

      .footer-main > div:last-child {
        display: none;
      }
    }

    @media (max-width: 760px) {
      body {
        font-size: 12px;
      }

      .site-wrap {
        width: min(calc(100% - 16px), var(--max));
      }

      .topline-right {
        display: none;
      }

      .header-main {
        min-height: 61px;
      }

      .brand {
        min-width: 0;
      }

      .brand-mark {
        width: 34px;
        height: 34px;
        flex-basis: 34px;
      }

      .brand-name {
        font-size: 19px;
      }

      .brand-tagline {
        font-size: 9px;
      }

      .header-info {
        display: none;
      }

      .nav-inner {
        position: relative;
        min-height: 35px;
      }

      .menu-toggle {
        display: block;
      }

      .main-nav {
        display: none;
        position: absolute;
        z-index: 50;
        top: 35px;
        left: 0;
        right: 0;
        flex-direction: column;
        border: 1px solid #33383d;
        border-top: 1px solid var(--red-dark);
        background: #151719;
        box-shadow: 0 14px 28px rgba(0,0,0,.35);
      }

      .main-nav.open {
        display: flex;
      }

      .main-nav a,
      .main-nav a:first-child {
        min-height: 36px;
        border: 0;
        border-bottom: 1px solid #292d31;
      }

      .main-nav a.active::after {
        left: 0;
        top: 0;
        bottom: 0;
        width: 2px;
        height: auto;
      }

      .page-grid {
        grid-template-columns: 1fr;
      }

      .sidebar {
        grid-template-columns: 1fr 1fr;
      }

      .featured-grid {
        grid-template-columns: 1fr;
      }

      .featured-art {
        display: none;
      }

      .featured {
        min-height: 0;
      }

      .featured-content {
        padding: 20px 18px;
      }

      .featured h1 {
        font-size: 21px;
      }

      .post-card {
        grid-template-columns: 145px minmax(0, 1fr);
      }

      .footer-main {
        grid-template-columns: 1fr 1fr;
      }
    }

    @media (max-width: 540px) {
      .ticker {
        grid-template-columns: 1fr;
      }

      .ticker-title {
        min-height: 27px;
      }

      .ticker-text {
        min-height: 30px;
      }

      .section-count {
        display: none;
      }

      .featured h1 {
        font-size: 18px;
      }

      .featured-excerpt {
        font-size: 11px;
      }

      .post-card {
        grid-template-columns: 1fr;
      }

      .post-thumb {
        min-height: 92px;
        border-right: 0;
        border-bottom: 1px solid var(--line);
      }

      .post-excerpt {
        display: none;
      }

      .post-body {
        padding: 10px;
      }

      .post-title {
        font-size: 14px;
      }

      .sidebar {
        grid-template-columns: 1fr;
      }

      .footer-main {
        grid-template-columns: 1fr;
        gap: 17px;
      }

      .footer-bottom {
        padding: 10px 0;
        align-items: flex-start;
        flex-direction: column;
        gap: 4px;
      }
    }

/* =========================================================
       THEME OVERRIDE: FILETEKA GRAY
       Exact original layout, recolored to a light metallic-gray theme.
       ========================================================= */
    html[data-fileteka-theme="gray"],
html:not([data-fileteka-theme]) {
      --bg: #cfd3d6;
      --bg-2: #d9dcdf;
      --panel: #e5e7e9;
      --panel-2: #dadddf;
      --panel-3: #cfd3d6;
      --line: #aeb5bb;
      --line-soft: #c6cbd0;
      --red: #c92f38;
      --red-bright: #dd3c45;
      --red-dark: #9e242b;
      --text: #2a2f33;
      --text-soft: #555d64;
      --muted: #747c83;
      --white: #202428;
      --green: #4d9f59;
      --shadow: 0 8px 24px rgba(58,64,70,.14);
    }

    html[data-fileteka-theme="gray"] body,


    html:not([data-fileteka-theme]) body {
      color: var(--text);
      background:
        linear-gradient(rgba(255,255,255,.14) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.14) 1px, transparent 1px),
        var(--bg);
      background-size: 24px 24px;
    }

    html[data-fileteka-theme="gray"] .topline,


    html:not([data-fileteka-theme]) .topline {
      border-bottom-color: #a9afb4;
      background: #c1c5c8;
      color: #5f676e;
    }

    html[data-fileteka-theme="gray"] .topline-label,


    html:not([data-fileteka-theme]) .topline-label { color: #343a3f; }

    html[data-fileteka-theme="gray"] .site-header,


    html:not([data-fileteka-theme]) .site-header {
      border-bottom-color: var(--red-dark);
      background: linear-gradient(180deg, #e6e8ea 0%, #d3d7da 100%);
      box-shadow: 0 4px 14px rgba(62,68,74,.12);
    }

    html[data-fileteka-theme="gray"] .brand-mark,


    html:not([data-fileteka-theme]) .brand-mark {
      border-color: var(--red);
      background:
        linear-gradient(135deg, rgba(201,47,56,.14), transparent 50%),
        #e9ebed;
      color: var(--red);
    }

    html[data-fileteka-theme="gray"] .brand-name,


    html:not([data-fileteka-theme]) .brand-name { color: #22272b; }
    html[data-fileteka-theme="gray"] .brand-name span,

    html:not([data-fileteka-theme]) .brand-name span { color: var(--red); }
    html[data-fileteka-theme="gray"] .brand-tagline,

    html:not([data-fileteka-theme]) .brand-tagline { color: #687078; }

    html[data-fileteka-theme="gray"] .header-chip,


    html:not([data-fileteka-theme]) .header-chip {
      border-color: #aeb5bb;
      border-left-color: var(--red);
      background: #dfe2e4;
    }

    html[data-fileteka-theme="gray"] .header-chip-label,


    html:not([data-fileteka-theme]) .header-chip-label { color: #727a81; }
    html[data-fileteka-theme="gray"] .header-chip-value,

    html:not([data-fileteka-theme]) .header-chip-value { color: #30363b; }

    html[data-fileteka-theme="gray"] .nav-bar,


    html:not([data-fileteka-theme]) .nav-bar {
      border-bottom-color: #a9afb4;
      background: #c4c9cd;
    }

    html[data-fileteka-theme="gray"] .main-nav a,


    html:not([data-fileteka-theme]) .main-nav a {
      border-right-color: #adb3b8;
      color: #3f474e;
    }

    html[data-fileteka-theme="gray"] .main-nav a:first-child,


    html:not([data-fileteka-theme]) .main-nav a:first-child { border-left-color: #adb3b8; }

    html[data-fileteka-theme="gray"] .main-nav a:hover,


    html:not([data-fileteka-theme]) .main-nav a:hover,


    html[data-fileteka-theme="gray"] .main-nav a.active,


    html:not([data-fileteka-theme]) .main-nav a.active {
      color: #22272b;
      background: #e7e9eb;
    }

    html[data-fileteka-theme="gray"] .menu-toggle,


    html:not([data-fileteka-theme]) .menu-toggle {
      border-left-color: #aeb4b9;
      border-right-color: #aeb4b9;
      color: #30363b;
    }

    html[data-fileteka-theme="gray"] .ticker,


    html:not([data-fileteka-theme]) .ticker {
      border-color: #aeb5bb;
      border-left-color: var(--red);
      background: #e6e8ea;
    }

    html[data-fileteka-theme="gray"] .ticker-title,


    html:not([data-fileteka-theme]) .ticker-title {
      background: #cfd3d6;
      color: #2d3338;
    }

    html[data-fileteka-theme="gray"] .ticker-text,


    html:not([data-fileteka-theme]) .ticker-text { color: #586067; }
    html[data-fileteka-theme="gray"] .ticker-text strong,

    html:not([data-fileteka-theme]) .ticker-text strong { color: var(--red); }

    html[data-fileteka-theme="gray"] .section-head,


    html:not([data-fileteka-theme]) .section-head {
      border-color: #aeb5bb;
      border-left-color: var(--red);
      background: linear-gradient(180deg, #dfe2e4, #ced2d5);
    }

    html[data-fileteka-theme="gray"] .section-title,


    html:not([data-fileteka-theme]) .section-title { color: #293036; }
    html[data-fileteka-theme="gray"] .section-count,

    html:not([data-fileteka-theme]) .section-count { color: #6f777e; }

    html[data-fileteka-theme="gray"] .featured,


    html:not([data-fileteka-theme]) .featured {
      border-color: #9fa7ad;
      border-left-color: var(--red);
      background:
        radial-gradient(circle at 75% 28%, rgba(201,47,56,.15), transparent 22%),
        linear-gradient(135deg, #eef0f2 0%, #dfe2e4 58%, #cfd3d6 100%);
      box-shadow: var(--shadow);
    }

    html[data-fileteka-theme="gray"] .category-label,


    html:not([data-fileteka-theme]) .category-label {
      border-color: #d49297;
      color: #a2262d;
      background: rgba(201,47,56,.08);
    }

    html[data-fileteka-theme="gray"] .featured h1,


    html:not([data-fileteka-theme]) .featured h1 { color: #24292d; }
    html[data-fileteka-theme="gray"] .featured h1 a:hover,

    html:not([data-fileteka-theme]) .featured h1 a:hover { color: var(--red); }
    html[data-fileteka-theme="gray"] .featured-excerpt,

    html:not([data-fileteka-theme]) .featured-excerpt { color: #596168; }
    html[data-fileteka-theme="gray"] .meta-row,

    html:not([data-fileteka-theme]) .meta-row { color: #707880; }

    html[data-fileteka-theme="gray"] .featured-art,


    html:not([data-fileteka-theme]) .featured-art {
      border-left-color: #b7bdc2;
      background:
        linear-gradient(90deg, transparent 49%, rgba(201,47,56,.16) 50%, transparent 51%),
        linear-gradient(0deg, transparent 49%, rgba(201,47,56,.13) 50%, transparent 51%),
        radial-gradient(circle, rgba(201,47,56,.18) 0 2px, transparent 3px),
        #d7dbde;
      background-size: 54px 54px, 54px 54px, 27px 27px, auto;
    }

    html[data-fileteka-theme="gray"] .featured-art::before,


    html:not([data-fileteka-theme]) .featured-art::before,


    html[data-fileteka-theme="gray"] .featured-art::after,


    html:not([data-fileteka-theme]) .featured-art::after { border-color: rgba(201,47,56,.5); }

    html[data-fileteka-theme="gray"] .featured-art::after,


    html:not([data-fileteka-theme]) .featured-art::after { background: rgba(201,47,56,.08); }
    html[data-fileteka-theme="gray"] .art-code,

    html:not([data-fileteka-theme]) .art-code { color: #6f777d; }

    html[data-fileteka-theme="gray"] .post-card,


    html:not([data-fileteka-theme]) .post-card {
      border-color: #b3bac0;
      border-left-color: #969fa6;
      background: #e8eaec;
    }

    html[data-fileteka-theme="gray"] .post-card:hover,


    html:not([data-fileteka-theme]) .post-card:hover {
      border-left-color: var(--red);
      background: #f2f3f4;
    }

    html[data-fileteka-theme="gray"] .post-thumb,


    html:not([data-fileteka-theme]) .post-thumb {
      border-right-color: #b7bdc2;
      background:
        linear-gradient(135deg, rgba(255,255,255,.22), transparent 45%),
        #cfd3d6;
    }

    html[data-fileteka-theme="gray"] .post-thumb.theme-red,


    html:not([data-fileteka-theme]) .post-thumb.theme-red {
      background:
        linear-gradient(135deg, rgba(201,47,56,.25), transparent 48%),
        repeating-linear-gradient(90deg, transparent 0 18px, rgba(255,255,255,.20) 18px 19px),
        #cfd3d6;
    }

    html[data-fileteka-theme="gray"] .post-thumb.theme-grid,


    html:not([data-fileteka-theme]) .post-thumb.theme-grid {
      background:
        linear-gradient(rgba(90,98,105,.10) 1px, transparent 1px),
        linear-gradient(90deg, rgba(90,98,105,.10) 1px, transparent 1px),
        #d9dcdf;
      background-size: 18px 18px;
    }

    html[data-fileteka-theme="gray"] .post-thumb.theme-terminal,


    html:not([data-fileteka-theme]) .post-thumb.theme-terminal {
      background:
        linear-gradient(180deg, rgba(77,159,89,.12), transparent 50%),
        #d8ddda;
    }

    html[data-fileteka-theme="gray"] .thumb-label,


    html:not([data-fileteka-theme]) .thumb-label {
      border-color: rgba(70,76,82,.18);
      background: rgba(244,245,246,.84);
      color: #4c545b;
    }

    html[data-fileteka-theme="gray"] .post-topline,


    html:not([data-fileteka-theme]) .post-topline { color: #727a81; }
    html[data-fileteka-theme="gray"] .post-category,

    html:not([data-fileteka-theme]) .post-category { color: #b32730; }
    html[data-fileteka-theme="gray"] .post-title,

    html:not([data-fileteka-theme]) .post-title { color: #2b3035; }
    html[data-fileteka-theme="gray"] .post-title a:hover,

    html:not([data-fileteka-theme]) .post-title a:hover { color: var(--red); }
    html[data-fileteka-theme="gray"] .post-excerpt,

    html:not([data-fileteka-theme]) .post-excerpt { color: #616970; }
    html[data-fileteka-theme="gray"] .post-footer,

    html:not([data-fileteka-theme]) .post-footer { color: #7b8389; }
    html[data-fileteka-theme="gray"] .read-more,

    html:not([data-fileteka-theme]) .read-more { color: #4e565d; }
    html[data-fileteka-theme="gray"] .read-more:hover,

    html:not([data-fileteka-theme]) .read-more:hover { color: var(--red); }

    html[data-fileteka-theme="gray"] .pagination a,


    html:not([data-fileteka-theme]) .pagination a,


    html[data-fileteka-theme="gray"] .pagination span,


    html:not([data-fileteka-theme]) .pagination span {
      border-color: #aeb5bb;
      background: #e3e6e8;
      color: #50585f;
    }

    html[data-fileteka-theme="gray"] .pagination a:hover,


    html:not([data-fileteka-theme]) .pagination a:hover,


    html[data-fileteka-theme="gray"] .pagination .current,


    html:not([data-fileteka-theme]) .pagination .current {
      border-color: var(--red);
      background: #f2f3f4;
      color: #22272b;
    }

    html[data-fileteka-theme="gray"] .widget,


    html:not([data-fileteka-theme]) .widget {
      border-color: #acb3b9;
      border-top-color: var(--red);
      background: #e4e7e9;
      box-shadow: 0 5px 15px rgba(58,64,70,.10);
    }

    html[data-fileteka-theme="gray"] .widget-title,


    html:not([data-fileteka-theme]) .widget-title {
      border-bottom-color: #b3bac0;
      background: linear-gradient(180deg, #d8dcdf, #c8cdd1);
      color: #2d3338;
    }

    html[data-fileteka-theme="gray"] .search-box input,


    html:not([data-fileteka-theme]) .search-box input {
      border-color: #aeb5bb;
      background: #f3f4f5;
      color: #2b3035;
    }

    html[data-fileteka-theme="gray"] .search-box button,


    html:not([data-fileteka-theme]) .search-box button {
      border-color: var(--red-dark);
      background: var(--red-dark);
      color: #fff;
    }

    html[data-fileteka-theme="gray"] .category-list li + li,


    html:not([data-fileteka-theme]) .category-list li + li,


    html[data-fileteka-theme="gray"] .popular-list li + li,


    html:not([data-fileteka-theme]) .popular-list li + li,


    html[data-fileteka-theme="gray"] .download-list li + li,


    html:not([data-fileteka-theme]) .download-list li + li { border-top-color: #c2c7cb; }

    html[data-fileteka-theme="gray"] .category-list a,


    html:not([data-fileteka-theme]) .category-list a { color: #4e565d; }
    html[data-fileteka-theme="gray"] .category-list a:hover,

    html:not([data-fileteka-theme]) .category-list a:hover { color: #202428; }
    html[data-fileteka-theme="gray"] .category-list a::before,

    html:not([data-fileteka-theme]) .category-list a::before { color: var(--red); }

    html[data-fileteka-theme="gray"] .category-count,


    html:not([data-fileteka-theme]) .category-count {
      border-color: #b6bcc1;
      background: #d5d9dc;
      color: #6e767d;
    }

    html[data-fileteka-theme="gray"] .popular-title,


    html:not([data-fileteka-theme]) .popular-title,


    html[data-fileteka-theme="gray"] .download-title,


    html:not([data-fileteka-theme]) .download-title { color: #3f474e; }

    html[data-fileteka-theme="gray"] .popular-list a:hover .popular-title,


    html:not([data-fileteka-theme]) .popular-list a:hover .popular-title,


    html[data-fileteka-theme="gray"] .download-list a:hover .download-title,


    html:not([data-fileteka-theme]) .download-list a:hover .download-title { color: var(--red); }

    html[data-fileteka-theme="gray"] .popular-meta,


    html:not([data-fileteka-theme]) .popular-meta,


    html[data-fileteka-theme="gray"] .download-meta,


    html:not([data-fileteka-theme]) .download-meta { color: #7a8289; }

    html[data-fileteka-theme="gray"] .tags a,


    html:not([data-fileteka-theme]) .tags a {
      border-color: #b5bbc0;
      background: #d7dade;
      color: #626a71;
    }

    html[data-fileteka-theme="gray"] .tags a:hover,


    html:not([data-fileteka-theme]) .tags a:hover {
      border-color: var(--red);
      color: #252a2e;
      background: #edf0f2;
    }

    html[data-fileteka-theme="gray"] .mini-status-row,


    html:not([data-fileteka-theme]) .mini-status-row { color: #646c73; }
    html[data-fileteka-theme="gray"] .mini-status-value,

    html:not([data-fileteka-theme]) .mini-status-value { color: #30363b; }

    html[data-fileteka-theme="gray"] .site-footer,


    html:not([data-fileteka-theme]) .site-footer {
      border-top-color: var(--red-dark);
      background: #c7ccd0;
    }

    html[data-fileteka-theme="gray"] .footer-title,


    html:not([data-fileteka-theme]) .footer-title { color: #30363b; }
    html[data-fileteka-theme="gray"] .footer-text,

    html:not([data-fileteka-theme]) .footer-text { color: #626a71; }
    html[data-fileteka-theme="gray"] .footer-links a,

    html:not([data-fileteka-theme]) .footer-links a { color: #596168; }
    html[data-fileteka-theme="gray"] .footer-links a:hover,

    html:not([data-fileteka-theme]) .footer-links a:hover { color: var(--red); }

    html[data-fileteka-theme="gray"] .footer-bottom,


    html:not([data-fileteka-theme]) .footer-bottom {
      border-top-color: #adb4ba;
      color: #697178;
    }

    html[data-fileteka-theme="gray"] .footer-bottom strong,


    html:not([data-fileteka-theme]) .footer-bottom strong { color: #3d444a; }

    @media (max-width: 760px) {
      html[data-fileteka-theme="gray"] .main-nav,

      html:not([data-fileteka-theme]) .main-nav {
        border-color: #aeb5bb;
        border-top-color: var(--red-dark);
        background: #d7dade;
        box-shadow: 0 14px 28px rgba(58,64,70,.22);
      }

      html[data-fileteka-theme="gray"] .main-nav a,


      html:not([data-fileteka-theme]) .main-nav a,


      html[data-fileteka-theme="gray"] .main-nav a:first-child,


      html:not([data-fileteka-theme]) .main-nav a:first-child { border-bottom-color: #bcc2c7; }
    }

/* =========================================================
       THEME OVERRIDE: FILETEKA LIGHT INVERSE
       Exact original layout, converted to a bright inverse theme.
       ========================================================= */
    html[data-fileteka-theme="light"] {
      --bg: #f1f3f5;
      --bg-2: #f7f8f9;
      --panel: #ffffff;
      --panel-2: #f6f7f8;
      --panel-3: #eef1f3;
      --line: #d7dce0;
      --line-soft: #e7eaed;
      --red: #c92f38;
      --red-bright: #dd3c45;
      --red-dark: #a3262e;
      --text: #272c30;
      --text-soft: #606970;
      --muted: #889198;
      --white: #202428;
      --green: #4da25a;
      --shadow: 0 8px 26px rgba(64,72,80,.09);
    }

    html[data-fileteka-theme="light"] body {
      color: var(--text);
      background:
        linear-gradient(rgba(90,100,110,.035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(90,100,110,.035) 1px, transparent 1px),
        var(--bg);
      background-size: 24px 24px;
    }

    html[data-fileteka-theme="light"] .topline {
      border-bottom-color: #e0e4e7;
      background: #f8f9fa;
      color: #7d858c;
    }

    html[data-fileteka-theme="light"] .topline-label { color: #434a50; }

    html[data-fileteka-theme="light"] .site-header {
      border-bottom-color: #e2b6ba;
      background: linear-gradient(180deg, #ffffff 0%, #f5f7f8 100%);
      box-shadow: 0 4px 16px rgba(64,72,80,.07);
    }

    html[data-fileteka-theme="light"] .brand-mark {
      border-color: var(--red);
      background:
        linear-gradient(135deg, rgba(201,47,56,.11), transparent 50%),
        #ffffff;
      color: var(--red);
      box-shadow: inset 0 0 0 1px rgba(0,0,0,.015);
    }

    html[data-fileteka-theme="light"] .brand-name { color: #22272b; }
    html[data-fileteka-theme="light"] .brand-name span { color: var(--red); }
    html[data-fileteka-theme="light"] .brand-tagline { color: #8a9299; }

    html[data-fileteka-theme="light"] .header-chip {
      border-color: #dde2e5;
      border-left-color: var(--red);
      background: #fafbfc;
    }

    html[data-fileteka-theme="light"] .header-chip-label { color: #929aa1; }
    html[data-fileteka-theme="light"] .header-chip-value { color: #3d444a; }

    html[data-fileteka-theme="light"] .nav-bar {
      border-bottom-color: #dce1e4;
      background: #f3f5f6;
    }

    html[data-fileteka-theme="light"] .main-nav a {
      border-right-color: #dde2e5;
      color: #596168;
    }

    html[data-fileteka-theme="light"] .main-nav a:first-child { border-left-color: #dde2e5; }

    html[data-fileteka-theme="light"] .main-nav a:hover,


    html[data-fileteka-theme="light"] .main-nav a.active {
      color: #202428;
      background: #ffffff;
    }

    html[data-fileteka-theme="light"] .menu-toggle {
      border-left-color: #dde2e5;
      border-right-color: #dde2e5;
      color: #383f45;
    }

    html[data-fileteka-theme="light"] .ticker {
      border-color: #d9dee2;
      border-left-color: var(--red);
      background: #ffffff;
      box-shadow: 0 4px 13px rgba(64,72,80,.04);
    }

    html[data-fileteka-theme="light"] .ticker-title {
      background: #f1f3f5;
      color: #32383d;
    }

    html[data-fileteka-theme="light"] .ticker-text { color: #687078; }
    html[data-fileteka-theme="light"] .ticker-text strong { color: var(--red); }

    html[data-fileteka-theme="light"] .section-head {
      border-color: #d9dee2;
      border-left-color: var(--red);
      background: linear-gradient(180deg, #ffffff, #f2f4f5);
    }

    html[data-fileteka-theme="light"] .section-title { color: #2c3237; }
    html[data-fileteka-theme="light"] .section-count { color: #90989f; }

    html[data-fileteka-theme="light"] .featured {
      border-color: #d5dade;
      border-left-color: var(--red);
      background:
        radial-gradient(circle at 75% 28%, rgba(201,47,56,.12), transparent 22%),
        linear-gradient(135deg, #ffffff 0%, #f7f8f9 58%, #edf1f3 100%);
      box-shadow: var(--shadow);
    }

    html[data-fileteka-theme="light"] .category-label {
      border-color: #ebbbc0;
      color: #a3262e;
      background: #fff4f5;
    }

    html[data-fileteka-theme="light"] .featured h1 { color: #22272b; }
    html[data-fileteka-theme="light"] .featured h1 a:hover { color: var(--red); }
    html[data-fileteka-theme="light"] .featured-excerpt { color: #646d74; }
    html[data-fileteka-theme="light"] .meta-row { color: #8a9299; }

    html[data-fileteka-theme="light"] .featured-art {
      border-left-color: #d9dee2;
      background:
        linear-gradient(90deg, transparent 49%, rgba(201,47,56,.12) 50%, transparent 51%),
        linear-gradient(0deg, transparent 49%, rgba(201,47,56,.10) 50%, transparent 51%),
        radial-gradient(circle, rgba(201,47,56,.15) 0 2px, transparent 3px),
        #f2f4f5;
      background-size: 54px 54px, 54px 54px, 27px 27px, auto;
    }

    html[data-fileteka-theme="light"] .featured-art::before,


    html[data-fileteka-theme="light"] .featured-art::after { border-color: rgba(201,47,56,.42); }

    html[data-fileteka-theme="light"] .featured-art::after { background: rgba(201,47,56,.06); }
    html[data-fileteka-theme="light"] .art-code { color: #929aa1; }

    html[data-fileteka-theme="light"] .post-card {
      border-color: #d9dee2;
      border-left-color: #c8ced3;
      background: #ffffff;
      box-shadow: 0 4px 12px rgba(64,72,80,.035);
    }

    html[data-fileteka-theme="light"] .post-card:hover {
      border-left-color: var(--red);
      background: #fafbfc;
      box-shadow: 0 6px 17px rgba(64,72,80,.06);
    }

    html[data-fileteka-theme="light"] .post-thumb {
      border-right-color: #dce1e4;
      background:
        linear-gradient(135deg, rgba(255,255,255,.45), transparent 45%),
        #edf0f2;
    }

    html[data-fileteka-theme="light"] .post-thumb.theme-red {
      background:
        linear-gradient(135deg, rgba(201,47,56,.20), transparent 48%),
        repeating-linear-gradient(90deg, transparent 0 18px, rgba(90,100,110,.04) 18px 19px),
        #eef1f3;
    }

    html[data-fileteka-theme="light"] .post-thumb.theme-grid {
      background:
        linear-gradient(rgba(90,100,110,.07) 1px, transparent 1px),
        linear-gradient(90deg, rgba(90,100,110,.07) 1px, transparent 1px),
        #f0f2f4;
      background-size: 18px 18px;
    }

    html[data-fileteka-theme="light"] .post-thumb.theme-terminal {
      background:
        linear-gradient(180deg, rgba(77,162,90,.10), transparent 50%),
        #eef2ef;
    }

    html[data-fileteka-theme="light"] .thumb-label {
      border-color: rgba(85,95,105,.14);
      background: rgba(255,255,255,.88);
      color: #5f676e;
    }

    html[data-fileteka-theme="light"] .post-topline { color: #8a9299; }
    html[data-fileteka-theme="light"] .post-category { color: #b52a32; }
    html[data-fileteka-theme="light"] .post-title { color: #2a2f34; }
    html[data-fileteka-theme="light"] .post-title a:hover { color: var(--red); }
    html[data-fileteka-theme="light"] .post-excerpt { color: #697179; }
    html[data-fileteka-theme="light"] .post-footer { color: #8a9299; }
    html[data-fileteka-theme="light"] .read-more { color: #555e65; }
    html[data-fileteka-theme="light"] .read-more:hover { color: var(--red); }

    html[data-fileteka-theme="light"] .pagination a,


    html[data-fileteka-theme="light"] .pagination span {
      border-color: #d8dde1;
      background: #ffffff;
      color: #626a71;
    }

    html[data-fileteka-theme="light"] .pagination a:hover,


    html[data-fileteka-theme="light"] .pagination .current {
      border-color: var(--red);
      background: #fff7f8;
      color: #202428;
    }

    html[data-fileteka-theme="light"] .widget {
      border-color: #d9dee2;
      border-top-color: var(--red);
      background: #ffffff;
      box-shadow: 0 5px 16px rgba(64,72,80,.055);
    }

    html[data-fileteka-theme="light"] .widget-title {
      border-bottom-color: #e2e6e9;
      background: linear-gradient(180deg, #fbfcfc, #f2f4f5);
      color: #32383d;
    }

    html[data-fileteka-theme="light"] .search-box input {
      border-color: #d9dee2;
      background: #f9fafb;
      color: #2d3338;
    }

    html[data-fileteka-theme="light"] .search-box button {
      border-color: var(--red-dark);
      background: var(--red);
      color: #fff;
    }

    html[data-fileteka-theme="light"] .category-list li + li,


    html[data-fileteka-theme="light"] .popular-list li + li,


    html[data-fileteka-theme="light"] .download-list li + li { border-top-color: #eceff1; }

    html[data-fileteka-theme="light"] .category-list a { color: #596168; }
    html[data-fileteka-theme="light"] .category-list a:hover { color: #202428; }
    html[data-fileteka-theme="light"] .category-list a::before { color: var(--red); }

    html[data-fileteka-theme="light"] .category-count {
      border-color: #e0e4e7;
      background: #f5f7f8;
      color: #8a9299;
    }

    html[data-fileteka-theme="light"] .popular-title,


    html[data-fileteka-theme="light"] .download-title { color: #495158; }

    html[data-fileteka-theme="light"] .popular-list a:hover .popular-title,


    html[data-fileteka-theme="light"] .download-list a:hover .download-title { color: var(--red); }

    html[data-fileteka-theme="light"] .popular-meta,


    html[data-fileteka-theme="light"] .download-meta { color: #929aa1; }

    html[data-fileteka-theme="light"] .tags a {
      border-color: #dfe3e6;
      background: #f7f8f9;
      color: #6a7279;
    }

    html[data-fileteka-theme="light"] .tags a:hover {
      border-color: #e9b1b6;
      color: var(--red);
      background: #fff7f8;
    }

    html[data-fileteka-theme="light"] .mini-status-row { color: #697179; }
    html[data-fileteka-theme="light"] .mini-status-value { color: #3c4349; }

    html[data-fileteka-theme="light"] .site-footer {
      border-top-color: #e1b5b9;
      background: #f5f7f8;
    }

    html[data-fileteka-theme="light"] .footer-title { color: #394046; }
    html[data-fileteka-theme="light"] .footer-text { color: #737b82; }
    html[data-fileteka-theme="light"] .footer-links a { color: #687078; }
    html[data-fileteka-theme="light"] .footer-links a:hover { color: var(--red); }

    html[data-fileteka-theme="light"] .footer-bottom {
      border-top-color: #dde2e5;
      color: #8a9299;
    }

    html[data-fileteka-theme="light"] .footer-bottom strong { color: #495158; }

    @media (max-width: 760px) {
      html[data-fileteka-theme="light"] .main-nav {
        border-color: #d9dee2;
        border-top-color: #e1b5b9;
        background: #ffffff;
        box-shadow: 0 14px 28px rgba(64,72,80,.13);
      }

      html[data-fileteka-theme="light"] .main-nav a,


      html[data-fileteka-theme="light"] .main-nav a:first-child { border-bottom-color: #eceff1; }
    }


/* =========================================================
   WORDPRESS INTEGRATION / THEME SWITCHER
   ========================================================= */

.admin-bar .topline { margin-top: 0; }

.utility-menu,
.main-nav-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.utility-menu {
  display: flex;
  align-items: center;
  gap: 14px;
}

.main-nav-list {
  display: flex;
  align-items: stretch;
  min-width: 0;
  flex: 1;
}

.main-nav-list > li { display: flex; }
.main-nav-list > li.current-menu-item > a,
.main-nav-list > li.current_page_item > a,
.main-nav-list > li.current-menu-ancestor > a {
  color: var(--white);
  background: var(--panel-2);
}
.main-nav-list > li.current-menu-item > a::after,
.main-nav-list > li.current_page_item > a::after,
.main-nav-list > li.current-menu-ancestor > a::after {
  content: "";
  position: absolute;
  left: 9px;
  right: 9px;
  bottom: 0;
  height: 2px;
  background: var(--red-bright);
}

.brand-custom-logo .custom-logo-link { display: block; }
.brand-custom-logo img { width: auto; max-height: 48px; }

.theme-switcher {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  min-height: 24px;
  padding: 2px;
  border: 1px solid var(--line);
  background: var(--panel);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
}

.theme-switcher-label {
  padding: 0 5px 0 4px;
  color: var(--muted);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .45px;
  text-transform: uppercase;
}

.theme-choice {
  height: 20px;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 0 6px;
  border: 1px solid transparent;
  background: transparent;
  color: var(--text-soft);
  cursor: pointer;
  font-size: 9px;
  line-height: 1;
  transition: border-color .15s ease, background .15s ease, color .15s ease;
}

.theme-choice:hover,
.theme-choice.is-active {
  border-color: var(--line);
  background: var(--panel-2);
  color: var(--text);
}

.theme-choice.is-active {
  box-shadow: inset 0 -2px 0 var(--red);
}

.theme-swatch {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  border: 1px solid rgba(127,135,142,.55);
}
.theme-choice-dark .theme-swatch { background: #17191c; }
.theme-choice-gray .theme-swatch { background: #cfd3d6; }
.theme-choice-light .theme-swatch { background: #f5f6f7; }

.page-grid-inner { margin-top: 14px; }
.breadcrumb-strip .ticker-text { white-space: normal; }
.breadcrumb-strip a:hover { color: var(--red-bright); }

.featured-art.has-image,
.post-thumb.has-image,
.single-hero-image { background: var(--panel-2); }

.featured-art.has-image img,
.post-thumb.has-image img,
.single-hero-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.featured-art.has-image::before,
.featured-art.has-image::after { display: none; }

.widget-shell { min-width: 0; }
.widget-shell > .widget-title + * { margin-top: 0; }
.widget-shell > ul,
.widget-shell > ol,
.widget-shell > div,
.widget-shell > form,
.widget-shell > p { margin-left: 9px; margin-right: 9px; }
.widget-shell > .widget-title ~ :last-child { margin-bottom: 9px; }
.widget-shell .wp-block-group { padding: 9px; }
.widget-shell .wp-block-search { padding: 9px; }
.widget-shell .wp-block-search__inside-wrapper { display: flex; }
.widget-shell .wp-block-search__input { min-width: 0; }

.single-article {
  border: 1px solid var(--line);
  border-top: 2px solid var(--red);
  background: var(--panel);
  box-shadow: var(--shadow);
}

.single-header { padding: 24px 25px 20px; }
.single-title {
  max-width: 850px;
  margin: 8px 0 0;
  color: var(--text);
  font-size: 27px;
  line-height: 1.18;
  letter-spacing: -.35px;
}
.single-lead {
  max-width: 800px;
  margin: 11px 0 0;
  color: var(--text-soft);
  font-size: 13px;
  line-height: 1.58;
}
.single-meta { margin-top: 14px; }

.single-hero-image,
.single-hero-art {
  min-height: 220px;
  margin: 0 25px;
  overflow: hidden;
  border: 1px solid var(--line);
}
.single-hero-art {
  position: relative;
  background:
    linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px),
    var(--panel-2);
  background-size: 24px 24px;
}
.single-hero-art::before {
  content: "";
  position: absolute;
  width: 120px;
  height: 120px;
  left: 50%;
  top: 50%;
  transform: translate(-50%,-50%) rotate(45deg);
  border: 1px solid var(--red);
  box-shadow: 0 0 0 22px rgba(214,58,58,.035);
}
.single-hero-art span {
  position: absolute;
  right: 12px;
  bottom: 10px;
  color: var(--muted);
  font: 9px var(--mono);
}

.entry-content {
  padding: 25px;
  color: var(--text);
  font-size: 14px;
  line-height: 1.72;
}
.entry-content > *:first-child { margin-top: 0; }
.entry-content p { margin: 0 0 16px; }
.entry-content h2,
.entry-content h3,
.entry-content h4 { color: var(--text); line-height: 1.24; }
.entry-content h2 {
  margin: 30px 0 11px;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--line-soft);
  font-size: 21px;
}
.entry-content h3 { margin: 24px 0 9px; font-size: 17px; }
.entry-content h4 { margin: 20px 0 8px; font-size: 15px; }
.entry-content a { color: var(--red-bright); text-decoration: underline; text-underline-offset: 2px; }
.entry-content img { height: auto; }
.entry-content figure { margin: 20px 0; }
.entry-content figcaption { margin-top: 6px; color: var(--muted); font-size: 10px; }
.entry-content blockquote {
  margin: 20px 0;
  padding: 12px 15px;
  border-left: 3px solid var(--red);
  background: var(--panel-2);
  color: var(--text-soft);
}
.entry-content pre,
.entry-content code { font-family: var(--mono); }
.entry-content pre {
  overflow-x: auto;
  padding: 14px;
  border: 1px solid var(--line);
  background: var(--bg-2);
  color: var(--text);
  font-size: 12px;
}
.entry-content code {
  padding: 2px 4px;
  background: var(--panel-2);
  color: var(--red-bright);
}
.entry-content table {
  width: 100%;
  border-collapse: collapse;
  margin: 18px 0;
}
.entry-content th,
.entry-content td { padding: 9px 10px; border: 1px solid var(--line); text-align: left; }
.entry-content th { background: var(--panel-2); }
.entry-content ul,
.entry-content ol { margin: 0 0 18px 22px; padding: 0; }
.entry-content li { margin: 5px 0; }

.single-footer { padding: 0 25px 22px; }
.post-tags { display: flex; flex-wrap: wrap; gap: 5px; align-items: center; }
.post-tags span { color: var(--muted); font-size: 10px; }
.post-tags a { padding: 4px 6px; border: 1px solid var(--line); background: var(--panel-2); color: var(--text-soft); font-size: 9px; }
.post-tags a:hover { border-color: var(--red); color: var(--text); }

.related-section { margin-top: 16px; }
.related-list .post-card { grid-template-columns: 145px minmax(0,1fr); }
.related-list .post-excerpt { display: none; }

.comments-area {
  margin-top: 16px;
  padding: 14px;
  border: 1px solid var(--line);
  background: var(--panel);
}
.comment-list { margin: 0; padding: 0; list-style: none; }
.comment-list .comment { padding: 12px 0; border-bottom: 1px solid var(--line-soft); }
.comment-list .children { list-style: none; }
.comment-author { display: flex; align-items: center; gap: 8px; }
.comment-author img { border-radius: 50%; }
.comment-meta { color: var(--muted); font-size: 10px; }
.comment-content { margin-top: 8px; color: var(--text-soft); }
.comment-respond { margin-top: 18px; }
.comment-respond input:not([type=submit]),
.comment-respond textarea {
  width: 100%;
  padding: 9px 10px;
  border: 1px solid var(--line);
  outline: none;
  background: var(--bg-2);
  color: var(--text);
}
.comment-submit {
  padding: 8px 13px;
  border: 1px solid var(--red-dark);
  background: var(--red-dark);
  color: #fff;
  cursor: pointer;
}
.comment-submit:hover { background: var(--red); }

.page-article .single-header { border-bottom: 1px solid var(--line); }

.empty-state,
.error-card {
  padding: 28px;
  border: 1px solid var(--line);
  border-left: 3px solid var(--red);
  background: var(--panel);
  color: var(--text-soft);
}
.empty-state h2,
.error-card h1 { margin-top: 0; color: var(--text); }
.error-wrap { padding: 38px 0 52px; }
.error-card { max-width: 760px; margin: 0 auto; }
.error-code { color: var(--red-bright); font: 700 54px/1 var(--mono); }
.error-home { display: inline-block; margin-top: 18px; color: var(--red-bright); }

.footer-widget ul { margin: 0; padding: 0; list-style: none; }
.footer-widget li + li { margin-top: 5px; }
.footer-widget a { color: var(--muted); font-size: 10px; }
.footer-widget a:hover { color: var(--red-bright); }

.alignwide { max-width: 100%; }
.alignfull { width: calc(100% + 50px); margin-left: -25px; max-width: none; }
.wp-caption { max-width: 100%; }
.screen-reader-text {
  position: absolute !important;
  width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0;
}
.screen-reader-text:focus {
  width: auto; height: auto; margin: 0; clip: auto;
  top: 5px; left: 5px; z-index: 100000;
  padding: 12px; background: #fff; color: #111;
}

@media (max-width: 760px) {
  .topline-inner { min-height: 34px; }
  .topline-right { display: flex; }
  .utility-menu { display: none; }
  .theme-switcher-label,
  .theme-choice-text { display: none; }
  .theme-choice { width: 26px; justify-content: center; padding: 0; }
  .main-nav-list { flex-direction: column; }
  .main-nav-list > li { display: block; }
  .single-header { padding: 20px 18px 17px; }
  .single-title { font-size: 22px; }
  .single-hero-image,
  .single-hero-art { margin: 0 18px; min-height: 150px; }
  .entry-content { padding: 20px 18px; font-size: 13px; }
  .single-footer { padding: 0 18px 18px; }
  .related-list .post-card { grid-template-columns: 1fr; }
}

@media (max-width: 540px) {
  .theme-switcher { margin-left: auto; }
  .single-title { font-size: 20px; }
  .single-lead { font-size: 12px; }
  .alignfull { width: calc(100% + 36px); margin-left: -18px; }
}
