/*
Theme Name: N₂OSpectrum
Theme URI: https://n2ospectrum.ru
Author: N₂OSpectrum
Description: Полный спектр закиси азота. Небесно-голубая палитра, уникальный формат главной — горизонтальные полосы-секции по каждой категории с горизонтальным скроллом карточек. SVG-паутина связей тем N₂O, спектрометр активности рубрик. Двойная шапка. Правый сайдбар.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 8.0
License: GNU General Public License v2 or later
Text Domain: n2ospectrum
Tags: magazine, light, blue, cyan, horizontal-scroll, sections, spectrum, right-sidebar, interactive, translation-ready
*/

/* ============================================================
   ДИЗАЙН-СИСТЕМА
   ============================================================ */
:root {
  --bg:           #f0f7ff;
  --surface:      #ffffff;
  --surface2:     #f5faff;
  --surface3:     #ebf4ff;
  --border:       #dbeafe;
  --border2:      #bfdbfe;

  --blue:         #0ea5e9;
  --blue-dark:    #0284c7;
  --blue-deep:    #0369a1;
  --blue-navy:    #1e3a5f;
  --blue-light:   #eff8ff;
  --blue-mid:     #bfdbfe;
  --blue-text:    #0369a1;

  --cyan:         #06b6d4;
  --cyan-light:   #ecfeff;

  --ink:          #1e3a5f;
  --ink-soft:     #1e40af;
  --ink-mid:      #334155;
  --ink-muted:    #475569;
  --ink-faint:    #64748b;
  --ink-ghost:    #94a3b8;
  --ink-pale:     #cbd5e1;

  /* Цвета категорий */
  --c-discovery:  #0ea5e9;
  --c-health:     #8b5cf6;
  --c-transport:  #ef4444;
  --c-ecology:    #10b981;
  --c-production: #3b82f6;
  --c-law:        #f97316;
  --c-history:    #d97706;
  --c-interview:  #ec4899;

  --font-sans:  'Plus Jakarta Sans', 'Helvetica Neue', sans-serif;
  --font-serif: 'Lora', 'Georgia', serif;
  --font-mono:  'IBM Plex Mono', 'Courier New', monospace;
  --font-disp:  'Syne', 'Arial Black', sans-serif;

  --sp-xs:4px;  --sp-sm:8px;   --sp-md:16px;
  --sp-lg:24px; --sp-xl:40px;  --sp-2xl:64px;

  --panel-w:    248px;
  --container:  1280px;
  --r:          6px;
  --r-md:       10px;
  --r-lg:       14px;
  --r-xl:       20px;
  --ease:       cubic-bezier(.4,0,.2,1);
  --dur:        .2s;
  --t:          all var(--dur) var(--ease);
}

/* ============================================================
   RESET
   ============================================================ */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:16px;scroll-behavior:smooth;-webkit-font-smoothing:antialiased}
body{background:var(--bg);color:var(--ink);font-family:var(--font-sans);line-height:1.65;overflow-x:hidden}
a{color:inherit;text-decoration:none;transition:var(--t)}
img{max-width:100%;height:auto;display:block}
ul,ol{padding-left:1.5rem}
::selection{background:var(--blue);color:#fff}
::-webkit-scrollbar{width:4px;height:4px}
::-webkit-scrollbar-track{background:var(--bg)}
::-webkit-scrollbar-thumb{background:var(--blue-mid);border-radius:2px}
::-webkit-scrollbar-thumb:hover{background:var(--blue)}

/* ============================================================
   ТИПОГРАФИКА
   ============================================================ */
h1,h2,h3,h4{font-family:var(--font-sans);font-weight:800;line-height:1.2;color:var(--ink);letter-spacing:-.02em}
h1{font-size:clamp(1.6rem,3vw,2.5rem)}
h2{font-size:clamp(1.2rem,2vw,1.65rem)}
h3{font-size:1rem}

/* ============================================================
   БЕЙДЖИ РУБРИК
   ============================================================ */
.cat-badge{display:inline-block;font-family:var(--font-mono);font-size:.58rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:2px 8px;border-radius:var(--r);line-height:1.6}
.cat-discovery{background:var(--blue-light);color:var(--blue-text)}
.cat-production{background:#eff6ff;color:#1d4ed8}
.cat-health{background:#f3e8ff;color:#6d28d9}
.cat-transport{background:#fee2e2;color:#b91c1c}
.cat-ecology{background:#ecfdf5;color:#065f46}
.cat-law{background:#fff7ed;color:#c2410c}
.cat-history{background:#fef3c7;color:#92400e}
.cat-interview{background:#fdf2f8;color:#9d174d}
.cat-default{background:var(--surface2);color:var(--ink-faint)}

/* Пилюля категории для статьи */
.cat-pill-sp{display:inline-flex;align-items:center;gap:5px;background:var(--blue-light);border-radius:var(--r-xl);padding:4px 12px;margin-bottom:var(--sp-sm)}
.cat-pill-dot-sp{width:6px;height:6px;border-radius:50%;background:var(--blue)}
.cat-pill-text-sp{font-family:var(--font-mono);font-size:.58rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--blue-text)}

/* ============================================================
   ШАПКА — ДВОЙНАЯ
   ============================================================ */
.site-header-sp{background:var(--surface);position:sticky;top:0;z-index:500;box-shadow:0 1px 8px rgba(14,165,233,.07)}

/* Верхняя строка */
.header-top-sp{border-bottom:1px solid var(--border);padding:0 20px;display:flex;align-items:center;gap:var(--sp-md);height:52px;max-width:var(--container);margin:0 auto}
.site-logo-sp{display:flex;flex-direction:column;gap:1px;flex-shrink:0;text-decoration:none}
.logo-text-sp{font-family:var(--font-disp);font-size:1.5rem;font-weight:900;color:var(--ink);letter-spacing:-.03em;line-height:1}
.logo-text-sp em{color:var(--blue);font-style:normal}
.logo-sub-sp{font-family:var(--font-mono);font-size:.5rem;letter-spacing:.2em;text-transform:uppercase;color:var(--blue-mid)}
.header-search-sp{display:flex;align-items:center;gap:6px;background:var(--bg);border:1px solid var(--border);border-radius:var(--r-xl);padding:6px 14px;margin-left:auto;flex-shrink:0;transition:border-color var(--dur)}
.header-search-sp:focus-within{border-color:var(--blue)}
.header-search-sp svg{flex-shrink:0}
.header-search-sp input{border:none;background:none;outline:none;font-family:var(--font-sans);font-size:.8rem;color:var(--ink);width:140px}
.header-search-sp input::placeholder{color:var(--ink-ghost)}
.btn-cta-sp{font-family:var(--font-sans);font-size:.68rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:7px 18px;background:var(--blue);color:#fff;border:none;border-radius:var(--r-xl);cursor:pointer;transition:var(--t);white-space:nowrap;flex-shrink:0}
.btn-cta-sp:hover{background:var(--blue-dark)}
.btn-ham-sp{display:none;flex-direction:column;gap:4px;background:none;border:none;cursor:pointer;padding:5px;z-index:1001}
.btn-ham-sp span{display:block;width:18px;height:1.5px;background:var(--ink-faint);border-radius:1px;transition:all .3s var(--ease);transform-origin:center}
.btn-ham-sp.open span:nth-child(1){transform:translateY(5.5px) rotate(45deg)}
.btn-ham-sp.open span:nth-child(2){opacity:0;transform:scaleX(0)}
.btn-ham-sp.open span:nth-child(3){transform:translateY(-5.5px) rotate(-45deg)}

/* Нижняя строка — спектр категорий */
.header-spectrum-sp{border-bottom:2px solid var(--border);padding:0 20px;display:flex;overflow-x:auto;scrollbar-width:none;max-width:var(--container);margin:0 auto}
.header-spectrum-sp::-webkit-scrollbar{display:none}
.spectrum-tab{font-family:var(--font-mono);font-size:.65rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-ghost);padding:8px 14px;cursor:pointer;white-space:nowrap;border-bottom:2px solid transparent;margin-bottom:-2px;transition:var(--t)}
.spectrum-tab:hover{color:var(--blue)}
.spectrum-tab.active{color:var(--blue);border-bottom-color:var(--blue)}

/* Мобильное меню */
.mobile-overlay-sp{display:none;position:fixed;inset:0;background:rgba(30,58,95,.5);z-index:998;backdrop-filter:blur(4px)}
.mobile-overlay-sp.open{display:block}
.mobile-nav-sp{position:fixed;top:0;left:0;right:0;background:var(--surface);border-bottom:2px solid var(--blue);z-index:999;padding:62px 20px 20px;transform:translateY(-110%);transition:transform .35s var(--ease)}
.mobile-nav-sp.open{transform:translateY(0)}
.mobile-nav-sp ul,.mobile-nav-sp .menu{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}
.mobile-nav-sp ul li,.mobile-nav-sp .menu li{list-style:none}
.mobile-nav-sp ul li a,.mobile-nav-sp .menu li a{display:block;font-family:var(--font-disp);font-size:1.5rem;font-weight:900;color:var(--ink-muted);padding:10px 16px;border-radius:var(--r);border-left:3px solid transparent;transition:var(--t)}
.mobile-nav-sp ul li a:hover,.mobile-nav-sp .menu li.current-menu-item a{color:var(--blue);background:var(--blue-light);border-left-color:var(--blue)}

/* Поиск оверлей */
#js-sp-search-overlay{display:none;position:fixed;inset:0;background:rgba(240,247,255,.97);z-index:9000;flex-direction:column;align-items:center;justify-content:center}
#js-sp-search-overlay.open{display:flex}
.search-close-sp{position:absolute;top:20px;right:20px;background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--ink-ghost);line-height:1}
.search-hint-sp{font-family:var(--font-mono);font-size:.6rem;letter-spacing:.25em;text-transform:uppercase;color:var(--ink-ghost);margin-bottom:20px}
.search-form-sp{display:flex;width:100%;max-width:540px;padding:0 20px;border:2px solid var(--blue);border-radius:var(--r-md);overflow:hidden;background:var(--surface)}
.search-form-sp input{flex:1;padding:12px 16px;border:none;outline:none;font-family:var(--font-sans);font-size:.95rem;color:var(--ink);background:transparent}
.search-form-sp button{padding:12px 18px;background:var(--blue);border:none;color:#fff;cursor:pointer;font-family:var(--font-sans);font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}

/* ============================================================
   ТИКЕР
   ============================================================ */
.ticker-sp{background:var(--blue-light);border-bottom:1px solid var(--blue-mid);padding:6px 0;overflow:hidden}
.ticker-inner-sp{max-width:var(--container);margin:0 auto;padding:0 20px;display:flex;align-items:center;gap:12px}
.ticker-badge-sp{font-family:var(--font-mono);font-size:.58rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;background:var(--blue);color:#fff;padding:3px 9px;border-radius:var(--r);white-space:nowrap;flex-shrink:0}
.ticker-wrap-sp{flex:1;overflow:hidden}
.ticker-text-sp{display:inline-flex;gap:32px;white-space:nowrap;animation:spTicker 26s linear infinite}
.ticker-text-sp span{font-family:var(--font-sans);font-size:.75rem;font-weight:500;color:var(--blue-text);display:flex;align-items:center;gap:5px}
.ticker-text-sp span::before{content:'◆';color:var(--blue-mid);font-size:.5rem}
@keyframes spTicker{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ============================================================
   HERO
   ============================================================ */
.hero-sp{background:var(--surface);border-bottom:1px solid var(--border);padding:var(--sp-lg) 0}
.hero-inner-sp{max-width:var(--container);margin:0 auto;padding:0 20px;display:grid;grid-template-columns:1fr 340px;gap:var(--sp-xl);align-items:center}
.hero-badge-sp{display:inline-flex;align-items:center;gap:6px;background:var(--blue-light);border-radius:var(--r-xl);padding:4px 14px;margin-bottom:var(--sp-md)}
.hero-badge-dot-sp{width:7px;height:7px;border-radius:50%;background:var(--blue);animation:heroPulse 2s ease-in-out infinite}
@keyframes heroPulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}
.hero-badge-text-sp{font-family:var(--font-mono);font-size:.6rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--blue-text)}
.hero-title-sp{font-size:clamp(1.6rem,3.5vw,2.5rem);font-weight:900;color:var(--ink);line-height:1.2;letter-spacing:-.03em;margin-bottom:var(--sp-md)}
.hero-title-sp:hover{color:var(--blue)}
.hero-excerpt-sp{font-family:var(--font-serif);font-size:1rem;color:var(--ink-muted);line-height:1.75;margin-bottom:var(--sp-lg)}
.hero-meta-sp{display:flex;gap:var(--sp-md);font-family:var(--font-mono);font-size:.62rem;color:var(--ink-ghost);margin-bottom:var(--sp-md)}
.hero-meta-sp .author{color:var(--ink-faint);font-weight:600}
.btn-read-sp{display:inline-flex;align-items:center;gap:6px;background:var(--blue);color:#fff;border:none;border-radius:var(--r-xl);padding:10px 22px;font-family:var(--font-sans);font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:var(--t)}
.btn-read-sp:hover{background:var(--blue-dark);transform:translateY(-1px)}
.hero-img-sp{border-radius:var(--r-lg);overflow:hidden}
.hero-img-sp img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .5s var(--ease)}
.hero-img-sp:hover img{transform:scale(1.03)}
.hero-img-ph-sp{width:100%;aspect-ratio:4/3;border-radius:var(--r-lg);display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:.65rem;font-weight:600;color:var(--blue-mid);letter-spacing:.15em;text-transform:uppercase}

/* ============================================================
   ГОРИЗОНТАЛЬНЫЕ ПОЛОСЫ-СЕКЦИИ — главный уникальный формат
   ============================================================ */
.sections-sp{background:var(--bg)}

.section-stripe{border-bottom:1px solid var(--border);background:var(--bg);max-width:var(--container);margin:0 auto}

.section-header-sp{display:flex;align-items:center;gap:var(--sp-md);padding:12px 20px;background:var(--surface);border-bottom:1px solid var(--border)}
.sec-sym-sp{font-family:var(--font-disp);font-size:1.1rem;font-weight:900;width:36px;height:36px;border-radius:var(--r-md);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.sec-name-sp{font-family:var(--font-sans);font-size:.95rem;font-weight:700;color:var(--ink)}
.sec-desc-sp{font-family:var(--font-serif);font-size:.8rem;color:var(--ink-ghost);font-style:italic}
.sec-count-sp{font-family:var(--font-mono);font-size:.6rem;color:var(--ink-ghost);margin-left:auto;flex-shrink:0}
.sec-all-sp{font-family:var(--font-mono);font-size:.62rem;font-weight:700;color:var(--blue);white-space:nowrap;transition:color var(--dur)}
.sec-all-sp:hover{color:var(--blue-dark)}

/* Горизонтальный скролл карточек */
.section-cards-sp{overflow-x:auto;padding:var(--sp-md) 20px;display:flex;gap:var(--sp-md);scrollbar-width:thin;scrollbar-color:var(--blue-mid) transparent}
.section-cards-sp::-webkit-scrollbar{height:3px}
.section-cards-sp::-webkit-scrollbar-thumb{background:var(--blue-mid);border-radius:2px}

/* Карточка */
.sp-card-item{width:220px;flex-shrink:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;cursor:pointer;transition:var(--t);display:flex;flex-direction:column;opacity:0;transform:translateX(10px)}
.sp-card-item.revealed{opacity:1;transform:translateX(0);transition:opacity .4s var(--ease),transform .4s var(--ease),border-color var(--dur),box-shadow var(--dur),transform var(--dur)}
.sp-card-item.revealed:hover{border-color:var(--blue);transform:translateY(-4px);box-shadow:0 8px 24px rgba(14,165,233,.12)}
.sp-card-item.revealed:hover .sp-card-title{color:var(--blue)}
.sp-card-img-wrap{overflow:hidden;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:.6rem;font-weight:600;color:var(--ink-pale);letter-spacing:.12em;text-transform:uppercase}
.sp-card-img-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .4s var(--ease)}
.sp-card-item.revealed:hover .sp-card-img-wrap img{transform:scale(1.05)}

/* Размеры изображений */
.sp-card-item.card-wide .sp-card-img-wrap{height:130px}
.sp-card-item.card-std  .sp-card-img-wrap{height:110px}
.sp-card-item.card-mini .sp-card-img-wrap{height:80px}

/* Тело карточки */
.sp-card-body-sp{padding:var(--sp-md);display:flex;flex-direction:column;gap:5px;flex:1}
.sp-card-title{font-family:var(--font-sans);font-size:.88rem;font-weight:700;color:var(--ink);line-height:1.4;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;transition:color var(--dur)}
.sp-card-excerpt{font-family:var(--font-sans);font-size:.78rem;color:var(--ink-muted);line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.sp-card-meta{font-family:var(--font-mono);font-size:.6rem;color:var(--ink-ghost);display:flex;gap:7px;margin-top:auto;padding-top:5px;border-top:1px solid var(--border)}
.sp-card-author{color:var(--ink-faint);font-weight:600}

/* Кнопка загрузить ещё */
.load-more-sp{display:flex;align-items:center;gap:8px;font-family:var(--font-sans);font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:10px 24px;border:1.5px solid var(--blue);color:var(--blue);border-radius:var(--r-xl);background:none;cursor:pointer;transition:var(--t);margin:var(--sp-xl) auto}
.load-more-sp:hover{background:var(--blue);color:#fff}

/* ============================================================
   ГЛАВНЫЙ LAYOUT
   ============================================================ */
.site-body-sp{max-width:var(--container);margin:0 auto;padding:0 20px;display:grid;grid-template-columns:1fr var(--panel-w);gap:0;align-items:start}
.main-col-sp{min-width:0;border-right:1px solid var(--border)}

/* ============================================================
   ПРОГРЕСС ЧТЕНИЯ
   ============================================================ */
.reading-progress-sp{position:fixed;top:0;left:0;width:0%;height:3px;background:var(--blue);z-index:9999;transition:width .1s linear}

/* ============================================================
   ОДИНОЧНАЯ СТАТЬЯ
   ============================================================ */
.article-wrap-sp{padding:var(--sp-xl);background:var(--surface)}
.article-breadcrumb-sp{display:flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:.6rem;color:var(--ink-ghost);margin-bottom:var(--sp-md)}
.bc-sp{color:var(--border2)}
.bc-link-sp{color:var(--blue-text);transition:color var(--dur)}
.bc-link-sp:hover{color:var(--blue)}
.article-title-sp{font-size:clamp(1.7rem,3.5vw,2.8rem);font-weight:900;color:var(--ink);letter-spacing:-.03em;line-height:1.2;margin:var(--sp-sm) 0 var(--sp-md)}
.article-subtitle-sp{font-family:var(--font-serif);font-size:1.05rem;color:var(--ink-muted);line-height:1.7;font-style:italic;margin-bottom:var(--sp-lg)}
.article-byline-sp{display:flex;align-items:center;gap:var(--sp-md);padding:var(--sp-md) 0;border-top:2px solid var(--blue);border-bottom:1px solid var(--border);margin-bottom:var(--sp-xl);flex-wrap:wrap}
.byline-avatar-sp{width:42px;height:42px;border-radius:50%;overflow:hidden;border:2px solid var(--blue-mid);flex-shrink:0}
.byline-name-sp{font-family:var(--font-sans);font-size:.88rem;font-weight:700;color:var(--ink)}
.byline-role-sp{font-family:var(--font-mono);font-size:.58rem;color:var(--ink-ghost);text-transform:uppercase;letter-spacing:.08em}
.article-stats-sp{margin-left:auto;font-family:var(--font-mono);font-size:.6rem;color:var(--ink-ghost);display:flex;gap:var(--sp-md);flex-wrap:wrap}
.article-featured-sp{border-radius:var(--r-lg);overflow:hidden;margin-bottom:var(--sp-xl)}
.article-featured-sp img{width:100%;max-height:480px;object-fit:cover}
.article-featured-ph-sp{width:100%;aspect-ratio:16/9;max-height:440px;border-radius:var(--r-lg);display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:.65rem;font-weight:600;color:var(--blue-mid);letter-spacing:.15em;text-transform:uppercase;margin-bottom:var(--sp-xl)}
.article-body-sp{font-family:var(--font-serif);font-size:1.05rem;line-height:1.88;color:var(--ink-mid)}
.article-body-sp p{margin-bottom:var(--sp-md)}
.article-body-sp h2{font-family:var(--font-sans);font-size:1.3rem;font-weight:800;color:var(--ink);letter-spacing:-.02em;margin:var(--sp-xl) 0 var(--sp-md);padding-bottom:var(--sp-sm);border-bottom:1px solid var(--border);position:relative}
.article-body-sp h2::after{content:'';position:absolute;bottom:-1px;left:0;width:32px;height:2px;background:var(--blue)}
.article-body-sp h3{font-family:var(--font-sans);font-size:1.05rem;font-weight:700;color:var(--ink);margin:var(--sp-lg) 0 var(--sp-sm)}
.article-body-sp blockquote{border-left:3px solid var(--blue);padding:var(--sp-md) var(--sp-lg);margin:var(--sp-xl) 0;background:var(--blue-light);border-radius:0 var(--r) var(--r) 0;font-style:italic;font-size:1.05rem;color:var(--blue-deep)}
.article-body-sp a{color:var(--blue);border-bottom:1px solid var(--blue-mid)}
.article-body-sp a:hover{border-color:var(--blue)}
.article-body-sp ul,.article-body-sp ol{margin:var(--sp-md) 0 var(--sp-md) var(--sp-xl)}
.article-body-sp li{margin-bottom:6px}
.article-footer-sp{margin-top:var(--sp-xl);padding-top:var(--sp-lg);border-top:1px solid var(--border);display:flex;align-items:center;gap:var(--sp-sm);flex-wrap:wrap}
.share-label-sp{font-family:var(--font-mono);font-size:.58rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-ghost)}
.share-btn-sp{font-family:var(--font-mono);font-size:.58rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:5px 11px;border:1px solid var(--border);border-radius:var(--r-xl);color:var(--ink-faint);cursor:pointer;transition:var(--t);display:inline-block}
.share-btn-sp:hover{border-color:var(--blue);color:var(--blue);background:var(--blue-light)}
.author-box-sp{background:var(--bg);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--sp-lg);display:flex;gap:var(--sp-md);align-items:flex-start;margin-top:var(--sp-xl)}
.author-avatar-sp{width:50px;height:50px;border-radius:50%;overflow:hidden;flex-shrink:0}
.author-name-sp{font-family:var(--font-sans);font-weight:800;font-size:.92rem;margin-bottom:2px}
.author-role-sp{font-family:var(--font-mono);font-size:.58rem;color:var(--blue);text-transform:uppercase;letter-spacing:.1em;margin-bottom:5px}
.author-bio-sp{font-family:var(--font-serif);font-size:.85rem;color:var(--ink-muted);margin:0}

/* ============================================================
   КОММЕНТАРИИ
   ============================================================ */
.comments-area-sp{margin-top:var(--sp-2xl);padding-top:var(--sp-xl);border-top:1px solid var(--border)}
.comments-title-sp,.comment-reply-title{font-family:var(--font-sans);font-size:1.1rem;font-weight:800;color:var(--ink);letter-spacing:-.02em;margin-bottom:var(--sp-lg)}
.comment-reply-title{font-size:.9rem;margin-bottom:var(--sp-md)}
.comment-list{list-style:none;padding:0;margin:0 0 var(--sp-xl)}
.comment-list .children{list-style:none;padding-left:var(--sp-xl);margin-top:var(--sp-sm);border-left:2px solid var(--blue-mid)}
.comment-body{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--sp-lg);margin-bottom:var(--sp-md);transition:border-color var(--dur)}
.comment-body:hover{border-color:var(--blue-mid)}
.comment-meta{display:flex;align-items:center;gap:var(--sp-md);margin-bottom:var(--sp-md)}
.comment-author{display:flex;align-items:center;gap:10px}
.comment-author img{width:38px;height:38px;border-radius:50%;border:2px solid var(--blue-mid);flex-shrink:0}
.comment-author .fn{font-family:var(--font-sans);font-size:.88rem;font-weight:700;color:var(--ink);font-style:normal}
.comment-author .url{color:var(--blue)}
.comment-metadata{margin-left:auto}
.comment-metadata a{font-family:var(--font-mono);font-size:.6rem;color:var(--ink-ghost);transition:color var(--dur)}
.comment-metadata a:hover{color:var(--blue)}
.comment-content{font-family:var(--font-serif);font-size:.95rem;color:var(--ink-mid);line-height:1.75}
.comment-content p{margin-bottom:var(--sp-sm)}
.comment-content p:last-child{margin-bottom:0}
.comment-awaiting-moderation{display:inline-block;font-family:var(--font-sans);font-size:.62rem;font-weight:600;background:var(--blue-light);color:var(--blue-text);padding:3px 9px;border-radius:var(--r);margin-bottom:var(--sp-sm);font-style:normal}
.reply{margin-top:var(--sp-sm)}
.comment-reply-link{font-family:var(--font-mono);font-size:.58rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-ghost);border:1px solid var(--border);border-radius:var(--r-xl);padding:3px 11px;display:inline-block;transition:var(--t)}
.comment-reply-link:hover{border-color:var(--blue);color:var(--blue);background:var(--blue-light)}
.no-comments{font-family:var(--font-sans);font-size:.88rem;color:var(--ink-ghost);text-align:center;padding:var(--sp-xl);background:var(--surface2);border-radius:var(--r-lg);margin-bottom:var(--sp-xl)}
.comment-respond{background:var(--bg);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--sp-xl);margin-top:var(--sp-xl)}
.comment-notes{font-family:var(--font-sans);font-size:.78rem;color:var(--ink-ghost);margin-bottom:var(--sp-lg)}
.comment-notes .required{color:var(--blue)}
.comment-form-comment,.comment-form-author,.comment-form-email,.comment-form-url{margin-bottom:var(--sp-md)}
.comment-form-comment label,.comment-form-author label,.comment-form-email label,.comment-form-url label{display:block;font-family:var(--font-mono);font-size:.58rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:5px}
.comment-form-comment textarea,.comment-form-author input,.comment-form-email input,.comment-form-url input{width:100%;padding:10px 13px;background:var(--surface);border:1.5px solid var(--border);border-radius:var(--r-md);font-family:var(--font-sans);font-size:.9rem;color:var(--ink);outline:none;transition:border-color var(--dur),box-shadow var(--dur);resize:vertical}
.comment-form-comment textarea{min-height:120px;line-height:1.65;font-family:var(--font-serif)}
.comment-form-comment textarea:focus,.comment-form-author input:focus,.comment-form-email input:focus,.comment-form-url input:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(14,165,233,.1)}
.comment-form-cookies-consent{display:flex;align-items:flex-start;gap:8px;margin-bottom:var(--sp-lg)}
.comment-form-cookies-consent input[type="checkbox"]{width:15px;height:15px;margin-top:2px;accent-color:var(--blue);flex-shrink:0}
.comment-form-cookies-consent label{font-family:var(--font-sans);font-size:.75rem;color:var(--ink-muted);line-height:1.5}
.form-submit #submit{font-family:var(--font-sans);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:10px 26px;background:var(--blue);color:#fff;border:none;border-radius:var(--r-xl);cursor:pointer;transition:var(--t)}
.form-submit #submit:hover{background:var(--blue-dark);transform:translateY(-1px)}
.required{color:var(--blue);font-weight:700}

/* ============================================================
   ПРАВЫЙ САЙДБАР
   ============================================================ */
.sidebar-right-sp{padding:var(--sp-lg) 0 var(--sp-lg) var(--sp-lg);position:sticky;top:104px;max-height:calc(100vh - 104px);overflow-y:auto;scrollbar-width:none}
.sidebar-right-sp::-webkit-scrollbar{display:none}
.sb-w-sp{margin-bottom:var(--sp-lg)}
.sb-w-title-sp{font-family:var(--font-mono);font-size:.6rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--blue);margin-bottom:var(--sp-md);display:flex;align-items:center;gap:5px}
.sb-w-title-sp::before{content:'';width:8px;height:2px;background:var(--blue);border-radius:1px;flex-shrink:0}

/* Паутина связей */
.web-widget-sp{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--sp-md);text-align:center}
.web-widget-sp svg{display:block;margin:0 auto}

/* Спектрометр активности */
.spectrum-widget-sp{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--sp-md)}
.spectrum-gradient-bar{height:8px;border-radius:4px;background:linear-gradient(90deg,#6366f1,#0ea5e9,#06b6d4,#10b981,#84cc16);margin-bottom:var(--sp-md)}
.spectrum-row{display:flex;align-items:center;gap:7px;padding:6px 0;border-bottom:1px solid var(--border)}
.spectrum-row:last-child{border-bottom:none}
.spectrum-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
.spectrum-label{font-family:var(--font-sans);font-size:.78rem;color:var(--ink-muted);flex:1}
.spectrum-bar-wrap{width:60px;height:4px;background:var(--bg);border-radius:2px;overflow:hidden}
.spectrum-bar-fill{height:100%;border-radius:2px;transition:width .8s var(--ease)}
.spectrum-pct{font-family:var(--font-mono);font-size:.65rem;font-weight:700;color:var(--ink);min-width:28px;text-align:right}

/* Популярное */
.popular-item-sp{display:flex;align-items:flex-start;gap:8px;padding:8px 0;border-bottom:1px solid var(--border);cursor:pointer;transition:var(--t)}
.popular-item-sp:last-child{border-bottom:none}
.popular-item-sp:hover{padding-left:5px}
.pop-num-sp{font-family:var(--font-disp);font-size:1.3rem;font-weight:900;color:var(--blue-mid);line-height:1;flex-shrink:0;width:22px;transition:color var(--dur)}
.popular-item-sp:hover .pop-num-sp{color:var(--blue)}
.pop-title-sp{font-family:var(--font-sans);font-size:.8rem;font-weight:600;color:var(--ink-mid);line-height:1.4;transition:color var(--dur)}
.popular-item-sp:hover .pop-title-sp{color:var(--blue)}
.pop-meta-sp{font-family:var(--font-mono);font-size:.58rem;color:var(--ink-ghost);margin-top:2px}

/* Подписка */
.sub-sp{background:var(--blue-navy);border-radius:var(--r-lg);padding:var(--sp-lg)}
.sub-title-sp{font-family:var(--font-disp);font-size:.95rem;font-weight:900;color:#fff;letter-spacing:-.01em;line-height:1.25;margin-bottom:5px}
.sub-title-sp em{color:#7dd3fc;font-style:normal}
.sub-desc-sp{font-family:var(--font-sans);font-size:.75rem;color:rgba(255,255,255,.38);line-height:1.55;margin-bottom:var(--sp-md)}
.sub-input-sp{width:100%;padding:8px 10px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);border-radius:var(--r-md);color:#fff;font-family:var(--font-sans);font-size:.85rem;outline:none;margin-bottom:6px;transition:border-color var(--dur)}
.sub-input-sp:focus{border-color:var(--blue)}
.sub-input-sp::placeholder{color:rgba(255,255,255,.25)}
.sub-btn-sp{width:100%;padding:9px;background:var(--blue);color:#fff;border:none;border-radius:var(--r-md);font-family:var(--font-sans);font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:background var(--dur)}
.sub-btn-sp:hover{background:var(--blue-dark)}

/* Теги */
.tags-sp{display:flex;flex-wrap:wrap;gap:4px}
.tag-sp{font-family:var(--font-mono);font-size:.6rem;font-weight:600;padding:3px 8px;border:1px solid var(--border);border-radius:var(--r-xl);color:var(--ink-faint);cursor:pointer;transition:var(--t)}
.tag-sp:hover{border-color:var(--blue);color:var(--blue);background:var(--blue-light)}

/* ============================================================
   ФУТЕР
   ============================================================ */
.site-footer-sp{background:var(--blue-navy);color:rgba(255,255,255,.45);padding:var(--sp-2xl) 0 0;margin-top:var(--sp-2xl)}
.footer-inner-sp{max-width:var(--container);margin:0 auto;padding:0 20px}
.footer-top-sp{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:var(--sp-xl);margin-bottom:var(--sp-xl)}
.footer-logo-sp{font-family:var(--font-disp);font-size:1.5rem;font-weight:900;color:#fff;letter-spacing:-.02em;margin-bottom:6px}
.footer-logo-sp em{color:#7dd3fc;font-style:normal}
.footer-desc-sp{font-family:var(--font-sans);font-size:.8rem;line-height:1.65;margin-bottom:var(--sp-md);max-width:260px}
.footer-social-sp{display:flex;gap:5px;flex-wrap:wrap}
.footer-soc-sp{font-family:var(--font-mono);font-size:.58rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:5px 10px;border:1px solid rgba(255,255,255,.12);border-radius:var(--r);color:rgba(255,255,255,.35);cursor:pointer;transition:var(--t)}
.footer-soc-sp:hover{border-color:#7dd3fc;color:#7dd3fc}
.footer-col-title-sp{font-family:var(--font-mono);font-size:.58rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:rgba(255,255,255,.2);margin-bottom:var(--sp-md)}
.footer-links-sp{list-style:none;padding:0}
.footer-links-sp li{margin-bottom:8px}
.footer-links-sp a{font-family:var(--font-sans);font-size:.82rem;color:rgba(255,255,255,.4);transition:color var(--dur)}
.footer-links-sp a:hover{color:#7dd3fc}
.footer-bottom-sp{border-top:1px solid rgba(255,255,255,.07);padding:var(--sp-md) 0;display:flex;align-items:center;justify-content:space-between;font-family:var(--font-mono);font-size:.6rem;letter-spacing:.05em;flex-wrap:wrap;gap:8px}

/* ============================================================
   УТИЛИТЫ
   ============================================================ */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}
.pagination{display:flex;align-items:center;justify-content:center;gap:6px;padding:var(--sp-xl) 0}
.page-numbers{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid var(--border);border-radius:var(--r);font-family:var(--font-mono);font-size:.75rem;font-weight:700;color:var(--ink-faint);transition:var(--t)}
.page-numbers:hover,.page-numbers.current{border-color:var(--blue);color:var(--blue);background:var(--blue-light)}

/* ============================================================
   АДАПТИВ
   ============================================================ */
@media(max-width:1100px){
  :root{--panel-w:220px}
  .footer-top-sp{grid-template-columns:1fr 1fr;gap:var(--sp-lg)}
  .hero-inner-sp{grid-template-columns:1fr 260px}
}
@media(max-width:768px){
  .site-body-sp{grid-template-columns:1fr;padding:0}
  .sidebar-right-sp{display:none}
  .hero-inner-sp{grid-template-columns:1fr;padding:0 16px}
  .hero-img-sp,.hero-img-ph-sp{display:none}
  .btn-ham-sp{display:flex}
  .header-search-sp{display:none}
  .btn-cta-sp{display:none}
  .header-top-sp{padding:0 12px}
  .header-spectrum-sp{padding:0 12px}
  .section-header-sp{padding:10px 14px}
  .section-cards-sp{padding:var(--sp-md) 14px}
  .article-wrap-sp{padding:var(--sp-lg) var(--sp-md) var(--sp-xl)}
  .article-byline-sp{flex-wrap:wrap}
  .article-stats-sp{margin-left:0;width:100%}
  .footer-top-sp{grid-template-columns:1fr;gap:var(--sp-lg)}
  .footer-bottom-sp{flex-direction:column;text-align:center}
}
@media(max-width:480px){
  .header-spectrum-sp{display:none}
  .sp-card-item{width:180px}
}
