/* Нужен страницам, которые подключают только base.css. */
@import url("/css/tokens.css?v=greyscale-1");

@font-face{
font-family:"Alegreya";
font-style:italic;
font-weight:400 900;
font-display:swap;
src:url("/fonts/alegreya/alegreya-italic-cyrillic-ext.woff2") format("woff2");
unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F;
}
@font-face{
font-family:"Alegreya";
font-style:italic;
font-weight:400 900;
font-display:swap;
src:url("/fonts/alegreya/alegreya-italic-cyrillic.woff2") format("woff2");
unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}
@font-face{
font-family:"Alegreya";
font-style:italic;
font-weight:400 900;
font-display:swap;
src:url("/fonts/alegreya/alegreya-italic-greek-ext.woff2") format("woff2");
unicode-range:U+1F00-1FFF;
}
@font-face{
font-family:"Alegreya";
font-style:italic;
font-weight:400 900;
font-display:swap;
src:url("/fonts/alegreya/alegreya-italic-greek.woff2") format("woff2");
unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF;
}
@font-face{
font-family:"Alegreya";
font-style:italic;
font-weight:400 900;
font-display:swap;
src:url("/fonts/alegreya/alegreya-italic-vietnamese.woff2") format("woff2");
unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;
}
@font-face{
font-family:"Alegreya";
font-style:italic;
font-weight:400 900;
font-display:swap;
src:url("/fonts/alegreya/alegreya-italic-latin-ext.woff2") format("woff2");
unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face{
font-family:"Alegreya";
font-style:italic;
font-weight:400 900;
font-display:swap;
src:url("/fonts/alegreya/alegreya-italic-latin.woff2") format("woff2");
unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face{
font-family:"Alegreya";
font-style:normal;
font-weight:400 900;
font-display:swap;
src:url("/fonts/alegreya/alegreya-normal-cyrillic-ext.woff2") format("woff2");
unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F;
}
@font-face{
font-family:"Alegreya";
font-style:normal;
font-weight:400 900;
font-display:swap;
src:url("/fonts/alegreya/alegreya-normal-cyrillic.woff2") format("woff2");
unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}
@font-face{
font-family:"Alegreya";
font-style:normal;
font-weight:400 900;
font-display:swap;
src:url("/fonts/alegreya/alegreya-normal-greek-ext.woff2") format("woff2");
unicode-range:U+1F00-1FFF;
}
@font-face{
font-family:"Alegreya";
font-style:normal;
font-weight:400 900;
font-display:swap;
src:url("/fonts/alegreya/alegreya-normal-greek.woff2") format("woff2");
unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF;
}
@font-face{
font-family:"Alegreya";
font-style:normal;
font-weight:400 900;
font-display:swap;
src:url("/fonts/alegreya/alegreya-normal-vietnamese.woff2") format("woff2");
unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;
}
@font-face{
font-family:"Alegreya";
font-style:normal;
font-weight:400 900;
font-display:swap;
src:url("/fonts/alegreya/alegreya-normal-latin-ext.woff2") format("woff2");
unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face{
font-family:"Alegreya";
font-style:normal;
font-weight:400 900;
font-display:swap;
src:url("/fonts/alegreya/alegreya-normal-latin.woff2") format("woff2");
unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}

*,*::before,*::after{box-sizing:border-box}

html{background:var(--bg)}

html,body{height:auto;min-height:100dvh}
@supports (height:100svh){
  html,body{min-height:100svh}
}

body{
  margin:0;
  font-family:var(--site-font);
  font-weight:var(--site-font-weight);
  font-size:15px;
  line-height:1.55;
  color:var(--text);
  background:var(--bg);
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;
  overflow-x:hidden;
}

h1,h2,h3,h4{margin:0;color:var(--text-strong);font-weight:var(--site-font-strong);line-height:1.25}
p{margin:0}
img{max-width:100%;display:block}
a{color:var(--accent);text-decoration:none;transition:color var(--dur-fast) var(--ease-out)}
a:hover{color:var(--accent-hover)}

button,input,textarea,select{
  font-family:var(--site-font);
  font-weight:var(--site-font-weight);
  font-size:inherit;
  color:inherit;
}

::selection{background:var(--accent-soft-2);color:var(--text-strong)}

:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}
:focus:not(:focus-visible){outline:none}

*{scrollbar-width:thin;scrollbar-color:var(--line) transparent}
*::-webkit-scrollbar{width:8px;height:8px}
*::-webkit-scrollbar-thumb{background:var(--line);border-radius:8px}
*::-webkit-scrollbar-thumb:hover{background:var(--muted-2)}
*::-webkit-scrollbar-track{background:transparent}

.hidden{display:none !important}

/* Set synchronously by shield-lock-prelude.js before the page can become
   interactive. The full CAPTCHA layer replaces this temporary freeze. */
html.sn-shield-lock-pending,
html.sn-shield-lock-pending body{
  overflow:hidden !important;
  overscroll-behavior:none;
}
html.sn-shield-lock-pending body{
  pointer-events:none;
  touch-action:none;
  user-select:none;
}

.visually-hidden{
  position:absolute;width:1px;height:1px;margin:-1px;border:0;padding:0;
  clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;
}

.sn-block-enter{will-change:opacity,transform}
html.sn-blocks-ready .sn-block-enter{
  animation:sn-block-enter .4s var(--ease-emph) both;
  animation-delay:calc(var(--sn-enter-i,0) * 36ms);
}
html.sn-blocks-ready .sn-block-enter.sn-block-enter-fast{
  animation-duration:.26s;
  animation-delay:calc(var(--sn-enter-i,0) * 20ms);
}
@keyframes sn-block-enter{
  from{opacity:0;transform:translateY(10px)}
  to{opacity:1;transform:translateY(0)}
}

@media (prefers-reduced-motion:reduce){
  .sn-block-enter,
  html.sn-blocks-ready .sn-block-enter{animation:none !important;opacity:1 !important;transform:none !important}
  *,*::before,*::after{
    transition-duration:.001ms !important;
    scroll-behavior:auto !important;
  }
}

.hashtag-suggest{
  display:flex;flex-wrap:wrap;align-items:center;gap:6px;
  width:100%;min-width:0;margin:0;
}
.hashtag-suggest.hidden{display:none}
.hashtag-suggest-label{
  flex:0 0 auto;display:inline-flex;align-items:center;min-height:28px;
  color:var(--muted);font-size:12px;font-weight:var(--site-font-strong);line-height:1;
}
.hashtag-suggest-chip{
  max-width:100%;min-height:28px;display:inline-flex;align-items:center;gap:5px;
  overflow:hidden;border:1px solid var(--line);background:var(--card-soft);
  color:var(--text);border-radius:var(--radius-full);padding:0 10px;
  font:inherit;font-size:13px;line-height:1.1;
  text-overflow:ellipsis;white-space:nowrap;cursor:pointer;
  transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out);
}
.hashtag-suggest-chip::before{
  content:"";width:12px;height:12px;flex:0 0 12px;color:var(--accent);
  background:
    linear-gradient(currentColor,currentColor) center/12px 2px no-repeat,
    linear-gradient(currentColor,currentColor) center/2px 12px no-repeat;
}
.hashtag-suggest-chip:hover{background:var(--accent-soft);border-color:var(--accent)}
.hashtag-suggest-chip:active{transform:scale(.97)}

/* Геометрия символов не зависит от базовой линии шрифта. */
.sn-icon-cross,
.sn-icon-plus{
  --sn-symbol-size:14px;
  --sn-symbol-stroke:2px;
  position:relative;
  font-size:0;
  line-height:0;
}
.sn-icon-cross::before,
.sn-icon-cross::after,
.sn-icon-plus::before,
.sn-icon-plus::after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:var(--sn-symbol-size);
  height:var(--sn-symbol-stroke);
  margin:0;
  border:0;
  border-radius:999px;
  background:currentColor;
  transform-origin:center;
  pointer-events:none;
}
.sn-icon-cross::before{transform:translate(-50%,-50%) rotate(45deg)}
.sn-icon-cross::after{transform:translate(-50%,-50%) rotate(-45deg)}
.sn-icon-plus::before{transform:translate(-50%,-50%)}
.sn-icon-plus::after{transform:translate(-50%,-50%) rotate(90deg)}
