:root{
  --nr-bg:#0b0f16;
  --nr-panel:#111827;
  --nr-panel-2:#0f1623;
  --nr-text:#e5e7eb;
  --nr-muted:#9ca3af;
  --nr-brand:#6ee7ff;
}

/* ---------- Base ---------- */
html,body{
  margin:0;padding:0;background:var(--nr-bg);color:var(--nr-text);
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,'Helvetica Neue',Arial,sans-serif
}
img{max-width:100%;height:auto}

/* ---------- Header ---------- */
.nr-bar{
  position:sticky;top:0;z-index:50;background:rgba(11,15,22,.9);
  backdrop-filter:saturate(1.2) blur(10px);border-bottom:1px solid #1f2937
}
.nr-bar__in{display:flex;align-items:center;justify-content:space-between;height:60px}
.nr-brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:#e5e7eb;padding:0 8px}
.nr-brand__logo{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;background:#0ea5e9;color:#001018;font-weight:900}
.nr-brand__text{font-weight:800;letter-spacing:.2px}

/* ---------- WP меню ---------- */
.nr-menu .nr-nav{display:flex;gap:16px;align-items:center;margin:0;padding:0;list-style:none}
.nr-menu .nr-nav>li{position:relative}
.nr-menu .nr-nav a{
  color:#d1d5db;text-decoration:none;font-weight:700;font-size:14px;opacity:.9;
  display:inline-flex;align-items:center;gap:6px
}
.nr-menu .nr-nav a:hover{opacity:1;color:#fff}
.nr-menu .nr-nav>li.menu-item-has-children>a::after{content:"▾";font-size:12px;opacity:.8;margin-left:4px}
.nr-menu .nr-nav .sub-menu{
  display:none;position:absolute;right:0;top:100%;
  background:#0b121d;border:1px solid #1f2937;border-radius:12px;
  padding:8px;margin-top:8px;min-width:200px;list-style:none;
  box-shadow:0 10px 24px rgba(0,0,0,.35)
}
.nr-menu .nr-nav .sub-menu li a{display:block;padding:8px 10px;border-radius:8px}
.nr-menu .nr-nav .sub-menu li a:hover{background:#0e1726}
.nr-menu .nr-nav>li.menu-item-has-children:hover>.sub-menu,
.nr-menu .nr-nav>li.menu-item-has-children:focus-within>.sub-menu{display:block}

/* ---------- Containers ---------- */
.nr-wrap{background:linear-gradient(180deg,#0b0f16 0%,#0b0f16 60%,#0f1623 100%)}
.nr-cont{max-width:1180px;margin:0 auto;padding:0 16px}
.nr-section{padding:16px 0}

/* ---------- Hero ---------- */
.nr-hero{padding:38px 0 20px}
.nr-hero__box{display:grid;grid-template-columns:1.1fr .9fr;gap:24px;align-items:center}
.nr-hero h1{font-size:40px;line-height:1.15;margin:0 0 10px;font-weight:900}
.nr-hero h1 span{color:var(--nr-brand)}
.nr-hero p{color:#cbd5e1;margin:0 0 16px}

/* ---------- Buttons ---------- */
.nr-btn{
  display:inline-flex;align-items:center;gap:10px;
  padding:10px 14px;border-radius:10px;text-decoration:none;font-weight:800;
  border:1px solid #1f2937;background:#111827;color:#e5e7eb
}
.nr-btn--android{background:linear-gradient(180deg,#0e1b12,#0b1510)}
.nr-btn--ios{background:linear-gradient(180deg,#121825,#0f1420)}
.nr-dl__btns{display:flex;gap:10px;flex-wrap:wrap}
.nr-dl__meta{opacity:.8;margin-bottom:8px}
.nr-btn.nr-btn--download{
  margin-top:12px;background:linear-gradient(90deg,#6366f1,#a855f7);
  border:none;color:#fff;font-weight:800;text-align:center;justify-content:center;letter-spacing:.5px;
  box-shadow:0 4px 12px rgba(99,102,241,.4);transition:transform .15s ease,box-shadow .15s ease
}
.nr-btn.nr-btn--download:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(168,85,247,.55)}
.nr-btn__icon{font-size:16px}
.nr-btn__count{font-size:13px;color:#9aa3b1;margin-left:6px}

/* ---------- Pills (Hero + News tags) ---------- */
.nr-tags{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 10px}
.nr-pill{
  display:inline-flex;align-items:center;gap:6px;
  padding:6px 10px;border-radius:999px;background:#0b121d;border:1px solid #1f2937;
  font-size:12px;color:#cbd5e1;text-decoration:none;transition:.2s ease
}
.nr-pill:hover{background:#0e1726;border-color:#253043;color:#e5e7eb}
.nr-pill.is-cat{background:#2563eb;border-color:#2563eb;color:#fff}
.nr-pill.is-cat:hover{background:#1d4ed8;border-color:#1d4ed8}

/* ---------- Version / Card ---------- */
.nr-card{background:linear-gradient(180deg,#0f1623,#0e1520);border:1px solid #1f2937;border-radius:18px;box-shadow:0 0 0 1px #1f2937 inset}
.nr-version{padding:16px}
.nr-preview{margin-top:14px}
.nr-preview__ph{height:140px;display:flex;align-items:center;justify-content:center;border:1px dashed #334155;border-radius:14px;color:#94a3b8}

/* ---------- Features ---------- */
.nr-grid{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;margin:0;padding:0;list-style:none
}
.nr-grid>li,.nr-grid>div{list-style:none}
.nr-grid .feat{
  text-align:center;display:flex;flex-direction:column;align-items:center;
  padding:20px 16px;border-radius:12px;background:#0e1520;border:1px solid #1f2937
}
.feat-icon{font-size:36px;margin-bottom:10px;color:#6ee7ff;filter:drop-shadow(0 2px 6px rgba(110,231,255,.25))}
.nr-grid .feat h3{margin:0 0 8px;font-size:18px;font-weight:800;color:#fff}
.nr-grid .feat p{margin:0;font-size:14px;color:#c0c8d2}
@media(max-width:1200px){.nr-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.nr-grid{grid-template-columns:1fr}}

/* ---------- Latest News (Grid) ---------- */
.nr-news__list{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));
  gap:18px;margin-top:18px;align-items:stretch
}
.nr-news__list .post{
  display:flex;flex-direction:column;background:#0e1520;border:1px solid #1f2937;border-radius:14px;overflow:hidden;
  box-shadow:0 0 0 1px rgba(31,41,55,.15) inset;transition:transform .15s ease,box-shadow .15s ease
}
.nr-news__list .post:hover{transform:translateY(-2px);box-shadow:0 4px 14px rgba(0,0,0,.35)}
.nr-news__list .post .thumb{width:100%;height:160px;object-fit:cover;border-bottom:1px solid #1f2937;display:block}
.nr-news__list .post .post__in{flex:1;padding:14px 16px 16px;display:flex;flex-direction:column;gap:10px}
.nr-news__list .post h3{font-size:15px;font-weight:700;margin:0}
.nr-news__list .post h3 a{color:#fff!important;text-decoration:none}
.nr-news__list .post h3 a:hover{color:var(--nr-brand)!important}
.nr-news__list .post h3 a:visited{color:#e5e7eb!important}
.nr-news__list .post .meta{font-size:13px;color:#9ca3af}
.nr-news__list .post p{font-size:13px;color:#cbd5e1;margin:0;flex:1}
.nr-news__list .post .nr-btn{
  margin-top:12px;align-self:flex-start;font-size:13px;padding:8px 12px;border-radius:8px;
  background:linear-gradient(90deg,#6366f1,#a855f7);border:none;color:#fff;font-weight:700;
  box-shadow:0 2px 8px rgba(99,102,241,.35)
}
.nr-news__list .post .nr-btn:hover{box-shadow:0 4px 12px rgba(168,85,247,.5);transform:translateY(-1px)}
@media (max-width:640px){
  .nr-news__list{grid-template-columns:1fr}
  .nr-news__list .post .thumb{height:180px}
}

/* ---------- Latest News inside Swiper (строго scoped) ---------- */
/* ссылки-заголовки */
.nr-news-swiper .post h3 a,
.nr-news-swiper .post h3 a:link,
.nr-news-swiper .post h3 a:visited{
  color:#e5e7eb!important;text-decoration:none!important
}
.nr-news-swiper .post h3 a:hover,
.nr-news-swiper .post h3 a:focus{
  color:#6ee7ff!important;text-decoration:none!important
}
.nr-news-swiper .post h3 a:active{color:#93c5fd!important}

/* одинаковые высоты карточек */
.nr-news-swiper .swiper-wrapper{align-items:stretch}
.nr-news-swiper .swiper-slide{display:flex}
.nr-news-swiper .post{
  display:flex;flex-direction:column;flex:1;background:#0e1520;border:1px solid #1f2937;border-radius:14px;
  box-shadow:0 0 0 1px rgba(31,41,55,.15) inset;overflow:hidden;transition:transform .15s ease,box-shadow .15s ease
}
.nr-news-swiper .post:hover{transform:translateY(-2px);box-shadow:0 6px 18px rgba(0,0,0,.35)}
.nr-news-swiper .thumb{display:block;width:100%;height:160px;object-fit:cover;border-bottom:1px solid #1f2937;border-radius:0}
.nr-news-swiper .post__in{display:flex;flex-direction:column;flex:1;gap:4px;padding:14px 16px 16px}
.nr-news-swiper .post p{margin:0 0 8px;font-size:13px;line-height:1.45;color:#cbd5e1}
.nr-news-swiper .post .nr-btn{margin-top:auto}

/* swiper pagination */
.swiper-pagination-bullet{background:#374151;opacity:.7}
.swiper-pagination-bullet-active{background:#6ee7ff;opacity:1}

/* ---------- App badge ---------- */
.nr-app{
  display:flex;flex-direction:column;align-items:center;gap:10px;
  padding:16px;border:1px dashed #334155;border-radius:14px;min-height:140px
}
.nr-app img{
  width:84px;height:84px;border-radius:18px;
  box-shadow:0 8px 24px rgba(0,0,0,.35),0 0 0 1px #1f2937 inset;
  background:linear-gradient(180deg,#121826,#0f1420)
}
.nr-app__name{font-weight:900;font-size:22px;letter-spacing:.2px;line-height:1.1}
.nr-app__meta{display:flex;align-items:center;gap:10px;color:#9aa3b1;font-size:13px}
.nr-app__meta .sep{opacity:.5}

/* ---------- Stars (единственный канонический блок) ---------- */
.nr-stars{display:inline-flex;align-items:center;gap:8px;line-height:1}
.nr-stars__wrap{position:relative;display:inline-block;height:22px;line-height:1}
.nr-stars__base,.nr-stars__fill{
  font-size:20px;font-weight:900;letter-spacing:2px;white-space:nowrap;user-select:none
}
.nr-stars__base{color:#2f3a4a;opacity:.9}
.nr-stars__fill{color:#a855f7;position:absolute;left:0;top:0;overflow:hidden;height:100%;z-index:1}
.nr-stars__hit{position:absolute;inset:0;display:flex;z-index:2;pointer-events:auto}
.nr-stars__btn{
  flex:1;background:transparent;border:0;cursor:pointer;padding:0;margin:0;outline:none;
  -webkit-tap-highlight-color:transparent
}
.nr-stars__btn:focus-visible{outline:2px solid #6ee7ff;outline-offset:4px;border-radius:4px}
.nr-stars,.nr-stars *{-webkit-user-select:none;user-select:none}
.nr-stars__count{font-size:12px;color:#9aa3b1}

/* ---------- FAQ ---------- */
.nr-faq details{
  background:#0e1520;border:1px solid #1f2937;border-radius:14px;
  padding:14px 16px;color:#e5e7eb
}
.nr-faq details+details{margin-top:12px}
.nr-faq details>summary{
  cursor:pointer;font-weight:800;font-size:16px;list-style:none;
  display:flex;align-items:center;gap:10px;line-height:1.35
}
.nr-faq details>summary::-webkit-details-marker{display:none}
.nr-faq details>summary::before{content:"▸";font-size:14px;opacity:.9;transform:translateY(1px);transition:transform .15s}
.nr-faq details[open]>summary::before{transform:rotate(90deg) translateX(1px)}
.nr-faq details[open]>summary{margin-bottom:10px}
.nr-faq details>*:not(summary){line-height:1.55;color:#cbd5e1}
.nr-faq details p{margin:0 0 8px}
.nr-faq details:hover{border-color:#253043}
.nr-faq details>summary:focus{outline:2px solid #0ea5e9;outline-offset:4px;border-radius:8px}

/* ---------- About (Specs + Video) ---------- */
.nr-divider{height:24px}
.nr-section--alt{
  background:linear-gradient(180deg,#101826 0%,#0b111b 100%);
  border-radius:18px;padding:20px 20px;margin:20px 0;
  box-shadow:0 4px 20px rgba(0,0,0,.45);border:1px solid #101826
}
.nr-title-lg{text-align:center;font-size:28px;font-weight:800;margin-bottom:14px}
.nr-title-lg .nr-accent{color:#6ee7ff}
.nr-lead{text-align:center;color:#cbd5e1;margin:0 auto 28px;max-width:780px;font-size:16px;line-height:1.55}

.nr-about{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}
.nr-about__specs{background:#0e1520;border:1px solid #1f2937;border-radius:12px;padding:16px}
.nr-specs{width:100%;border-collapse:collapse}
.nr-specs th,.nr-specs td{padding:8px 10px;border-bottom:1px solid #1f2937;font-size:14px}
.nr-specs th{color:#9ca3af;font-weight:600;text-align:left;width:42%}
.nr-specs td{color:#e5e7eb}
.nr-specs tr:last-child td,.nr-specs tr:last-child th{border-bottom:0}
.nr-about__video{display:flex;flex-direction:column;align-items:center;gap:16px}
.nr-about__video iframe,.nr-about__video .nr-vid{max-width:100%;border-radius:12px;overflow:hidden;box-shadow:0 2px 12px rgba(0,0,0,.4)}
.nr-about__video .nr-btn--download{margin-top:10px;text-align:center;min-width:220px}

.nr-vid{position:relative;aspect-ratio:16/9;width:100%;background:#0b121d;border:1px solid #1f2937;border-radius:12px;overflow:hidden}
.nr-vid iframe,.nr-vid video{position:absolute;inset:0;width:100%;height:100%}
.nr-vid--ph{display:flex;align-items:center;justify-content:center;color:#9aa3b1}

@media(max-width:980px){
  .nr-hero__box{grid-template-columns:1fr}
  .nr-about{grid-template-columns:1fr}
  .nr-title-lg{font-size:26px}
}

#about {
  padding-top: 8px;   /* вместо clamp(...) */
  margin-top: 0;       /* уберём зазор над ним */
}
/* ---------- Tables: заголовок и «full»-вариант ---------- */
.nr-specs thead{background:#1f2937;color:#e5e7eb}
.nr-specs thead th{font-weight:700;text-align:left;padding:10px 12px;border-bottom:1px solid #2a3648}
.nr-specs thead th:first-child{border-top-left-radius:10px}
.nr-specs thead th:last-child{border-top-right-radius:10px}
.nr-about__specs.is-table{padding:0;overflow:hidden;border-radius:14px}
.nr-specs.nr-specs--full{width:100%;border-collapse:separate;border-spacing:0;background:#0e1520}
.nr-specs.nr-specs--full thead th{background:#1f2937;color:#e5e7eb;font-weight:700;text-align:left;padding:12px 16px;border-bottom:1px solid #243044}
.nr-specs.nr-specs--full td{padding:14px 16px;border-bottom:1px solid #243044;color:#e5e7eb}
.nr-specs.nr-specs--full tr:last-child td{border-bottom:0}
.nr-specs.nr-specs--full th:first-child,
.nr-specs.nr-specs--full td:first-child{padding-left:20px}
.nr-specs .center-cell{text-align:center;font-weight:600}

/* ---------- Links ---------- */
a{color:var(--nr-brand);text-decoration:none;font-weight:500}
a:hover{color:#93c5fd}
.nr-text a{
  color:#6ee7ff;text-decoration:none;font-weight:600;
  transition:color .2s ease,border-color .2s ease;border-bottom:1px dashed rgba(110,231,255,.6)
}
.nr-text a:hover{color:#a855f7;border-color:#a855f7}

/* ---------- Lists ---------- */
.nr-list{list-style:none;padding:0;margin:0}
.nr-list li{display:flex;align-items:flex-start;gap:8px;margin-bottom:10px}
.nr-list__icon{width:18px;height:18px;color:#6ee7ff;flex-shrink:0;margin-top:2px}

/* ---------- Issues grid ---------- */
.nr-issues-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:980px){.nr-issues-grid{grid-template-columns:1fr}}
.nr-issue{
  background:#0e1520;border:1px solid #1f2937;border-radius:12px;padding:16px;
  box-shadow:0 0 0 1px rgba(31,41,55,.15) inset
}
.nr-issue h3{margin:0 0 8px;font-weight:800;font-size:16px;color:#e5e7eb}
.nr-issue p{margin:0 0 10px;color:#cbd5e1}
.nr-issue ul{margin:0;padding-left:18px}
.nr-issue li{margin:4px 0}
.nr-issue a{color:#6ee7ff;text-decoration:none}
.nr-issue a:hover{color:#a5f3ff}

#nr-issues {
  padding-top: 8px;   /* вместо clamp(...) */
  margin-top: 0;       /* уберём зазор над ним */
}

/* ---------- Progress Bars ---------- */

/* Общая база (без transitions) */
.nb-progress, .nb-update{
  --nb-h:36px; --nb-bg:#111317;
  width:100%; max-width:680px; margin:20px auto;
}

/* дорожка */
.nb-progress .nb-track,
.nb-update   .nb-track{
  position:relative; height:var(--nb-h);
  background:var(--nb-bg); border-radius:10px; overflow:hidden;
  box-shadow:
    inset 0 0 0 2px #0e0f13,
    inset 0 2px 0 rgba(255,255,255,.06),
    inset 0 -2px 0 rgba(0,0,0,.55);
}

/* сама полоса — БЕЗ transition, потому что её двигает JS */
.nb-progress .nb-bar,
.nb-update   .nb-bar{
  height:100%; width:0%;
  border-radius:8px;
  box-shadow:
    inset 0 2px 0 rgba(255,255,255,.22),
    inset 0 -2px 0 rgba(0,0,0,.28);
  transition:none;          /* ВАЖНО */
}

/* цвета */
.nb-progress .nb-bar{ background:linear-gradient(#52a8ff,#2f89f7); }
.nb-update   .nb-bar{ background:linear-gradient(#ffcf52,#f7a72f); }

/* проценты по центру */
.nb-progress .nb-label,
.nb-update   .nb-label{
  position:absolute; inset:0; display:grid; place-items:center;
  font-weight:900; font-size:calc(var(--nb-h)*.72); line-height:1; color:#fff; user-select:none;
  text-shadow:0 1px 0 #000,1px 0 0 #000,0 -1px 0 #000,-1px 0 0 #000; z-index:2;
}

/* декоративная тень */
.nb-progress .nb-rail-shadow,
.nb-update   .nb-rail-shadow{
  position:absolute; left:50%; transform:translateX(-50%);
  bottom:-8px; width:54%; height:6px; background:rgba(0,0,0,.35);
  border-radius:999px; filter:blur(.3px); pointer-events:none;
}

/* УДАЛИ ЭТО (или не применяй к nb-update):
.nb-progress.is-inview .nb-bar,
.nb-update.is-inview   .nb-bar{ width:100%; }
*/

/* prefer-reduced-motion: JS всё равно двигает без transitions */
@media (prefers-reduced-motion: reduce){
  .nb-progress .nb-bar, .nb-update .nb-bar{ transition:none; }
}
/* ---------- Modes grid ---------- */
.nr-modes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px;margin-top:20px}
.nr-mode{
  background:#0e1520;border:1px solid #1f2937;border-radius:14px;padding:20px;text-align:center;
  transition:.2s ease;box-shadow:0 0 0 1px rgba(31,41,55,.15) inset
}
.nr-mode:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,.35)}
.nr-mode__icon{font-size:32px;margin-bottom:10px}
.nr-mode h3{font-size:18px;font-weight:800;margin:0 0 8px;color:#fff}
.nr-mode p{font-size:14px;color:#cbd5e1;margin:0}

#nr-modes {
  padding-top: 8px;   /* вместо clamp(...) */
  margin-top: 0;       /* уберём зазор над ним */
}
/* ===== Chat Bubble (line-by-line reveal) ===== */
.nb-bubble {
  --nb-bg: #5caef5;
  --nb-color: #fff;
  --nb-radius: 12px;
  --nb-pad-x: 16px;
  --nb-pad-y: 12px;
  --nb-delay-step: .7s;
  --nb-line-dur: .45s;

  max-width: 360px;
  color: var(--nb-color);
  background: var(--nb-bg);
  border-radius: var(--nb-radius) var(--nb-radius) var(--nb-radius) 0;
  padding: var(--nb-pad-y) var(--nb-pad-x);
  position: relative;
  font: clamp(13px, 2.8vw, 15px)/1.5 system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  word-break: break-word;
}

/* хвостик */
.nb-bubble::after {
  content: "";
  position: absolute;
  left: 0; bottom: 0;
  width: 0; height: 0;
  border-left: 12px solid var(--nb-bg);
  border-top: 12px solid transparent;
}

/* строки */
.nb-bubble .nb-line {
  opacity: 0;
  transform: translateY(6px);
  will-change: opacity, transform;
  transition: opacity .2s ease, transform .2s ease;
}

/* запуск анимации */
.nb-bubble.is-inview .nb-line {
  animation: nb-line-in var(--nb-line-dur) ease forwards;
  animation-delay: calc((var(--i, 1) - 1) * var(--nb-delay-step));
}

@keyframes nb-line-in {
  to { opacity: 1; transform: translateY(0); }
}

/* оформление */
.nb-bubble .nb-strong { font-weight: 700; }
.nb-bubble .nb-dim    { opacity: .9; }

.nb-bubble-wrap {
  display: flex;
  justify-content: center;
  margin: 40px 0;
}

/* ---------- iOS Install (SVG progress) ---------- */
.nb-ios-install{
  --size:108px;--radius:22px;--ring:8;--dur:4s;--circumference:314;
  position:relative;display:inline-block;width:var(--size);height:var(--size)
}
.nb-ios-install .nb-icon{
  width:100%;height:100%;border-radius:var(--radius);overflow:hidden;background:#202225;box-shadow:0 8px 20px rgba(0,0,0,.35)
}
.nb-ios-install .nb-icon img{width:100%;height:100%;object-fit:cover;display:block;filter:grayscale(100%) brightness(.7);transition:filter .45s ease}
.nb-ios-install .nb-svg{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none}
.nb-ios-install svg{width:calc(100% - 20px);height:calc(100% - 20px)}
.nb-ios-install .nb-ring-bg{stroke:rgba(255,255,255,.95);stroke-width:var(--ring);fill:none}
.nb-ios-install .nb-ring-prog{
  stroke:#0065b2;stroke-width:var(--ring);fill:none;stroke-linecap:round;
  transform:rotate(-90deg);transform-origin:50% 50%;
  stroke-dasharray:var(--circumference);stroke-dashoffset:var(--circumference);animation:none
}
.nb-ios-install.nb-inview .nb-ring-prog{animation:nb-dash var(--dur) linear forwards}
.nb-ios-install.nb-done .nb-icon img{filter:none}
.nb-ios-install.nb-done .nb-svg{display:none}
@keyframes nb-dash{to{stroke-dashoffset:0}}
.nb-ios-install-wrap{display:flex;justify-content:center;margin-bottom:20px}
/* вариант «App Store» */
.nb-ios-install--store .nb-ring-bg{stroke:rgba(255,255,255,.95)}
.nb-ios-install--store .nb-ring-prog{stroke:rgba(255,255,255,.95)}
.nb-ios-install--store .nb-svg::after{
  content:"";position:absolute;inset:0;display:block;pointer-events:none;
  -webkit-mask:radial-gradient(circle at 50% 50%,#000 44%,transparent 46%);
  mask:radial-gradient(circle at 50% 50%,#000 44%,transparent 46%);
  background:rgba(0,0,0,.20)
}

/* ---------- Pros & Cons (iOS section) ---------- */
.nr-section--light{background:#1a1e27;color:#f0f0f0;padding:60px 20px;border-radius:16px}
.nr-pros-cons{display:flex;gap:20px;margin-bottom:30px}
.nr-pros-cons .nr-box{flex:1;padding:20px;border-radius:10px;background:#1e2430;text-align:center}
.nr-pros-cons .nr-box h4{margin-bottom:12px;font-size:18px}
.nr-pros-cons .nr-box ul{list-style:none;margin:0;padding:0;text-align:left;line-height:1.6}
.nr-pros-cons .nr-box ul li{margin-bottom:6px}
@media (max-width:768px){.nr-pros-cons{flex-direction:column}}
/* bullets-классический */
.nr-pros-cons .nr-box ul{margin:0;padding-left:18px;line-height:1.6;text-align:left}
.nr-pros-cons .nr-box ul li{margin-bottom:6px;list-style:disc}
.nr-ios-install{margin-bottom:20px}

/* ---------- ANDROID install (иконка + круг) ---------- */
.nb-android-install{
  --size:96px;--ring:4;--dur:4s;--track:#2c241e;--prog:#ff9f43;--circumference:285;
  position:relative;width:var(--size);height:var(--size);display:inline-block
}
.nb-android-install .nb-icon{width:100%;height:100%;border-radius:50%;overflow:hidden;background:#222;box-shadow:0 8px 18px rgba(0,0,0,.35)}
.nb-android-install .nb-icon img{width:100%;height:100%;object-fit:cover;display:block}
.nb-android-install .nb-svg{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none}
.nb-android-install svg{width:100%;height:100%}
.nb-android-install .ring-track{
  stroke:var(--track);stroke-width:var(--ring);fill:none;
  transform:rotate(-90deg);transform-origin:50% 50%
}
.nb-android-install .ring-prog{
  stroke:var(--prog);stroke-width:var(--ring);fill:none;stroke-linecap:round;
  transform:rotate(-90deg);transform-origin:50% 50%;
  stroke-dasharray:var(--circumference);stroke-dashoffset:var(--circumference);animation:none
}
.nb-android-install.nb-inview .ring-prog{animation:nb-ad-dash var(--dur) linear forwards}
@keyframes nb-ad-dash{to{stroke-dashoffset:0}}
.nb-android-center{display:flex;justify-content:center}
.nb-android-install.nb-done .nb-svg{display:none}
.nb-android-install.nb-inview:not(.nb-done) .nb-icon img{filter:grayscale(100%) brightness(.72);transition:filter .35s ease}
.nb-android-install.nb-inview:not(.nb-done) .nb-svg::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  -webkit-mask:radial-gradient(circle at 50% 50%,#000 44%,transparent 46%);
  mask:radial-gradient(circle at 50% 50%,#000 44%,transparent 46%);
  background:rgba(0,0,0,.18)
}

/* ---------- Highlight (oval/annotation) ---------- */
.hl-wrap{
  position:relative;width:100%;max-width:600px;aspect-ratio:600/323;
  margin:16px auto;border-radius:16px;overflow:hidden;box-shadow:0 10px 30px rgba(0,0,0,.35)
}
.hl-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.hl-svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.hl-oval{
  fill:none;stroke:#ff3b30;stroke-width:6;vector-effect:non-scaling-stroke;
  filter:drop-shadow(0 0 6px rgba(255,59,48,.6));
  stroke-dasharray:1000;stroke-dashoffset:1000;animation:none
}
.hl-wrap.is-inview .hl-oval{animation:draw 3s ease-out forwards,pulse 2.5s ease-in-out 2s infinite}
@keyframes draw{to{stroke-dashoffset:0}}
@keyframes pulse{
  0%,100%{stroke-width:6;filter:drop-shadow(0 0 6px rgba(255,59,48,.6))}
  50%{stroke-width:8;filter:drop-shadow(0 0 12px rgba(255,59,48,.75))}
}

/* ---------- Screenshot + Finger ---------- */
.hl-wrap{--design-w:600;--design-h:323}
.hl-finger{
  --x:75%;--y:92%;--rot:-10deg;--size:clamp(40px,12vw,72px);--tip-x:92%;--tip-y:52%;
  position:absolute;left:var(--x);top:var(--y);
  transform:translate(-50%,-50%) rotate(var(--rot));
  font-size:var(--size);line-height:1;filter:drop-shadow(0 2px 4px rgba(0,0,0,.35));opacity:0
}
.hl-finger::before{content:"👉";display:block}
.hl-finger::after{
  content:"";position:absolute;left:var(--tip-x);top:var(--tip-y);
  width:.18em;height:.18em;border-radius:999px;border:.035em solid rgba(10,132,255,.9);
  transform:translate(-50%,-50%) scale(.2);opacity:0
}
.hl-wrap.is-inview .hl-finger{animation:finger-in .55s cubic-bezier(.2,.9,.2,1) forwards,finger-tap 1.4s ease-out .55s infinite}
.hl-wrap.is-inview .hl-finger::after{animation:tap-wave 1.4s ease-out .65s infinite}
@keyframes finger-in{
  0%{opacity:0;transform:translate(24px,18px) rotate(var(--rot)) scale(.96)}
  60%{opacity:1;transform:translate(-2px,-4px) rotate(var(--rot)) scale(1.04)}
  100%{opacity:1;transform:translate(-50%,-50%) rotate(var(--rot)) scale(1)}
}
@keyframes finger-tap{
  0%,60%,100%{transform:translate(-50%,-50%) rotate(var(--rot)) scale(1)}
  70%{transform:translate(-50%,-52%) rotate(var(--rot)) scale(.98)}
  80%{transform:translate(-50%,-49%) rotate(var(--rot)) scale(1.02)}
}
@keyframes tap-wave{
  0%{opacity:0;transform:translate(-50%,-50%) scale(.2)}
  20%{opacity:1}
  100%{opacity:0;transform:translate(-50%,-50%) scale(2.2)}
}
@media (prefers-reduced-motion:reduce){
  .hl-wrap.is-inview .hl-finger{animation:none;opacity:1}
  .hl-wrap.is-inview .hl-finger::after{display:none}
}

/* ---------- Vertical steps timeline ---------- */
.nr-stepsv{list-style:none;margin:18px 0 0;padding:0;position:relative}
.nr-stepv{position:relative;padding-left:56px;margin:0 0 18px}
.nr-stepsv::before{
  content:"";position:absolute;left:22px;top:0;bottom:0;width:2px;background:#253043;opacity:.8
}
.nr-stepv::before{
  content:"";position:absolute;left:19px;top:28px;width:8px;height:8px;border-radius:50%;
  background:#2f3a4a;box-shadow:0 0 0 2px rgba(47,58,74,.35)
}
.nr-stepv__head{
  background:#1c2737;border:1px solid #223043;color:#e5e7eb;font-weight:800;
  padding:10px 14px 10px 46px;border-radius:12px 12px 0 0;position:relative
}
.nr-stepv__body{
  background:#151e2a;border:1px solid #223043;border-top:0;color:#cbd5e1;
  padding:12px 14px;border-radius:0 0 12px 12px;line-height:1.55;box-shadow:0 6px 18px rgba(0,0,0,.18)
}
.nr-stepv__num{
  position:absolute;left:10px;top:8px;display:inline-flex;align-items:center;justify-content:center;
  width:28px;height:28px;border-radius:999px;background:#0e1a28;border:1px solid #2b3a4f;
  color:#9fd3ff;font-weight:900;font-size:14px;box-shadow:0 2px 10px rgba(0,0,0,.25),inset 0 0 0 1px rgba(255,255,255,.04)
}
@media (max-width:680px){
  .nr-stepv{padding-left:52px}
  .nr-stepv__head{padding-left:44px}
  .nr-stepsv::before{left:21px}
  .nr-stepv::before{left:18px}
  .nr-stepv__num{left:9px;width:24px;height:24px;font-size:13px}
  .nr-stepv{overflow:visible!important}
}

/* ---------- Таблицы на мобилках ---------- */
@media (max-width:680px){
  .nr-about__specs{
    margin-left:-16px;margin-right:-16px;border-radius:0;border-left:0;border-right:0
  }
  .nr-specs{width:100%;table-layout:fixed}
  .nr-specs th,.nr-specs td{padding:10px 12px;font-size:14px}
  .nr-specs th:first-child,.nr-specs td:first-child{width:40%}
  .nr-specs thead th{position:sticky;top:0;background:#0f1623;z-index:1}
}
@media (max-width:360px){
  .nr-specs th,.nr-specs td{padding:8px 10px;font-size:13px}
}

/* ---------- Screenshot+Finger (минимальный mobile adjust уже выше) ---------- */

/* ---------- Download banner ---------- */
.nr-install{
  padding:22px;text-align:center;border-radius:16px;background:linear-gradient(180deg,#0f1623,#0e1520);
  box-shadow:0 8px 28px rgba(0,0,0,.4), inset 0 0 0 1px #1f2937
}
.nr-install__pills{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-bottom:12px}
.nr-install__icon{
  width:88px;height:88px;border-radius:20px;display:block;margin:6px auto 10px;
  box-shadow:0 8px 24px rgba(0,0,0,.35),0 0 0 1px #1f2937 inset
}
.nr-install__title{margin:0 0 6px;font-size:28px;font-weight:900}
.nr-install__lead{margin:0 0 10px;color:#cbd5e1}
.nr-install__file a{color:#93c5fd;text-decoration:none}
.nr-install__file a:hover{color:#6ee7ff}
.nr-install__btn{margin-top:8px;min-width:220px}
.nr-install__note{margin-top:12px}
@media (max-width:600px){
  .nr-install__title{font-size:22px}
  .nr-install__icon{width:76px;height:76px}
}

/* ---------- FAQ (карточки) ---------- */
.nr-faq .nr-faq-list{display:grid;gap:16px}
.nr-faq .nr-faq-item{padding:16px 18px;border-radius:16px;background:#0c1422}
.nr-faq .nr-faq-q{margin:0 0 8px;font-size:18px;line-height:1.25}
.nr-faq .nr-faq-a{opacity:.95}
@media (max-width:640px){
  .nr-faq .nr-faq-item{padding:14px 14px;border-radius:14px}
  .nr-faq .nr-faq-q{font-size:16px}
}

/* ---------- Ритм секций ---------- */
.nr-section{display:flow-root;padding-block:clamp(28px,4vw,28px)}
.nr-section+.nr-section{margin-top:clamp(20px,3vw,36px)}
.nr-prefooter-spacer{height:clamp(24px,3vw,40px);background:transparent}

/* ---------- Footer ---------- */
.nr-landing-footer{padding:28px 0;background:#0b0f16;border-top:1px solid #1f2937;margin-top:20px;color:#cbd5e1}
.nr-landing-footer__grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:20px}
.nr-foot-title{font-weight:800;color:#fff;margin-bottom:6px}
.nr-foot-text{color:#9ca3af}
.nr-foot-col{display:flex;flex-direction:column;gap:6px}
.nr-foot-col a{color:#cbd5e1;text-decoration:none}
.nr-foot-col a:hover{color:#fff}
@media(max-width:980px){.nr-landing-footer__grid{grid-template-columns:1fr}}

/* ---------- Mobile container padding ---------- */
@media (max-width:680px){
  .nr-cont{padding-left:16px;padding-right:16px}
}

/* ===== iOS-like Alert (restored) ===== */
.ios-alert-wrap{
  position:relative; width:100%;
  display:flex; justify-content:center;
}

/* затемнение фона */
.ios-alert-overlay{
  position:fixed; inset:0;
  background:rgba(0,0,0,.35);
  opacity:0; pointer-events:none;
  transition:opacity .28s ease;
  backdrop-filter:saturate(120%) blur(2px);
}

/* окно */
.ios-alert{
  width:min(340px,90vw);
  background:#f7f8fa; color:#000;
  border-radius:16px; overflow:hidden;
  box-shadow:0 12px 28px rgba(0,0,0,.35);
  border:1px solid rgba(0,0,0,.08);
  opacity:0; transform:translateY(12px) scale(.97);
  transform-origin:50% 50%;
}

/* содержимое */
.ios-alert__content{ padding:18px 16px 14px; text-align:center }
.ios-alert__title{ margin:0 0 8px; font:700 20px/1.2 system-ui,-apple-system,Segoe UI,Roboto,Arial }
.ios-alert__text{ margin:0; font:16px/1.3 system-ui,-apple-system,Segoe UI,Roboto,Arial; color:#222 }
.ios-alert__divider{ height:1px; background:rgba(0,0,0,.15) }

/* inline-вариант (без оверлея) */
.ios-alert--inline{
  width:100%; max-width:340px; margin:0 auto;
  background:#f7f8fa; border-radius:16px; overflow:hidden;
  box-shadow:0 12px 28px rgba(0,0,0,.35);
  border:1px solid rgba(0,0,0,.08);
  opacity:0; transform:translateY(12px) scale(.97);
}
.ios-alert--inline .ios-alert__content{ padding:18px 16px 14px; text-align:center }
.ios-alert--inline .ios-alert__btn{
  display:block; padding:12px 8px 14px;
  text-align:center; font:600 18px/1 system-ui,-apple-system,Segoe UI,Roboto,Arial;
  color:#0A84FF; pointer-events:none;
}

/* запуск анимации (добавь класс .is-inview через JS) */
.ios-alert--inline.is-inview,
.ios-alert.is-inview{
  animation:ios-alert-pop .42s cubic-bezier(.17,.9,.2,1) forwards;
}
.ios-alert-overlay.is-inview{ opacity:1; pointer-events:auto }

@keyframes ios-alert-pop{
  0%{opacity:0; transform:translateY(12px) scale(.97)}
  60%{opacity:1; transform:translateY(-2px) scale(1.01)}
  100%{opacity:1; transform:translateY(0) scale(1)}
}

@media (prefers-reduced-motion:reduce){
  .ios-alert--inline.is-inview,.ios-alert.is-inview{ animation:none; opacity:1; transform:none }
}

/* ===== NB Alert centering wrappers (restored) ===== */
.nb-center-wrap{
  min-height:100vh; display:flex;
  align-items:center; justify-content:center;
  margin-left:auto; margin-right:auto;
}
.nb-alert-center{
  display:flex; justify-content:center;
  overflow-x:hidden; /* безопасно — только горизонталь */
}

/* ===== Restoration Pack v4 — append last ===== */

/* — Download counters/chips — */
.nr-dl__btns .nr-dl__count{opacity:.85;font-weight:700;margin-left:6px}
.nr-dl-stats{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap}
.nr-dl-chip{font-size:12px;color:#cbd5e1;background:#0b121d;border:1px solid #1f2937;border-radius:999px;padding:4px 8px}

/* — iOS Install: pros/cons (оригинальные классы) — */
.nr-ios-pros-cons{display:flex;gap:20px;margin:30px 0}
.nr-ios-pros-cons .nr-box{
  flex:1;background:#222633;padding:20px;border-radius:12px;
  box-shadow:0 4px 10px rgba(0,0,0,.2)
}
.nr-ios-pros-cons h3{margin-bottom:10px}
@media (max-width:768px){.nr-ios-pros-cons{flex-direction:column}}

/* — Шаги (grid-версия, не таймлайн) — */
.nr-steps{display:grid;gap:20px;margin-top:40px}
.nr-step{
  background:#222633;padding:20px;border-radius:12px;
  box-shadow:0 4px 10px rgba(0,0,0,.2)
}
.nr-step h4{margin-bottom:8px}

/* — Extra links/cards — */
.nr-extra-links{margin-top:36px}
.nr-extra-links .nr-title-sm{font-size:1.15rem;margin:0 0 14px}
.nr-extra-grid{display:flex;flex-wrap:wrap;gap:14px}
.nr-extra-card{
  flex:1;min-width:220px;text-align:center;font-weight:600;
  padding:16px 18px;border-radius:14px;
  background:linear-gradient(180deg,#121826 0%,#0e1520 100%);
  border:1px solid #263042;
  box-shadow:0 6px 18px rgba(0,0,0,.35),0 0 0 1px rgba(31,41,55,.25) inset;
  transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease,background .2s ease
}
.nr-extra-icon{display:block;font-size:22px;line-height:1;margin:2px auto 8px;filter:drop-shadow(0 2px 8px rgba(110,231,255,.12))}
.nr-extra-card:hover,.nr-extra-card:focus-visible{
  transform:translateY(-2px);border-color:#324158;
  box-shadow:0 10px 22px rgba(0,0,0,.45),0 0 0 1px rgba(49,63,86,.35) inset
}
@media (max-width:640px){
  .nr-extra-card{padding:18px 20px}
  .nr-extra-icon{font-size:24px;margin-bottom:10px}
}

/* — News внутри Swiper: закрепляем компактные отступы — */
.nr-news-swiper .post__in{gap:4px !important}
.nr-news-swiper .post h3{margin:0 0 4px !important}

/* — На всякий: ссылки в .nr-text (если минификатор переопределил) — */
.nr-text a{
  color:#6ee7ff;text-decoration:none;font-weight:600;
  transition:color .2s ease,border-color .2s ease;
  border-bottom:1px dashed rgba(110,231,255,.6)
}
.nr-text a:hover{color:#a855f7;border-color:#a855f7}

/* — Center helpers for alert (если не подключил раньше) — */
.nb-center-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;margin-left:auto;margin-right:auto}
.nb-alert-center{display:flex;justify-content:center;overflow-x:hidden}

/* ===== Fix for iOS Alert text colors ===== */

/* Основной заголовок */
.ios-alert__title,
.ios-alert--inline .ios-alert__title {
  color:#000 !important;
  font-weight:700;
}

/* Подзаголовок / текст */
.ios-alert__text,
.ios-alert--inline .ios-alert__text {
  color:#222 !important;
  font-weight:400;
}

/* Кнопка Try again оставляем синей */
.ios-alert__btn,
.ios-alert--inline .ios-alert__btn {
  color:#0A84FF !important;
  font-weight:600;
  text-decoration:none;
}

/* карточка заполняет слайд */
.nr-news-swiper .swiper-slide { display:flex }
.nr-news-swiper .post        { display:flex; flex-direction:column; flex:1; height:100% }
.nr-news-swiper .post__in    { display:flex; flex-direction:column; flex:1 }
.nr-news-swiper .post .nr-btn{ margin-top:auto }                /* кнопка у низа */
.nr-news-swiper .thumb       { height:160px; object-fit:cover } /* одинаковая шапка */

/* === NEWS: Cards Grid === */
.nr-news__list {
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(300px,1fr));
  gap:18px;
  margin-top:18px;
  align-items:stretch;
  overflow:visible !important; /* не режем низ */
}

.nr-news__list .post {
  display:flex;
  flex-direction:column;
  position:relative;             /* для псевдо-тени */
  background:#0e1520;
  border:1px solid #1f2937;
  border-radius:14px;
  box-shadow:0 0 0 1px rgba(31,41,55,.15) inset;
  transition:transform .15s ease;
  overflow:visible !important;
}

.nr-news__list .post:hover { transform:translateY(-2px); }

.nr-news__list .post::after {
  content:"";
  position:absolute; inset:0;
  border-radius:inherit;
  box-shadow:0 6px 18px rgba(0,0,0,.35);
  opacity:0; transition:opacity .15s ease;
  pointer-events:none;
}
.nr-news__list .post:hover::after { opacity:1; }

.nr-news__list .thumb {
  display:block;
  width:100%;
  height:160px;
  object-fit:cover;
  border-bottom:1px solid #1f2937;
  border-radius:14px 14px 0 0;
}

.nr-news__list .post__in {
  flex:1;
  display:flex;
  flex-direction:column;
  min-height:0;
  box-sizing:border-box;
  padding:14px 16px 28px !important; /* запас снизу для кнопки */
  gap:10px;
}

.nr-news__list .post h3 {
  font-size:15px;
  font-weight:700;
  margin:0 0 4px;
}
.nr-news__list .post h3 a {
  color:#fff !important;
  text-decoration:none;
}
.nr-news__list .post h3 a:hover { color:var(--nr-brand) !important; }

.nr-news__list .post p {
  font-size:13px;
  color:#cbd5e1;
  margin:0;
  flex:1;
}

.nr-news__list .post .nr-btn {
  margin-top:auto;
  margin-bottom:2px;
  align-self:flex-start;
  font-size:13px;
  padding:8px 12px;
  border-radius:8px;
  background:linear-gradient(90deg,#6366f1,#a855f7);
  border:none;
  color:#fff;
  font-weight:700;
  box-shadow:0 2px 8px rgba(99,102,241,.35);
  position:relative;
  z-index:1;
}
.nr-news__list .post .nr-btn:hover {
  box-shadow:0 4px 12px rgba(168,85,247,.5);
  transform:translateY(-1px);
}

@media (max-width:640px){
  .nr-news__list { grid-template-columns:1fr; }
  .nr-news__list .thumb { height:180px; }
}

/* === NEWS: Swiper === */
.nr-news-swiper .swiper-wrapper { align-items:stretch !important; }
.nr-news-swiper .swiper-slide {
  display:flex !important;
  align-self:stretch !important;
  height:auto !important;
}

.nr-news-swiper .post {
  display:flex !important;
  flex-direction:column;
  flex:1 1 auto !important;
  position:relative;              /* для псевдо-тени */
  background:#0e1520 !important;
  border:1px solid #1f2937 !important;
  border-radius:14px !important;
  box-shadow:0 0 0 1px rgba(31,41,55,.15) inset;
  overflow:visible !important;
  transition:transform .15s ease;
}
.nr-news-swiper .post:hover { transform:translateY(-2px); }
.nr-news-swiper .post::after {
  content:"";
  position:absolute; inset:0;
  border-radius:inherit;
  box-shadow:0 6px 18px rgba(0,0,0,.35);
  opacity:0; transition:opacity .15s ease;
  pointer-events:none;
}
.nr-news-swiper .post:hover::after { opacity:1; }

.nr-news-swiper .thumb {
  display:block;
  width:100%;
  height:160px;
  object-fit:cover;
  border-bottom:1px solid #1f2937;
  border-radius:14px 14px 0 0;
}

.nr-news-swiper .post__in {
  flex:1 1 auto !important;
  display:flex;
  flex-direction:column;
  min-height:0;
  box-sizing:border-box;
  padding:14px 16px 28px !important;
  gap:10px;
}
.nr-news-swiper .post .nr-btn {
  margin-top:auto;
  margin-bottom:2px;
}

/* Контейнер должен обрезать соседние слайды */
.nr-news-swiper,
.nr-news-swiper .swiper { overflow: hidden !important; }

/* Тени карточек оставим видимыми внутри своего слайда */
.nr-news-swiper .swiper-wrapper { overflow: visible; }
.nr-news-swiper .swiper-slide   { overflow: visible; }

/* высота слайда — по контенту */
.nr-news-swiper .swiper-slide {
  height: auto !important;
  align-self: stretch !important;
  display: flex !important;
}

/* обёртка тянет слайды по высоте */
.nr-news-swiper .swiper-wrapper {
  align-items: stretch !important;
}

#nr-news {
  padding-top: 8px;   /* вместо clamp(...) */
  margin-top: 0;       /* уберём зазор над ним */
}

/* === NEWS: Swiper фиксированные ширины === */

/* всегда растягиваем карточку */
.nr-news-swiper .swiper-slide {
  display: flex !important;
  height: auto !important;
}

/* сама карточка всегда тянется */
.nr-news-swiper .post {
  display: flex;
  flex-direction: column;
  flex: 1;
}
.nr-news-swiper .post__in {
  display: flex;
  flex-direction: column;
  flex: 1;
}
.nr-news-swiper .post .nr-btn {
  margin-top: auto;
}

/* тянем карточки по высоте */
.nr-news-swiper .swiper-wrapper { align-items: stretch; }
.nr-news-swiper .swiper-slide { display:flex; height:auto; /* без width! */ }

.nr-news-swiper .post { display:flex; flex-direction:column; flex:1; }
.nr-news-swiper .post__in { display:flex; flex-direction:column; flex:1; }
.nr-news-swiper .post .nr-btn { margin-top:auto; }

/* ===== FORCE 1 SLIDE ON MOBILE ===== */
@media (max-width: 767.98px){
  .nr-news-swiper,
  .nr-news-swiper .swiper,
  .nr-news-swiper .swiper-wrapper,
  .nr-news-swiper .swiper-slide{
  }

  /* ключевое: один слайд = 100% ширины контейнера */
  .nr-news-swiper .swiper-wrapper{
    display: flex !important;
    align-items: stretch !important;
  }
  .nr-news-swiper .swiper-slide{
    width: 100% !important;
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  /* карточка тянется по высоте, кнопка у низа */
  .nr-news-swiper .post{ display:flex; flex-direction:column; height:auto !important; }
  .nr-news-swiper .post__in{ flex:1; display:flex; flex-direction:column; }
  .nr-news-swiper .post .nr-btn{ margin-top:auto; }
}

/* Мобилка: один слайд = 100% контейнера */
@media (max-width: 767.98px){
  .nr-news-swiper .swiper-wrapper{display:flex !important; flex-wrap:nowrap !important;}
  .nr-news-swiper .swiper-slide{
    width:100% !important;
    max-width:100% !important;
    flex:0 0 100% !important; /* на всякий */
  }
}

/* ===== Article ===== */
.nr-article{
  padding:22px 20px;
  border-radius:18px;
  background:linear-gradient(180deg,#0f1623,#0e1520);
  border:1px solid #1f2937;
  box-shadow:0 0 0 1px #1f2937 inset;
}
.nr-article__head{ margin-bottom:12px }
.nr-article__title{
  margin:0 0 6px;
  font-weight:900;
  font-size:28px;
  line-height:1.15;
}

/* Breadcrumbs + date (в одну линию, на мобиле в две) */
.nr-brow{
  display:flex; align-items:baseline; flex-wrap:wrap; gap:0 6px;
  margin:6px 0 12px;
  font-size:14px; color:#9aa3b1;
}
.nr-breadcrumbs{ margin:0; color:#cbd5e1 }
.nr-breadcrumbs a{ color:#93c5fd; text-decoration:none }
.nr-breadcrumbs a:hover{ color:#6ee7ff }
.nr-bc__date{
  color:#9aa3b1; display:inline-flex; align-items:center; line-height:1.25;
}
.nr-bc__date::before{
  content:"•"; margin:0 8px; opacity:.55; transform:translateY(-.05em);
}
@media (max-width:680px){
  .nr-bc__date{ width:100%; margin-top:2px }
  .nr-bc__date::before{ display:none }
}

/* Cover */
.nr-article__cover{ display:grid; place-items:center; margin:10px auto 16px; }
.nr-article__img{
  display:block; max-width:min(960px,100%); width:100%; height:auto;
  border-radius:12px;
  box-shadow:0 2px 12px rgba(0,0,0,.35), 0 0 0 1px #1f2937 inset;
}

/* Content */
.post-content{
  max-width:860px; margin:0 auto; color:#e5e7eb; line-height:1.65; font-size:16px;
}
.post-content > * + *{ margin-top:.9em }
.post-content h2{ font-size:22px; margin:1.2em 0 .5em; font-weight:800 }
.post-content h3{ font-size:19px; margin:1.1em 0 .45em; font-weight:800 }
.post-content a{ color:#6ee7ff; text-decoration:none; border-bottom:1px dashed rgba(110,231,255,.6) }
.post-content a:hover{ color:#a855f7; border-color:#a855f7 }
.post-content img{ display:block; margin:12px auto; max-width:100%; height:auto; border-radius:12px; box-shadow:0 2px 10px rgba(0,0,0,.3) }
.post-content figure{ margin:12px auto; text-align:center }
.post-content figcaption{ font-size:13px; color:#9aa3b1; margin-top:6px }
.post-content table{ width:100%; border-collapse:collapse; background:#0e1520; border:1px solid #1f2937; border-radius:12px; overflow:hidden }
.post-content th, .post-content td{ padding:10px 12px; border-bottom:1px solid #243044 }
.post-content tr:last-child td{ border-bottom:0 }
.post-content thead th{ background:#1f2937; color:#e5e7eb; text-align:left }
.post-content pre{ background:#0b121d; border:1px solid #1f2937; border-radius:10px; padding:12px; overflow:auto; font-size:14px }
.post-content code{ background:rgba(31,41,55,.55); padding:.1em .35em; border-radius:6px }
.post-content blockquote{ margin:12px 0; padding:10px 14px; border-left:3px solid #6ee7ff; background:#0b121d; color:#cbd5e1; border-radius:8px }
.post-content .nr-vid, .post-content iframe{
  width:100%; aspect-ratio:16/9; display:block; border:0; border-radius:12px;
  background:#0b121d; box-shadow:0 2px 12px rgba(0,0,0,.35), 0 0 0 1px #1f2937 inset;
}
.post-content ul, .post-content ol{ padding-left:1.1em }
.post-content li + li{ margin-top:.35em }

@media (max-width:680px){
  .nr-article{ padding:18px 14px }
  .nr-article__title{ font-size:24px }
  .post-content{ font-size:15.5px }
}

/* ===== Comments ===== */
.nr-comments{ padding:18px; border-radius:14px; background:#0e1520; border:1px solid #1f2937; box-shadow:0 0 0 1px rgba(31,41,55,.15) inset; }
.nr-comments h2, .nr-comments .comment-reply-title{ margin:0 0 14px; font-weight:800; font-size:20px; color:#fff; }
.nr-comments .comment-list{ list-style:none; margin:0 0 16px; padding:0; }
.nr-comments .comment{ background:#0b121d; border:1px solid #1f2937; border-radius:12px; padding:12px; margin:0 0 12px; }
.nr-comments .comment .comment-meta{ font-size:12px; color:#9aa3b1; margin-bottom:6px; }

/* меньшая круглая аватарка + выравнивание */
#comments .comment-author{ display:flex; align-items:center; gap:8px; }
#comments .comment-author img{
  width:36px; height:36px; border-radius:50%; object-fit:cover;
}

/* форма */
.nr-comments .comment-respond{ background:#0b121d; border:1px solid #1f2937; border-radius:12px; padding:14px; }
.nr-comments .comment-form label{ display:block; margin:8px 0 4px; font-weight:500; color:#e5e7eb; }
.nr-comments .comment-form input[type="text"],
.nr-comments .comment-form input[type="email"],
.nr-comments .comment-form textarea{
  width:100%; max-width:100%; padding:10px 12px; border-radius:8px;
  border:1px solid #253043; background:#0b121d; color:#e5e7eb; box-sizing:border-box;
}
.nr-comments .comment-form textarea{ min-height:120px; }
.nr-comments .comment-form input:focus,
.nr-comments .comment-form textarea:focus{ outline:0; border-color:#324158; box-shadow:0 0 0 2px rgba(110,231,255,.12) }
.nr-comments .form-submit input[type="submit"]{
  appearance:none; border:0; cursor:pointer; display:inline-block; width:100%; max-width:520px;
  padding:10px 16px; border-radius:10px; font-weight:800;
  background:linear-gradient(90deg,#6366f1,#a855f7); color:#fff;
  box-shadow:0 2px 8px rgba(99,102,241,.35); transition:transform .15s, box-shadow .15s;
}
.nr-comments .form-submit input[type="submit"]:hover{ transform:translateY(-1px); box-shadow:0 4px 12px rgba(168,85,247,.5) }

/* ===== Tags + Share ===== */
.nr-meta-footer{ margin:24px 0; text-align:center; }
.nr-meta-footer::before{
  content:""; display:block; width:60px; height:2px; background:#1f2937; border-radius:2px; margin:28px auto 20px;
}
.nr-article__tags{ display:flex; flex-wrap:wrap; justify-content:center; gap:8px; margin-bottom:14px; }
.nr-pill{
  background:#111827; border:1px solid #1f2937; color:#9ca3af;
  padding:4px 10px; border-radius:999px; font-size:13px; text-decoration:none; transition:.2s;
}
.nr-pill:hover{ color:#fff; border-color:#6ee7ff; }
.nr-share{ display:flex; justify-content:center; gap:12px; flex-wrap:wrap; }
.nr-share .nr-btn{ padding:8px 14px; border-radius:8px; font-weight:600; color:#fff; text-decoration:none; transition:.2s; }
.nr-btn--tg{ background:#229ED9; } .nr-btn--fb{ background:#1877F2; } .nr-btn--tw{ background:#1DA1F2; }
.nr-share .nr-btn:hover{ opacity:.85; transform:translateY(-1px); }

/* ===== COMMENTS: one-box вариант ===== */

/* Одна рамка на сектор */
.nr-comments{
  padding:18px;
  border-radius:14px;
  background:#0e1520;
  border:1px solid #1f2937;
}

/* Корневой список без нумерации */
.nr-comments .comment-list{ list-style:none; margin:0 0 16px; padding:0; }

/* Вложенность (ветки) */
.nr-comments .children{
  list-style:none;
  margin:10px 0 0 22px;
  padding-left:14px;
  border-left:1px solid #1f2937;
}
.nr-comments .children .comment{ margin-top:10px; }

/* Карточка комментария */
.nr-comments .comment{
  background:#0b121d;
  border:1px solid #243044;
  border-radius:12px;
  padding:12px;
  margin:0 0 12px;
}

/* Форма — только верхний разделитель */
.nr-comments .comment-respond{
  margin-top:12px;
  padding-top:16px;
  border-top:1px solid #1f2937;
}

/* Поля формы (как раньше) */
.nr-comments .comment-form input[type="text"],
.nr-comments .comment-form input[type="email"],
.nr-comments .comment-form input[type="url"],
.nr-comments .comment-form textarea{
  width:100%;
  padding:10px 12px;
  border-radius:8px;
  border:1px solid #253043;
  background:#0b121d;
  color:#e5e7eb;
  box-sizing:border-box;
}
.nr-comments .comment-form textarea{ min-height:120px; }

/* Кнопка */
.nr-comments .form-submit input[type="submit"]{
  appearance:none; border:0; cursor:pointer;
  display:inline-block; width:100%; max-width:520px;
  padding:10px 16px; border-radius:10px; font-weight:800;
  background:linear-gradient(90deg,#6366f1,#a855f7); color:#fff;
  box-shadow:0 2px 8px rgba(99,102,241,.35);
  transition:transform .15s, box-shadow .15s;
}
.nr-comments .form-submit input[type="submit"]:hover{
  transform:translateY(-1px);
  box-shadow:0 4px 12px rgba(168,85,247,.5);
}

/* Аватар меньше и скруглённый */
#comments .comment-author img{
  width:26px; height:26px; border-radius:50%;
  object-fit:cover; margin-right:10px; vertical-align:middle;
}

/* Дата комментария — выглядит как текст, но остаётся ссылкой */
.nr-comments .comment-meta a {
  color: #9ca3af;        /* цвет как у "says" */
  text-decoration: none; /* убираем подчёркивание */
}

.nr-comments .comment-meta a:hover {
  color: #d1d5db;        /* чуть светлее при наведении */
}

/* =======================
   BLOG LAYOUT (GRID)
   ======================= */
.nr-blog-grid{
  display:grid;
  grid-template-columns: 1fr 320px;  /* контент + сайдбар */
  gap:24px;
}
@media (max-width:980px){
  .nr-blog-grid{ grid-template-columns:1fr; }
}

/* Лента постов (2 колонки на десктопе) */
.nr-list{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:22px;
}
@media (max-width:780px){
  .nr-list{ grid-template-columns:1fr; }
}

/* Большая первая карточка растягивается на 2 колонки */
.nr-list > .nr-post.is-featured{ grid-column:1 / -1; }

/* =======================
   POST CARD (универсальная)
   ======================= */
.nr-card.nr-post{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding:0;                         /* чтобы 100%-кнопка не выезжала */
  border-radius:14px;
  background:#0e1520;
  border:1px solid #1f2937;
  box-shadow:0 0 0 1px rgba(31,41,55,.08) inset, 0 8px 24px rgba(0,0,0,.25);
  overflow:hidden;                   /* клип для картинки/кнопки */
}

/* Обложка */
.nr-post__thumb{ display:block; line-height:0; background:#0b121d; }
.nr-post__thumb img{
  width:100%; height:auto; display:block;
  aspect-ratio:16/9;                 /* единое соотношение */
  object-fit:cover;
  transform:translateZ(0);
}

/* Тело карточки */
.nr-post__body{
  padding:14px 16px 16px;
  display:flex;
  flex-direction:column;
  gap:12px;                          /* комфортный шаг */
}

/* Мета: дата • категория */
.nr-post__meta{
  display:flex;
  align-items:baseline;
  gap:6px;
  color:#9aa3b1;
  font-size:13px;
  margin:0;                          /* без лишних внешних отступов */
}
.nr-post__meta .nr-dot{ opacity:.6; transform:translateY(-.05em); }

/* Заголовок */
.nr-post__title{
  margin:0;
  font-size:20px;
  line-height:1.25;
  font-weight:800;
  color:#e5e7eb;
  position:relative;
  padding-bottom:6px;                 /* место под тонкий разделитель */
}
.nr-post__title a{ color:#e5e7eb; text-decoration:none; }
.nr-post__title a:hover{ color:#a855f7; }
.nr-post__title::after{
  content:"";
  display:block;
  height:1px;
  background:#1f2937;
  margin-top:6px;
  border-radius:1px;
  opacity:.75;
}

/* Выдержка */
.nr-post__excerpt{
  margin:6px 0 0;                    /* не липнет к заголовку */
  color:#cbd5e1;
  font-size:15px;
  line-height:1.6;
  display:-webkit-box;               /* максимум 3 строки */
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

/* «Большая» карточка — чуть крупнее типографика */
.nr-post.is-featured .nr-post__title{ font-size:24px; }
.nr-post.is-featured .nr-post__excerpt{ font-size:16px; }

/* Мобайл-подстройки */
@media (max-width:680px){
  .nr-post__title{ font-size:18px; }
  .nr-post__excerpt{ font-size:14.5px; }
}

/* Кнопка Read more — 100% ширины, без вылезаний */
.nr-btn.nr-btn--full{
  display:block;
  width:100%;
  max-width:100%;                    /* гарантия от «вылетов» */
  box-sizing:border-box;
  text-align:center;
  margin-top:auto;                   /* прижимаем вниз тела карточки */
  padding:10px 16px;
  border-radius:10px;
  font-weight:800;
  background:linear-gradient(90deg,#6366f1,#a855f7);
  color:#fff; text-decoration:none; border:0; cursor:pointer;
  box-shadow:0 2px 8px rgba(99,102,241,.35);
  transition:transform .15s, box-shadow .15s, opacity .2s;
}
.nr-btn.nr-btn--full:hover{
  transform:translateY(-1px);
  box-shadow:0 4px 12px rgba(168,85,247,.5);
}

/* =======================
   SIDEBAR
   ======================= */
.nr-blog-side{
  display:flex;
  flex-direction:column;
  gap:12px;
}
.nr-sidebox{ padding:14px; }
.nr-sidebox__title{
  font-weight:800; font-size:16px; margin:0 0 8px;
}
.nr-sidebox__list{ list-style:none; margin:0; padding:0; }
.nr-sidebox__list li{
  display:grid;
  grid-template-columns:1fr auto;
  gap:10px;
  align-items:start;
  padding:10px 0;
  border-top:1px solid #1f2937;
}
.nr-sidebox__list li:first-child{ border-top:0; }
.nr-sidebox__list a{
  color:#cbd5e1; text-decoration:none;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical;
  overflow:hidden;
}
.nr-sidebox__list a:hover{ color:#6ee7ff; }
.nr-sidebox__date{ color:#9aa3b1; font-size:12px; white-space:nowrap; }

/* Поисковая форма в сайдбаре */
.nr-searchform{ display:flex; gap:8px; align-items:center; }
.nr-searchform .nr-input{
  flex:1 1 auto;
  padding:10px 12px;
  border-radius:10px;
  background:#0b121d;
  border:1px solid #253043;
  color:#e5e7eb;
}
.nr-btn--sm{ padding:8px 12px; font-weight:700; border-radius:10px; }

/* =======================
   PAGINATION
   ======================= */
.nr-pager{
  margin:20px 0;
  display:flex;
  justify-content:center;
  gap:6px;
  flex-wrap:wrap;
}
.nr-pager a,
.nr-pager span{
  display:inline-block;
  padding:6px 12px;
  border-radius:8px;
  background:#111827;
  border:1px solid #1f2937;
  color:#9ca3af;
  font-size:14px;
  text-decoration:none;
  transition:.2s;
}
.nr-pager a:hover{ color:#fff; border-color:#6ee7ff; }
.nr-pager .current{
  background:linear-gradient(90deg,#6366f1,#a855f7);
  color:#fff;
  font-weight:700;
  border:0;
}

/* Sidebar search: убираем нативный ring у поля поиска */
.nr-searchform .nr-input {
  appearance: none;
  -webkit-appearance: none; /* для Safari */
  outline: none;
}

/* Свой фокус (мягкий) вместо синей обводки */
.nr-searchform .nr-input:focus,
.nr-searchform .nr-input:focus-visible {
  outline: 0;
  border-color: #324158;
  box-shadow: 0 0 0 2px rgba(110,231,255,.12);
}

/* Опционально: спрятать крестик-очистку, если мешает визуально */
.nr-searchform .nr-input::-webkit-search-cancel-button {
  -webkit-appearance: none;
  appearance: none;
  display: none;
}

/* Комментарии — отдельный блок */
.nr-comments-wrap {
  margin-top: 28px; /* отступ от поста */
}

/* Вложенные комментарии */
.nr-comments .comment-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

/* убираем второе обрамление у каждого коммента */
.nr-comments .comment {
  border: none;
  background: transparent;
  padding: 0;
  margin: 0 0 14px;
}

/* Отступ между статьёй и комментариями */
.nr-comments-wrap{ margin-top: 28px; }

/* Один «бокс» для всего блока комментариев — если он не задан в comments.php */
.nr-comments{
  padding:18px;
  border-radius:14px;
  background:#0e1520;
  border:1px solid #1f2937;
  box-shadow:0 0 0 1px rgba(31,41,55,.08) inset;
}

/* Список комментариев без нумерации */
.nr-comments .comment-list{ list-style:none; margin:0 0 16px; padding:0; }

/* Ветвление (ответы) — тонкая линия слева */
.nr-comments .children{ list-style:none; margin:10px 0 0 22px; padding-left:14px; border-left:1px solid #1f2937; }

/* Карточка отдельного коммента (если нужно) */
.nr-comments .comment{
  background:#0b121d;
  border:1px solid #243044;
  border-radius:12px;
  padding:12px;
  margin:0 0 12px;
}

/* Чуть больше воздуха под формой */
.nr-comments .comment-respond{ margin-top:12px; }

/* Кнопка в форме комментариев — по центру */
#commentform .form-submit{
  display: flex;
  justify-content: center;
  margin-top: 16px;
}

#commentform .form-submit .submit{
  width: auto;                /* не растягиваем */
  min-width: 180px;           /* можно задать минимальную ширину */
  text-align: center;
  padding: 10px 24px;
  border-radius: 10px;
  font-weight: 800;
  background: linear-gradient(90deg,#6366f1,#a855f7);
  color: #fff;
  border: 0;
  cursor: pointer;
  box-shadow: 0 2px 8px rgba(99,102,241,.35);
  transition: transform .15s, box-shadow .15s, opacity .2s;
}

#commentform .form-submit .submit:hover{
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(168,85,247,.5);
}

/* Шапка секции с кнопкой справа */
/* ===== Null's News Header ===== */
.nr-news-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
  flex-wrap:wrap; /* ✅ позволяет кнопке не вылазить за экран */
}

/* Убираем перенос на маленьких экранах и сохраняем выравнивание */
.nr-news-head h2{
  margin:0;
  font-size:28px;
  font-weight:800;
  flex:1;              /* ✅ заставляет заголовок занимать всё доступное */
}

/* Кнопка */
.nr-btn--sm{
  padding:8px 14px;
  font-weight:700;
  border-radius:10px;
  font-size:14px;
  white-space:nowrap;
}
.nr-btn--ghost{
  background:transparent;
  color:#e5e7eb;
  border:1px solid #253043;
  box-shadow:none;
  transition:.2s;
}
.nr-btn--ghost:hover{
  color:#fff;
  border-color:#6ee7ff;
  transform:translateY(-1px);
}

/* Мобильный вид — центрируем и уменьшаем отступы */
@media (max-width:640px){
  .nr-news-head{
    flex-wrap:nowrap;
    align-items:center;
  }
  .nr-news-head h2{
    font-size:22px;
  }
  .nr-news-head .nr-btn{
    font-size:13px;
    padding:6px 12px;
  }
}

/* === STATUS ROW: финальная версия (чистая и стабильная) === */

/* Общий контейнер строки статуса */
.nr-version__row {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;   /* ← выравнивание по верхнему краю */
  gap: 12px;
  padding: 8px 12px;
  border-radius: 12px;
}

/* Текст метаинформации */
.nr-version__meta {
  flex: 1 1 auto;
  font-size: 14px;
  line-height: 1.3;
  color: #cbd5e1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* === Бейдж статуса === */
.nr-version__row .nr-badge {
  align-self: flex-start;    /* ← гарантированно по первой строке */
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 32px;
  padding: 0 14px;
  border-radius: 10px;
  font-weight: 700;
  line-height: 1;
  margin-top: 1px;           /* лёгкая оптическая подстройка */
}

/* Цвета статусов */
.nr-badge.is-online {
  background: rgba(34,197,94,.15);
  color: #4ade80;
  border: 1px solid rgba(74,222,128,.35);
  box-shadow: 0 0 8px rgba(34,197,94,.2);
}
.nr-badge.is-offline {
  background: rgba(156,163,175,.1);
  color: #9ca3af;
  border: 1px solid rgba(156,163,175,.3);
}
.nr-badge.is-maintenance {
  background: rgba(251,146,60,.15);
  color: #fb923c;
  border: 1px solid rgba(251,146,60,.35);
}

/* === Мобильная адаптация === */
@media (max-width:600px) {
  .nr-version__row {
    flex-wrap: wrap;
    align-items: flex-start;
  }
  .nr-version__meta {
    white-space: normal;
    margin-bottom: 4px;
  }
  .nr-version__row .nr-badge {
    align-self: flex-start;
    margin-top: 1px;
  }
}

/* === MOBILE-ONLY элементы === */
.mobile-only { display: none; }
@media (max-width:600px) {
  .mobile-only { display: inline; }
}

/* === Pills (иконки и метки) === */
.nr-badge {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 6px;
  margin: 8px 0 0;
  text-align: left;
}

.nr-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(148,163,184,.08);
  border: 1px solid rgba(148,163,184,.15);
  border-radius: 8px;
  padding: 4px 10px;
  font-size: 14px;
  line-height: 1.2;
  color: #cbd5e1;
  text-decoration: none;
  transition: background .2s ease;
}

.nr-pill:hover {
  background: rgba(148,163,184,.18);
}

/* Мобильные бейджи — больше кликабельность */
@media (max-width:600px){
  .nr-badge {
    gap: 8px;
  }
  .nr-pill {
    padding: 6px 12px;
    font-size: 14px;
  }
}