/* =========================================================
   ErrorFixer Compact Refresh for DLE 19.x
   Файл-перекрытие: подключать ПОСЛЕ основного style.css
   Цель:
   - сделать сайт компактнее
   - убрать ощущение «пустоты» и чрезмерной воздушности
   - добавить больше оттенков и состояний без пестроты
   - усилить визуальную иерархию для тех. тематики
   ========================================================= */

:root{
  --bg:#f3f5f8;
  --panel:#eef2f6;
  --card:#ffffff;
  --cards:#ffffff;
  --text:#13202b;
  --muted:#5f6e7f;
  --muted-2:#7b8897;
  --border:#d9e1ea;
  --border-strong:#c8d3de;

  --link:#0f8f51;
  --link-hover:#15803d;
  --accent:#15803d;
  --accent-2:#2f9e62;
  --accent-soft:#eaf7ef;

  --blue:#2f6fed;
  --blue-soft:#edf3ff;
  --green-soft: #e3f3e4;
  --orange:#d97706;
  --orange-soft:#fff5e8;
  --red:#dc2626;
  --red-soft:#fff0f0;
  --violet:#6d48d7;
  --violet-soft:#f3efff;

  --shadow-sm:0 2px 8px rgba(15, 23, 42, .05);
  --shadow:0 6px 18px rgba(15, 23, 42, .07);
  --shadow-lg:0 12px 28px rgba(15, 23, 42, .10);

  --radius-xs:8px;
  --radius-sm:10px;
  --radius:12px;
  --radius-lg:14px;

  --container:1240px;
  --gap:14px;
  --menbl:#f7f9fb;
  --comb:#f6f8fb;
}

html[data-theme="dark"]{
  --bg:#0f1418;
  --panel:#151d22;
  --card:#182128;
  --cards:#182128;
  --text:#d5dde5;
  --muted:#9aa8b5;
  --muted-2:#8593a1;
  --border:#25303a;
  --border-strong:#2f3c48;

  --link:#68c48d;
  --link-hover:#8ad7a8;
  --accent:#42a96f;
  --accent-2:#73c892;
  --accent-soft:#17261f;

  --blue:#78a6ff;
  --blue-soft:#172335;
  --green-soft: #e3f3e4;
  --orange:#f0a53a;
  --orange-soft:#2b2012;
  --red:#ff7474;
  --red-soft:#2c1717;
  --violet:#aa8cff;
  --violet-soft:#211b36;

  --shadow-sm:0 2px 10px rgba(0, 0, 0, .18);
  --shadow:0 8px 22px rgba(0, 0, 0, .24);
  --shadow-lg:0 16px 36px rgba(0, 0, 0, .28);

  --menbl:#151d22;
  --comb:#131a1f;
}

html{
  scroll-behavior:smooth;
}

body{
  background:
    linear-gradient(180deg, rgba(255,255,255,.35), rgba(255,255,255,0)) 0 0/100% 140px no-repeat,
    var(--bg);
  color:var(--text);
  font-size:15px;
  line-height:1.5;
}

html[data-theme="dark"] body{
  background:
    linear-gradient(180deg, rgba(255,255,255,.025), rgba(255,255,255,0)) 0 0/100% 140px no-repeat,
    var(--bg);
}

a{
  color:var(--link);
  text-decoration:none;
  transition:color .14s ease, opacity .14s ease, background .14s ease, border-color .14s ease, box-shadow .14s ease, transform .08s ease;
}

a:hover{
  color:var(--accent-2);
  text-decoration:none;
}

.container{
  max-width:var(--container);
  padding:0 14px;
}

.layout{
  padding:14px 0;
}
.grid{
  grid-template-columns:minmax(0,1fr) 320px;
  gap:14px;
}

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

/* =========================
   Header / top navigation
========================= */
.header{
  background:rgba(243,245,248,.88);
  backdrop-filter:blur(10px);
  border-bottom:1px solid rgba(201,210,220,.85);
  box-shadow:0 1px 0 rgba(255,255,255,.7);
}

html[data-theme="dark"] .header{
  background:rgba(15,20,24,.88);
  border-bottom:1px solid rgba(37,48,58,.95);
  box-shadow:none;
}

.header__top{ padding:10px 0; }
.header__bottom{
  background:transparent;
  border-top:1px solid var(--border);
}

.header__inner{ gap:12px; }

.logo{ gap:9px; }
.logo__mark{
  width:32px;
  height:32px;
  border-radius:9px;
  box-shadow:0 6px 14px rgba(37,99,235,.22);
}
.logo__text{
  font-size:27px;
  font-weight:900;
  animation:none;
}
.logo:hover .logo__text{ animation:none; }

.header-search{ gap:8px; }
.header-search__input{
  height:38px;
  border-radius:11px;
  background:var(--card);
  border-color:var(--border-strong);
  font-size:14px;
}
.header-search__input:hover{ border-color:#b7c4d0; }
.header-search__input:focus{
  border-color:var(--blue);
  box-shadow:0 0 0 3px rgba(47,111,237,.12);
}
.header-search .btn{
  height:38px;
  padding:0 14px;
  border-radius:11px;
}

.nav{
  gap:6px;
  padding:4px 0;
}
.nav__link{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:0 11px;
  border-radius:10px;
  color:var(--muted);
  font-size:14px;
  font-weight:700;
}
.nav__link:hover{
  color:var(--text);
  background:var(--card);
  box-shadow:var(--shadow-sm);
}

.userbar{ gap:8px; }
.theme-toggle,
.userdrop__btn,
.btn,
.cmt-btn,
.s-ico,
.f-rate__btn,
.s-rate__btn,
.scrollnav__btn{
  border-radius:10px;
}

.theme-toggle{
  min-height:38px;
  padding:8px 11px;
  border:1px solid var(--border);
  background:var(--card);
}
.theme-toggle:hover{ background:var(--panel); }

.userdrop__btn{
  min-height:38px;
  padding:6px 10px;
  box-shadow:none;
}
.userdrop__menu{
  border-radius:12px;
  box-shadow:var(--shadow-lg);
}
.userdrop__item{
  padding:9px 11px;
  border-radius:9px;
}

/* =========================
   Global cards/widgets
========================= */
.card,
.widget,
.story-card,
.pm-msg,
.pm-box table.pm,
.cmt-card,
.toc,
.mass_comments_action,
.userinfo,
.avatarbox,
.kv,
.metric,
.f-cover,
.f-gitem,
.rel-card,
.fcard,
.pweek__item,
.lc-item,
.catmenu__link,
.f-rate,
.s-rate,
.cmt-rate,
.pm-msg,
.regtext,
.ac-editor,
.ac-protect,
.quote_block,
.title_spoiler,
.text_spoiler,
.prose table,
.pages-navigation a,
.pages-navigation span{
  box-shadow:var(--shadow-sm);
}

.card,
.widget{
  border:1px solid var(--border);
  border-radius:12px;
}

.card{
  padding:14px;
  margin-bottom:12px;
}
.widget__title{
  padding:11px 13px;
  font-size:15px;
  font-weight:800;
}
.widget__body{
  padding:10px 12px;
}
.sidebar .widget{ margin-bottom:12px; }

.card__header{ margin-bottom:8px; }
.card__title,
.s-title,
.f-title{
  letter-spacing:-.015em;
}
.card__title{ font-size:22px; }
.s-title{ font-size:23px; }
.f-title{ font-size:29px; }
.meta,
.s-meta,
.f-meta,
.story-card__meta,
.rel-meta,
.pweek__meta,
.lc-time,
.lc-title{
  color:var(--muted-2);
}

/* =========================
   Buttons / accents
========================= */
.btn{
  min-height:38px;
  padding:8px 12px;
  border:1px solid var(--border-strong);
  background:linear-gradient(180deg, #ffffff, #f7fafc);
  color:var(--text);
  box-shadow:none;
  font-weight:700;
}
.btn:hover{
  background:linear-gradient(180deg, #ffffff, #eef3f7);
  border-color:#b9c7d4;
}

html[data-theme="dark"] .btn{
  background:linear-gradient(180deg, #1d2831, #192129);
  border-color:var(--border-strong);
}
html[data-theme="dark"] .btn:hover{
  background:linear-gradient(180deg, #212d37, #1c252d);
}

.btn--primary{
  background:linear-gradient(180deg, var(--accent-2), var(--accent));
  border-color:#24794f;
  color:#fff;
  box-shadow:0 6px 16px rgba(21,128,61,.18);
}
.btn--primary:hover{
  background:linear-gradient(180deg, #38ac6d, #14763a);
  filter:none;
  color: #fff;
}
html[data-theme="dark"] .btn--primary{
  background:linear-gradient(180deg, #2d7c54, #245f42);
  border-color:#2e7a55;
}

.btn--soft,
.cmt-btn,
.s-ico,
.f-rate,
.s-rate,
.cmt-rate,
.title_quote .quote_link,
.title_spoiler a:first-child,
.pages-navigation a,
.scrollnav__btn{
  background:linear-gradient(180deg, var(--card), var(--panel));
  border-color:var(--border);
}

/* =========================
   Featured block (hero)
========================= */
.featured{ margin-bottom:12px; }
.featured__grid{ gap:8px; }
.featured__side{ gap:8px; }
.fcard{
  border-radius:14px;
}
.fcard::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  z-index:1;
}
.fcard::after{
  background:linear-gradient(180deg, rgba(0,0,0,.08) 0%, rgba(0,0,0,.34) 52%, rgba(0,0,0,.68) 100%);
}
.fcard__body{
  left:12px;
  right:12px;
  bottom:12px;
  gap:7px;
}
.fcard--big{ min-height:292px; }
.fcard--big .fcard__title{
  font-size:18px;
  -webkit-line-clamp:3;
}
.fcard--sm .fcard__title{
  font-size:13px;
  line-height:1.2;
}
.fcard__meta{
  font-size:11px;
  gap:8px;
}
.fcard__pill{
  padding:4px 8px;
  font-size:11px;
}

/* =========================
   Shortstory list
========================= */
.s-row{ gap:14px; }
.s-media{
  flex:0 0 240px;
  max-width:240px;
  border-radius:13px;
}
.s-thumb{ min-height:160px; }
.s-cat{
  top:9px;
  left:9px;
  padding:5px 8px;
  font-size:11px;
  border-radius:999px;
  background:rgba(255,255,255,.92);
  color:#16212c;
  box-shadow:var(--shadow-sm);
}
html[data-theme="dark"] .s-cat{
  background:rgba(24,33,40,.88);
  color:var(--text);
}
.s-head{ gap:8px; }
.s-title{
  line-height:1.18;
}
.s-title a:hover{ color:var(--blue); }
.s-meta{
  margin-top:6px;
  gap:7px;
  font-size:12px;
}
.s-badge{
  padding:3px 8px;
  font-size:11px;
  border-radius:999px;
}
.s-badge--new{
  background:var(--accent-soft);
  border-color:rgba(21,128,61,.18);
  color:var(--accent);
}
html[data-theme="dark"] .s-badge--new{
  background:#17261f;
}
.s-excerpt{
  margin-top:8px;
  color:#314152;
  font-size:14px;
  line-height:1.45;
}
html[data-theme="dark"] .s-excerpt{ color:#b6c1cb; }
.s-actions{ gap:6px; }
.s-ico{
  width:34px;
  height:34px;
}
.s-foot,
.s-foot--rating{
  margin-top:10px;
  gap:8px;
}
.s-rate{
  padding:5px 7px;
  border-radius:11px;
}
.s-rate__btn{
  width:32px;
  height:28px;
  border-radius:9px;
}
.s-rate__val{
  font-size:13px;
  min-width:18px;
}

/* =========================
   Sidebar blocks
========================= */
.catmenu{ gap:5px; }
.catmenu__link{
  gap:9px;
  min-height:38px;
  padding:7px 10px;
  border-radius:10px;
  background:linear-gradient(180deg, var(--card), var(--menbl));
}
.catmenu__link:hover{
  background:linear-gradient(180deg, #ffffff, #eef4f7);
}
html[data-theme="dark"] .catmenu__link:hover{
  background:linear-gradient(180deg, #1c262f, #182129);
}
.catmenu__link.is-active,
.catmenu__link.active,
.catmenu__link[aria-current="page"]{
  border-color:rgba(21,128,61,.28);
  background:linear-gradient(180deg, var(--accent-soft), #ffffff);
  box-shadow:inset 0 0 0 1px rgba(21,128,61,.07);
}
html[data-theme="dark"] .catmenu__link.is-active,
html[data-theme="dark"] .catmenu__link.active,
html[data-theme="dark"] .catmenu__link[aria-current="page"]{
  background:linear-gradient(180deg, #18271f, #182128);
}
.catmenu__name{
  font-size:13px;
  font-weight:800;
}
.catmenu__item > .catmenu__link::after{
  width:7px;
  height:7px;
}

.lc{ gap:8px; }
.lc-item{
  padding:8px 9px;
  border-radius:11px;
}
.lc-item:hover{
  border-color:#c5d1dd;
  background:linear-gradient(180deg, #ffffff, #f1f5f9);
}
html[data-theme="dark"] .lc-item:hover{
  background:linear-gradient(180deg, #1c262f, #182129);
}
.lc-ava{
  width:34px;
  height:34px;
  border-radius:11px;
}
.lc-main{ gap:4px; }
.lc-name{ font-size:12px; }
.lc-time,
.lc-title{ font-size:11px; }
.lc-text{
  font-size:12px;
  line-height:1.35;
}

.pweek{ gap:8px; }
.pweek__item{ border-radius:11px; }
.pweek__link{ padding:9px 10px; }
.pweek__title{ font-size:13px; margin-bottom:6px; }
.pweek__meta{ font-size:11px; gap:8px; }

/* =========================
   Fullstory / article
========================= */
.f-card{ padding:14px; }
.f-head{ margin-bottom:10px; }
.f-head__top{ gap:10px; }
.f-title{
  font-size:28px;
  line-height:1.1;
}
.f-meta{
  margin-top:8px;
  gap:8px;
  font-size:12px;
}
.f-cover{
  margin:12px auto 8px;
  border-radius:14px;
}
.f-cover__img{ max-height:420px; }
.f-cover__cap{
  left:10px;
  bottom:10px;
  padding:5px 8px;
  font-size:11px;
}
.f-body,
.f-gallery,
.f-tags,
.f-source,
.f-download,
.f-foot,
.f-related,
.toc{
  max-width:820px;
}

.prose{
  font-size:15px;
  line-height:1.62;
}
.prose h1,
.prose h2,
.prose h3,
.prose h4{
  line-height:1.2;
  margin:18px 0 8px;
}
.prose h1{ font-size:27px; }
.prose h2{
  font-size:22px;
  padding-left:10px;
  border-left:4px solid var(--accent);
}
.prose h3{
  font-size:18px;
  color:var(--accent);
}
.prose h4{
  font-size:16px;
  color:var(--violet);
}
.prose p,
.prose ul,
.prose ol{ margin:10px 0; }
.prose li{ margin:6px 0; }
.prose a{
  color:var(--link);
  text-decoration:underline;
  text-decoration-color:rgb(52 157 31 / 28%);
  text-underline-offset:2px;
}
.prose a:hover{
  color:#16a34a;
  text-decoration-color:rgb(52 157 31 / 28%);
  background: #23b95b1f;
}
.prose ul li::marker,
.prose ol li::marker{
  color:var(--accent);
}
.prose blockquote{
  margin:12px 0;
  padding:11px 12px;
  border-left:4px solid var(--accent);
  background:var(--green-soft);
  border-radius:0 12px 12px 0;
  color:var(--text);
}
html[data-theme="dark"] .prose blockquote{
  background:#42a96f1a;
}
html[data-theme="dark"].prose code{
  background:#f2f6fa;
  border-color:#dbe4ed;
  color:#0e3f8e;
  padding:2px 6px;
  border-radius:8px;
  font-size:13px;
}
html[data-theme="dark"] .prose code{
  background:#182433;
  border-color:#23364a;
  color:#8db6ff;
  text-shadow: 0 0 BLACK;
}
html[data-theme="dark"].prose pre{
  padding:12px;
  border-radius:12px;
  background:#10161c;
  border-color:#1f2a35;
}
html[data-theme="dark"].prose pre code{
  color:#d7e3ee;
}
.prose table{
  border-radius:12px;
  margin:14px 0;
}
.prose table thead th{
  padding:11px 12px;
  font-size:13px;
  background:linear-gradient(180deg, var(--panel), #e8eef4);
}
html[data-theme="dark"] .prose table thead th{
  background:linear-gradient(180deg, #19222a, #151d22);
}
.prose table tbody td{
  padding:10px 11px;
  font-size:14px;
}
.prose table tbody tr:nth-child(even){
  background:rgba(47,111,237,.028);
}
html[data-theme="dark"] .prose table tbody tr:nth-child(even){
  background:rgba(120,166,255,.04);
}

.f-tags,
.f-source{
  gap:8px;
  font-size:14px;
}
.f-tags__list a{
  padding:5px 9px;
  font-size:12px;
  border-radius:999px;
  background:linear-gradient(180deg, var(--card), var(--panel));
}
.f-tags__list a:hover{
  background:var(--blue-soft);
  color:var(--blue);
  border-color:rgba(47,111,237,.2);
}
html[data-theme="dark"] .f-tags__list a:hover{
  background:#172335;
}

.f-rate{
  padding:6px 8px;
  border-radius:11px;
}
.f-rate__btn{
  width:36px;
  height:30px;
  border-radius:9px;
}
.f-rate__val{
  min-width:20px;
  font-size:13px;
}

/* =========================
   TOC / related / pagination
========================= */
.toc{ border-radius:12px; }
.toc__sum{
  padding:10px 12px;
  font-size:14px;
}
.toc__hint{ font-size:11px; }
.toc__nav{
  padding:0 10px 10px;
}
.toc__nav a{
  padding:7px 9px;
  border-radius:9px;
  font-size:13px;
}
.toc__nav a:hover{
  background:var(--card);
  border-color:rgba(47,111,237,.15);
}

.f-related__head{
  margin:4px 0 10px;
}
.f-related__title,
.featured__title{
  font-size:17px;
  font-weight:900;
}
.rel-grid{ gap:10px; }
.rel-card{ border-radius:12px; }
.rel-main{
  padding:10px 10px 12px;
  gap:8px;
}
.rel-title{
  font-size:13px;
  line-height:1.28;
}
.rel-meta{ font-size:11px; gap:7px; }

.pages-navigation{
  gap:6px;
  margin:18px 0;
}
.pages-navigation a,
.pages-navigation span{
  min-width:34px;
  height:32px;
  padding:0 10px;
  border-radius:10px;
  font-size:13px;
}
.pages-navigation a:hover{
  background:var(--panel);
  border-color:#becbda;
}
.pages-navigation span{
  background:linear-gradient(180deg, var(--accent-2), var(--accent));
  color:#fff;
}

/* =========================
   Comments / forms / misc
========================= */
.cmt-card{ padding:13px; }
.cmt-top{ gap:10px; }
.cmt-user{ gap:10px; }
.cmt-ava{
  width:38px;
  height:38px;
  border-radius:12px;
}
.cmt-author{ font-size:14px; }
.cmt-meta{ font-size:12px; color:var(--muted); }
.cmt-rate{
  gap:8px;
  padding:5px 8px;
  border-radius:10px;
}
.cmt-rate__btn{
  width:30px;
  height:30px;
  border-radius:8px;
}
.cmt-from{
  margin:0 0 8px;
  font-size:15px;
}
.cmt-btns{ gap:6px; }
.cmt-btn{
  padding:7px 10px;
  border-radius:9px;
  font-size:12px;
}
.comments-tree-list .comments-tree-list .cmt-card{
  background:linear-gradient(180deg, var(--card), var(--comb));
}

:where(input[type="text"], input[type="search"], input[type="password"], input[type="email"], textarea, select, .an-input, #searchinput){
  border-radius:10px;
  border-color:var(--border-strong);
  padding:9px 11px;
  font-size:14px;
  background:var(--card);
}
:where(input[type="text"], input[type="search"], input[type="password"], input[type="email"], textarea, select, .an-input, #searchinput):hover{
  border-color:#b8c6d3;
}
:where(input[type="text"], input[type="search"], input[type="password"], input[type="email"], textarea, select, .an-input, #searchinput):focus{
  border-color:var(--blue);
  box-shadow:0 0 0 3px rgba(47,111,237,.12);
}

.search__field input[type="text"],
.search__field input[type="search"],
#searchinput{ min-height:40px; }

.story-card{
  border-radius:12px;
  margin:12px 0;
}
.story-card .card__body{ padding:13px; }
.story-card__title{
  font-size:17px;
  margin:0 0 8px;
}
.story-card__excerpt{
  font-size:14px;
  line-height:1.48;
}

.quote_block,
.title_spoiler,
.text_spoiler,
.mass_comments_action,
.regtext,
.ac-editor,
.ac-protect,
.avatarbox,
.userinfo,
.kv{
  border-radius:12px;
}

.title_spoiler,
.text_spoiler,
.quote_block,
.mass_comments_action,
.regtext,
.ac-protect{
  background:linear-gradient(180deg, var(--card), var(--panel));
}

.quote_body{
  background:rgba(47,111,237,.05);
  border-left-color:var(--blue);
  border-radius:10px;
}
html[data-theme="dark"] .quote_body{
  background:rgba(120,166,255,.06);
}

.metric{
  padding:10px 12px;
  border-radius:12px;
}
.metric__icon{
  width:38px;
  height:38px;
  border-radius:11px;
}
.metric__label{ font-size:12px; }
.metric__value{ font-size:20px; }
.metric--pub{
  background:linear-gradient(180deg, var(--card), var(--blue-soft));
}
.metric--com{
  background:linear-gradient(180deg, var(--card), var(--orange-soft));
}
html[data-theme="dark"] .metric--pub{
  background:linear-gradient(180deg, #182128, #172335);
}
html[data-theme="dark"] .metric--com{
  background:linear-gradient(180deg, #182128, #2b2012);
}

.footer{
  margin-top:16px;
  background:linear-gradient(180deg, var(--panel), var(--bg));
}
.footer__inner{
  gap:14px;
  padding:15px 0;
}
.footer__title{
  font-size:15px;
  font-weight:900;
}
.footer__text,
.footer__link{
  font-size:12px;
}

.scrollnav{
  right:14px;
  bottom:14px;
  gap:8px;
}
.scrollnav__btn{
  width:42px;
  height:42px;
  border-radius:12px;
  font-size:18px;
}

/* =========================
   Old-school compact feel
========================= */
.card,
.widget,
.story-card,
.pm-msg,
.cmt-card,
.rel-card,
.fcard,
.f-cover,
.prose table,
.quote_block,
.title_spoiler,
.text_spoiler,
.mass_comments_action,
.regtext,
.ac-editor,
.ac-protect{
  position:relative;
}

.card::before,
.widget::before,
.story-card::before,
.pm-msg::before,
.cmt-card::before,
.rel-card::before,
.f-cover::before,
.quote_block::before,
.mass_comments_action::before,
.regtext::before,
.ac-editor::before,
.ac-protect::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
}

html[data-theme="dark"] .card::before,
html[data-theme="dark"] .widget::before,
html[data-theme="dark"] .story-card::before,
html[data-theme="dark"] .pm-msg::before,
html[data-theme="dark"] .cmt-card::before,
html[data-theme="dark"] .rel-card::before,
html[data-theme="dark"] .f-cover::before,
html[data-theme="dark"] .quote_block::before,
html[data-theme="dark"] .mass_comments_action::before,
html[data-theme="dark"] .regtext::before,
html[data-theme="dark"] .ac-editor::before,
html[data-theme="dark"] .ac-protect::before{
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03);
}

/* =========================
   Compact mobile
========================= */
@media (max-width:900px){
  .featured__grid{ grid-template-columns:1fr; }
  .featured__side{ grid-template-columns:repeat(2,1fr); }
  .s-row{ flex-direction:column; }
  .s-media{ flex:0 0 auto; max-width:100%; width:100%; }
}

@media (max-width:720px){
  body{ font-size:15px; }
  .container{ padding:0 10px; }
  .layout{ padding:10px 0; }

  .header__top{ padding:8px 0; }
  .header__inner{ gap:8px; }
  .logo__text{ font-size:16px; }

  .header-search{ gap:6px; }
  .header-search__input,
  .header-search .btn,
  .theme-toggle,
  .userdrop__btn{ min-height:36px; height:36px; }

  .nav{
    gap:6px;
    padding:6px 0;
  }
  .nav__link{
    min-height:30px;
    padding:0 9px;
    font-size:13px;
  }

  .card,
  .widget,
  .f-card,
  .pm-msg,
  .cmt-card,
  .story-card .card__body{
    padding:12px;
  }

  .card__title{ font-size:19px; }
  .f-title{ font-size:23px; }
  .prose h1{ font-size:23px; }
  .prose h2{ font-size:19px; }
  .prose h3{ font-size:17px; }

  .s-thumb{ min-height:180px; }
  .s-actions{ width:100%; }
  .s-ico{
    width:32px;
    height:32px;
  }

  .featured__side{ grid-template-columns:1fr; }
  .fcard--big{ min-height:220px; }

  .rel-grid{ grid-template-columns:1fr; }
  .f-gallery__grid{ gap:10px; }

  .pages-navigation{
    justify-content:flex-start;
    overflow:auto;
    padding-bottom:2px;
  }

  .scrollnav{
    right:10px;
    bottom:10px;
  }
  .scrollnav__btn{
    width:40px;
    height:40px;
  }
}
.featured__desc{
  margin-top:4px;
  color:var(--muted);
  font-size:13px;
  line-height:1.4;
}

.quicknav{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:10px;
  margin:0 0 14px;
}

.quicknav__item{
  display:flex;
  align-items:center;
  gap:10px;
  padding:10px 12px;
  border:1px solid var(--border);
  border-radius:14px;
  background:linear-gradient(180deg, var(--card), var(--panel));
  color:var(--text);
  text-decoration:none;
  transition:transform .08s ease, border-color .15s ease, background .15s ease, box-shadow .15s ease;
}

.quicknav__item:hover{
  text-decoration:none;
  background:var(--card);
  transform:translateY(-1px);
}

.quicknav__icon{
  width:36px;
  height:36px;
  border-radius:12px;
  display:grid;
  place-items:center;
  border:1px solid var(--border);
  background:var(--bg);
  flex:0 0 auto;
  font-size:15px;
}

.quicknav__text{
  display:flex;
  flex-direction:column;
  gap:2px;
  min-width:0;
}

.quicknav__text strong{
  font-size:14px;
  line-height:1.2;
}

.quicknav__text small{
  color:var(--muted);
  font-size:12px;
  line-height:1.2;
}

.quicknav__item--win .quicknav__icon{
  color:#2563eb;
  background:rgba(37,99,235,.08);
  border-color:rgba(37,99,235,.16);
}

.quicknav__item--soft .quicknav__icon{
  color:#7c3aed;
  background:rgba(124,58,237,.08);
  border-color:rgba(124,58,237,.16);
}

.quicknav__item--games .quicknav__icon{
  color:#ea580c;
  background:rgba(234,88,12,.08);
  border-color:rgba(234,88,12,.16);
}

.quicknav__item--android .quicknav__icon{
  color:#16a34a;
  background:rgba(22,163,74,.08);
  border-color:rgba(22,163,74,.16);
}

@media (max-width: 900px){
  .quicknav{
    grid-template-columns:repeat(2, 1fr);
  }
}

@media (max-width: 520px){
  .quicknav{
    grid-template-columns:1fr;
  }
}
/* =========================
   SHORTSTORY — PORTAL LOOK
========================= */

.s-card{
  padding:12px;
  border-radius:12px;
  margin-bottom:12px;
  position:relative;
  overflow:hidden;
}

.s-card::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:3px;
  background:linear-gradient(180deg, var(--accent), color-mix(in srgb, var(--accent) 45%, #2563eb));
  opacity:.9;
}

.s-row{
  gap:14px;
}

.s-media{
  flex:0 0 240px;
  max-width:240px;
  border-radius:12px;
}

.s-thumb{
  min-height:180px;
}

.s-main{
  display:flex;
  flex-direction:column;
  min-width:0;
}

.s-head{
  gap:12px;
  margin-bottom:8px;
}

.s-head__main{
  min-width:0;
  flex:1;
}

.s-kicker{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  align-items:center;
  margin-bottom:8px;
}

.s-kicker__item{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:4px 9px;
  border-radius:999px;
  font-size:11px;
  line-height:1;
  font-weight:800;
  border:1px solid var(--border);
  background:var(--panel);
  color:var(--text);
}

.s-kicker__item--cat{
  background:color-mix(in srgb, var(--panel) 82%, #2563eb 18%);
  border-color:color-mix(in srgb, var(--border) 70%, #2563eb 30%);
}

.s-kicker__item--new{
  background:rgba(22,163,74,.10);
  border-color:rgba(22,163,74,.20);
  color:#15803d;
}

.s-kicker__item--upd{
  background:rgba(234,88,12,.10);
  border-color:rgba(234,88,12,.22);
  color:#c2410c;
}

html[data-theme="dark"] .s-kicker__item--new{
  color:#86efac;
  background:rgba(22,163,74,.14);
  border-color:rgba(22,163,74,.24);
}

html[data-theme="dark"] .s-kicker__item--upd{
  color:#fdba74;
  background:rgba(234,88,12,.14);
  border-color:rgba(234,88,12,.24);
}

.s-title{
  line-height:1.12;
  margin:0;
}

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

.s-title a:hover{
  color:var(--link);
  text-decoration:none;
}

.s-actions{
  gap:8px;
  flex:0 0 auto;
}

.s-ico{
  width:34px;
  height:34px;
  border-radius:10px;
  background:var(--menbl);
}

.s-ico--fav-on{
  color:var(--accent);
  border-color:color-mix(in srgb, var(--border) 65%, var(--accent) 35%);
  background:color-mix(in srgb, var(--panel) 88%, var(--accent) 12%);
}

.s-meta--grid{
  display:grid;
  grid-template-columns:repeat(4, max-content);
  gap:8px;
  margin-top:2px;
  margin-bottom:8px;
}

.s-meta--grid .s-meta__item{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:5px 9px;
  border-radius:10px;
  background:var(--menbl);
  border:1px solid var(--border);
  color:var(--muted);
  font-size:12px;
  line-height:1.2;
}

.s-meta--grid .s-meta__item i{
  margin-right:0;
  opacity:.85;
}

.s-excerpt{
  margin-top:4px;
  color:var(--text);
  line-height:1.52;
  font-size:14px;
}

.s-excerpt.prose p{
  margin:8px 0;
}

.s-excerpt.prose p:first-child{
  margin-top:0;
}

.s-excerpt.prose p:last-child{
  margin-bottom:0;
}

.s-foot{
  margin-top:12px;
  padding-top:10px;
  border-top:1px solid var(--border);
}

.s-foot__left{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}

.btn--read{
  background:linear-gradient(180deg, color-mix(in srgb, var(--accent) 80%, #fff 20%), var(--accent));
  border-color:color-mix(in srgb, var(--accent) 75%, #000 25%);
  color:#fff;
  box-shadow:none;
}

.btn--read:hover{
  filter:brightness(.97);
  text-decoration:none;
}

.btn--comments{
  background:transparent;
  box-shadow:none;
}

.s-rate{
  padding:5px 7px;
  border-radius:12px;
}

.s-rate__btn{
  width:32px;
  height:30px;
  border-radius:10px;
}

.s-rate__btn--up:hover{
  border-color:rgba(22,163,74,.28);
  background:rgba(22,163,74,.08);
  color:#15803d;
}

.s-rate__btn--down:hover{
  border-color:rgba(220,38,38,.24);
  background:rgba(220,38,38,.08);
  color:#b91c1c;
}

.s-rate__val{
  font-size:14px;
  min-width:24px;
}

html[data-theme="dark"] .s-card{
  background:linear-gradient(180deg, var(--card), #172427);
}

html[data-theme="dark"] .s-card::before{
  opacity:.75;
}

html[data-theme="dark"] .s-meta--grid .s-meta__item{
  background:#182629;
}

html[data-theme="dark"] .btn--read{
  background:linear-gradient(180deg, #214f38, #1c3f31);
  border-color:#2b6b4f;
  color:#fff;
}

/* adaptive */
@media (max-width: 980px){
  .s-meta--grid{
    grid-template-columns:repeat(2, max-content);
  }
}

@media (max-width: 900px){
  .s-title{
    font-size:24px;
  }
}

@media (max-width: 720px){
  .s-card{
    padding:10px;
  }

  .s-row{
    gap:12px;
  }

  .s-media{
    flex:0 0 auto;
    max-width:100%;
    width:100%;
  }

  .s-thumb{
    min-height:190px;
  }

  .s-head{
    flex-direction:column;
    align-items:flex-start;
  }

  .s-actions{
    width:100%;
    justify-content:flex-start;
  }

  .s-title{
    font-size:21px;
    line-height:1.18;
  }

  .s-meta--grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:6px;
  }

  .s-meta--grid .s-meta__item{
    width:100%;
    min-width:0;
  }

  .s-foot__left,
  .s-foot__right{
    width:100%;
  }

  .s-rate{
    width:100%;
    justify-content:center;
  }
}

@media (max-width: 480px){
  .s-kicker{
    gap:6px;
  }

  .s-kicker__item{
    font-size:10px;
    padding:4px 8px;
  }

  .s-meta--grid{
    grid-template-columns:1fr;
  }

  .btn--read,
  .btn--comments{
    width:100%;
    justify-content:center;
  }
}
/* =========================
   SIDEBAR — STRONGER LOOK
========================= */

.sidebar{
  display:flex;
  flex-direction:column;
  gap:12px;
}

.sidebar .widget{
  margin-bottom:0;
  border-radius:12px;
  overflow:hidden;
  box-shadow:none;
  position:relative;
}

.sidebar .widget__title{
  padding:11px 13px;
  font-size:15px;
  font-weight:800;
  letter-spacing:-0.01em;
  background:linear-gradient(180deg, var(--card), var(--panel));
}

.sidebar .widget__body{
  padding:10px 11px;
}

.widget--accent{
  border-color:color-mix(in srgb, var(--border) 70%, var(--accent) 30%);
}

.widget--accent .widget__title{
  background:
    linear-gradient(180deg,
      color-mix(in srgb, var(--card) 78%, var(--accent) 22%),
      color-mix(in srgb, var(--panel) 88%, var(--accent) 12%)
    );
}

.widget--softinfo .widget__title{
  background:
    linear-gradient(180deg,
      color-mix(in srgb, var(--card) 80%, #2563eb 20%),
      color-mix(in srgb, var(--panel) 90%, #2563eb 10%)
    );
}

/* быстрый доступ */
.side-quick{
  display:flex;
  flex-direction:column;
  gap:8px;
}

.side-quick__item{
  display:flex;
  gap:10px;
  align-items:flex-start;
  padding:9px 10px;
  border:1px solid var(--border);
  border-radius:11px;
  background:var(--menbl);
  color:var(--text);
  text-decoration:none;
  transition:transform .08s ease, background .15s ease, border-color .15s ease, box-shadow .15s ease;
}

.side-quick__item:hover{
  text-decoration:none;
  background:var(--panel);
  transform:translateY(-1px);
}

.side-quick__icon{
  width:34px;
  height:34px;
  border-radius:10px;
  border:1px solid var(--border);
  display:grid;
  place-items:center;
  flex:0 0 auto;
  background:var(--card);
  font-size:15px;
}

.side-quick__text{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:3px;
}

.side-quick__text strong{
  font-size:13px;
  line-height:1.2;
  color:var(--text);
}

.side-quick__text small{
  font-size:11px;
  line-height:1.3;
  color:var(--muted);
}

.side-quick__item--win .side-quick__icon{
  color:#2563eb;
  background:rgba(37,99,235,.08);
  border-color:rgba(37,99,235,.18);
}

.side-quick__item--soft .side-quick__icon{
  color:#7c3aed;
  background:rgba(124,58,237,.08);
  border-color:rgba(124,58,237,.18);
}

.side-quick__item--games .side-quick__icon{
  color:#ea580c;
  background:rgba(234,88,12,.08);
  border-color:rgba(234,88,12,.18);
}

.side-quick__item--android .side-quick__icon{
  color:#16a34a;
  background:rgba(22,163,74,.08);
  border-color:rgba(22,163,74,.18);
}

/* about */
.side-about p{
  margin:0 0 10px;
  font-size:13px;
  line-height:1.5;
  color:var(--text);
}

.side-about__list{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:8px;
}

.side-about__list li{
  display:flex;
  gap:8px;
  align-items:flex-start;
  font-size:13px;
  color:var(--muted);
}

.side-about__list li i{
  margin-top:2px;
  color:var(--accent);
  flex:0 0 auto;
}

/* category widget tighter */
.sidebar .catmenu{
  gap:5px;
}

.sidebar .catmenu__link{
  padding:7px 10px;
  border-radius:10px;
}

.sidebar .catmenu__name{
  font-size:13px;
  font-weight:700;
}

/* last comments tighter */
.sidebar .lc{
  gap:8px;
}

.sidebar .lc-item{
  padding:8px 9px;
  border-radius:11px;
}

.sidebar .lc-ava{
  width:34px;
  height:34px;
  border-radius:11px;
}

.sidebar .lc-name{
  font-size:12px;
}

.sidebar .lc-text{
  font-size:12px;
  line-height:1.35;
}

.sidebar .lc-title{
  font-size:11px;
}

/* popular week tighter */
.sidebar .pweek{
  gap:8px;
}

.sidebar .pweek__item{
  border-radius:11px;
}

.sidebar .pweek__link{
  padding:8px 10px;
}

.sidebar .pweek__title{
  font-size:13px;
  margin-bottom:6px;
}

.sidebar .pweek__meta{
  font-size:11px;
  gap:8px;
}

/* dark */
html[data-theme="dark"] .widget--accent .widget__title{
  background:
    linear-gradient(180deg,
      color-mix(in srgb, #1c2d2f 78%, #1f6b4d 22%),
      color-mix(in srgb, #162426 90%, #1f6b4d 10%)
    );
}

html[data-theme="dark"] .widget--softinfo .widget__title{
  background:
    linear-gradient(180deg,
      color-mix(in srgb, #1c2d2f 80%, #214d7a 20%),
      color-mix(in srgb, #162426 90%, #214d7a 10%)
    );
}

html[data-theme="dark"] .side-quick__item{
  background:#182629;
}

html[data-theme="dark"] .side-quick__item:hover{
  background:#1b2b2e;
}

/* mobile */
@media (max-width: 1024px){
  .sidebar{
    margin-top:4px;
  }
}
/* =========================
   HEADER — PORTAL REFRESH
========================= */

.header{
  background:var(--bg);
  border-bottom:1px solid var(--border);
  box-shadow:0 1px 0 rgba(15,23,42,.03);
}

.header__top{
  padding:10px 0;
  background:
    linear-gradient(180deg,
      color-mix(in srgb, var(--bg) 88%, var(--panel) 12%),
      var(--bg)
    );
}

.header__bottom{
  background:linear-gradient(180deg, var(--panel), color-mix(in srgb, var(--panel) 82%, var(--bg) 18%));
  border-top:1px solid var(--border);
}

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

/* logo */
.logo{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
  flex:0 0 auto;
  text-decoration:none;
}

.logo__mark{
  width:36px;
  height:36px;
  border-radius:10px;
  font-size:15px;
  font-weight:900;
  letter-spacing:.4px;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.18),
    0 4px 14px rgba(37,99,235,.20);
}

.logo__wrap{
  display:flex;
  flex-direction:column;
  min-width:0;
  line-height:1.05;
}

.logo__text{
  font-size:24px;
  font-weight:900;
  animation:none;
  background:linear-gradient(120deg,#2563eb,#16a34a,#0891b2);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}

.logo__subtext{
  margin-top:3px;
  font-size:11px;
  color:var(--muted);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

/* search */
.header-search{
  flex:1 1 auto;
  min-width:220px;
  display:flex;
  align-items:center;
  gap:8px;
}

.header-search__field{
  position:relative;
  flex:1 1 auto;
  min-width:0;
}

.header-search__input{
  height:38px;
  border-radius:11px;
  border:1px solid color-mix(in srgb, var(--border) 78%, #94a3b8 22%);
  background:linear-gradient(180deg, var(--card), var(--panel));
  font-size:14px;
  padding:0 14px 0 35px;
}

.header-search__input:focus{
  border-color:color-mix(in srgb, var(--accent) 68%, #2563eb 32%);
  box-shadow:0 0 0 3px rgba(37,99,235,.10);
  background:var(--card);
}

.header-search__icon{
  left:11px;
  font-size:13px;
  color:var(--muted);
}

.btn--search{
  height:38px;
  padding:0 14px;
  border-radius:11px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  white-space:nowrap;
  font-weight:800;
  box-shadow:none;
}

.btn--search:hover{
  filter:brightness(.97);
  text-decoration:none;
  color:var(--accent);
}

/* userbar */
.userbar{
  display:flex;
  align-items:center;
  gap:8px;
  white-space:nowrap;
  flex:0 0 auto;
}

.theme-toggle{
  min-height:38px;
  padding:8px 11px;
  border-radius:11px;
  background:var(--card);
  border:1px solid var(--border);
}

/* nav */
.nav{
  display:flex;
  align-items:center;
  gap:8px;
  padding:4px 0;
  overflow:auto;
  scrollbar-width:thin;
}

.nav__link{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:8px 11px;
  border:1px solid transparent;
  border-radius:10px;
  color:var(--muted);
  text-decoration:none;
  white-space:nowrap;
  font-size:14px;
  font-weight:700;
  transition:background .15s ease, border-color .15s ease, color .15s ease, transform .08s ease;
}

.nav__link i{
  font-size:14px;
  opacity:.9;
}

.nav__link:hover{
  color:var(--text);
  background:var(--card);
  border-color:var(--border);
  text-decoration:none;
}

.nav__link:active{
  transform:translateY(1px);
}

.nav__link--home i{ color:#64748b; }
.nav__link--win i{ color:#2563eb; }
.nav__link--soft i{ color:#7c3aed; }
.nav__link--games i{ color:#ea580c; }
.nav__link--android i{ color:#16a34a; }
.nav__link--guide i{ color:#0891b2; }

/* optional active feeling on first item if home */
.nav__link[aria-current="page"]{
  background:var(--card);
  border-color:color-mix(in srgb, var(--border) 65%, var(--accent) 35%);
  color:var(--text);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.04);
}

/* dark */
html[data-theme="dark"] .header{
  box-shadow:0 1px 0 rgba(255,255,255,.02);
}

html[data-theme="dark"] .header__top{
  background:linear-gradient(180deg, #122021, #101b1d);
}

html[data-theme="dark"] .header__bottom{
  background:linear-gradient(180deg, #152325, #132022);
}

html[data-theme="dark"] .header-search__input{
  background:linear-gradient(180deg, #182628, #152123);
  border-color:#253436;
}

html[data-theme="dark"] .header-search__input:focus{
  background:#182729;
  border-color:#2b6b4f;
  box-shadow:0 0 0 3px rgba(43,107,79,.18);
}

html[data-theme="dark"] .btn--search{
  background:linear-gradient(180deg, #24513d, #1d4132);
  border-color:#2c6a50;
}

html[data-theme="dark"] .theme-toggle{
  background:#182628;
}

html[data-theme="dark"] .nav__link:hover,
html[data-theme="dark"] .nav__link[aria-current="page"]{
  background:#182628;
  border-color:#243537;
}

/* responsive */
@media (max-width: 1100px){
  .logo__subtext{
    display:none;
  }
}

@media (max-width: 900px){
  .header__inner{
    flex-wrap:wrap;
  }

  .logo{
    flex:1 1 auto;
  }

  .header-search{
    order:3;
    width:100%;
    flex:1 1 100%;
  }

  .userbar{
    margin-left:auto;
  }
}

@media (max-width: 720px){
  .header__top{
    padding:8px 0;
  }

  .logo__text{
    font-size:20px;
  }

  .header-search{
    gap:8px;
  }

  .header-search__input{
    height:40px;
  }

  .btn--search{
    height:40px;
    padding:0 12px;
  }

  .nav{
    gap:7px;
    padding:7px 0;
  }

  .nav__link{
    font-size:13px;
    padding:7px 10px;
  }
}

@media (max-width: 520px){
  .header-search{
    flex-direction:column;
    align-items:stretch;
  }

  .btn--search{
    width:100%;
    justify-content:center;
  }

  .theme-toggle{
    flex:1 1 auto;
    justify-content:center;
  }

  .userbar{
    width:100%;
    justify-content:flex-start;
    flex-wrap:wrap;
  }
}
/* =========================
   FOOTER — PORTAL STYLE
========================= */

.footer{
  margin-top:18px;
  border-top:1px solid var(--border);
  background:
    linear-gradient(180deg,
      color-mix(in srgb, var(--panel) 88%, var(--bg) 12%),
      var(--panel)
    );
}

.footer__top{
  display:grid;
  grid-template-columns:1.5fr .9fr .9fr;
  gap:24px;
  padding:18px 0 14px;
}

.footer__col{
  min-width:0;
}

.footer__brand{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:10px;
}

.footer__logo{
  width:38px;
  height:38px;
  border-radius:12px;
  display:grid;
  place-items:center;
  font-size:14px;
  font-weight:900;
  letter-spacing:.4px;
  color:#fff;
  background:linear-gradient(135deg,#2563eb,#16a34a,#0891b2);
  box-shadow:0 6px 18px rgba(37,99,235,.20);
  flex:0 0 auto;
}

.footer__title{
  font-size:18px;
  font-weight:900;
  line-height:1.1;
  letter-spacing:-0.01em;
  color:var(--text);
}

.footer__subtitle{
  margin-top:3px;
  font-size:12px;
  color:var(--muted);
}

.footer__text{
  max-width:540px;
  color:var(--muted);
  font-size:13px;
  line-height:1.6;
}

.footer__head{
  margin-bottom:10px;
  font-size:13px;
  font-weight:900;
  color:var(--text);
  text-transform:uppercase;
  letter-spacing:.04em;
}

.footer__links{
  display:flex;
  flex-direction:column;
  gap:7px;
}

.footer__link{
  display:inline-flex;
  align-items:center;
  gap:6px;
  color:var(--muted);
  text-decoration:none;
  font-size:13px;
  line-height:1.35;
}

.footer__link:hover{
  color:var(--text);
  text-decoration:none;
}

.footer__bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:12px 0 16px;
  border-top:1px solid var(--border);
}

.footer__copy{
  color:var(--muted);
  font-size:12px;
  line-height:1.5;
}

.footer__metrics{
  flex:0 0 auto;
  display:flex;
  align-items:center;
  gap:8px;
}

html[data-theme="dark"] .footer{
  background:linear-gradient(180deg, #132022, #122021);
}

@media (max-width: 900px){
  .footer__top{
    grid-template-columns:1fr 1fr;
    gap:18px;
  }

  .footer__col--brand{
    grid-column:1 / -1;
  }
}

@media (max-width: 640px){
  .footer__top{
    grid-template-columns:1fr;
    gap:16px;
    padding:16px 0 12px;
  }

  .footer__bottom{
    flex-direction:column;
    align-items:flex-start;
    padding:10px 0 14px;
  }

  .footer__copy{
    font-size:11px;
  }
}
/* =========================
   FEATURED CARD FIX
========================= */

.fcard{
  position:relative;
  display:block;
  overflow:hidden;
  border-radius:14px;
  color:#fff; /* ВСЕГДА белый текст */
}

/* Картинка */
.fcard__img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .4s ease;
}

/* Затемнение (главное) */
.fcard::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(
    to top,
    rgba(0,0,0,.75) 0%,
    rgba(0,0,0,.45) 40%,
    rgba(0,0,0,.15) 70%,
    rgba(0,0,0,0) 100%
  );
  transition:opacity .25s ease;
}

/* Контент */
.fcard__body{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  padding:16px;
  z-index:2;
}

/* Заголовок */
.fcard__title{
  color:#fff !important;
  font-size:18px;
  line-height:1.3;
  margin-bottom:8px;
  text-shadow:0 2px 6px rgba(0,0,0,.6);
}

/* Метки */
.fcard__pill{
  color:#fff;
  background:rgba(0,0,0,.35);
  border:1px solid rgba(255,255,255,.15);
  backdrop-filter:blur(4px);
}

/* HOVER — НЕ меняем цвет текста! */
.fcard:hover{
  color:#fff;
  text-decoration:none;
}

/* Усиливаем затемнение */
.fcard:hover::after{
  opacity:1;
  background:linear-gradient(
    to top,
    rgba(0,0,0,.85) 0%,
    rgba(0,0,0,.55) 40%,
    rgba(0,0,0,.2) 70%,
    rgba(0,0,0,0) 100%
  );
}

/* Чуть увеличиваем картинку */
.fcard:hover .fcard__img{
  transform:scale(1.04);
}
