/* Плавные ховеры по всему сайту: портал (server/portal.js, pages.js, more.js — стили прямо в разметке),
   каталог и вход (server/site.js + site.css), приложение /play/ (лобби отдельно в lobby.css).
   Вход и уход курсора — 0.6s мягкой кривой, ничего не щёлкает. Разметка портала из макетов владельца
   на style="…", поэтому виды ссылок узнаём по их же стилям; !important — чтобы перебить style="…". */
:root{--h-ease:cubic-bezier(.22,.61,.36,1)}
a,button,summary,label,.btn,.card,.chip,.dl-plus{
  transition:color .6s var(--h-ease),background-color .6s var(--h-ease),background-size .6s var(--h-ease),border-color .6s var(--h-ease),
    box-shadow .6s var(--h-ease),opacity .6s var(--h-ease),filter .6s var(--h-ease),text-decoration-color .6s var(--h-ease),transform .35s var(--h-ease) !important}
input,textarea,select,.acc-input{transition:border-color .6s var(--h-ease),box-shadow .6s var(--h-ease) !important}
a img{transition:transform .6s var(--h-ease),opacity .6s var(--h-ease)}

/* ссылки-слова (меню, «Войти», списки игр, подвал): под словом растёт линия */
a[style*="text-decoration: none"]:not([style*="background"]):not([style*="border"]):not([aria-current]):not([hreflang]):not([aria-label]){
  background-image:linear-gradient(currentColor,currentColor);background-repeat:no-repeat;background-position:0 100%;background-size:0 2px;background-origin:content-box}
/* ссылки в тексте статей и писем: подчёркивание проявляется */
a:not([style]):not([class]),a[style="color: #FFFFFF"],a[style="color:#fff"]{text-decoration-color:rgba(91,43,217,.3);text-underline-offset:3px}
a[style="color: #FFFFFF"],a[style="color:#fff"]{text-decoration-color:rgba(255,255,255,.35)}
.more{background-image:linear-gradient(currentColor,currentColor);background-repeat:no-repeat;background-position:0 100%;background-size:0 2px}

@media (hover:hover){
  a[style*="text-decoration: none"]:not([style*="background"]):not([style*="border"]):not([aria-current]):not([hreflang]):not([aria-label]):hover{background-size:100% 2px;color:#5B2BD9 !important}
  footer a:hover{color:#FFFFFF !important}
  a:not([style]):not([class]):hover,a[style="color: #FFFFFF"]:hover,a[style="color:#fff"]:hover{text-decoration-color:currentColor}
  a[aria-label]:hover>img,.logo:hover,.lb-logo:hover{opacity:.72}
  a[hreflang]:hover{color:#5B2BD9 !important}

  /* кнопки с заливкой: чуть светлее, приподнимаются, мягкая тень */
  a[style*="background: #"]:not([aria-current]):not([style*="#F3EFFD"]):not([style*="border: 1px solid #E6E0F5"]):hover{
    filter:brightness(1.08);transform:translateY(-2px);box-shadow:0 10px 24px rgba(40,20,100,.22)}
  /* таблетки (разделы, правила, Telegram): заливка гуще, текст фиолетовый */
  a[style*="background: #F3EFFD"]:hover{background-color:#E4DAFC !important;color:#5B2BD9 !important}
  /* «Регистрация» рамкой — заливается */
  a[style*="border: 2px solid #5B2BD9"]:hover{background-color:#5B2BD9;color:#FFFFFF !important}
  a[style*="border: 2px solid #FFB21E"]:hover{background-color:#FFB21E;color:#24124F !important}
  /* карточки игр, разделов, статей: рамка фиолетовая, подъём и тень */
  a[style*="border: 1px solid #E6E0F5"]:hover{border-color:#5B2BD9 !important;transform:translateY(-3px);box-shadow:0 14px 30px rgba(40,20,100,.12)}
  /* вопросы FAQ */
  summary:hover{color:#5B2BD9}
  summary:hover .dl-plus{transform:scale(1.1)}
  details[open]>summary:hover .dl-plus{transform:rotate(45deg) scale(1.1)}

  /* каталог и вход (site.css) */
  .btn-outline:hover{background:var(--violet,#5B2BD9);color:#FFFFFF}
  .chip:hover,.sort:hover{color:var(--violet,#5B2BD9)}
  .more:hover{background-size:100% 2px}
  .doc-card:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(40,20,100,.12)}
  .lang button:not([aria-pressed="true"]):hover{color:var(--violet,#5B2BD9)}
  .link-login:hover,.link-reg:hover,.toggle-pass:hover{opacity:.75}

  /* приложение /play/: партия, окна, настройки, экраны аккаунта — кнопка светлеет (у лобби свои ховеры в lobby.css) */
  button:not(:disabled):not(#lobby button):hover{filter:brightness(1.15)}
  .acc-link:hover,.acc-eye:hover{opacity:.75}
}
