@charset "UTF-8";
.text-left {
  text-align: left !important;
}
.text-center, .notifications__empty, .page-no-widgets {
  text-align: center !important;
}
.text-right {
  text-align: right !important;
}
.text-justify {
  text-align: justify !important;
}
.gap-0 {
  gap: 0 !important;
}
.gap-1, .badge {
  gap: 0.25rem !important;
}
.gap-2, #confirmation-dialog-content, .users-stats-header, .users-stats-header h5, .users-stats-avatar-mode {
  gap: 0.5rem !important;
}
.gap-3, .flute-user, .stats-free .stats__cell-player {
  gap: 1rem !important;
}
.gap-4, .navbar__content-logo {
  gap: 1.5rem !important;
}
.row-gap-0 {
  row-gap: 0 !important;
}
.row-gap-1 {
  row-gap: 0.25rem !important;
}
.row-gap-2 {
  row-gap: 0.5rem !important;
}
.row-gap-3 {
  row-gap: 1rem !important;
}
.row-gap-4 {
  row-gap: 1.5rem !important;
}
.column-gap-0 {
  column-gap: 0 !important;
}
.column-gap-1 {
  column-gap: 0.25rem !important;
}
.column-gap-2 {
  column-gap: 0.5rem !important;
}
.column-gap-3 {
  column-gap: 1rem !important;
}
.column-gap-4 {
  column-gap: 1.5rem !important;
}
@media (max-width: 767px) {
  .gap-mobile-0 {
    gap: 0 !important;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .gap-tablet-0 {
    gap: 0 !important;
  }
}
@media (min-width: 1024px) {
  .gap-pc-0 {
    gap: 0 !important;
  }
}
@media (max-width: 767px) {
  .gap-mobile-1 {
    gap: 0.25rem !important;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .gap-tablet-1 {
    gap: 0.25rem !important;
  }
}
@media (min-width: 1024px) {
  .gap-pc-1 {
    gap: 0.25rem !important;
  }
}
@media (max-width: 767px) {
  .gap-mobile-2 {
    gap: 0.5rem !important;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .gap-tablet-2 {
    gap: 0.5rem !important;
  }
}
@media (min-width: 1024px) {
  .gap-pc-2 {
    gap: 0.5rem !important;
  }
}
@media (max-width: 767px) {
  .gap-mobile-3 {
    gap: 1rem !important;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .gap-tablet-3 {
    gap: 1rem !important;
  }
}
@media (min-width: 1024px) {
  .gap-pc-3 {
    gap: 1rem !important;
  }
}
@media (max-width: 767px) {
  .gap-mobile-4 {
    gap: 1.5rem !important;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .gap-tablet-4 {
    gap: 1.5rem !important;
  }
}
@media (min-width: 1024px) {
  .gap-pc-4 {
    gap: 1.5rem !important;
  }
}
@media (max-width: 767px) {
  .row-gap-mobile-0 {
    row-gap: 0 !important;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .row-gap-tablet-0 {
    row-gap: 0 !important;
  }
}
@media (min-width: 1024px) {
  .row-gap-pc-0 {
    row-gap: 0 !important;
  }
}
@media (max-width: 767px) {
  .row-gap-mobile-1 {
    row-gap: 0.25rem !important;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .row-gap-tablet-1 {
    row-gap: 0.25rem !important;
  }
}
@media (min-width: 1024px) {
  .row-gap-pc-1 {
    row-gap: 0.25rem !important;
  }
}
@media (max-width: 767px) {
  .row-gap-mobile-2 {
    row-gap: 0.5rem !important;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .row-gap-tablet-2 {
    row-gap: 0.5rem !important;
  }
}
@media (min-width: 1024px) {
  .row-gap-pc-2 {
    row-gap: 0.5rem !important;
  }
}
@media (max-width: 767px) {
  .row-gap-mobile-3 {
    row-gap: 1rem !important;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .row-gap-tablet-3 {
    row-gap: 1rem !important;
  }
}
@media (min-width: 1024px) {
  .row-gap-pc-3 {
    row-gap: 1rem !important;
  }
}
@media (max-width: 767px) {
  .row-gap-mobile-4 {
    row-gap: 1.5rem !important;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .row-gap-tablet-4 {
    row-gap: 1.5rem !important;
  }
}
@media (min-width: 1024px) {
  .row-gap-pc-4 {
    row-gap: 1.5rem !important;
  }
}
@media (max-width: 767px) {
  .column-gap-mobile-0 {
    column-gap: 0 !important;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .column-gap-tablet-0 {
    column-gap: 0 !important;
  }
}
@media (min-width: 1024px) {
  .column-gap-pc-0 {
    column-gap: 0 !important;
  }
}
@media (max-width: 767px) {
  .column-gap-mobile-1 {
    column-gap: 0.25rem !important;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .column-gap-tablet-1 {
    column-gap: 0.25rem !important;
  }
}
@media (min-width: 1024px) {
  .column-gap-pc-1 {
    column-gap: 0.25rem !important;
  }
}
@media (max-width: 767px) {
  .column-gap-mobile-2 {
    column-gap: 0.5rem !important;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .column-gap-tablet-2 {
    column-gap: 0.5rem !important;
  }
}
@media (min-width: 1024px) {
  .column-gap-pc-2 {
    column-gap: 0.5rem !important;
  }
}
@media (max-width: 767px) {
  .column-gap-mobile-3 {
    column-gap: 1rem !important;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .column-gap-tablet-3 {
    column-gap: 1rem !important;
  }
}
@media (min-width: 1024px) {
  .column-gap-pc-3 {
    column-gap: 1rem !important;
  }
}
@media (max-width: 767px) {
  .column-gap-mobile-4 {
    column-gap: 1.5rem !important;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .column-gap-tablet-4 {
    column-gap: 1.5rem !important;
  }
}
@media (min-width: 1024px) {
  .column-gap-pc-4 {
    column-gap: 1.5rem !important;
  }
}
.visibility-visible {
  visibility: visible !important;
}
.visibility-hidden {
  visibility: hidden !important;
}
.visibility-collapse {
  visibility: collapse !important;
}
.overflow-visible {
  overflow: visible !important;
}
.overflow-hidden {
  overflow: hidden !important;
}
.overflow-scroll {
  overflow: scroll !important;
}
.overflow-auto {
  overflow: auto !important;
}
/*
 * Flute CMS Helper Classes
 * A comprehensive collection of utility classes for rapid UI development
 */
/* ===== Display & Visibility ===== */
.hidden {
  display: none;
  visibility: hidden;
}
.d-flex, .flex-center, .icon-hover, .navbar__lang, .navbar__notifications, .navbar__theme-switcher > button, .alert-close, .input__toggle-btn, .profile-edit__field-icon, .navbar__content-logo, .navbar__items, .navbar__actions, .navbar__socials, .navbar__socials a, .navbar__lang span, .navbar__langs span, .miniprofile__user, .miniprofile__user-content, .btn, .radio-item__icon, .input__prefix, .tabbar__content, .table__pagination-item, .table__pagination-item button, .table__pagination-item span, .badge, .confirmation-dialog__icon, .confirmation-dialog__icon > svg, .metric__icon, .notification-dropdown__action, .notification-dropdown__mark-read, .notification-dropdown__tab, .notification-dropdown__badge, .notification-icon, .notification-btn, .notification-delete, .notification-popup__icon, .notification-popup__close, .navbar__profile-trigger, .profile-dropdown__balance-icon, .profile-dropdown__balance-topup, .profile-dropdown__menu-icon, .profile-dropdown__footer-btn, .invalid__widget, .page-no-widgets, .profile-edit__hero, .users-stats-icon, .users-stats-empty, .flute-user, .stats-free .stats__cell-player, .flex-between, .miniprofile__balance, .modal__container, .modal__header, .table__footer, .notification-dropdown__header, .notification-header, .flex-around, .flex-evenly, .align-center, .navbar__items-item, .navbar__items-item.dropdown-item .navbar__items-item-trigger, .footer__title > a, .footer__items-item, .miniprofile__button, .input__field-container, .tabbar__item, .tabbar__modal-item, .select__field-container--native, .table__pagination, .textarea__field-container, .notification-file-link, .profile-edit__field, .profile-edit__field-value, .users-stats-header h5, .align-end, .align-start, .align-stretch, .align-baseline, .justify-center, .justify-start, .justify-end, .justify-between, .justify-around, .justify-evenly, .flex-column, .navbar__items-item-content, .tabbar__modal-item-content, .footer__items, [data-dropdown] > a, .input-wrapper, .tabbar__modal-items, .select-wrapper, .table__columns, .textarea-wrapper, .notification-dropdown__skeleton-body, .notification-content, .notification-name, #confirmation-dialog-content, .profile-edit__main-block, .profile-edit__main-block-body, .profile-edit__block, .profile-edit__sidebar, .profile-edit__sidebar-nav, .profile-edit__sidebar ul, .flute-user-text, .stats-free .stats__cell-player-text, .flex-row, .notification-dropdown__actions, .notification-dropdown__tabs, .notification-buttons, .profile-edit__main-blocks, .flex-row-reverse, .flex-column-reverse, .navbar__theme-switcher button, .footer__bottom, .footer__content, .footer__nav-cols, .footer__title, .footer__socials, .footer__socials-container, .miniprofile, .miniprofile__content, .miniprofile__main, .miniprofile__content-buttons, .modal__content-loading, .legend-block legend, .legend-block legend .legend-content, .legend-block legend .legend-text, .legend-block legend .legend-actions, .invalid__widget-icon, .profile-edit__block-header, .profile-edit__sidebar-item, .users-stats-header, .users-stats-avatar-mode, .users-stats-compact-mode {
  display: flex;
}
.d-inline-flex, .legend-block legend .legend-icon, .badge {
  display: inline-flex;
}
.d-block {
  display: block;
}
.d-inline-block {
  display: inline-block;
}
.d-none {
  display: none;
}
.d-grid, .profile-edit__blocks, .profile-edit__card-content .profile-settings__row {
  display: grid;
}
.d-contents {
  display: contents;
}
.invisible {
  visibility: hidden;
}
.visible {
  visibility: visible;
}
/* ===== Sizing ===== */
.w-full, .w-100 {
  width: 100% !important;
}
.h-full, .h-100 {
  height: 100% !important;
}
.w-auto {
  width: auto !important;
}
.h-auto {
  height: auto !important;
}
.w-screen {
  width: 100vw !important;
}
.h-screen {
  height: 100vh !important;
}
.min-w-0 {
  min-width: 0 !important;
}
.min-h-0 {
  min-height: 0 !important;
}
.max-w-full {
  max-width: 100% !important;
}
.max-h-full {
  max-height: 100% !important;
}
.max-w-screen {
  max-width: 100vw !important;
}
.max-h-screen {
  max-height: 100vh !important;
}
/* ===== Positioning ===== */
.p-relative, .position-relative {
  position: relative;
}
.p-absolute, .position-absolute {
  position: absolute;
}
.p-fixed, .position-fixed {
  position: fixed;
}
.p-sticky, .position-sticky {
  position: sticky;
}
.p-static, .position-static {
  position: static;
}
.top-0 {
  top: 0 !important;
}
.right-0 {
  right: 0 !important;
}
.bottom-0 {
  bottom: 0 !important;
}
.left-0 {
  left: 0 !important;
}
.inset-0 {
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
}
/* ===== Flex Layout ===== */
.flex-center, .icon-hover, .navbar__lang, .navbar__notifications, .navbar__theme-switcher > button, .alert-close, .input__toggle-btn, .profile-edit__field-icon, .navbar__content-logo, .navbar__items, .navbar__actions, .navbar__socials, .navbar__socials a, .navbar__lang span, .navbar__langs span, .miniprofile__user, .miniprofile__user-content, .btn, .radio-item__icon, .input__prefix, .tabbar__content, .table__pagination-item, .table__pagination-item button, .table__pagination-item span, .badge, .confirmation-dialog__icon, .confirmation-dialog__icon > svg, .metric__icon, .notification-dropdown__action, .notification-dropdown__mark-read, .notification-dropdown__tab, .notification-dropdown__badge, .notification-icon, .notification-btn, .notification-delete, .notification-popup__icon, .notification-popup__close, .navbar__profile-trigger, .profile-dropdown__balance-icon, .profile-dropdown__balance-topup, .profile-dropdown__menu-icon, .profile-dropdown__footer-btn, .invalid__widget, .page-no-widgets, .profile-edit__hero, .users-stats-icon, .users-stats-empty, .flute-user, .stats-free .stats__cell-player {
  align-items: center;
  justify-content: center;
}
.flex-between, .miniprofile__balance, .modal__container, .modal__header, .table__footer, .notification-dropdown__header, .notification-header {
  align-items: center;
  justify-content: space-between;
}
.flex-around {
  align-items: center;
  justify-content: space-around;
}
.flex-evenly {
  align-items: center;
  justify-content: space-evenly;
}
.align-center, .navbar__items-item, .navbar__items-item.dropdown-item .navbar__items-item-trigger, .footer__title > a, .footer__items-item, .miniprofile__button, .input__field-container, .tabbar__item, .tabbar__modal-item, .select__field-container--native, .table__pagination, .table__footer, .textarea__field-container, .notification-file-link, .profile-edit__field, .profile-edit__field-value, .users-stats-header h5 {
  align-items: center;
}
.align-end {
  align-items: flex-end;
}
.align-start {
  align-items: flex-start;
}
.align-stretch {
  align-items: stretch;
}
.align-baseline {
  align-items: baseline;
}
.justify-center {
  justify-content: center;
}
.justify-start {
  justify-content: flex-start;
}
.justify-end {
  justify-content: flex-end;
}
.justify-between {
  justify-content: space-between;
}
.justify-around {
  justify-content: space-around;
}
.justify-evenly {
  justify-content: space-evenly;
}
.flex-column, .navbar__items-item-content, .tabbar__modal-item-content, .footer__items, [data-dropdown] > a, .input-wrapper, .tabbar__item, .tabbar__modal-items, .select-wrapper, .table__columns, .textarea-wrapper, .notification-dropdown__skeleton-body, .notification-content, .notification-name, .invalid__widget, #confirmation-dialog-content, .profile-edit__main-block, .profile-edit__main-block-body, .profile-edit__hero, .profile-edit__block, .profile-edit__sidebar, .profile-edit__sidebar-nav, .profile-edit__sidebar ul, .flute-user-text, .stats-free .stats__cell-player-text {
  flex-direction: column;
}
.flex-row, .navbar__items-item, .navbar__items-item.dropdown-item .navbar__items-item-trigger, .miniprofile__balance, .tabbar__modal-item, .table__pagination, .table__footer, .notification-dropdown__actions, .notification-dropdown__tabs, .notification-buttons, .notification-file-link, .profile-edit__main-blocks, .profile-edit__field, .profile-edit__field-value {
  flex-direction: row;
}
.flex-row-reverse {
  flex-direction: row-reverse;
}
.flex-column-reverse {
  flex-direction: column-reverse;
}
.flex-wrap, .users-stats-avatar-mode, .users-stats-compact-mode {
  flex-wrap: wrap;
}
.flex-nowrap {
  flex-wrap: nowrap;
}
.flex-wrap-reverse {
  flex-wrap: wrap-reverse;
}
.flex-grow-0 {
  flex-grow: 0 !important;
}
.flex-grow-1 {
  flex-grow: 1 !important;
}
.flex-shrink-0 {
  flex-shrink: 0 !important;
}
.flex-shrink-1 {
  flex-shrink: 1 !important;
}
.flex-basis-0 {
  flex-basis: 0 !important;
}
.flex-basis-auto {
  flex-basis: auto !important;
}
.flex-1 {
  flex: 1 !important;
}
.flex-auto {
  flex: 1 1 auto !important;
}
.flex-none {
  flex: none !important;
}
/* ===== Grid Layout ===== */
.grid-cols-1 {
  grid-template-columns: repeat(1, minmax(0, 1fr));
}
.grid-cols-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.grid-cols-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.grid-cols-4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.grid-cols-5 {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}
.grid-cols-6 {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}
.grid-cols-12 {
  grid-template-columns: repeat(12, minmax(0, 1fr));
}
.grid-rows-1 {
  grid-template-rows: repeat(1, minmax(0, 1fr));
}
.grid-rows-2 {
  grid-template-rows: repeat(2, minmax(0, 1fr));
}
.grid-rows-3 {
  grid-template-rows: repeat(3, minmax(0, 1fr));
}
.grid-rows-4 {
  grid-template-rows: repeat(4, minmax(0, 1fr));
}
.grid-rows-5 {
  grid-template-rows: repeat(5, minmax(0, 1fr));
}
.grid-rows-6 {
  grid-template-rows: repeat(6, minmax(0, 1fr));
}
/* ===== Text Alignment ===== */
.text-center, .notifications__empty, .page-no-widgets {
  text-align: center !important;
}
.text-start, .text-left {
  text-align: left !important;
}
.text-end, .text-right {
  text-align: right !important;
}
.text-justify {
  text-align: justify !important;
}
/* ===== Text Styling ===== */
.text-ellipsis, .notification-header h6, .notification-popup__title {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  display: inline-block;
  max-width: 100%;
}
.text-small {
  font-size: var(--small) !important;
}
.text-medium {
  font-size: var(--medium) !important;
}
.text-large {
  font-size: var(--large) !important;
}
.text-muted, .footer__socials-title, .input__prefix, .page-no-widgets .description {
  color: var(--text-400);
  line-height: 1.5;
}
.text-lowercase {
  text-transform: lowercase !important;
}
.text-uppercase {
  text-transform: uppercase !important;
}
.text-capitalize {
  text-transform: capitalize !important;
}
.text-wrap {
  white-space: normal !important;
}
.text-nowrap {
  white-space: nowrap !important;
}
.text-break {
  word-wrap: break-word !important;
  word-break: break-word !important;
}
.text-truncate {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.text-balance {
  text-wrap: balance;
}
.line-clamp {
  display: -webkit-box;
  -webkit-line-clamp: 5;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.line-clamp-1 {
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.line-clamp-2 {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.line-clamp-3 {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.line-clamp-4 {
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
/* ===== Font Sizes ===== */
.h1 {
  font-size: var(--h1);
}
.h2, .users-stats-empty {
  font-size: var(--h2);
}
.h3 {
  font-size: var(--h3);
}
.h4 {
  font-size: var(--h4);
}
.h5, .users-stats-icon {
  font-size: var(--h5);
}
.h6 {
  font-size: var(--h6);
}
/* ===== Font Weights ===== */
.font-thin {
  font-weight: 100 !important;
}
.font-extralight {
  font-weight: 200 !important;
}
.font-light {
  font-weight: 300 !important;
}
.font-normal {
  font-weight: 400 !important;
}
.font-medium {
  font-weight: 500 !important;
}
.font-semibold {
  font-weight: 600 !important;
}
.font-bold {
  font-weight: 700 !important;
}
.font-extrabold {
  font-weight: 800 !important;
}
.font-black {
  font-weight: 900 !important;
}
/* ===== Colors ===== */
.text-error {
  color: var(--error);
}
.text-success {
  color: var(--success);
}
.text-warning {
  color: var(--warning);
}
.text-info {
  color: var(--info);
}
.primary {
  color: var(--primary);
}
.accent {
  color: var(--accent);
}
.hover-accent:hover {
  color: var(--accent);
}
.bg-primary {
  background-color: var(--primary) !important;
}
.bg-accent {
  background-color: var(--accent) !important;
}
.bg-error {
  background-color: var(--error) !important;
}
.bg-success {
  background-color: var(--success) !important;
}
.bg-warning {
  background-color: var(--warning) !important;
}
.bg-info {
  background-color: var(--info) !important;
}
.bg-transparent {
  background-color: transparent !important;
}
/* ===== Cursors ===== */
.cursor-move {
  cursor: move;
}
.cursor-pointer {
  cursor: pointer;
}
.cursor-default {
  cursor: default;
}
.cursor-not-allowed {
  cursor: not-allowed;
}
.cursor-grab {
  cursor: grab;
}
.cursor-grabbing {
  cursor: grabbing;
}
.cursor-text {
  cursor: text;
}
.cursor-wait {
  cursor: wait;
}
.cursor-help {
  cursor: help;
}
.cursor-crosshair {
  cursor: crosshair;
}
.cursor-zoom-in {
  cursor: zoom-in;
}
.cursor-zoom-out {
  cursor: zoom-out;
}
/* ===== Opacity ===== */
.opacity-0 {
  opacity: 0 !important;
}
.opacity-25 {
  opacity: 0.25 !important;
}
.opacity-50 {
  opacity: 0.5 !important;
}
.opacity-75 {
  opacity: 0.75 !important;
}
.opacity-100 {
  opacity: 1 !important;
}
/* ===== Z-Index ===== */
.z-index-0 {
  z-index: 0 !important;
}
.z-index-1 {
  z-index: 1 !important;
}
.z-index-2 {
  z-index: 2 !important;
}
.z-index-3 {
  z-index: 3 !important;
}
.z-index-10 {
  z-index: 10 !important;
}
.z-index-100 {
  z-index: 100 !important;
}
.z-index-1000 {
  z-index: 1000 !important;
}
.z-index-auto {
  z-index: auto !important;
}
/* ===== Borders ===== */
.border {
  border: 1px solid var(--transp-1);
}
.border-none {
  border: none;
}
.border-top {
  border-top: 1px solid var(--transp-1);
}
.border-bottom {
  border-bottom: 1px solid var(--transp-1);
}
.border-left {
  border-left: 1px solid var(--transp-1);
}
.border-right {
  border-right: 1px solid var(--transp-1);
}
.border-primary {
  border-color: var(--primary) !important;
}
.border-accent {
  border-color: var(--accent) !important;
}
.border-error {
  border-color: var(--error) !important;
}
.border-success {
  border-color: var(--success) !important;
}
.border-warning {
  border-color: var(--warning) !important;
}
.border-info {
  border-color: var(--info) !important;
}
/* ===== Border Radius ===== */
.rounded {
  border-radius: var(--border05);
}
.rounded-sm {
  border-radius: var(--border025);
}
.rounded-lg {
  border-radius: var(--border1);
}
.rounded-xl {
  border-radius: var(--border1);
}
.rounded-full, .rounded-circle {
  border-radius: 50%;
}
.rounded-none {
  border-radius: 0;
}
.rounded-t {
  border-top-left-radius: var(--border05);
  border-top-right-radius: var(--border05);
}
.rounded-r {
  border-top-right-radius: var(--border05);
  border-bottom-right-radius: var(--border05);
}
.rounded-b {
  border-bottom-left-radius: var(--border05);
  border-bottom-right-radius: var(--border05);
}
.rounded-l {
  border-top-left-radius: var(--border05);
  border-bottom-left-radius: var(--border05);
}
/* ===== Overflow ===== */
.overflow-auto {
  overflow: auto;
}
.overflow-hidden {
  overflow: hidden;
}
.overflow-visible {
  overflow: visible;
}
.overflow-scroll {
  overflow: scroll;
}
.overflow-x-auto {
  overflow-x: auto;
}
.overflow-y-auto {
  overflow-y: auto;
}
.overflow-x-hidden {
  overflow-x: hidden;
}
.overflow-y-hidden {
  overflow-y: hidden;
}
.overflow-x-visible {
  overflow-x: visible;
}
.overflow-y-visible {
  overflow-y: visible;
}
.overflow-x-scroll {
  overflow-x: scroll;
}
.overflow-y-scroll {
  overflow-y: scroll;
}
/* ===== Special Effects ===== */
.blur-bg, #footer, .card, [data-dropdown], .lk-card, .lk-gw-fields .lk-payment-section, .lk-balance-widget, .lk-checkout, .invalid__widget, .rules-sidebar, .rule-content-body, .tabs-container.segment .tabs-nav-wrapper, .alert, .ve, .metrics__grid, .metrics--cards .metrics__grid > .metric, .metric, .skeleton, .profile__hero-action-btn, .profile__admin-actions-trigger, .profile-edit__main-block, .profile-edit__block, .social-card, .profile-payments__overview, .notif-settings__section, .banners-widget .banners-slider .banners-controls .banner-prev, .banners-widget .banners-slider .banners-controls .banner-next, .banners-widget .banners-slider .banners-indicators, .banners-widget .banners-slider .banner-progress-timer .progress-circle, .chat-emoji-picker, .chat-mention-autocomplete, .wall-composer, .referral-stat-card, .referral-list, .referral-info-card, .referral-how-card, .wiki-search__results {
  position: relative;
  backdrop-filter: saturate(150%) blur(var(--blur-amount, 14px));
  -webkit-backdrop-filter: saturate(150%) blur(var(--blur-amount, 14px));
}
.icon-hover, .navbar__lang, .navbar__notifications, .navbar__theme-switcher > button, .alert-close, .input__toggle-btn, .profile-edit__field-icon {
  display: inline-flex;
  height: 40px;
  width: 40px;
  border-radius: 25px;
  cursor: pointer;
  background: none;
  transition: all 0.2s ease-in-out;
}
.icon-hover:hover, .navbar__lang:hover, .navbar__notifications:hover, .navbar__theme-switcher > button:hover, .alert-close:hover, .input__toggle-btn:hover, .profile-edit__field-icon:hover {
  color: var(--text);
  background-color: var(--transp-1);
}
.img-thumbnail {
  background-color: var(--background-900);
  border: 1px solid var(--transp-2);
  border-radius: var(--border05);
  max-width: 100%;
  height: auto;
}
.shadow-sm {
  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
}
.shadow {
  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06);
}
.shadow-md {
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
}
.shadow-lg {
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
}
.shadow-xl {
  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
}
.shadow-2xl {
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
}
.shadow-inner {
  box-shadow: inset 0 2px 4px 0 rgba(0, 0, 0, 0.06);
}
.shadow-none {
  box-shadow: none;
}
/* ===== Transitions ===== */
.transition {
  transition: all 0.2s ease-in-out;
}
.transition-colors {
  transition: background-color 0.2s ease-in-out, border-color 0.2s ease-in-out, color 0.2s ease-in-out, fill 0.2s ease-in-out, stroke 0.2s ease-in-out;
}
.transition-opacity {
  transition: opacity 0.2s ease-in-out;
}
.transition-shadow {
  transition: box-shadow 0.2s ease-in-out;
}
.transition-transform {
  transition: transform 0.2s ease-in-out;
}
/* ===== Miscellaneous ===== */
.clearfix::after {
  content: "";
  display: table;
  clear: both;
}
.table-responsive {
  -webkit-overflow-scrolling: touch;
  overflow-x: auto;
}
.user-select-none {
  user-select: none;
}
.user-select-all {
  user-select: all;
}
.user-select-auto {
  user-select: auto;
}
.user-select-text {
  user-select: text;
}
.pointer-events-none {
  pointer-events: none;
}
.pointer-events-auto {
  pointer-events: auto;
}
.whitespace-normal {
  white-space: normal;
}
.whitespace-nowrap {
  white-space: nowrap;
}
.whitespace-pre {
  white-space: pre;
}
.whitespace-pre-line {
  white-space: pre-line;
}
.whitespace-pre-wrap {
  white-space: pre-wrap;
}
.break-normal {
  overflow-wrap: normal;
  word-break: normal;
}
.break-words {
  overflow-wrap: break-word;
}
.break-all {
  word-break: break-all;
}
.truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}
.not-sr-only {
  position: static;
  width: auto;
  height: auto;
  padding: 0;
  margin: 0;
  overflow: visible;
  clip: auto;
  white-space: normal;
}
.object-contain {
  object-fit: contain;
}
.object-cover {
  object-fit: cover;
}
.object-fill {
  object-fit: fill;
}
.object-none {
  object-fit: none;
}
.object-scale-down {
  object-fit: scale-down;
}
.object-center {
  object-position: center;
}
.object-top {
  object-position: top;
}
.object-right {
  object-position: right;
}
.object-bottom {
  object-position: bottom;
}
.object-left {
  object-position: left;
}
.rotate-0 {
  transform: rotate(0deg);
}
.rotate-45 {
  transform: rotate(45deg);
}
.rotate-90 {
  transform: rotate(90deg);
}
.rotate-180 {
  transform: rotate(180deg);
}
.rotate-270 {
  transform: rotate(270deg);
}
.scale-0 {
  transform: scale(0);
}
.scale-50 {
  transform: scale(0.5);
}
.scale-75 {
  transform: scale(0.75);
}
.scale-90 {
  transform: scale(0.9);
}
.scale-100 {
  transform: scale(1);
}
.scale-110 {
  transform: scale(1.1);
}
.scale-125 {
  transform: scale(1.25);
}
.scale-150 {
  transform: scale(1.5);
}
.translate-x-0 {
  transform: translateX(0);
}
.translate-y-0 {
  transform: translateY(0);
}
.translate-x-full {
  transform: translateX(100%);
}
.translate-y-full {
  transform: translateY(100%);
}
.translate-x-half {
  transform: translateX(50%);
}
.translate-y-half {
  transform: translateY(50%);
}
.translate-x-negative-full {
  transform: translateX(-100%);
}
.translate-y-negative-full {
  transform: translateY(-100%);
}
.translate-x-negative-half {
  transform: translateX(-50%);
}
.translate-y-negative-half {
  transform: translateY(-50%);
}
:root {
  --transition: .2s;
  --blur-amount: 10px;
  --max-content-width: 1200px;
  --sidebar-width: 260px;
  --card-opacity: 0.8;
  --glow-intensity: 0;
  --shadow-small: inset 0 1px 2px #ffffff30, 0 1px 2px #00000030, 0 2px 4px #00000015;
  --shadow-medium: inset 0 1px 2px #ffffff50, 0 1px 2px #00000030, 0 2px 4px #00000015;
  --shadow-large: inset 0 1px 2px #ffffff70, 0 1px 2px #00000030, 0 2px 4px #00000015;
}
:root[data-theme=light] {
  --text: #1d1d1f;
  --background: #ffffff;
  --primary: #1d1d1f;
  --secondary: #f5f5f7;
  --accent: #34c759;
  --success: #30d158;
  --success-light: rgba(48, 209, 88, 0.1);
  --error: #ff3b30;
  --error-light: rgba(255, 59, 48, 0.1);
  --warning: #ff9500;
  --warning-light: rgba(255, 149, 0, 0.1);
  --info: #5ac8fa;
  --info-light: rgba(90, 200, 250, 0.1);
  --blurred-background: rgba(255, 255, 255, 0.8);
  --text-50: #1d1d1f;
  --text-100: #2c2c2e;
  --text-200: #3a3a3c;
  --text-300: #48484a;
  --text-400: #515154;
  --text-500: #6d6d70;
  --text-600: #8e8e93;
  --text-700: #aeaeb2;
  --text-800: #c7c7cc;
  --text-900: #e5e5ea;
  --text-950: #f2f2f7;
  --background-50: #1d1d1f;
  --background-100: #2c2c2e;
  --background-200: #3a3a3c;
  --background-300: #48484a;
  --background-400: #636366;
  --background-500: #8e8e93;
  --background-600: #aeaeb2;
  --background-700: #c7c7cc;
  --background-800: #d1d1d6;
  --background-900: #f5f5f7;
  --background-950: #ffffff;
  --primary-50: #1d1d1f;
  --primary-100: #2c2c2e;
  --primary-200: #3a3a3c;
  --primary-300: #48484a;
  --primary-400: #636366;
  --primary-500: #8e8e93;
  --primary-600: #aeaeb2;
  --primary-700: #c7c7cc;
  --primary-800: #d1d1d6;
  --primary-900: #e5e5ea;
  --primary-950: #f2f2f7;
  --secondary-50: #1d1d1f;
  --secondary-100: #2c2c2e;
  --secondary-200: #3a3a3c;
  --secondary-300: #48484a;
  --secondary-400: #636366;
  --secondary-500: #8e8e93;
  --secondary-600: #aeaeb2;
  --secondary-700: #c7c7cc;
  --secondary-800: #d1d1d6;
  --secondary-900: #e5e5ea;
  --secondary-950: #f5f5f7;
  --accent-50: #e8f5e8;
  --accent-100: #d1ebd1;
  --accent-200: #a3d7a3;
  --accent-300: #75c375;
  --accent-400: #47af47;
  --accent-500: #34c759;
  --accent-600: #2a9f47;
  --accent-700: #1f7735;
  --accent-800: #154f23;
  --accent-900: #0a2712;
  --accent-950: #051409;
  --transp-02: rgba(0, 0, 0, 0.02);
  --transp-03: rgba(0, 0, 0, 0.03);
  --transp-05: rgba(0, 0, 0, 0.04);
  --transp-1: rgba(0, 0, 0, 0.08);
  --transp-2: rgba(0, 0, 0, 0.12);
  --transp-3: rgba(0, 0, 0, 0.16);
  --transp-4: rgba(0, 0, 0, 0.20);
  --transp-5: rgba(0, 0, 0, 0.25);
  --transp-6: rgba(0, 0, 0, 0.35);
  color-scheme: light;
}
:root[data-theme=dark] {
  --text: #e8e8ed;
  --background: #121214;
  --primary: #e8e8ed;
  --secondary: #1e1e22;
  --accent: #A5FF75;
  --success: #34d399;
  --success-light: rgba(52, 211, 153, 0.15);
  --error: #f87171;
  --error-light: rgba(248, 113, 113, 0.15);
  --warning: #fbbf24;
  --warning-light: rgba(251, 191, 36, 0.15);
  --info: #60a5fa;
  --info-light: rgba(96, 165, 250, 0.15);
  --blurred-background: rgba(18, 18, 20, 0.8);
  --text-50: #fafafa;
  --text-100: #f0f0f2;
  --text-200: #e0e0e4;
  --text-300: #c8c8ce;
  --text-400: #a0a0a8;
  --text-500: #78787f;
  --text-600: #58585e;
  --text-700: #404045;
  --text-800: #2a2a2e;
  --text-900: #1a1a1d;
  --text-950: #0e0e10;
  --background-50: #fafafa;
  --background-100: #f0f0f2;
  --background-200: #e0e0e4;
  --background-300: #c8c8ce;
  --background-400: #a0a0a8;
  --background-500: #78787f;
  --background-600: #58585e;
  --background-700: #404045;
  --background-800: #2a2a2e;
  --background-900: #1e1e22;
  --background-950: #121214;
  --primary-50: #fafafa;
  --primary-100: #f0f0f2;
  --primary-200: #e0e0e4;
  --primary-300: #c8c8ce;
  --primary-400: #a0a0a8;
  --primary-500: #78787f;
  --primary-600: #58585e;
  --primary-700: #404045;
  --primary-800: #2a2a2e;
  --primary-900: #1e1e22;
  --primary-950: #121214;
  --secondary-50: #fafafa;
  --secondary-100: #f0f0f2;
  --secondary-200: #e0e0e4;
  --secondary-300: #c8c8ce;
  --secondary-400: #a0a0a8;
  --secondary-500: #78787f;
  --secondary-600: #58585e;
  --secondary-700: #404045;
  --secondary-800: #2a2a2e;
  --secondary-900: #1e1e22;
  --secondary-950: #1e1e22;
  --accent-50: #f0fdf4;
  --accent-100: #dcfce7;
  --accent-200: #bbf7d0;
  --accent-300: #86efac;
  --accent-400: #4ade80;
  --accent-500: #A5FF75;
  --accent-600: #16a34a;
  --accent-700: #15803d;
  --accent-800: #166534;
  --accent-900: #14532d;
  --accent-950: #052e16;
  --transp-02: rgba(255, 255, 255, 0.02);
  --transp-03: rgba(255, 255, 255, 0.03);
  --transp-05: rgba(255, 255, 255, 0.05);
  --transp-1: rgba(255, 255, 255, 0.08);
  --transp-15: rgba(255, 255, 255, 0.1);
  --transp-2: rgba(255, 255, 255, 0.12);
  --transp-3: rgba(255, 255, 255, 0.16);
  --transp-4: rgba(255, 255, 255, 0.2);
  --transp-5: rgba(255, 255, 255, 0.25);
  --transp-6: rgba(255, 255, 255, 0.35);
  color-scheme: dark;
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
*, *::before, *::after {
  box-sizing: border-box;
}
* {
  margin: 0;
}
body {
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}
img, picture, video, canvas {
  display: block;
  max-width: 100%;
}
input, button, textarea, select {
  font: inherit;
  outline: none;
  border: none;
}
button {
  padding: 0;
}
p, h1, h2, h3, h4, h5, h6 {
  overflow-wrap: break-word;
}
:root {
  --font: "Manrope", "Manrope Fallback", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  --font-header: "Manrope", "Manrope Fallback", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  --font-mono: "SF Mono", Monaco, "Cascadia Code", "Roboto Mono", Consolas, "Courier New", monospace;
  --font-scale: 1.15;
  --p: clamp(0.8rem, 2vw, 0.9rem);
  --p-small: clamp(0.7rem, 1.8vw, calc(var(--p) / 1.1));
  --h6: clamp(1rem, 2vw, calc(var(--p) * var(--font-scale)));
  --h5: clamp(1.2rem, 2.5vw, calc(var(--h6) * var(--font-scale)));
  --h4: clamp(1.4rem, 3vw, calc(var(--h5) * var(--font-scale)));
  --h3: clamp(1.6rem, 4vw, calc(var(--h4) * var(--font-scale)));
  --h2: clamp(1.8rem, 5vw, calc(var(--h3) * var(--font-scale)));
  --h1: clamp(2rem, 6vw, calc(var(--h2) * var(--font-scale)));
  --small: clamp(0.7rem, 1.5vw, calc(var(--p) / var(--font-scale)));
  --border1: 1rem;
  --border05: 0.5rem;
  --space-2xs: 0.25rem;
  --space-xs: 0.5rem;
  --space-sm: 0.75rem;
  --space-md: 1rem;
  --space-lg: 1.5rem;
  --space-xl: 2rem;
}
* {
  box-sizing: border-box;
  scroll-padding-top: 3em;
  font-family: var(--font);
}
code, kbd, samp, pre {
  font-family: var(--font-mono);
}
@media (prefers-reduced-motion: no-preference) {
  html, body {
    scroll-behavior: smooth;
  }
}
html {
  scrollbar-gutter: stable;
  font-size: 100%;
  min-height: 100vh;
}
body {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
  min-height: 100vh;
  font-family: var(--font);
  color: var(--text);
  background-color: var(--background);
  background-image: var(--page-gradient, none);
  background-attachment: fixed;
  background-position: center;
  background-repeat: no-repeat;
  overflow-x: hidden;
  position: relative;
  line-height: 1.75;
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  transition: background-color var(--transition), margin-left var(--transition) ease, margin-top var(--transition) ease;
}
body.no-scroll {
  overflow: hidden;
  overscroll-behavior: contain;
  touch-action: none;
}
@media (max-width: 767px) {
  body {
    padding-bottom: 80px;
  }
}
html[data-container-width="fullwidth"] .container:not(.keep-container) {
  max-width: none !important;
  width: 100% !important;
}
html[data-container-width="container"] .container:not(.keep-container) {
  max-width: var(--max-content-width) !important;
}
.small {
  font-size: var(--small) !important;
}
h1, h2, h3, h4, h5, h6 {
  line-height: 1.5;
  margin: 0;
  font-family: var(--font-header);
  letter-spacing: -0.01em;
}
p, small, a, li, table {
  line-height: 2.25;
  margin: 0;
}
/* text styles */
h1 {
  font-size: var(--h1);
  font-weight: 700;
}
h2 {
  font-size: var(--h2);
  font-weight: 700;
}
h3 {
  font-size: var(--h3);
  font-weight: 600;
}
h4 {
  font-size: var(--h4);
  font-weight: 600;
}
h5 {
  font-size: var(--h5);
  font-weight: 600;
}
h6 {
  font-size: var(--h6);
  font-weight: 500;
}
a {
  font-size: inherit;
  text-decoration: none;
  color: inherit;
  transition: color var(--transition);
}
p {
  font-size: var(--p);
  letter-spacing: normal;
  text-align: left;
}
::selection {
  background-color: var(--transp-4);
}
li {
  font-size: var(--p);
  margin-top: 0.2rem;
}
pre {
  font-size: var(--p);
}
small {
  font-size: var(--small);
}
button {
  font-size: var(--p);
}
button, a {
  margin: 0;
  padding: 0;
  border: none;
  outline: none;
  background: none;
  cursor: pointer;
}
::-webkit-scrollbar {
  width: 5px;
  height: 5px;
}
::-webkit-scrollbar-track {
  background-color: transparent;
  border-radius: 100px;
}
::-webkit-scrollbar-thumb {
  background-color: var(--transp-4);
  border-radius: 100px;
}
::-webkit-scrollbar-thumb:hover {
  background-color: var(--accent);
}
#main {
  flex: 1;
  opacity: 1;
}
@keyframes fade-main-in {
  from {
    opacity: 0;
  }
}
@keyframes fade-main-out {
  to {
    opacity: 0;
  }
}
@keyframes slide-from-right {
  from {
    transform: translateX(20px);
  }
}
@keyframes slide-to-left {
  to {
    transform: translateX(-20px);
  }
}
:root {
  --bg-effect-opacity: 0.1;
}
html[data-bg-effect="dots"] body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: -1;
  background-image: radial-gradient(circle, var(--text-600) 1px, transparent 1px);
  background-size: 24px 24px;
  opacity: var(--bg-effect-opacity);
}
html[data-bg-effect="grid"] body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: -1;
  background-image: linear-gradient(var(--text-600) 1px, transparent 1px), linear-gradient(90deg, var(--text-600) 1px, transparent 1px);
  background-size: 48px 48px;
  opacity: var(--bg-effect-opacity);
}
html[data-bg-effect="cross"] body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: -1;
  background-image: radial-gradient(circle at center, var(--text-500) 2px, transparent 2px), linear-gradient(var(--text-600) 1px, transparent 1px), linear-gradient(90deg, var(--text-600) 1px, transparent 1px);
  background-size: 48px 48px;
  background-position: 23px 23px, -1px -1px, -1px -1px;
  opacity: var(--bg-effect-opacity);
}
html[data-bg-effect="diagonal"] body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: -1;
  background-image: repeating-linear-gradient(45deg, transparent, transparent 20px, var(--text-600) 20px, var(--text-600) 21px);
  opacity: var(--bg-effect-opacity);
}
html[data-bg-effect="squares"] body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: -1;
  background-image: linear-gradient(45deg, var(--text-600) 25%, transparent 25%), linear-gradient(-45deg, var(--text-600) 25%, transparent 25%), linear-gradient(45deg, transparent 75%, var(--text-600) 75%), linear-gradient(-45deg, transparent 75%, var(--text-600) 75%);
  background-size: 40px 40px;
  background-position: 0 0, 0 20px, 20px -20px, -20px 0px;
  opacity: var(--bg-effect-opacity);
}
html[data-bg-effect="mesh"] body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: -1;
  background: radial-gradient(ellipse 80% 60% at 10% 20%, color-mix(in srgb, var(--accent) 40%, transparent) 0%, transparent 60%), radial-gradient(ellipse 60% 80% at 80% 70%, color-mix(in srgb, var(--primary) 35%, transparent) 0%, transparent 50%), radial-gradient(ellipse 70% 50% at 90% 20%, color-mix(in srgb, var(--secondary) 30%, transparent) 0%, transparent 50%), radial-gradient(ellipse 50% 70% at 40% 80%, color-mix(in srgb, var(--accent) 25%, transparent) 0%, transparent 50%);
  opacity: var(--bg-effect-opacity);
}
html[data-bg-effect="noise"] body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: -1;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");
  opacity: var(--bg-effect-opacity);
}
:root {
  --emoji-pattern: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='128' height='128' viewBox='0 0 128 128'%3E%3Cg opacity='0.15'%3E%3Ctext x='32' y='32' font-size='24' dominant-baseline='middle' text-anchor='middle'%3E⭐%3C/text%3E%3Ctext x='96' y='32' font-size='24' dominant-baseline='middle' text-anchor='middle'%3E✨%3C/text%3E%3Ctext x='32' y='96' font-size='24' dominant-baseline='middle' text-anchor='middle'%3E💫%3C/text%3E%3Ctext x='96' y='96' font-size='24' dominant-baseline='middle' text-anchor='middle'%3E🌟%3C/text%3E%3C/g%3E%3C/svg%3E");
  --emoji-tile-width: 128px;
  --emoji-tile-height: 128px;
  --emoji-angle: 0deg;
  --emoji-accent-filter: none;
}
html[data-bg-effect="emoji"] body::before {
  content: "";
  position: fixed;
  inset: -50%;
  width: 200%;
  height: 200%;
  pointer-events: none;
  z-index: -1;
  background-image: var(--emoji-pattern);
  background-size: var(--emoji-tile-width) var(--emoji-tile-height);
  background-repeat: repeat;
  transform: rotate(var(--emoji-angle));
  transform-origin: center center;
  filter: var(--emoji-accent-filter);
}
.flute_header {
  position: sticky;
  top: 0;
  z-index: 60;
}
.navbar {
  position: inherit;
  background-color: var(--background);
  padding: var(--space-md) 0;
  border-bottom: 1px solid var(--transp-1);
  margin-bottom: var(--space-lg);
  box-shadow: 0 1px 2px #00000030, 0 2px 4px #00000015;
}
.navbar.dropdown-open {
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
.navbar__content {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.navbar__content-logo img {
  max-height: 40px;
}
.navbar__left {
  display: flex;
  align-items: center;
  gap: var(--space-md);
  width: 100%;
}
.navbar__separator {
  display: none;
  width: 1px;
  height: 26px;
  background-color: var(--transp-2);
}
.navbar__items {
  margin: 0 auto;
  gap: var(--space-sm);
}
.navbar__items-item {
  position: relative;
  font-size: var(--p-small);
  gap: var(--space-sm);
  font-weight: 500;
  border-radius: 0;
  padding: var(--space-2xs) var(--space-xs);
  height: auto;
  letter-spacing: 0.02em;
  transition: all var(--transition) ease-out;
  line-height: 1.3;
  color: var(--text-200);
  border-radius: var(--border1);
  border: 1px solid transparent;
  cursor: pointer;
}
.navbar__items-item p {
  font-size: inherit;
  display: flex;
  align-items: center;
  gap: var(--space-sm);
}
.navbar__items-item-icon {
  font-size: var(--h5);
}
.navbar__items-item-icon-dropdown {
  font-size: var(--h6);
  opacity: 0.5;
  transition: transform var(--transition) ease-out;
}
.navbar__items-item-content {
  align-items: flex-start;
  gap: 2px;
}
.navbar__items-item-description {
  font-size: calc(var(--small) * 0.9);
  color: var(--text-400);
  opacity: 0.8;
  line-height: 1.1;
  font-weight: 400;
  max-width: 200px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  transition: all var(--transition) ease-out;
}
.navbar__items-item.dropdown-item .navbar__items-item-trigger {
  cursor: pointer;
  gap: inherit;
}
.navbar__items-item:hover, .navbar__items-item.active {
  color: var(--text);
}
.navbar__actions {
  flex-direction: row;
  gap: var(--space-xs);
}
.navbar__actions li {
  display: flex;
  line-height: inherit;
  margin: 0;
  list-style: none;
}
.navbar__actions.login {
  gap: var(--space-md);
  padding: 0;
}
.navbar__actions-login {
  font-size: var(--p-small);
}
.navbar__lang {
  border-radius: 30px;
  overflow: hidden;
}
.navbar__lang img, .navbar__lang svg {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.navbar__profile-wrapper {
  position: relative;
}
.navbar__logo {
  min-width: 40px;
  max-width: 130px;
}
.navbar__logo img {
  max-height: 50px;
  height: 100%;
}
.navbar__notifications {
  position: relative;
}
.navbar__notifications svg {
  width: 1.5em;
  height: 1.5em;
  color: var(--text-300);
  transition: all var(--transition) ease-out;
}
.navbar__notifications-indicator {
  position: absolute;
  top: 2px;
  right: 2px;
  width: 8px;
  height: 8px;
  background-color: #f85656;
  border-radius: 50%;
  display: none;
  text-indent: -9999px;
}
.navbar__notifications-dot {
  position: absolute;
  top: 4px;
  right: 4px;
  width: 8px;
  height: 8px;
  background-color: var(--error);
  border-radius: 50%;
  opacity: 0;
  transform: scale(0);
  transition: opacity 0.2s ease, transform 0.2s ease;
  pointer-events: none;
}
.navbar__notifications-dot.active {
  opacity: 1;
  transform: scale(1);
}
.navbar__notifications:hover svg {
  color: var(--text);
}
.navbar__socials {
  gap: var(--space-md);
  margin: 0 var(--space-xs);
}
.navbar__socials a {
  font-size: var(--h4);
  color: var(--text-500);
}
.navbar__socials a:hover {
  color: var(--text);
}
.navbar__lang span, .navbar__langs span {
  display: inline-flex;
  width: 26px;
  height: 20px;
  flex-shrink: 0;
  overflow: hidden;
  border-radius: 5px;
}
.navbar__lang img, .navbar__langs img {
  width: 100%;
  height: 100%;
  max-width: unset;
  object-fit: cover;
  vertical-align: middle;
}
.navbar__langs > a {
  opacity: 0.8 !important;
  transition: 0.3s ease;
}
.navbar__langs > a:hover {
  opacity: 1 !important;
  background-color: var(--transp-1);
}
.navbar__theme-switcher button {
  color: var(--text-300);
  font-size: var(--h4);
}
.navbar__theme-switcher:hover {
  color: var(--text);
}
@media (max-width: 767px) {
  .navbar__theme-switcher {
    display: none !important;
  }
}
.navbar-dropdown {
  position: relative;
  display: flex;
  align-items: center;
  margin: 0 auto;
}
.navbar-dropdown__items {
  display: flex;
  align-items: center;
  gap: var(--space-2xs);
}
.navbar-dropdown__item {
  display: flex;
  align-items: center;
  gap: var(--space-xs);
  padding: var(--space-xs) var(--space-sm);
  font-size: var(--p-small);
  font-weight: 500;
  color: var(--text-400);
  background: none;
  border: none;
  border-radius: 9999px;
  cursor: pointer;
  transition: color 0.2s ease, background-color 0.2s ease;
  white-space: nowrap;
  text-decoration: none;
  line-height: 1.5;
}
.navbar-dropdown__item:hover, .navbar-dropdown__item.active {
  color: var(--text);
  background-color: var(--transp-05);
}
.navbar-dropdown__item-icon {
  font-size: 1rem;
}
.navbar-dropdown__trigger.is-active {
  color: var(--text);
  background-color: var(--transp-1);
}
.navbar-dropdown__trigger.is-active .navbar-dropdown__chevron {
  transform: rotate(180deg);
}
.navbar-dropdown__chevron {
  font-size: 10px;
  opacity: 0.5;
  transition: transform 0.3s cubic-bezier(0.32, 0.72, 0, 1);
}
.navbar-dropdown__popup {
  position: absolute;
  top: 100%;
  left: 0;
  padding-top: var(--space-sm);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.3s cubic-bezier(0.32, 0.72, 0, 1), visibility 0.3s cubic-bezier(0.32, 0.72, 0, 1), transform 0.3s cubic-bezier(0.32, 0.72, 0, 1);
  z-index: 100;
}
.navbar-dropdown__popup.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
.navbar-dropdown__box {
  position: relative;
  border-radius: 24px;
  background: var(--blurred-background, rgba(20, 20, 23, 0.8));
  backdrop-filter: blur(40px) saturate(180%);
  -webkit-backdrop-filter: blur(40px) saturate(180%);
  border: 1px solid var(--transp-1);
  overflow: hidden;
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5);
  transition: width 0.3s cubic-bezier(0.32, 0.72, 0, 1), height 0.3s cubic-bezier(0.32, 0.72, 0, 1);
  will-change: width, height;
}
.navbar-dropdown__content {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1;
  padding: var(--space-sm);
  opacity: 0;
  pointer-events: none;
  transform: translateY(8px);
  transition: opacity 0.3s cubic-bezier(0.32, 0.72, 0, 1), transform 0.3s cubic-bezier(0.32, 0.72, 0, 1);
}
.navbar-dropdown__content.is-active {
  opacity: 1;
  pointer-events: auto;
  z-index: 2;
  transform: translateY(0);
  transition-delay: 0.075s;
}
.navbar-dropdown__grid {
  display: grid;
  gap: var(--space-2xs);
  grid-template-columns: repeat(2, 1fr);
}
.navbar-dropdown__menu-item {
  display: flex;
  flex-direction: column;
  padding: var(--space-sm);
  border-radius: 20px;
  transition: background-color 0.15s ease, transform 0.2s cubic-bezier(0.16, 1, 0.3, 1);
  will-change: transform;
}
.navbar-dropdown__menu-item:hover {
  background-color: var(--transp-05);
}
.navbar-dropdown__menu-item:hover .navbar-dropdown__menu-icon {
  color: var(--text);
  background-color: var(--transp-1);
}
.navbar-dropdown__menu-item:hover .navbar-dropdown__menu-title {
  color: var(--text);
}
.navbar-dropdown__menu-link {
  display: flex;
  align-items: flex-start;
  gap: var(--space-sm);
  text-decoration: none;
  color: inherit;
  padding-right: var(--space-md);
  height: 100%;
}
.navbar-dropdown__menu-icon {
  flex-shrink: 0;
  width: 36px;
  height: 36px;
  margin: auto 0;
  border-radius: 14px;
  background-color: var(--transp-05);
  border: 1px solid var(--transp-05);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--text-400);
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}
.navbar-dropdown__menu-icon svg {
  width: 20px;
  height: 20px;
}
.navbar-dropdown__menu-text {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-top: 2px;
  height: 100%;
}
.navbar-dropdown__menu-title {
  font-size: var(--p-small);
  font-weight: 600;
  color: var(--text-200);
  line-height: 1.25;
  transition: color 0.15s ease;
}
.navbar-dropdown__menu-desc {
  font-size: 11px;
  color: var(--text-600);
  line-height: 1.25;
  margin-top: 4px;
}
.navbar-dropdown__menu-header {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  padding-right: var(--space-md);
}
.navbar-dropdown__menu-header .navbar-dropdown__menu-icon {
  flex-shrink: 0;
}
.navbar-dropdown__menu-header .navbar-dropdown__menu-title {
  font-size: var(--p-small);
  font-weight: 600;
  color: var(--text-200);
}
.navbar-dropdown__menu-section {
  display: flex;
  flex-direction: column;
  grid-column: 1 / -1;
}
.navbar-dropdown__menu-section .navbar-dropdown__menu-item {
  padding: var(--space-2xs) var(--space-sm);
  border-radius: 14px;
}
.navbar-dropdown__menu-section .navbar-dropdown__menu-icon {
  width: 28px;
  height: 28px;
  border-radius: 10px;
}
.navbar-dropdown__menu-section .navbar-dropdown__menu-icon svg {
  width: 16px;
  height: 16px;
}
.navbar-dropdown__menu-section-title {
  font-size: 10px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--text-600);
  padding: var(--space-2xs) var(--space-sm);
}
.navbar-dropdown__sublinks {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2xs) var(--space-xs);
}
.navbar-dropdown__sublink {
  font-size: 11px;
  font-weight: 500;
  color: var(--text-500);
  text-decoration: none;
  transition: all 0.15s ease;
  line-height: 1.5;
}
.navbar-dropdown__sublink:hover {
  color: var(--text);
}
@keyframes navbarDropdownItemIn {
  0% {
    opacity: 0;
    transform: translateY(12px) scale(0.98);
  }
  60% {
    opacity: 1;
    transform: translateY(-2px) scale(1.01);
  }
  100% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}
@media (prefers-reduced-motion: reduce) {
  .navbar-dropdown__popup, .navbar-dropdown__box, .navbar-dropdown__content, .navbar-dropdown__menu-item {
    transition: none;
    animation: none;
    transform: none;
  }
}
.tabbar__modal-item {
  line-height: 1.5;
}
.tabbar__modal-item-content {
  align-items: flex-start;
  gap: 2px;
}
.tabbar__modal-item-description {
  font-size: calc(var(--small) * 0.9);
  color: var(--text-400);
  opacity: 0.8;
  line-height: inherit;
  font-weight: 300;
  transition: all var(--transition) ease-out;
}
@media (max-width: 767px) {
  .navbar-dropdown {
    display: none;
  }
  .navbar__socials {
    display: none;
  }
}
.breadcrumb--navbar {
  display: none;
  margin: 0 !important;
  border-radius: 0 !important;
}
.breadcrumb--navbar .breadcrumb-links {
  column-gap: var(--space-xs);
  flex-direction: row;
  align-items: center;
}
.breadcrumb--navbar .breadcrumb-icon {
  width: 0.875rem;
  height: 0.875rem;
  margin-right: var(--space-xs);
}
.breadcrumb--navbar .breadcrumb-text {
  font-size: 13px;
}
.navbar__mobile-toggle {
  display: none;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  padding: 0;
  border: none;
  border-radius: var(--border05);
  background: transparent;
  color: var(--text-400);
  cursor: pointer;
  transition: all 0.15s ease;
}
.navbar__mobile-toggle:hover {
  background: var(--transp-1);
  color: var(--text);
}
.navbar__mobile-toggle svg {
  width: 22px;
  height: 22px;
}
@media (min-width: 768px) and (max-width: 1023px) {
  .navbar__mobile-toggle {
    display: flex;
  }
}
html[data-theme="light"] .navbar-dropdown__box::before {
  background: rgba(255, 255, 255, 0.85);
  box-shadow: 0 0 0 1px var(--transp-1), 0 8px 40px rgba(0, 0, 0, 0.1), 0 16px 64px rgba(0, 0, 0, 0.08);
}
html[data-theme="light"] .navbar__logo-light {
  display: block;
}
html[data-theme="light"] .navbar__logo-dark {
  display: none;
}
html[data-theme="dark"] .navbar__logo-light {
  display: none;
}
html[data-theme="dark"] .navbar__logo-dark {
  display: block;
}
html[data-nav-style="pill"] .flute_header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  background: transparent;
  z-index: 60;
  pointer-events: none;
  display: flex;
  justify-content: center;
}
html[data-nav-style="pill"] .navbar {
  pointer-events: auto;
  max-width: fit-content;
  margin: var(--space-sm) auto 0;
  padding: var(--space-xs) var(--space-sm);
  border-radius: 9999px;
  background: var(--blurred-background);
  backdrop-filter: blur(calc(var(--blur-amount, 10px) * 2)) saturate(180%);
  -webkit-backdrop-filter: blur(calc(var(--blur-amount, 10px) * 2)) saturate(180%);
  border: 1px solid var(--transp-1);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1), 0 1px 3px rgba(0, 0, 0, 0.08), inset 0 1px 0 rgba(255, 255, 255, 0.05);
  transition: background 0.3s cubic-bezier(0.32, 0.72, 0, 1), border-color 0.3s cubic-bezier(0.32, 0.72, 0, 1), box-shadow 0.3s cubic-bezier(0.32, 0.72, 0, 1), backdrop-filter 0.3s cubic-bezier(0.32, 0.72, 0, 1);
  margin-bottom: 20px;
}
html[data-nav-style="pill"] .navbar__content {
  gap: var(--space-xs);
  justify-content: center;
}
html[data-nav-style="pill"] .navbar__left {
  gap: var(--space-xs);
  width: auto;
}
html[data-nav-style="pill"] .navbar__logo {
  min-width: 32px;
  max-width: 100px;
}
html[data-nav-style="pill"] .navbar__logo img {
  max-height: 32px;
}
html[data-nav-style="pill"] .navbar__separator {
  display: block;
  height: 20px;
  margin: 0 var(--space-2xs);
}
html[data-nav-style="pill"] .navbar .navbar-dropdown {
  margin: 0;
}
html[data-nav-style="pill"] .navbar .navbar-dropdown__item {
  font-size: calc(var(--p-small) * 0.95);
}
html[data-nav-style="pill"] .navbar__actions {
  gap: var(--space-2xs);
}
html[data-nav-style="pill"] .navbar__profile, html[data-nav-style="pill"] .navbar__lang {
  width: 28px;
  height: 28px;
}
html[data-nav-style="pill"] #main {
  padding-top: calc(60px + var(--space-lg));
}
html[data-nav-style="pill-transparent"] .flute_header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  background: transparent;
  z-index: 60;
  pointer-events: none;
  display: flex;
  justify-content: center;
}
html[data-nav-style="pill-transparent"] .navbar {
  pointer-events: auto;
  max-width: fit-content;
  margin: 0 auto;
  padding: var(--space-sm) var(--space-lg);
  border-radius: 9999px;
  background: transparent !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  border: 1px solid transparent;
  box-shadow: none;
  transition: margin 0.5s cubic-bezier(0.32, 0.72, 0, 1), padding 0.5s cubic-bezier(0.32, 0.72, 0, 1), background 0.5s cubic-bezier(0.32, 0.72, 0, 1), backdrop-filter 0.5s cubic-bezier(0.32, 0.72, 0, 1), border-color 0.5s cubic-bezier(0.32, 0.72, 0, 1), box-shadow 0.5s cubic-bezier(0.32, 0.72, 0, 1);
  margin-bottom: 20px;
}
html[data-nav-style="pill-transparent"] .navbar__content {
  gap: var(--space-sm);
  justify-content: center;
  transition: gap 0.5s cubic-bezier(0.32, 0.72, 0, 1);
}
html[data-nav-style="pill-transparent"] .navbar__left {
  gap: var(--space-sm);
  width: auto;
  transition: gap 0.5s cubic-bezier(0.32, 0.72, 0, 1);
}
html[data-nav-style="pill-transparent"] .navbar__logo {
  min-width: 32px;
  max-width: 100px;
  transition: opacity 0.5s cubic-bezier(0.32, 0.72, 0, 1), transform 0.5s cubic-bezier(0.32, 0.72, 0, 1);
}
html[data-nav-style="pill-transparent"] .navbar__logo img {
  max-height: 32px;
}
html[data-nav-style="pill-transparent"] .navbar__separator {
  display: block;
  height: 20px;
  margin: 0 var(--space-2xs);
  opacity: 0;
  transform: scaleY(0);
  transition: opacity 0.4s cubic-bezier(0.32, 0.72, 0, 1), transform 0.4s cubic-bezier(0.32, 0.72, 0, 1);
}
html[data-nav-style="pill-transparent"] .navbar .navbar-dropdown {
  margin: 0;
}
html[data-nav-style="pill-transparent"] .navbar .navbar-dropdown__item {
  font-size: calc(var(--p-small) * 0.95);
  color: var(--text-200);
  background: transparent;
  transition: color 0.3s cubic-bezier(0.32, 0.72, 0, 1), background-color 0.3s cubic-bezier(0.32, 0.72, 0, 1), padding 0.5s cubic-bezier(0.32, 0.72, 0, 1);
}
html[data-nav-style="pill-transparent"] .navbar .navbar-dropdown__item:hover {
  color: var(--text);
}
html[data-nav-style="pill-transparent"] .navbar__actions {
  gap: var(--space-xs);
  transition: gap 0.5s cubic-bezier(0.32, 0.72, 0, 1);
}
html[data-nav-style="pill-transparent"] .navbar__theme-switcher, html[data-nav-style="pill-transparent"] .navbar__notifications, html[data-nav-style="pill-transparent"] .navbar__profile, html[data-nav-style="pill-transparent"] .navbar__lang, html[data-nav-style="pill-transparent"] .navbar__socials {
  opacity: 0.8;
  transition: opacity 0.4s cubic-bezier(0.32, 0.72, 0, 1);
}
html[data-nav-style="pill-transparent"] #main {
  padding-top: calc(60px + var(--space-lg));
}
html[data-nav-style="pill-transparent"][data-nav-scrolled="true"] .navbar {
  margin: var(--space-sm) auto 0;
  padding: var(--space-xs) 0;
  background: var(--blurred-background, rgba(20, 20, 23, 0.8)) !important;
  backdrop-filter: blur(calc(var(--blur-amount, 10px) * 2)) saturate(180%) !important;
  -webkit-backdrop-filter: blur(calc(var(--blur-amount, 10px) * 2)) saturate(180%) !important;
  border-color: var(--transp-1);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15), 0 2px 4px rgba(0, 0, 0, 0.1), inset 0 1px 0 rgba(255, 255, 255, 0.06);
}
html[data-nav-style="pill-transparent"][data-nav-scrolled="true"] .navbar__content {
  gap: var(--space-xs);
}
html[data-nav-style="pill-transparent"][data-nav-scrolled="true"] .navbar__left {
  gap: var(--space-xs);
}
html[data-nav-style="pill-transparent"][data-nav-scrolled="true"] .navbar__logo {
  opacity: 1;
  transform: translateY(0) scale(1);
}
html[data-nav-style="pill-transparent"][data-nav-scrolled="true"] .navbar__separator {
  opacity: 1;
  transform: scaleY(1);
}
html[data-nav-style="pill-transparent"][data-nav-scrolled="true"] .navbar__actions {
  gap: var(--space-2xs);
}
html[data-nav-style="pill-transparent"][data-nav-scrolled="true"] .navbar__theme-switcher, html[data-nav-style="pill-transparent"][data-nav-scrolled="true"] .navbar__notifications, html[data-nav-style="pill-transparent"][data-nav-scrolled="true"] .navbar__profile, html[data-nav-style="pill-transparent"][data-nav-scrolled="true"] .navbar__lang, html[data-nav-style="pill-transparent"][data-nav-scrolled="true"] .navbar__socials {
  opacity: 1;
}
html[data-nav-style="pill-transparent"][data-nav-scrolled="true"] .navbar .navbar-dropdown__item {
  color: var(--text-400);
}
html[data-nav-style="pill-transparent"][data-nav-scrolled="true"] .navbar .navbar-dropdown__item:hover, html[data-nav-style="pill-transparent"][data-nav-scrolled="true"] .navbar .navbar-dropdown__item.active {
  color: var(--text);
  background-color: var(--transp-05);
}
html[data-nav-style="pill-full"] .flute_header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  background: transparent;
  z-index: 60;
  pointer-events: none;
  display: flex;
  justify-content: center;
  padding: var(--space-sm) var(--space-md) 0;
}
html[data-nav-style="pill-full"] .navbar {
  pointer-events: auto;
  width: 100%;
  max-width: var(--max-content-width, 1200px);
  margin: 0 auto;
  padding: var(--space-xs) var(--space-md);
  border-radius: var(--border1);
  background: var(--blurred-background);
  backdrop-filter: blur(calc(var(--blur-amount, 10px) * 2)) saturate(180%);
  -webkit-backdrop-filter: blur(calc(var(--blur-amount, 10px) * 2)) saturate(180%);
  border: 1px solid var(--transp-1);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1), 0 1px 3px rgba(0, 0, 0, 0.08), inset 0 1px 0 rgba(255, 255, 255, 0.05);
  transition: background 0.3s cubic-bezier(0.32, 0.72, 0, 1), border-color 0.3s cubic-bezier(0.32, 0.72, 0, 1), box-shadow 0.3s cubic-bezier(0.32, 0.72, 0, 1), backdrop-filter 0.3s cubic-bezier(0.32, 0.72, 0, 1);
}
html[data-nav-style="pill-full"] .navbar__content {
  gap: var(--space-sm);
  justify-content: space-between;
}
html[data-nav-style="pill-full"] .navbar__left {
  gap: var(--space-sm);
  width: auto;
}
html[data-nav-style="pill-full"] .navbar__logo {
  min-width: 32px;
  max-width: 120px;
}
html[data-nav-style="pill-full"] .navbar__logo img {
  max-height: 36px;
}
html[data-nav-style="pill-full"] .navbar__separator {
  display: block;
  height: 24px;
  margin: 0 var(--space-xs);
}
html[data-nav-style="pill-full"] .navbar .navbar-dropdown {
  margin: 0;
}
html[data-nav-style="pill-full"] .navbar .navbar-dropdown__item {
  font-size: var(--p-small);
}
html[data-nav-style="pill-full"] .navbar__actions {
  gap: var(--space-xs);
}
html[data-nav-style="pill-full"] .navbar__profile, html[data-nav-style="pill-full"] .navbar__lang {
  width: 32px;
  height: 32px;
}
html[data-nav-style="pill-full"] #main {
  padding-top: calc(70px + var(--space-lg));
}
html[data-nav-fixed="false"] .flute_header {
  position: relative;
}
html[data-nav-fixed="false"][data-nav-style="pill"] .flute_header, html[data-nav-fixed="false"][data-nav-style="pill-transparent"] .flute_header, html[data-nav-fixed="false"][data-nav-style="pill-full"] .flute_header, html[data-nav-fixed="false"][data-nav-style="centered"] .flute_header {
  position: relative;
}
html[data-nav-fixed="false"][data-nav-style="pill"] #main, html[data-nav-fixed="false"][data-nav-style="pill-transparent"] #main, html[data-nav-fixed="false"][data-nav-style="pill-full"] #main, html[data-nav-fixed="false"][data-nav-style="centered"] #main {
  padding-top: 0;
}
html[data-nav-blur="false"] .navbar {
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  background: var(--background);
}
html[data-nav-blur="false"][data-nav-style="pill"] .navbar, html[data-nav-blur="false"][data-nav-style="pill-full"] .navbar {
  background: var(--background);
}
html[data-nav-blur="false"][data-nav-style="pill-transparent"][data-nav-scrolled="true"] .navbar {
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  background: var(--background) !important;
}
html[data-nav-blur="true"] .navbar {
  background: var(--blurred-background);
  backdrop-filter: blur(var(--blur-amount, 10px)) saturate(180%);
  -webkit-backdrop-filter: blur(var(--blur-amount, 10px)) saturate(180%);
}
html[data-nav-socials="false"] .navbar__socials {
  display: none !important;
}
html[data-nav-style="sidebar"] .navbar-dropdown {
  display: none !important;
}
@media (min-width: 768px) and (max-width: 1023px) {
  html[data-nav-style="pill"] .flute_header, html[data-nav-style="pill-transparent"] .flute_header, html[data-nav-style="pill-full"] .flute_header {
    position: sticky;
    background: transparent;
    pointer-events: auto;
    padding: 0;
  }
  html[data-nav-style="pill"] .navbar, html[data-nav-style="pill-transparent"] .navbar, html[data-nav-style="pill-full"] .navbar {
    max-width: none;
    width: 100%;
    margin: 0;
    border-radius: 0;
    padding: var(--space-md) 0;
    background: var(--blurred-background);
    backdrop-filter: blur(var(--blur-amount, 10px)) saturate(180%);
    -webkit-backdrop-filter: blur(var(--blur-amount, 10px)) saturate(180%);
    border-color: var(--transp-1);
  }
  html[data-nav-style="pill"] .navbar__logo, html[data-nav-style="pill-transparent"] .navbar__logo, html[data-nav-style="pill-full"] .navbar__logo {
    opacity: 1;
    transform: translateY(0);
  }
  html[data-nav-style="pill"] .navbar__separator, html[data-nav-style="pill-transparent"] .navbar__separator, html[data-nav-style="pill-full"] .navbar__separator {
    opacity: 1;
    transform: scaleY(1);
  }
  html[data-nav-style="pill"] #main, html[data-nav-style="pill-transparent"] #main, html[data-nav-style="pill-full"] #main {
    padding-top: 0;
  }
}
@media (max-width: 767px) {
  html[data-nav-style="pill"] .navbar, html[data-nav-style="pill-transparent"] .navbar, html[data-nav-style="pill-full"] .navbar {
    max-width: none;
    width: 100%;
    margin: 0 !important;
    border-radius: 0;
    padding: var(--space-md) 0;
  }
  html[data-nav-style="pill"] .navbar__left, html[data-nav-style="pill-transparent"] .navbar__left, html[data-nav-style="pill-full"] .navbar__left {
    width: 100%;
  }
  html[data-nav-style="pill"] .navbar__logo, html[data-nav-style="pill-transparent"] .navbar__logo, html[data-nav-style="pill-full"] .navbar__logo {
    opacity: 1;
    transform: translateY(0);
  }
  html[data-nav-style="centered"] .navbar__left {
    display: flex;
  }
  html[data-nav-style="centered"] .navbar__content-logo {
    order: 0;
  }
  html[data-nav-style="centered"] .navbar .navbar-dropdown {
    order: 0;
    flex: none;
  }
  html[data-nav-style="centered"] .navbar__actions {
    order: 0;
    flex: none;
  }
  html[data-nav-style="centered"] .navbar__separator {
    display: block !important;
  }
}
.sidebar-nav {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  width: var(--sidebar-width, 260px);
  background-color: var(--blurred-background);
  border-right: 1px solid var(--sidebar-border);
  z-index: 50;
  display: none;
  flex-direction: column;
  transition: width 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  overflow: hidden;
  --sidebar-bg: var(--blurred-background);
  --sidebar-border: rgba(0, 0, 0, 0.08);
  --sidebar-text: #1a1a1a;
  --sidebar-text-muted: #6b6b6b;
  --sidebar-text-light: #9a9a9a;
  --sidebar-hover: rgba(0, 0, 0, 0.04);
  --sidebar-active: color-mix(in srgb, var(--accent) 12%, transparent);
  --sidebar-active-text: var(--accent);
  --sidebar-line: rgba(0, 0, 0, 0.06);
}
html[data-theme="dark"] .sidebar-nav {
  --sidebar-bg: var(--blurred-background);
  --sidebar-border: var(--transp-1);
  --sidebar-text: var(--text);
  --sidebar-text-muted: var(--text-400);
  --sidebar-text-light: var(--text-600);
  --sidebar-hover: var(--transp-1);
  --sidebar-active: color-mix(in srgb, var(--accent) 15%, transparent);
  --sidebar-active-text: var(--accent);
  --sidebar-line: var(--transp-1);
}
.sidebar-nav__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--space-md) 1rem;
  min-height: calc(var(--space-md) * 2 + 40px);
  border-bottom: 1px solid var(--sidebar-border);
  flex-shrink: 0;
  transition: padding 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
.sidebar-nav__logo {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  text-decoration: none;
  flex: 1;
  min-width: 0;
}
.sidebar-nav__logo img {
  height: 28px;
  width: auto;
  flex-shrink: 0;
}
.sidebar-nav__logo p {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--sidebar-text);
  margin: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  text-transform: uppercase;
  letter-spacing: 0.02em;
}
.sidebar-nav__logo-img {
  height: 28px;
  width: auto;
  flex-shrink: 0;
}
.sidebar-nav__logo-img--dark {
  display: flex;
}
.sidebar-nav__logo-img--light {
  display: none;
}
.sidebar-nav__logo-text {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--sidebar-text);
  margin: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
.sidebar-nav__contained-collapse {
  display: none;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  margin-left: auto;
  padding: 0;
  border: none;
  border-radius: 0.375rem;
  background: transparent;
  color: var(--sidebar-text-muted);
  cursor: pointer;
  transition: all 0.15s ease;
  flex-shrink: 0;
}
.sidebar-nav__contained-collapse:hover {
  background: var(--sidebar-hover);
  color: var(--sidebar-text);
}
.sidebar-nav__contained-collapse svg {
  width: 18px;
  height: 18px;
}
.sidebar-nav__mobile-close {
  display: none;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  margin-left: auto;
  padding: 0;
  border: none;
  border-radius: 0.375rem;
  background: transparent;
  color: var(--sidebar-text-muted);
  cursor: pointer;
  transition: all 0.15s ease;
  flex-shrink: 0;
}
.sidebar-nav__mobile-close:hover {
  background: var(--sidebar-hover);
  color: var(--sidebar-text);
}
.sidebar-nav__mobile-close svg {
  font-size: 1.125rem;
}
.sidebar-nav__nav {
  flex: 1;
  overflow-y: auto;
  overflow-x: hidden;
  padding: 0.5rem 0 0;
  display: flex;
  flex-direction: column;
}
.sidebar-nav__nav::-webkit-scrollbar {
  width: 4px;
}
.sidebar-nav__nav::-webkit-scrollbar-track {
  background: transparent;
}
.sidebar-nav__nav::-webkit-scrollbar-thumb {
  background: var(--sidebar-border);
  border-radius: 4px;
}
.sidebar-nav__nav::-webkit-scrollbar-thumb:hover {
  background: var(--sidebar-text-light);
}
.sidebar-nav__section {
  margin-bottom: 0.25rem;
}
.sidebar-nav__section:last-child {
  margin-bottom: 0;
}
.sidebar-nav__section-title {
  font-size: 0.6875rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  color: var(--sidebar-text-light);
  padding: 0.75rem 1rem 0.375rem;
  transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1), height 0.2s cubic-bezier(0.4, 0, 0.2, 1), padding 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
.sidebar-nav__footer {
  padding: var(--space-sm);
  border-top: 1px solid var(--sidebar-border);
  display: flex;
  flex-direction: column;
  gap: var(--space-2xs);
  flex-shrink: 0;
}
.sidebar-nav__socials {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-xs);
  padding: var(--space-xs) 0;
  flex-wrap: wrap;
}
.sidebar-nav__socials a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 0.375rem;
  color: var(--sidebar-text-muted);
  transition: all 0.15s ease;
}
.sidebar-nav__socials a:hover {
  background: var(--sidebar-hover);
  color: var(--sidebar-text);
}
.sidebar-nav__socials a svg {
  width: 18px;
  height: 18px;
}
.sidebar-nav__toggle {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  height: 32px;
  padding: 0 0.5rem;
  border-radius: 0.375rem;
  color: var(--sidebar-text-muted);
  cursor: pointer;
  transition: all 0.15s ease;
  flex-shrink: 0;
  background: none;
  border: none;
  width: 100%;
}
.sidebar-nav__toggle:hover {
  background-color: var(--sidebar-hover);
  color: var(--sidebar-text);
}
.sidebar-nav__toggle svg {
  font-size: 1.125rem;
  flex-shrink: 0;
  transition: transform 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
.sidebar-nav__toggle-text {
  font-size: 0.8125rem;
  font-weight: 500;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
.sidebar-nav__guest {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  padding: 0.5rem 0.75rem;
  margin: 0 0.5rem var(--space-xs);
  border-radius: 0.375rem;
  background: transparent;
  border: 1px solid var(--sidebar-line);
  text-decoration: none;
  cursor: pointer;
  transition: background-color 0.15s ease, border-color 0.15s ease;
}
.sidebar-nav__guest:hover {
  background: var(--sidebar-hover);
  border-color: var(--sidebar-border);
}
.sidebar-nav__guest:hover .sidebar-nav__guest-link {
  text-decoration: underline;
}
.sidebar-nav__guest-icon {
  display: flex;
  font-size: 1.125rem;
  flex-shrink: 0;
  color: var(--sidebar-text-muted);
}
.sidebar-nav__guest-content {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.sidebar-nav__guest-text {
  font-size: 0.6875rem;
  color: var(--sidebar-text-muted);
  font-weight: 500;
  line-height: 1.2;
}
.sidebar-nav__guest-link {
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--accent);
  line-height: 1.3;
}
.sidebar-nav__items {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: 0 0.5rem;
}
.sidebar-nav__item {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  padding: 0 0.75rem;
  border-radius: 0.375rem;
  color: var(--sidebar-text-muted);
  font-size: 0.8125rem;
  font-weight: 500;
  transition: color 0.15s ease, background-color 0.15s ease;
  text-decoration: none;
  height: 36px;
  min-height: 36px;
  cursor: pointer;
  position: relative;
  border: none;
  background: transparent;
  text-align: left;
  line-height: 1.4;
  width: 100%;
}
.sidebar-nav__item:hover {
  color: var(--sidebar-text);
  background-color: var(--sidebar-hover);
}
.sidebar-nav__item:hover .sidebar-nav__item-icon {
  opacity: 1;
}
.sidebar-nav__item.active {
  color: var(--sidebar-active-text);
  background-color: var(--sidebar-active);
  font-weight: 600;
}
.sidebar-nav__item.active::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 3px;
  height: 16px;
  border-radius: 0 3px 3px 0;
  background-color: var(--accent);
}
.sidebar-nav__item.active .sidebar-nav__item-icon {
  opacity: 1;
  color: var(--sidebar-active-text);
}
.sidebar-nav__item-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.25rem;
  height: 1.25rem;
  flex-shrink: 0;
  opacity: 0.65;
  transition: opacity 0.15s ease, color 0.15s ease;
}
.sidebar-nav__item-icon svg {
  width: 1.25rem;
  height: 1.25rem;
  display: block;
}
.sidebar-nav__item-text {
  flex: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
.sidebar-nav__item-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 20px;
  height: 20px;
  padding: 0 6px;
  font-size: 0.6875rem;
  font-weight: 600;
  line-height: 1;
  border-radius: 6px;
  flex-shrink: 0;
  margin-left: auto;
  font-variant-numeric: tabular-nums;
  background-color: var(--sidebar-hover);
  color: var(--sidebar-text-muted);
  border: 1px solid var(--sidebar-border);
  transition: all 0.15s ease;
}
.sidebar-nav__item:hover .sidebar-nav__item-badge, .sidebar-nav__item.active .sidebar-nav__item-badge {
  background-color: color-mix(in srgb, var(--accent) 15%, transparent);
  color: var(--sidebar-active-text);
  border-color: color-mix(in srgb, var(--accent) 25%, transparent);
}
.sidebar-nav__item-badge--primary {
  background-color: color-mix(in srgb, var(--accent) 15%, transparent);
  color: var(--accent);
  border-color: color-mix(in srgb, var(--accent) 25%, transparent);
}
.sidebar-nav__item-badge--success {
  background-color: color-mix(in srgb, #22c55e 15%, transparent);
  color: #22c55e;
  border-color: color-mix(in srgb, #22c55e 25%, transparent);
}
.sidebar-nav__item-badge--warning {
  background-color: color-mix(in srgb, #f59e0b 15%, transparent);
  color: #f59e0b;
  border-color: color-mix(in srgb, #f59e0b 25%, transparent);
}
.sidebar-nav__item-badge--danger {
  background-color: color-mix(in srgb, #ef4444 15%, transparent);
  color: #ef4444;
  border-color: color-mix(in srgb, #ef4444 25%, transparent);
}
.sidebar-nav__item-badge--info {
  background-color: color-mix(in srgb, #3b82f6 15%, transparent);
  color: #3b82f6;
  border-color: color-mix(in srgb, #3b82f6 25%, transparent);
}
.sidebar-nav__item-badge--new {
  background-color: #ef4444;
  color: #fff;
  border-color: #ef4444;
  font-size: 0.625rem;
  text-transform: uppercase;
  letter-spacing: 0.02em;
}
.sidebar-nav__item-badge--dot {
  width: 8px;
  height: 8px;
  min-width: 8px;
  padding: 0;
  border-radius: 50%;
  background-color: var(--accent);
  border: none;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--accent) 20%, transparent);
}
.sidebar-nav__item-badge--pulse {
  animation: badge-pulse 2s ease-in-out infinite;
}
.sidebar-nav__item-chevron {
  font-size: 0.625rem;
  color: var(--sidebar-text-light);
  flex-shrink: 0;
  margin-left: auto;
  transition: transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}
.sidebar-nav__item-chevron svg {
  width: 0.625rem;
  height: 0.625rem;
}
.sidebar-nav__dropdown {
  position: relative;
  display: flex;
  flex-direction: column;
}
.sidebar-nav__dropdown.is-open > .sidebar-nav__submenu {
  grid-template-rows: 1fr;
  opacity: 1;
  border-left-color: var(--sidebar-line);
}
.sidebar-nav__dropdown.is-open > .sidebar-nav__item .sidebar-nav__item-chevron {
  transform: rotate(-180deg);
}
.sidebar-nav__submenu {
  display: grid;
  grid-template-rows: 0fr;
  opacity: 0;
  transition: grid-template-rows 0.25s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.2s ease, border-color 0.2s ease;
  margin-left: 1rem;
  padding-left: 0.75rem;
  border-left: 1px solid transparent;
}
.sidebar-nav__submenu > * {
  overflow: hidden;
  min-height: 0;
}
.sidebar-nav__submenu.is-open {
  grid-template-rows: 1fr;
  opacity: 1;
  border-left-color: var(--sidebar-line);
}
.sidebar-nav__submenu-inner {
  display: flex;
  flex-direction: column;
  gap: 1px;
}
.sidebar-nav__submenu-inner > :first-child {
  margin-top: 0.25rem;
}
.sidebar-nav__submenu-inner > :last-child {
  margin-bottom: 0.25rem;
}
.sidebar-nav__subitem {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  padding: 0 0.625rem;
  border-radius: 0.375rem;
  color: var(--sidebar-text-muted);
  text-decoration: none;
  font-size: 0.8125rem;
  font-weight: 500;
  line-height: 1.4;
  height: 32px;
  min-height: 32px;
  transition: color 0.15s ease, background-color 0.15s ease;
}
.sidebar-nav__subitem:hover {
  color: var(--sidebar-text);
  background-color: var(--sidebar-hover);
}
.sidebar-nav__subitem.active {
  color: var(--sidebar-active-text);
  background-color: var(--sidebar-active);
}
.sidebar-nav__subitem-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1rem;
  height: 1rem;
  flex-shrink: 0;
}
.sidebar-nav__subitem-icon svg {
  width: 1rem;
  height: 1rem;
  display: block;
}
.sidebar-nav__subgroup:not(:first-child) {
  padding-top: var(--space-2xs);
  margin-top: var(--space-2xs);
  border-top: 1px solid var(--sidebar-line);
}
.sidebar-nav__subgroup.is-open > .sidebar-nav__subgroup-toggle .sidebar-nav__subgroup-chevron {
  transform: rotate(-180deg);
}
.sidebar-nav__subgroup.is-open > .sidebar-nav__subgroup-items {
  grid-template-rows: 1fr;
  opacity: 1;
}
.sidebar-nav__subgroup-toggle {
  display: flex;
  align-items: center;
  width: 100%;
  padding: 4px var(--space-sm);
  border: none;
  background: transparent;
  cursor: pointer;
  border-radius: 0.25rem;
  transition: background-color 0.12s ease;
}
.sidebar-nav__subgroup-toggle:hover {
  background-color: var(--sidebar-hover);
}
.sidebar-nav__subgroup-toggle:hover .sidebar-nav__subgroup-title {
  color: var(--sidebar-text-muted);
}
.sidebar-nav__subgroup-title {
  font-size: 10px;
  font-weight: 600;
  color: var(--sidebar-text-light);
  text-transform: uppercase;
  letter-spacing: 0.04em;
  transition: color 0.12s ease;
}
.sidebar-nav__subgroup-chevron {
  font-size: 0.5rem;
  color: var(--sidebar-text-light);
  margin-left: auto;
  transition: transform 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
.sidebar-nav__subgroup-chevron svg {
  width: 0.5rem;
  height: 0.5rem;
  display: block;
}
.sidebar-nav__subgroup-items {
  display: grid;
  grid-template-rows: 0fr;
  opacity: 0;
  transition: grid-template-rows 0.2s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.15s ease;
}
.sidebar-nav__subgroup-items > * {
  overflow: hidden;
  min-height: 0;
}
.sidebar-nav__subgroup-items-inner {
  display: flex;
  flex-direction: column;
  gap: 1px;
}
@keyframes badge-pulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.6;
  }
}
html[data-nav-style="sidebar"][data-sidebar-mode="minimal"] .sidebar-nav__items {
  gap: 0;
  padding: 0 0.375rem;
}
html[data-nav-style="sidebar"][data-sidebar-mode="minimal"] .sidebar-nav__item {
  padding: 0 10px;
  border-radius: 0;
  height: 34px;
  min-height: 34px;
}
html[data-nav-style="sidebar"][data-sidebar-mode="minimal"] .sidebar-nav__item::before {
  display: none !important;
}
html[data-nav-style="sidebar"][data-sidebar-mode="minimal"] .sidebar-nav__item:hover {
  background: transparent !important;
  color: var(--sidebar-text);
}
html[data-nav-style="sidebar"][data-sidebar-mode="minimal"] .sidebar-nav__item.active {
  background: transparent !important;
  color: var(--accent);
}
html[data-nav-style="sidebar"][data-sidebar-mode="minimal"] .sidebar-nav__item.active .sidebar-nav__item-icon {
  color: var(--accent);
}
html[data-nav-style="sidebar"][data-sidebar-mode="minimal"] .sidebar-nav__item.active .sidebar-nav__item-text {
  color: var(--accent);
}
html[data-nav-style="sidebar"][data-sidebar-mode="minimal"] .sidebar-nav__item-icon {
  width: 18px;
  height: 18px;
  opacity: 0.6;
}
html[data-nav-style="sidebar"][data-sidebar-mode="minimal"] .sidebar-nav__item-icon svg {
  width: 18px;
  height: 18px;
}
html[data-nav-style="sidebar"][data-sidebar-mode="minimal"] .sidebar-nav__item.active .sidebar-nav__item-icon {
  opacity: 1;
}
html[data-nav-style="sidebar"][data-sidebar-mode="minimal"] .sidebar-nav__submenu {
  gap: 0;
  margin-left: 28px;
  padding: 0;
}
html[data-nav-style="sidebar"][data-sidebar-mode="minimal"] .sidebar-nav__dropdown.is-open > .sidebar-nav__submenu {
  border-left-color: var(--sidebar-line);
}
html[data-nav-style="sidebar"][data-sidebar-mode="minimal"] .sidebar-nav__subitem {
  padding: 0 10px;
  border-radius: 0;
  height: auto;
  min-height: auto;
  padding-top: 5px;
  padding-bottom: 5px;
  background: transparent !important;
}
html[data-nav-style="sidebar"][data-sidebar-mode="minimal"] .sidebar-nav__subitem:hover {
  background: transparent !important;
  color: var(--sidebar-text);
}
html[data-nav-style="sidebar"][data-sidebar-mode="minimal"] .sidebar-nav__subitem.active {
  background: transparent !important;
  color: var(--accent);
}
html[data-nav-style="sidebar"][data-sidebar-mode="minimal"] .sidebar-nav__dropdown.is-open > .sidebar-nav__item {
  background: transparent !important;
}
html[data-nav-style="sidebar"][data-sidebar-mode="minimal"] .sidebar-nav__subgroup-toggle {
  padding: 0 10px;
  border-radius: 0;
  height: auto;
  padding-top: 5px;
  padding-bottom: 5px;
  background: transparent !important;
}
html[data-nav-style="sidebar"][data-sidebar-mode="minimal"] .sidebar-nav__subgroup-toggle:hover {
  background: transparent !important;
}
html[data-nav-style="sidebar"][data-sidebar-mode="minimal"] .sidebar-nav__subgroup-toggle:hover .sidebar-nav__subgroup-title {
  color: var(--sidebar-text);
}
html[data-nav-style="sidebar"][data-sidebar-mode="minimal"] .sidebar-nav__subgroup-title {
  font-size: 0.8125rem;
  font-weight: 500;
  text-transform: none;
  letter-spacing: normal;
  color: var(--sidebar-text-muted);
}
html[data-nav-style="sidebar"][data-sidebar-mode="minimal"] .sidebar-nav__subgroup-chevron {
  color: var(--sidebar-text-light);
}
html[data-nav-style="sidebar"][data-sidebar-mode="minimal"] .sidebar-nav__subgroup:not(:first-child) {
  border-top: none;
  padding-top: 0;
  margin-top: 0;
}
html[data-nav-style="sidebar"][data-sidebar-mode="minimal"] .sidebar-nav__subgroup-items {
  margin-left: 10px;
  padding-left: 10px;
  border-left: 1.5px solid var(--sidebar-line);
}
.sidebar-floating-dropdown {
  position: fixed;
  min-width: 220px;
  max-width: 280px;
  max-height: 80vh;
  overflow-y: auto;
  overflow-x: hidden;
  background: var(--blurred-background);
  backdrop-filter: blur(20px) saturate(180%);
  -webkit-backdrop-filter: blur(20px) saturate(180%);
  border: 1px solid var(--transp-1);
  border-radius: var(--border1);
  padding: 0;
  opacity: 0;
  visibility: hidden;
  transform: translateX(-6px) scale(0.97);
  transition: opacity 0.18s ease, visibility 0.18s ease, transform 0.18s ease;
  z-index: 9999;
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.12), 0 12px 48px rgba(0, 0, 0, 0.08);
}
.sidebar-floating-dropdown::-webkit-scrollbar {
  width: 4px;
}
.sidebar-floating-dropdown::-webkit-scrollbar-track {
  background: transparent;
}
.sidebar-floating-dropdown::-webkit-scrollbar-thumb {
  background: var(--transp-1);
  border-radius: 4px;
}
.sidebar-floating-dropdown.is-visible {
  opacity: 1;
  visibility: visible;
  transform: translateX(0) scale(1);
}
.sidebar-floating-dropdown.is-visible .sidebar-floating-dropdown__item {
  opacity: 1;
  transform: translateX(0);
}
.sidebar-floating-dropdown::before {
  content: "";
  position: absolute;
  width: 8px;
  height: 8px;
  background: var(--blurred-background);
  border: 1px solid var(--transp-1);
  transform: rotate(45deg);
  z-index: -1;
}
.sidebar-floating-dropdown[data-placement^="right"]::before {
  left: -4px;
  top: 18px;
  border-right: none;
  border-top: none;
}
.sidebar-floating-dropdown[data-placement^="left"]::before {
  right: -4px;
  top: 18px;
  border-left: none;
  border-bottom: none;
}
.sidebar-floating-dropdown__header {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 14px;
  border-bottom: 1px solid var(--transp-05);
}
.sidebar-floating-dropdown__header-icon {
  display: flex;
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  color: var(--accent);
  opacity: 0.8;
}
.sidebar-floating-dropdown__header-icon svg {
  width: 18px;
  height: 18px;
}
.sidebar-floating-dropdown__header-text {
  font-size: 12px;
  font-weight: 600;
  color: var(--text-300);
  letter-spacing: 0.01em;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.sidebar-floating-dropdown__content {
  padding: var(--space-2xs);
}
.sidebar-floating-dropdown__items {
  display: flex;
  flex-direction: column;
  gap: 1px;
}
.sidebar-floating-dropdown__item {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 7px 10px;
  border-radius: var(--border05);
  color: var(--text-400);
  text-decoration: none;
  font-size: 13px;
  font-weight: 500;
  transition: background 0.12s ease, color 0.12s ease, opacity 0.2s ease, transform 0.2s ease;
  line-height: 1;
  opacity: 0;
  transform: translateX(-4px);
}
.sidebar-floating-dropdown__item > span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.sidebar-floating-dropdown__item:hover {
  background: var(--transp-05);
  color: var(--text);
}
.sidebar-floating-dropdown__item:hover .sidebar-floating-dropdown__item-icon {
  color: var(--text-300);
}
.sidebar-floating-dropdown__item.active {
  background: color-mix(in srgb, var(--accent) 10%, transparent);
  color: var(--accent);
}
.sidebar-floating-dropdown__item.active .sidebar-floating-dropdown__item-icon {
  color: var(--accent);
}
.sidebar-floating-dropdown__item-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  color: var(--text-500);
  transition: color 0.12s ease;
}
.sidebar-floating-dropdown__item-icon svg {
  width: 16px;
  height: 16px;
  display: block;
}
.sidebar-floating-dropdown__group:not(:first-child) {
  margin-top: 2px;
  padding-top: 2px;
  border-top: 1px solid var(--transp-05);
}
.sidebar-floating-dropdown__group-title {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 10px;
  font-weight: 600;
  color: var(--text-600);
  padding: 6px 10px 4px;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.sidebar-floating-dropdown__group-items {
  display: flex;
  flex-direction: column;
  gap: 1px;
  margin-left: 10px;
  padding-left: 8px;
  border-left: 1.5px solid var(--transp-1);
}
.sidebar-floating-dropdown__group-items .sidebar-floating-dropdown__item {
  font-size: 12.5px;
  padding: 6px 8px;
}
@media (min-width: 769px) {
  .sidebar-nav.is-collapsed {
    width: var(--sidebar-collapsed-width, 78px);
  }
  .sidebar-nav.is-collapsed .sidebar-nav__header {
    padding: var(--space-md) 0.5rem;
    justify-content: center;
  }
  .sidebar-nav.is-collapsed .sidebar-nav__logo {
    justify-content: center;
    flex: none;
  }
  .sidebar-nav.is-collapsed .sidebar-nav__logo-text, .sidebar-nav.is-collapsed .sidebar-nav__logo p {
    display: none;
  }
  .sidebar-nav.is-collapsed .sidebar-nav__logo-img {
    height: 32px;
  }
  .sidebar-nav.is-collapsed .sidebar-nav__toggle {
    justify-content: center;
    width: 40px;
    padding: 0;
    margin: 0 auto;
  }
  .sidebar-nav.is-collapsed .sidebar-nav__toggle-text {
    display: none;
  }
  .sidebar-nav.is-collapsed .sidebar-nav__section-title {
    opacity: 0;
    height: 0;
    padding: 0;
    overflow: hidden;
  }
  .sidebar-nav.is-collapsed .sidebar-nav__items {
    padding: 0 0.875rem;
    gap: 0.25rem;
    align-items: center;
  }
  .sidebar-nav.is-collapsed .sidebar-nav__dropdown {
    width: 100%;
    align-items: center;
  }
  .sidebar-nav.is-collapsed .sidebar-nav__item {
    justify-content: center;
    padding: 0;
    width: 40px;
    height: 40px;
    min-height: 40px;
    border-radius: 0.5rem;
  }
  .sidebar-nav.is-collapsed .sidebar-nav__item::before {
    display: none !important;
  }
  .sidebar-nav.is-collapsed .sidebar-nav__item .sidebar-nav__item-icon {
    margin: 0;
    font-size: 1.25rem;
  }
  .sidebar-nav.is-collapsed .sidebar-nav__item-text, .sidebar-nav.is-collapsed .sidebar-nav__item-chevron, .sidebar-nav.is-collapsed .sidebar-nav__item-badge {
    display: none;
  }
  .sidebar-nav.is-collapsed .sidebar-nav__submenu {
    display: none !important;
  }
  .sidebar-nav.is-collapsed .sidebar-nav__footer {
    align-items: center;
  }
  .sidebar-nav.is-collapsed .sidebar-nav__socials {
    flex-direction: column;
    gap: var(--space-2xs);
  }
  .sidebar-nav.is-collapsed .sidebar-nav__socials a {
    width: 40px;
    height: 40px;
  }
  .sidebar-nav.is-collapsed .sidebar-nav__guest {
    justify-content: center;
    padding: 0;
    margin: 0 auto var(--space-2xs);
    width: 40px;
    height: 40px;
    border-radius: 0.5rem;
    background: color-mix(in srgb, var(--accent) 8%, transparent);
    border: 1px solid color-mix(in srgb, var(--accent) 25%, transparent);
  }
  .sidebar-nav.is-collapsed .sidebar-nav__guest:hover {
    background: color-mix(in srgb, var(--accent) 15%, transparent);
    border-color: color-mix(in srgb, var(--accent) 40%, transparent);
  }
  .sidebar-nav.is-collapsed .sidebar-nav__guest-content {
    display: none;
  }
  .sidebar-nav.is-collapsed .sidebar-nav__guest-icon {
    font-size: 1.25rem;
    color: var(--accent);
  }
}
body.sidebar-collapsed .sidebar-nav__dropdown.is-open > .sidebar-nav__submenu {
  display: none !important;
}
html[data-nav-style="sidebar"][data-sidebar-style="mini"] {
  --sidebar-width: var(--sidebar-mini-width, 78px);
}
html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav {
  width: var(--sidebar-mini-width, 78px);
}
html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav__header {
  justify-content: center;
  padding: var(--space-md) var(--space-xs);
}
html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav__logo {
  justify-content: center;
}
html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav__logo-text {
  display: none;
}
html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav__logo-img {
  height: 32px;
}
html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav__nav {
  padding: var(--space-xs);
}
html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav__section {
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
}
html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav__section-title {
  display: none;
}
html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav__items {
  gap: 4px;
  padding: 0;
}
html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav__item {
  flex-direction: column;
  gap: 5px;
  padding: 10px 6px 8px;
  text-align: center;
  border-radius: var(--border05);
  position: relative;
  min-height: 61px;
  justify-content: center;
}
html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav__item-icon {
  width: 22px;
  height: 22px;
  display: flex;
  align-items: center;
  justify-content: center;
}
html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav__item-icon svg {
  width: 22px;
  height: 22px;
}
html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav__item-text {
  font-size: 10px;
  font-weight: 600;
  opacity: 0.6;
  line-height: 1.2;
  letter-spacing: -0.02em;
  max-width: 100%;
  flex: 0 0 auto;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  word-break: break-word;
  white-space: normal;
}
html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav__item.active .sidebar-nav__item-text {
  opacity: 1;
  color: var(--accent);
}
html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav__item-badge, html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav__item-chevron {
  display: none;
}
html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav__toggle {
  display: none;
}
html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav__footer {
  padding: var(--space-xs);
}
html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav__socials {
  flex-direction: column;
  gap: 4px;
}
html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav__socials a {
  width: 100%;
  height: 40px;
  border-radius: var(--border05);
}
html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav__submenu {
  display: none !important;
}
html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav__guest {
  display: none;
}
html[data-nav-style="sidebar"][data-sidebar-style="mini"][data-sidebar-position="center"] .sidebar-nav__nav {
  justify-content: center;
}
.sidebar-hover-zone {
  display: none;
  position: fixed;
  left: 0;
  top: 0;
  bottom: 0;
  width: 20px;
  z-index: 52;
  pointer-events: auto;
}
.content-frame {
  display: none;
}
.frame-blur {
  display: none;
}
.sidebar-contained-toggle {
  display: none;
  position: fixed;
  left: calc(var(--sidebar-width, 260px) + 14px);
  top: 24px;
  z-index: 56;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  border-radius: var(--border05, 0.5rem);
  background: color-mix(in srgb, var(--text) 6%, transparent);
  border: 1px solid color-mix(in srgb, var(--text) 5%, transparent);
  color: var(--text-400);
  cursor: pointer;
  transition: background 0.15s ease, color 0.15s ease, left 0.3s cubic-bezier(0.32, 0.72, 0, 1);
}
.sidebar-contained-toggle:hover {
  background: color-mix(in srgb, var(--text) 12%, transparent);
  color: var(--text);
}
.sidebar-contained-toggle svg {
  width: 18px;
  height: 18px;
}
@media (min-width: 769px) {
  html[data-nav-style="sidebar"][data-sidebar-contained="true"] {
    background: var(--secondary);
  }
  html[data-nav-style="sidebar"][data-sidebar-contained="true"] body {
    background-color: transparent;
    padding-top: 10px;
    padding-right: 10px;
    padding-bottom: 10px;
    padding-left: var(--sidebar-width, 260px);
    transition: padding 0.3s cubic-bezier(0.32, 0.72, 0, 1);
  }
  html[data-nav-style="sidebar"][data-sidebar-contained="true"] body::after {
    content: "";
    position: fixed;
    top: 10px;
    right: 10px;
    bottom: 10px;
    left: var(--sidebar-width, 260px);
    border-radius: var(--border1, 1rem);
    pointer-events: none;
    z-index: 2;
    box-shadow: 0 0 0 200vmax var(--secondary);
    transition: left 0.3s cubic-bezier(0.32, 0.72, 0, 1);
  }
  html[data-nav-style="sidebar"][data-sidebar-contained="true"] .content-frame {
    display: block;
    position: fixed;
    top: 10px;
    right: 10px;
    bottom: 10px;
    left: var(--sidebar-width, 260px);
    background-color: var(--background);
    background-image: var(--page-gradient, none);
    background-attachment: fixed;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: var(--border1, 1rem);
    z-index: -2;
    pointer-events: none;
    transition: left 0.3s cubic-bezier(0.32, 0.72, 0, 1);
  }
  html[data-nav-style="sidebar"][data-sidebar-contained="true"] .frame-blur {
    display: block;
    position: fixed;
    inset: 0;
    z-index: 48;
    pointer-events: none;
    backdrop-filter: blur(var(--blur-amount, 10px)) saturate(180%);
    -webkit-backdrop-filter: blur(var(--blur-amount, 10px)) saturate(180%);
    background: color-mix(in srgb, var(--secondary) 65%, transparent);
    -webkit-mask: linear-gradient(#000 0 0) 0 0 / 100% 10px no-repeat, linear-gradient(#000 0 0) 0 100% / 100% 10px no-repeat, linear-gradient(#000 0 0) 0 0 / var(--sidebar-width, 260px) 100% no-repeat, linear-gradient(#000 0 0) 100% 0 / 10px 100% no-repeat;
    mask: linear-gradient(#000 0 0) 0 0 / 100% 10px no-repeat, linear-gradient(#000 0 0) 0 100% / 100% 10px no-repeat, linear-gradient(#000 0 0) 0 0 / var(--sidebar-width, 260px) 100% no-repeat, linear-gradient(#000 0 0) 100% 0 / 10px 100% no-repeat;
  }
  html[data-nav-style="sidebar"][data-sidebar-contained="true"] .sidebar-nav {
    top: 0;
    bottom: 0;
    left: 0;
    border-radius: 0;
    border-right: none;
    background-color: transparent;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    transition: width 0.2s cubic-bezier(0.4, 0, 0.2, 1), transform 0.3s cubic-bezier(0.32, 0.72, 0, 1), opacity 0.2s ease, box-shadow 0.3s ease;
  }
  html[data-nav-style="sidebar"][data-sidebar-contained="true"] .flute_header {
    z-index: 55;
    background: transparent;
  }
  html[data-nav-style="sidebar"][data-sidebar-contained="true"] .flute_header .navbar {
    background: transparent;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    border: none;
    box-shadow: none;
  }
  html[data-nav-style="sidebar"][data-sidebar-contained="true"] #main {
    position: relative;
    z-index: 1;
  }
  html[data-nav-style="sidebar"][data-sidebar-contained="true"] .flute_footer {
    position: relative;
    z-index: 1;
    margin-left: 0;
  }
  html[data-nav-style="sidebar"][data-sidebar-contained="true"] .sidebar-nav__contained-collapse {
    display: flex;
  }
  html[data-nav-style="sidebar"][data-sidebar-contained="true"] .sidebar-contained-toggle {
    display: none;
  }
  html[data-nav-style="sidebar"][data-sidebar-contained="true"] .sidebar-nav__toggle {
    display: none;
  }
  html[data-nav-style="sidebar"][data-sidebar-contained="true"][data-nav-fixed="false"] .flute_header {
    position: relative;
    left: auto;
  }
  html[data-nav-style="sidebar"][data-sidebar-contained="true"][data-sidebar-collapsed="true"] body {
    padding-left: 10px;
  }
  html[data-nav-style="sidebar"][data-sidebar-contained="true"][data-sidebar-collapsed="true"] body::after {
    left: 10px;
  }
  html[data-nav-style="sidebar"][data-sidebar-contained="true"][data-sidebar-collapsed="true"] .content-frame {
    left: 10px;
  }
  html[data-nav-style="sidebar"][data-sidebar-contained="true"][data-sidebar-collapsed="true"] .frame-blur {
    -webkit-mask: linear-gradient(#000 0 0) 0 0 / 100% 10px no-repeat, linear-gradient(#000 0 0) 0 100% / 100% 10px no-repeat, linear-gradient(#000 0 0) 0 0 / 10px 100% no-repeat, linear-gradient(#000 0 0) 100% 0 / 10px 100% no-repeat;
    mask: linear-gradient(#000 0 0) 0 0 / 100% 10px no-repeat, linear-gradient(#000 0 0) 0 100% / 100% 10px no-repeat, linear-gradient(#000 0 0) 0 0 / 10px 100% no-repeat, linear-gradient(#000 0 0) 100% 0 / 10px 100% no-repeat;
  }
  html[data-nav-style="sidebar"][data-sidebar-contained="true"][data-sidebar-collapsed="true"] .sidebar-nav {
    transform: translateX(-100%);
    opacity: 0;
    pointer-events: none;
  }
  html[data-nav-style="sidebar"][data-sidebar-contained="true"][data-sidebar-collapsed="true"] .sidebar-nav.is-collapsed {
    width: var(--sidebar-width, 260px);
  }
  html[data-nav-style="sidebar"][data-sidebar-contained="true"][data-sidebar-collapsed="true"] .sidebar-nav.is-hover-open {
    transform: translateX(0);
    opacity: 1;
    pointer-events: auto;
    background-color: var(--blurred-background);
    backdrop-filter: blur(var(--blur-amount, 10px)) saturate(180%);
    -webkit-backdrop-filter: blur(var(--blur-amount, 10px)) saturate(180%);
    box-shadow: 4px 0 32px rgba(0, 0, 0, 0.1);
    border-right: 1px solid var(--sidebar-border);
    z-index: 56;
  }
  html[data-nav-style="sidebar"][data-sidebar-contained="true"][data-sidebar-collapsed="true"] .sidebar-nav.is-hover-open .sidebar-nav__contained-collapse {
    display: none;
  }
  html[data-nav-style="sidebar"][data-sidebar-contained="true"][data-sidebar-collapsed="true"] .flute_header {
    left: 0;
  }
  html[data-nav-style="sidebar"][data-sidebar-contained="true"][data-sidebar-collapsed="true"] .flute_footer {
    margin-left: 0;
  }
  html[data-nav-style="sidebar"][data-sidebar-contained="true"][data-sidebar-collapsed="true"] .sidebar-contained-toggle {
    display: flex;
    left: calc(10px + 14px);
  }
  html[data-nav-style="sidebar"][data-sidebar-contained="true"][data-sidebar-collapsed="true"] .sidebar-hover-zone {
    display: block;
  }
  html[data-nav-style="sidebar"][data-sidebar-style="mini"][data-sidebar-contained="true"] body {
    padding-left: var(--sidebar-width, 78px) !important;
  }
  html[data-nav-style="sidebar"][data-sidebar-style="mini"][data-sidebar-contained="true"] body::after {
    left: var(--sidebar-width, 78px) !important;
  }
  html[data-nav-style="sidebar"][data-sidebar-style="mini"][data-sidebar-contained="true"] .content-frame {
    left: var(--sidebar-width, 78px);
  }
  html[data-nav-style="sidebar"][data-sidebar-style="mini"][data-sidebar-contained="true"] .frame-blur {
    -webkit-mask: linear-gradient(#000 0 0) 0 0 / 100% 10px no-repeat, linear-gradient(#000 0 0) 0 100% / 100% 10px no-repeat, linear-gradient(#000 0 0) 0 0 / var(--sidebar-width, 78px) 100% no-repeat, linear-gradient(#000 0 0) 100% 0 / 10px 100% no-repeat;
    mask: linear-gradient(#000 0 0) 0 0 / 100% 10px no-repeat, linear-gradient(#000 0 0) 0 100% / 100% 10px no-repeat, linear-gradient(#000 0 0) 0 0 / var(--sidebar-width, 78px) 100% no-repeat, linear-gradient(#000 0 0) 100% 0 / 10px 100% no-repeat;
  }
  html[data-nav-style="sidebar"][data-sidebar-style="mini"][data-sidebar-contained="true"] .flute_footer {
    margin-left: 0 !important;
  }
  html[data-nav-style="sidebar"][data-sidebar-style="mini"][data-sidebar-contained="true"] .sidebar-nav__contained-collapse {
    display: none !important;
  }
  html[data-nav-style="sidebar"][data-sidebar-style="mini"][data-sidebar-contained="true"] .sidebar-contained-toggle {
    display: flex;
    left: calc(var(--sidebar-width, 78px) + 14px);
  }
  html[data-nav-style="sidebar"][data-sidebar-style="mini"][data-sidebar-contained="true"][data-sidebar-collapsed="true"] body {
    padding-left: 10px !important;
  }
  html[data-nav-style="sidebar"][data-sidebar-style="mini"][data-sidebar-contained="true"][data-sidebar-collapsed="true"] body::after {
    left: 10px !important;
  }
  html[data-nav-style="sidebar"][data-sidebar-style="mini"][data-sidebar-contained="true"][data-sidebar-collapsed="true"] .content-frame {
    left: 10px;
  }
  html[data-nav-style="sidebar"][data-sidebar-style="mini"][data-sidebar-contained="true"][data-sidebar-collapsed="true"] .frame-blur {
    -webkit-mask: linear-gradient(#000 0 0) 0 0 / 100% 10px no-repeat, linear-gradient(#000 0 0) 0 100% / 100% 10px no-repeat, linear-gradient(#000 0 0) 0 0 / 10px 100% no-repeat, linear-gradient(#000 0 0) 100% 0 / 10px 100% no-repeat;
    mask: linear-gradient(#000 0 0) 0 0 / 100% 10px no-repeat, linear-gradient(#000 0 0) 0 100% / 100% 10px no-repeat, linear-gradient(#000 0 0) 0 0 / 10px 100% no-repeat, linear-gradient(#000 0 0) 100% 0 / 10px 100% no-repeat;
  }
  html[data-nav-style="sidebar"][data-sidebar-style="mini"][data-sidebar-contained="true"][data-sidebar-collapsed="true"] .flute_header {
    left: 0 !important;
  }
  html[data-nav-style="sidebar"][data-sidebar-style="mini"][data-sidebar-contained="true"][data-sidebar-collapsed="true"] .flute_footer {
    margin-left: 0 !important;
  }
  html[data-nav-style="sidebar"][data-sidebar-style="mini"][data-sidebar-contained="true"][data-sidebar-collapsed="true"] .sidebar-contained-toggle {
    left: calc(10px + 14px);
  }
}
@media (max-width: 768px) {
  html[data-nav-style="sidebar"][data-sidebar-contained="true"] {
    background: var(--background);
  }
  html[data-nav-style="sidebar"][data-sidebar-contained="true"] .content-frame {
    display: none;
  }
  html[data-nav-style="sidebar"][data-sidebar-contained="true"] .frame-blur {
    display: none !important;
  }
  html[data-nav-style="sidebar"][data-sidebar-contained="true"] .sidebar-contained-toggle {
    display: none !important;
  }
}
html[data-nav-style="sidebar"] .sidebar-nav {
  display: flex;
}
html[data-nav-style="sidebar"] body {
  padding-left: var(--sidebar-width, 260px);
  transition: padding-left 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
@media (max-width: 768px) {
  html[data-nav-style="sidebar"] body {
    padding-left: 0 !important;
  }
}
html[data-nav-style="sidebar"] .flute_header {
  position: sticky;
  top: 0;
  left: var(--sidebar-width, 260px);
  right: 0;
  width: auto;
  z-index: 55;
  transition: left 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
@media (max-width: 768px) {
  html[data-nav-style="sidebar"] .flute_header {
    left: 0 !important;
  }
}
html[data-nav-style="sidebar"] .navbar {
  border-bottom: 1px solid var(--transp-1);
}
html[data-nav-style="sidebar"] .navbar__content {
  justify-content: space-between;
}
html[data-nav-style="sidebar"] .navbar__left {
  gap: var(--space-md);
}
html[data-nav-style="sidebar"] .navbar__content-logo, html[data-nav-style="sidebar"] .navbar__socials, html[data-nav-style="sidebar"] .navbar .navbar-dropdown {
  display: none;
}
html[data-nav-style="sidebar"] .navbar .breadcrumb--navbar {
  display: flex;
}
html[data-nav-style="sidebar"] .navbar__separator {
  display: none;
}
html[data-nav-style="sidebar"] #main > .container > .breadcrumb {
  display: none;
}
html[data-nav-style="sidebar"] .flute_footer {
  margin-left: var(--sidebar-width, 260px);
  transition: margin-left 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
@media (max-width: 768px) {
  html[data-nav-style="sidebar"] .flute_footer {
    margin-left: 0 !important;
  }
}
html[data-nav-style="sidebar"][data-sidebar-collapsed="true"] body {
  padding-left: var(--sidebar-collapsed-width, 78px);
}
@media (max-width: 768px) {
  html[data-nav-style="sidebar"][data-sidebar-collapsed="true"] body {
    padding-left: 0 !important;
  }
}
html[data-nav-style="sidebar"][data-sidebar-collapsed="true"] .flute_header {
  left: var(--sidebar-collapsed-width, 78px);
}
@media (max-width: 768px) {
  html[data-nav-style="sidebar"][data-sidebar-collapsed="true"] .flute_header {
    left: 0 !important;
  }
}
html[data-nav-style="sidebar"][data-sidebar-collapsed="true"] .flute_footer {
  margin-left: var(--sidebar-collapsed-width, 78px);
}
@media (max-width: 768px) {
  html[data-nav-style="sidebar"][data-sidebar-collapsed="true"] .flute_footer {
    margin-left: 0 !important;
  }
}
html[data-nav-style="sidebar"][data-sidebar-style="mini"] body {
  padding-left: var(--sidebar-width, 78px) !important;
}
@media (max-width: 768px) {
  html[data-nav-style="sidebar"][data-sidebar-style="mini"] body {
    padding-left: 0 !important;
  }
}
@media (max-width: 768px) {
  html[data-nav-style="sidebar"][data-sidebar-style="mini"] .flute_header {
    left: 0 !important;
  }
}
html[data-nav-style="sidebar"][data-sidebar-style="mini"] .flute_footer {
  margin-left: var(--sidebar-width, 78px) !important;
}
@media (max-width: 768px) {
  html[data-nav-style="sidebar"][data-sidebar-style="mini"] .flute_footer {
    margin-left: 0 !important;
  }
}
html[data-nav-style="sidebar"][data-sidebar-style="mini"][data-sidebar-collapsed="true"] body {
  padding-left: 0 !important;
}
html[data-nav-style="sidebar"][data-sidebar-style="mini"][data-sidebar-collapsed="true"] .flute_header {
  left: 0 !important;
}
html[data-nav-style="sidebar"][data-sidebar-style="mini"][data-sidebar-collapsed="true"] .flute_footer {
  margin-left: 0 !important;
}
html[data-nav-style="sidebar"][data-nav-fixed="false"] .flute_header {
  position: relative;
  left: auto;
}
@media (max-width: 768px) {
  html[data-nav-style="sidebar"] .sidebar-nav {
    width: 100%;
    max-width: 300px;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    transform: translateX(-100%);
    z-index: 200;
    transition: transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: none;
  }
  html[data-nav-style="sidebar"] .sidebar-nav.is-mobile-open {
    transform: translateX(0);
    box-shadow: 0 0 40px rgba(0, 0, 0, 0.15);
  }
  html[data-nav-style="sidebar"] .sidebar-nav.is-collapsed {
    width: 100%;
    max-width: 300px;
  }
  html[data-nav-style="sidebar"] body {
    padding-left: 0 !important;
  }
  html[data-nav-style="sidebar"] .flute_header {
    left: 0 !important;
    z-index: 55;
  }
  html[data-nav-style="sidebar"] .flute_footer {
    margin-left: 0 !important;
  }
  html[data-nav-style="sidebar"] .navbar__mobile-toggle {
    display: flex;
  }
  html[data-nav-style="sidebar"] .breadcrumb--navbar {
    display: none !important;
  }
  html[data-nav-style="sidebar"] .sidebar-nav__overlay {
    display: block;
  }
  html[data-nav-style="sidebar"] .sidebar-nav__mobile-close {
    display: flex;
  }
  html[data-nav-style="sidebar"] .sidebar-nav__toggle {
    display: none;
  }
  html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav {
    width: 100%;
    max-width: 300px;
  }
  html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav__header {
    justify-content: space-between;
    padding: 0 1rem;
  }
  html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav__logo {
    justify-content: flex-start;
  }
  html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav__logo-text, html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav__logo p {
    display: block;
  }
  html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav__logo-img {
    height: 28px;
  }
  html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav__nav {
    padding: 0;
  }
  html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav__section-title {
    display: block;
  }
  html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav__items {
    padding: 0 0.5rem;
  }
  html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav__item {
    flex-direction: row;
    gap: 0.625rem;
    text-align: left;
    padding: 0 0.75rem;
    height: 36px;
    min-height: 36px;
    justify-content: flex-start;
  }
  html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav__item-icon {
    font-size: 1.125rem;
  }
  html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav__item-icon svg {
    width: 1.125rem;
    height: 1.125rem;
  }
  html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav__item-text {
    font-size: 0.8125rem;
    font-weight: 500;
    opacity: 1;
    line-height: 1.4;
    letter-spacing: normal;
    max-width: none;
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    display: block;
    -webkit-line-clamp: unset;
    -webkit-box-orient: unset;
    word-break: normal;
    white-space: nowrap;
  }
  html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav__item-badge, html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav__item-chevron {
    display: flex;
  }
  html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav__toggle {
    display: none;
  }
  html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav__footer {
    padding: var(--space-sm);
  }
  html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav__socials {
    flex-direction: row;
    gap: var(--space-xs);
  }
  html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav__socials a {
    width: 36px;
    height: 36px;
    border-radius: 0.375rem;
  }
  html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav__submenu.is-open {
    display: grid !important;
  }
  html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav__guest {
    display: flex;
  }
  html[data-nav-style="sidebar"][data-sidebar-style="mini"] .sidebar-nav__nav {
    justify-content: flex-start !important;
  }
  html[data-nav-style="sidebar"][data-sidebar-style="mini"][data-sidebar-position="center"] .sidebar-nav__nav {
    justify-content: flex-start !important;
  }
}
.sidebar-nav__overlay {
  display: none;
  position: fixed;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.4);
  backdrop-filter: blur(4px);
  z-index: 199;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.25s ease, visibility 0.25s ease;
}
.sidebar-nav__overlay.is-visible {
  opacity: 1;
  visibility: visible;
}
.navbar__mobile-toggle {
  display: none;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: var(--border05);
  background: var(--transp-05);
  border: 1px solid var(--transp-05);
  color: var(--text-400);
  cursor: pointer;
  transition: all 0.15s ease;
}
.navbar__mobile-toggle:hover {
  background: var(--transp-1);
  color: var(--text);
}
.navbar__mobile-toggle svg {
  width: 20px;
  height: 20px;
}
html[data-theme="light"] .sidebar-nav__logo-img--dark {
  display: none;
}
html[data-theme="light"] .sidebar-nav__logo-img--light {
  display: block;
}
html[data-theme="light"] .sidebar-floating-dropdown, html[data-theme="light"] .cloned-menu-sub {
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08), 0 8px 40px rgba(0, 0, 0, 0.05);
}
html[data-nav-style="sidebar"] .sidebar-nav__logo-img--dark {
  display: flex;
}
html[data-nav-style="sidebar"] .sidebar-nav__logo-img--light {
  display: none;
}
html[data-theme="light"][data-nav-style="sidebar"] .sidebar-nav {
  background: var(--blurred-background);
}
html[data-theme="light"][data-nav-style="sidebar"] .sidebar-nav__logo-img--dark {
  display: none;
}
html[data-theme="light"][data-nav-style="sidebar"] .sidebar-nav__logo-img--light {
  display: flex;
}
html[data-nav-blur="false"][data-nav-style="sidebar"] .sidebar-nav {
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  background: var(--secondary) !important;
}
html[data-nav-blur="false"][data-nav-style="sidebar"] .flute_header .navbar, html[data-nav-blur="false"][data-nav-style="sidebar"] .navbar {
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  background: var(--secondary) !important;
}
html[data-nav-blur="false"][data-nav-style="sidebar"] .sidebar-floating-dropdown, html[data-nav-blur="false"][data-nav-style="sidebar"] .cloned-menu-sub {
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  background: var(--secondary) !important;
}
html[data-nav-socials="false"][data-nav-style="sidebar"] .sidebar-nav__socials {
  display: none !important;
}
#footer {
  z-index: 1;
  margin-top: 8rem;
  background-color: var(--blurred-background);
  border-top: 1px solid var(--transp-05);
  content-visibility: auto;
  contain-intrinsic-size: auto 300px;
}
.footer {
  padding: var(--space-xl) 0 var(--space-lg) 0;
  margin-bottom: var(--space-md);
}
@media (max-width: 767px) {
  .footer {
    padding: var(--space-lg) var(--space-md);
  }
}
.footer__logo {
  height: 40px;
  display: inline-block;
  margin-bottom: 0.35rem;
}
.footer__logo img {
  height: 100%;
  max-height: 40px;
  width: auto;
}
.footer__additional {
  white-space: pre-line;
}
.footer__description {
  display: block;
  font-size: var(--p-small);
  margin-bottom: var(--space-md);
  line-height: 1.4;
  color: var(--text-400);
  max-width: 90%;
}
.footer__bottom {
  justify-content: space-between;
  gap: var(--space-xl);
  align-items: center;
  border-top: 1px solid var(--transp-1);
  margin-top: var(--space-md);
}
.footer__content {
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--space-xl);
  width: 100%;
}
@media (max-width: 767px) {
  .footer__content {
    flex-direction: column;
    gap: var(--space-lg);
  }
}
.footer__additional a {
  color: var(--accent);
}
.footer__additional a:hover {
  color: var(--accent-600);
}
.footer__nav-cols {
  flex-wrap: wrap;
  gap: var(--space-xl);
  width: 100%;
  justify-content: flex-end;
}
@media (max-width: 767px) {
  .footer__nav-cols {
    gap: var(--space-lg);
  }
}
@media (min-width: 1024px) {
  .footer__col:first-child {
    max-width: 25%;
  }
}
@media (min-width: 1024px) {
  .footer__col {
    min-width: 15%;
  }
}
@media (max-width: 767px) {
  .footer__col {
    width: 100%;
  }
}
.footer__title > a, .footer__items-item {
  flex-direction: row;
  gap: 5px;
  line-height: 1;
  transition: color var(--transition) ease-out;
}
.footer__title {
  font-weight: 600;
  font-size: var(--p-small);
  text-transform: uppercase;
  letter-spacing: 0.5px;
  line-height: 1;
  color: var(--text-300);
  margin-bottom: var(--space-sm);
}
.footer__title > a, .footer__title > span {
  display: flex;
  align-items: center;
  gap: var(--space-xs);
  color: var(--text-300);
  transition: color 0.15s ease;
}
.footer__title > a i, .footer__title > span i {
  font-size: 1.1em;
  opacity: 0.8;
}
.footer__title > a:hover, .footer__title > span:hover {
  color: var(--accent);
}
.footer__title > a:hover i, .footer__title > span:hover i {
  opacity: 1;
}
.footer__items {
  margin: 0;
  padding: 0;
  gap: var(--space-xs);
}
.footer__items-item {
  color: var(--text-400);
  position: relative;
}
.footer__items-item a {
  line-height: 1.5;
  display: flex;
  align-items: center;
  gap: 0.35rem;
  font-size: var(--p-small);
  transition: transform 0.15s ease;
  margin-left: -15px;
}
.footer__items-item a .footer__items-item-goto {
  opacity: 0;
  transform: translateX(-8px);
  transition: all 0.15s ease;
  color: var(--accent);
  width: 0.8em;
  height: 0.8em;
}
.footer__items-item a:hover {
  transform: translateX(5px);
  color: var(--accent);
}
.footer__items-item a:hover .footer__items-item-goto {
  opacity: 1;
  transform: translateX(0);
}
.footer__socials {
  flex-direction: column;
  gap: var(--space-sm);
  margin-top: var(--space-lg);
}
.footer__socials-title {
  font-weight: 600;
  font-size: var(--p);
}
.footer__socials-container {
  flex-direction: row;
  flex-wrap: wrap;
  gap: var(--space-sm);
}
.footer__socials-container > a {
  font-size: var(--h5);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--text);
  background-color: var(--transp-05);
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  transition: all 0.15s ease;
  border: 1px solid transparent;
}
.footer__socials-container > a:hover {
  color: var(--accent);
  border-color: var(--accent);
  transform: translateY(-2px);
}
.footer__down {
  font-size: var(--p-small);
  text-align: center;
  padding: var(--space-md) 0 var(--space-md);
  color: var(--text-500);
}
.footer__down a {
  font-size: inherit !important;
  color: var(--accent-300);
}
.footer__down a:hover {
  color: var(--accent);
}
html[data-theme="light"] .footer__logo-light {
  display: flex;
}
html[data-theme="light"] .footer__logo-dark {
  display: none;
}
html[data-theme="dark"] .footer__logo-light {
  display: none;
}
html[data-footer-type="minimal"] #footer {
  margin-top: 4rem;
}
html[data-footer-type="minimal"] #footer .footer {
  padding: 1rem 0;
  margin-bottom: 0;
}
html[data-footer-type="minimal"] #footer .footer__content {
  display: none;
}
html[data-footer-type="minimal"] #footer .footer__bottom {
  border-top: none;
  margin-top: 0;
  justify-content: center;
}
html[data-footer-type="expanded"] #footer {
  margin-top: 6rem;
}
html[data-footer-type="expanded"] #footer .footer {
  padding: 4rem 0 2rem;
}
html[data-footer-type="expanded"] #footer .footer__content {
  margin-bottom: 2rem;
  gap: 4rem;
}
html[data-footer-type="expanded"] #footer .footer__col {
  flex: 1;
  min-width: 200px;
}
html[data-footer-type="expanded"] #footer .footer__col:first-child {
  max-width: 30%;
  flex: 1.5;
}
@media (max-width: 767px) {
  html[data-footer-type="expanded"] #footer .footer__col:first-child {
    max-width: 100%;
  }
}
html[data-footer-type="expanded"] #footer .footer__description {
  max-width: 100%;
  font-size: var(--p-normal);
  margin-bottom: 1.5rem;
}
html[data-footer-type="expanded"] #footer .footer__socials {
  margin-top: 2rem;
}
html[data-footer-type="expanded"] #footer .footer__socials-container > a {
  width: 3rem;
  height: 3rem;
  font-size: var(--h4);
}
html[data-footer-type="expanded"] #footer .footer__nav-cols {
  gap: 3rem;
}
html[data-footer-type="expanded"] #footer .footer__items {
  gap: 0.6rem;
}
html[data-footer-type="expanded"] #footer .footer__items-item a {
  font-size: var(--p-normal);
}
html[data-footer-type="expanded"] #footer .footer__title {
  font-size: var(--p-normal);
  margin-bottom: 1rem;
}
html[data-footer-type="expanded"] #footer .footer__bottom {
  margin-top: 2rem;
  padding-top: 1.5rem;
}
html[data-footer-type="hidden"] #footer {
  display: none !important;
}
html[data-footer-type="glass"] #footer {
  position: relative;
  margin-top: 4rem;
  background: transparent;
  border-top: none;
}
html[data-footer-type="glass"] #footer > .container {
  max-width: 100%;
  padding: 0 var(--space-lg);
}
html[data-footer-type="glass"] .footer {
  margin: 0 auto var(--space-lg);
  padding: var(--space-sm) var(--space-lg);
  background: var(--blurred-background, rgba(20, 20, 23, 0.8));
  backdrop-filter: blur(calc(var(--blur-amount, 10px) * 2)) saturate(180%);
  -webkit-backdrop-filter: blur(calc(var(--blur-amount, 10px) * 2)) saturate(180%);
  border-radius: var(--border1);
  border: 1px solid var(--transp-1);
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.12), 0 1px 4px rgba(0, 0, 0, 0.08), inset 0 1px 0 rgba(255, 255, 255, 0.04);
}
html[data-footer-type="glass"] .footer__content {
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-md);
}
html[data-footer-type="glass"] .footer__col {
  max-width: none !important;
  min-width: auto !important;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: var(--space-md);
}
html[data-footer-type="glass"] .footer__logo {
  margin-bottom: 0;
}
html[data-footer-type="glass"] .footer__description {
  display: none;
}
html[data-footer-type="glass"] .footer__nav-cols {
  flex: 1;
  justify-content: center;
  gap: var(--space-lg);
}
html[data-footer-type="glass"] .footer__title {
  margin-bottom: 0;
}
html[data-footer-type="glass"] .footer__title > a, html[data-footer-type="glass"] .footer__title > span {
  font-size: var(--p-small);
  text-transform: none;
  font-weight: 500;
}
html[data-footer-type="glass"] .footer__items {
  display: none;
}
html[data-footer-type="glass"] .footer__socials {
  margin-top: 0;
  flex-direction: row;
  align-items: center;
  gap: 0;
}
html[data-footer-type="glass"] .footer__socials-title {
  display: none;
}
html[data-footer-type="glass"] .footer__socials-container {
  gap: var(--space-2xs);
}
html[data-footer-type="glass"] .footer__socials-container > a {
  width: 2rem;
  height: 2rem;
  background-color: transparent;
  border: none;
}
html[data-footer-type="glass"] .footer__socials-container > a:hover {
  background-color: var(--transp-1);
  color: var(--accent);
}
html[data-footer-type="glass"] .footer__bottom {
  display: none;
}
html[data-footer-type="glass"][data-theme="light"] .footer {
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.06), 0 1px 4px rgba(0, 0, 0, 0.04), inset 0 1px 0 rgba(255, 255, 255, 0.8);
}
@media (min-width: 768px) and (max-width: 1023px) {
  html[data-footer-type="glass"] .footer {
    padding: var(--space-md);
    border-radius: var(--border1);
  }
  html[data-footer-type="glass"] .footer__content {
    flex-direction: column;
    text-align: center;
    gap: var(--space-md);
  }
  html[data-footer-type="glass"] .footer__col {
    flex-direction: column;
    gap: var(--space-sm);
  }
  html[data-footer-type="glass"] .footer__nav-cols {
    flex-wrap: wrap;
    justify-content: center;
    gap: var(--space-sm) var(--space-md);
  }
}
html[data-footer-type="centered"] #footer {
  margin-top: 6rem;
  text-align: center;
}
html[data-footer-type="centered"] .footer {
  padding: var(--space-xl) 0;
}
html[data-footer-type="centered"] .footer__content {
  flex-direction: column;
  align-items: center;
  gap: var(--space-lg);
}
html[data-footer-type="centered"] .footer__col:first-child {
  max-width: 100%;
  text-align: center;
  order: -1;
}
html[data-footer-type="centered"] .footer__logo {
  margin: 0 auto var(--space-sm);
}
html[data-footer-type="centered"] .footer__description {
  max-width: 500px;
  margin: 0 auto var(--space-md);
  text-align: center;
}
html[data-footer-type="centered"] .footer__nav-cols {
  justify-content: center;
  width: auto;
}
html[data-footer-type="centered"] .footer__socials {
  align-items: center;
  margin-top: var(--space-md);
}
html[data-footer-type="centered"] .footer__socials-title {
  text-align: center;
}
html[data-footer-type="centered"] .footer__socials-container {
  justify-content: center;
}
html[data-footer-type="centered"] .footer__bottom {
  justify-content: center;
  flex-direction: column;
  gap: var(--space-sm);
  text-align: center;
}
html[data-footer-type="centered"] .footer__down {
  width: 100%;
}
html[data-footer-socials="false"] #footer .footer__socials {
  display: none !important;
}
html[data-footer-logo="false"] #footer .footer__logo {
  display: none !important;
}
.status-page {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: calc(100vh - 200px);
  padding: 2rem;
  overflow: hidden;
  position: relative;
}
.err-page {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: calc(100vh - 200px);
  padding: 2rem;
  position: relative;
  overflow: hidden;
}
.err-page__rings {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 0;
  pointer-events: none;
}
.err-page__ring {
  position: absolute;
  border-radius: 50%;
  border: 1px solid var(--text);
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.err-page__ring--1 {
  width: 300px;
  height: 300px;
  opacity: 0.05;
  animation: errRingPulse 8s ease-in-out infinite;
  --ring-o: 0.05;
}
.err-page__ring--2 {
  width: 500px;
  height: 500px;
  opacity: 0.035;
  animation: errRingPulse 8s ease-in-out 1.2s infinite;
  --ring-o: 0.035;
}
.err-page__ring--3 {
  width: 700px;
  height: 700px;
  opacity: 0.02;
  animation: errRingPulse 8s ease-in-out 2.4s infinite;
  --ring-o: 0.02;
}
.err-page__content {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.err-page__code {
  font-size: clamp(5rem, 15vw, 8rem);
  font-weight: 900;
  line-height: 1;
  color: var(--text);
  letter-spacing: -0.04em;
  margin: 0 0 0.75rem;
}
.err-page__title {
  font-size: clamp(1.15rem, 3vw, 1.5rem);
  font-weight: 600;
  color: var(--text);
  margin: 0 0 0.75rem;
  line-height: 1.3;
}
.err-page__description {
  font-size: 0.9rem;
  color: var(--text-200);
  margin: 0 0 2rem;
  line-height: 1.7;
  max-width: 400px;
  text-align: center;
}
.err-page__actions {
  display: flex;
  gap: 0.75rem;
}
@media (max-width: 480px) {
  .err-page__actions {
    flex-direction: column;
    width: 100%;
    max-width: 260px;
  }
}
@keyframes errRingPulse {
  0%, 100% {
    transform: translate(-50%, -50%) scale(1);
    opacity: var(--ring-o, 0.04);
  }
  50% {
    transform: translate(-50%, -50%) scale(1.05);
    opacity: calc(var(--ring-o, 0.04) * 1.4);
  }
}
.card, [data-dropdown], .lk-card, .lk-gw-fields .lk-payment-section, .lk-balance-widget, .lk-checkout, .invalid__widget, .rules-sidebar, .rule-content-body {
  background-color: var(--blurred-background);
  border: 1px solid var(--transp-1);
  border-radius: var(--border1);
  box-shadow: var(--shadow-small);
  contain: layout style;
  transition: box-shadow transform ease-out;
}
.card-img-top {
  width: 100%;
  height: auto;
  border-radius: var(--border1) var(--border1) 0 0;
}
.card-header {
  padding: var(--space-md) var(--space-lg);
  border-bottom: 1px solid var(--transp-1);
}
.card-header .card-title {
  margin: 0;
}
.card-header .card-subtitle {
  margin-top: var(--space-2xs);
  color: var(--text-200);
}
.card-body:not(.withoutPadding) {
  padding: var(--space-md) var(--space-lg);
}
.card-footer {
  padding: var(--space-md) var(--space-lg);
  border-top: 1px solid var(--transp-1);
}
.miniprofile {
  flex-direction: column;
  gap: var(--space-xl);
  width: 100%;
  height: 100%;
}
.miniprofile__content, .miniprofile__main {
  flex-direction: column;
  gap: var(--space-md);
  width: 100%;
  height: 100%;
}
.miniprofile__user {
  flex-direction: column;
  gap: var(--space-sm);
}
.miniprofile__user-content {
  flex-direction: column;
}
.miniprofile__user-content p {
  line-height: 1;
  color: var(--text-500);
}
.miniprofile__user img {
  width: 90px;
  height: 90px;
  background-color: var(--transp-1);
  border-radius: 50%;
  object-fit: cover;
}
.miniprofile__content-buttons {
  border-top: 1px solid var(--transp-1);
  padding-top: var(--space-sm);
  flex-direction: column;
  gap: var(--space-xs);
}
.miniprofile__button {
  gap: var(--space-sm);
  padding: var(--space-xs) var(--space-sm);
  transition: all var(--transition) ease-out;
  border-radius: var(--border05);
  font-size: var(--small);
  color: var(--text-300);
  font-weight: 500;
}
.miniprofile__button svg {
  font-size: var(--p);
}
.miniprofile__button:hover {
  color: var(--text);
  background-color: var(--transp-1);
}
.miniprofile__balance {
  width: 100%;
  flex: 1;
  margin-top: var(--space-sm);
  border: 1px solid var(--transp-2);
  padding: var(--space-xs) var(--space-md);
  border-radius: var(--border05);
}
.miniprofile__balance-content {
  margin-bottom: var(--space-2xs);
}
.miniprofile__balance-content h6, .miniprofile__balance-content small {
  line-height: 1.4;
}
.miniprofile__balance-content small {
  color: var(--text-400);
}
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 2.25rem;
  padding: 0 1rem;
  background-color: var(--secondary);
  color: var(--text);
  border-radius: var(--border05);
  font-size: var(--p-small);
  font-weight: 500;
  line-height: 1;
  white-space: nowrap;
  cursor: pointer;
  position: relative;
  gap: 0.5rem;
  border: none;
  outline: none;
  user-select: none;
  transition: background-color 0.15s ease, color 0.15s ease, opacity 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
}
.btn:focus-visible {
  outline: 2px solid var(--primary);
  outline-offset: 2px;
}
.btn:hover:not(:disabled):not([aria-busy="true"]) {
  opacity: 0.85;
}
.btn:active:not(:disabled):not([aria-busy="true"]) {
  opacity: 0.7;
}
.btn[aria-busy="true"] {
  opacity: 0.5;
  pointer-events: none;
}
.btn:disabled {
  pointer-events: none;
  cursor: not-allowed;
  opacity: 0.5;
}
.btn svg {
  flex-shrink: 0;
  width: 1rem;
  height: 1rem;
}
.btn-primary {
  color: var(--background);
  background-color: var(--primary);
}
.btn-primary:hover:not(:disabled):not([aria-busy="true"]) {
  background-color: var(--primary);
  opacity: 0.9;
}
.btn-accent {
  color: var(--background);
  background-color: var(--accent);
}
.btn-accent:hover:not(:disabled):not([aria-busy="true"]) {
  background-color: var(--accent);
  opacity: 0.9;
}
.btn-secondary {
  color: var(--text);
  background-color: var(--secondary);
}
.btn-secondary:hover:not(:disabled):not([aria-busy="true"]) {
  background-color: var(--secondary);
  opacity: 1;
}
.btn-error {
  color: var(--error);
  background-color: var(--error-light);
}
.btn-error:hover:not(:disabled):not([aria-busy="true"]) {
  background-color: var(--error-light);
  opacity: 1;
}
.btn-success {
  color: var(--success);
  background-color: var(--success-light);
}
.btn-success:hover:not(:disabled):not([aria-busy="true"]) {
  background-color: var(--success-light);
  opacity: 1;
}
.btn-warning {
  color: var(--warning);
  background-color: var(--warning-light);
}
.btn-warning:hover:not(:disabled):not([aria-busy="true"]) {
  background-color: var(--warning-light);
  opacity: 1;
}
.btn-info {
  color: var(--info);
  background-color: var(--info-light);
}
.btn-info:hover:not(:disabled):not([aria-busy="true"]) {
  background-color: var(--info-light);
  opacity: 1;
}
.btn-outline-primary {
  color: var(--text);
  background-color: transparent;
  border: 1px solid var(--transp-2);
}
.btn-outline-primary:hover:not(:disabled):not([aria-busy="true"]) {
  background-color: var(--transp-05);
  color: var(--text);
  opacity: 1;
}
.btn-outline-accent {
  color: var(--accent);
  background-color: transparent;
  border: 1px solid var(--transp-2);
}
.btn-outline-accent:hover:not(:disabled):not([aria-busy="true"]) {
  background-color: var(--accent-900);
  color: var(--accent);
  opacity: 1;
}
.btn-outline-error {
  color: var(--error);
  background-color: transparent;
  border: 1px solid var(--error-light);
}
.btn-outline-error:hover:not(:disabled):not([aria-busy="true"]) {
  background-color: var(--error-light);
  color: var(--error);
  opacity: 1;
}
.btn-outline-success {
  color: var(--success);
  background-color: transparent;
  border: 1px solid var(--success-light);
}
.btn-outline-success:hover:not(:disabled):not([aria-busy="true"]) {
  background-color: var(--success-light);
  color: var(--success);
  opacity: 1;
}
.btn-outline-warning {
  color: var(--warning);
  background-color: transparent;
  border: 1px solid var(--warning-light);
}
.btn-outline-warning:hover:not(:disabled):not([aria-busy="true"]) {
  background-color: var(--warning-light);
  color: var(--warning);
  opacity: 1;
}
.btn-tiny {
  height: 1.75rem;
  padding: 0 0.5rem;
  font-size: var(--small);
  gap: 0.25rem;
}
.btn-tiny svg {
  width: 0.75rem;
  height: 0.75rem;
}
.btn-small {
  height: 2rem;
  padding: 0 0.75rem;
  font-size: var(--p-small);
  gap: 0.375rem;
}
.btn-small svg {
  width: 0.875rem;
  height: 0.875rem;
}
.btn-medium {
  height: 2.25rem;
  padding: 0 1rem;
  font-size: var(--p-small);
  gap: 0.5rem;
}
.btn-medium svg {
  width: 1rem;
  height: 1rem;
}
.btn-large {
  height: 2.75rem;
  padding: 0 1.5rem;
  font-size: var(--p);
  gap: 0.5rem;
}
.btn-large svg {
  width: 1.125rem;
  height: 1.125rem;
}
.btn-secondary {
  border: 1px solid var(--transp-1);
}
.btn-secondary:hover:not(:disabled):not([aria-busy="true"]) {
  border-color: var(--transp-2);
  background-color: var(--transp-05);
}
.btn-error:hover:not(:disabled):not([aria-busy="true"]), .btn-success:hover:not(:disabled):not([aria-busy="true"]), .btn-warning:hover:not(:disabled):not([aria-busy="true"]), .btn-info:hover:not(:disabled):not([aria-busy="true"]) {
  opacity: 1;
  filter: brightness(1.05);
}
[data-dropdown] {
  background-color: var(--blurred-background);
  visibility: hidden;
  opacity: 0;
  position: absolute;
  transition: all var(--transition) ease-out;
  transform-origin: top center;
  transform: scale(0.96);
  z-index: 10001;
  display: none;
  padding: var(--space-xs);
  min-width: 200px;
  animation: animDropdownOut 0.2s cubic-bezier(0.16, 1, 0.3, 1) forwards;
  display: none;
  overflow: visible;
}
[data-dropdown] > a {
  gap: var(--space-2xs);
}
[data-dropdown] > a, [data-dropdown] button {
  display: flex;
  flex-direction: row;
  gap: var(--space-sm);
  align-items: center;
  padding: var(--space-xs) var(--space-sm);
  border-radius: var(--border05);
  transition: all var(--transition) ease-out;
  width: 100%;
}
[data-dropdown] > a:hover, [data-dropdown] button:hover {
  background-color: var(--transp-1);
}
[data-dropdown].active {
  opacity: 1;
  visibility: visible;
  animation: animDropdown 0.22s cubic-bezier(0.16, 1, 0.3, 1) forwards;
  display: flex;
  flex-direction: column;
}
[data-dropdown] .arrow {
  position: absolute;
  width: var(--space-sm);
  height: var(--space-sm);
  background: inherit;
  border-top: 1px solid var(--transp-1);
  border-left: 1px solid var(--transp-1);
  transform: rotate(45deg);
  z-index: -1;
  animation: animArrow 0.2s ease forwards;
  opacity: 0;
}
[data-dropdown].admin-dropdown {
  min-width: 60px;
}
[data-dropdown] .dropdown-item {
  border-width: 0px;
  box-shadow: none;
  justify-content: flex-start;
}
[data-dropdown] .dropdown-item:hover {
  background-color: var(--transp-1) !important;
}
@keyframes animDropdown {
  0% {
    opacity: 0;
    transform: scale(0.95);
    filter: blur(2px);
  }
  30% {
    opacity: 1;
    filter: blur(0);
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}
@keyframes animDropdownOut {
  0% {
    transform: scale(1);
    opacity: 1;
  }
  100% {
    transform: scale(0.98);
    opacity: 0;
  }
}
@keyframes animArrow {
  0% {
    opacity: 0;
    transform: rotate(45deg) scale(0.8);
  }
  100% {
    opacity: 1;
    transform: rotate(45deg) scale(1);
  }
}
.modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 1000;
  inset: 0;
  contain: layout style;
}
.modal .drag-handle {
  display: none;
}
.modal.is-open {
  display: flex;
}
.modal.is-open .modal__overlay {
  animation: mmfadeIn 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}
.modal.is-open .modal__container {
  animation: mmslideIn 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}
.modal[aria-hidden="true"] .modal__overlay {
  animation: mmfadeOut 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}
.modal[aria-hidden="true"] .modal__container {
  animation: mmslideOut 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}
.modal--sm .modal__container {
  width: 400px;
}
.modal--lg .modal__container {
  width: 800px;
}
.modal--xl .modal__container {
  width: 1200px;
}
.modal__overlay {
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.45) 0%, rgba(0, 0, 0, 0.75) 100%);
  z-index: 1000;
  position: fixed;
  inset: 0;
  touch-action: none;
  overscroll-behavior: contain;
}
@media (min-width: 1024px) {
  .modal__overlay {
    padding: var(--space-sm) 0;
  }
}
.modal__footer {
  width: 100%;
  padding: var(--space-md) var(--space-xl) var(--space-lg) var(--space-xl);
  border-top: 1px solid var(--transp-1);
}
.modal__container {
  border-radius: var(--border1);
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  background-color: var(--background-950);
  flex-direction: column;
  border: 1px solid var(--transp-1);
  z-index: 1001;
  max-width: 90%;
  max-height: 90dvh;
  min-width: 500px;
  pointer-events: auto;
  margin: auto;
  box-shadow: 0 16px 70px -12px rgba(0, 0, 0, 0.25);
  transform-origin: center center;
}
@media (min-width: 1024px) {
  .modal__container {
    max-height: calc(100dvh - 20px);
  }
}
@media (max-width: 767px) {
  .modal__container {
    min-width: unset;
    width: 92%;
  }
}
.modal__header {
  width: 100%;
  padding: var(--space-xl) var(--space-xl) 0 var(--space-xl);
}
.modal__header-withoutHeading {
  align-self: flex-end;
}
.modal__close {
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: 0;
  width: 2rem;
  height: 2rem;
  color: var(--text-400);
  transition: color 0.15s ease, background-color 0.15s ease;
  border-radius: var(--border05);
  cursor: pointer;
  margin-left: auto;
  flex-shrink: 0;
}
.modal__close:hover {
  background-color: var(--transp-1);
  color: var(--text);
}
.modal__close::before {
  content: "✕";
  font-size: 1rem;
  line-height: 1;
}
.modal__close:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 2px;
}
.modal__title {
  font-weight: 700;
}
.modal__content {
  padding: var(--space-sm) var(--space-xl) var(--space-xl) var(--space-xl);
  width: 100%;
}
@media (max-width: 767px) {
  .modal__content {
    padding: 0 var(--space-lg) var(--space-lg) var(--space-lg);
  }
}
.modal__content-loading {
  width: 100%;
  margin-top: var(--space-xl);
  flex-direction: column;
  gap: var(--space-sm);
}
.modal__content-loading-box {
  background-color: var(--background-900);
  min-width: 300px;
  min-height: 40px;
}
.modal__content-loading-box-large {
  min-height: 80px;
}
@media (max-width: 768px) {
  .modal .modal__overlay {
    opacity: 0;
    transition: opacity 0.3s ease;
    animation: none !important;
  }
  .modal.is-open .modal__overlay {
    opacity: 1;
  }
  .modal .modal__container {
    display: block;
    width: 100%;
    max-width: none;
    max-height: 100dvh;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
    height: auto;
    overflow: hidden;
    transform: translateY(100%);
    transition: transform 0.3s cubic-bezier(0.32, 0.72, 0, 1), height 0.25s cubic-bezier(0.32, 0.72, 0, 1);
    animation: none !important;
    position: absolute;
    bottom: 0;
    overscroll-behavior: contain;
  }
  .modal .modal__header {
    padding-top: var(--space-md);
  }
  .modal.is-open .modal__container {
    transform: translateY(0);
  }
  .modal.dragging .modal__container {
    transition: none;
  }
  .modal .drag-handle {
    cursor: grab;
    user-select: none;
    touch-action: none;
    display: flex;
    justify-content: center;
    padding-top: var(--space-md);
    padding-bottom: var(--space-sm);
    width: 100%;
  }
  .modal .drag-handle span {
    display: block;
    width: var(--space-xl);
    height: var(--space-2xs);
    background: var(--background-800);
    border-radius: 50px;
    pointer-events: none;
  }
  .modal .modal__close {
    display: none;
  }
  .modal .modal__title {
    text-align: center;
    width: 100%;
  }
  .modal .skeleton {
    width: auto;
  }
  .modal.fullscreen .modal__container {
    border-radius: 0;
    overflow: auto;
    max-height: 100dvh;
  }
}
@keyframes mmfadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes mmfadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes mmslideIn {
  from {
    opacity: 0;
    transform: scale(0.98) translateY(4px);
  }
  to {
    opacity: 1;
    transform: scale(1) translateY(0);
  }
}
@keyframes mmslideOut {
  from {
    opacity: 1;
    transform: scale(1) translateY(0);
  }
  to {
    opacity: 0;
    transform: scale(0.98) translateY(4px);
  }
}
.tabs-container {
  position: relative;
  width: 100%;
}
.tabs-container .tabs-nav-wrapper {
  position: relative;
  display: inline-flex;
  width: auto;
  max-width: 100%;
  overflow-x: auto;
  overflow-y: visible;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}
.tabs-container .tabs-nav-wrapper::after {
  content: "";
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 1px;
  background-color: var(--transp-1);
  z-index: 0;
}
.tabs-container .tabs-nav-wrapper::-webkit-scrollbar {
  display: none;
}
.tabs-container .tabs-nav {
  display: inline-flex;
  flex-wrap: nowrap;
  position: relative;
  list-style: none;
  padding: 0;
  margin: 0;
  width: max-content;
  z-index: 1;
  scroll-behavior: smooth;
}
.tabs-container .tabs-nav .tab-item {
  position: relative;
  flex-shrink: 0;
}
.tabs-container .tabs-nav .tab-item a {
  cursor: pointer;
  padding: var(--space-xs) var(--space-md);
  text-decoration: none;
  color: var(--text-500);
  display: inline-flex;
  align-items: center;
  font-size: var(--p-small);
  font-weight: 500;
  gap: var(--space-xs);
  white-space: nowrap;
  transition: color var(--transition) ease-out;
  border-radius: var(--border05);
}
@media (max-width: 767px) {
  .tabs-container .tabs-nav .tab-item a {
    padding: var(--space-xs) var(--space-sm);
  }
}
.tabs-container .tabs-nav .tab-item a .tab-icon {
  width: 1rem;
  height: 1rem;
  opacity: 0.5;
  transition: opacity var(--transition) ease-out;
}
.tabs-container .tabs-nav .tab-item a .tab-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 18px;
  height: 18px;
  background-color: var(--transp-1);
  color: var(--text-500);
  border-radius: 9px;
  padding: 0 5px;
  font-size: 11px;
  line-height: 1;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  transition: all var(--transition) ease-out;
}
.tabs-container .tabs-nav .tab-item a:hover {
  color: var(--text);
}
.tabs-container .tabs-nav .tab-item a:hover .tab-icon {
  opacity: 0.8;
}
.tabs-container .tabs-nav .tab-item a:active {
  opacity: 0.7;
}
.tabs-container .tabs-nav .tab-item a:focus {
  outline: none;
}
.tabs-container .tabs-nav .tab-item a:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: -2px;
}
.tabs-container .tabs-nav .tab-item.active a {
  color: var(--text);
}
.tabs-container .tabs-nav .tab-item.active a .tab-icon {
  opacity: 1;
}
.tabs-container .tabs-nav .tab-item.active a .tab-badge {
  color: var(--text-950);
  background-color: var(--accent);
}
.tabs-container .tabs-nav .tab-item.is-disabled a {
  opacity: 0.35;
  cursor: not-allowed;
  pointer-events: none;
}
.tabs-container .underline {
  position: absolute;
  left: 0;
  bottom: 0;
  height: 2px;
  background-color: var(--text);
  transition: all 0.25s cubic-bezier(0.25, 0.1, 0.25, 1);
  will-change: transform, width, left;
  transform: translateZ(0);
  z-index: 2;
  border-radius: 1px;
}
.tabs-container.pills .tabs-nav-wrapper {
  overflow: visible;
}
.tabs-container.pills .tabs-nav-wrapper::after {
  display: none;
}
.tabs-container.pills .tabs-nav {
  border-bottom: none;
  gap: var(--space-2xs);
  flex-wrap: wrap;
}
.tabs-container.pills .tab-item a {
  padding: 6px 12px;
  border-radius: var(--border05);
  color: var(--text-400);
  transition: all var(--transition) ease-out;
}
.tabs-container.pills .tab-item a:hover {
  background-color: var(--transp-05);
  color: var(--text);
}
@media (max-width: 767px) {
  .tabs-container.pills .tab-item a {
    padding: 6px 10px;
    display: flex;
    justify-content: center;
  }
}
.tabs-container.pills .tab-item.active a {
  background-color: var(--transp-1);
  color: var(--text);
}
.tabs-container.pills .tab-item.active a .tab-badge {
  background-color: var(--accent);
  color: var(--text-950);
}
.tabs-container.pills .underline {
  display: none;
}
.tabs-container.segment .tabs-nav-wrapper {
  display: inline-flex;
  width: auto;
  max-width: 100%;
  padding: 0 3px;
  border-radius: var(--border1);
  border: 1px solid var(--transp-1);
}
.tabs-container.segment .tabs-nav-wrapper::after {
  display: none;
}
@media (max-width: 767px) {
  .tabs-container.segment .tabs-nav-wrapper {
    width: 100%;
  }
}
.tabs-container.segment .tabs-nav {
  gap: 1px;
}
@media (max-width: 767px) {
  .tabs-container.segment .tabs-nav {
    width: 100%;
  }
}
@media (max-width: 767px) {
  .tabs-container.segment .tab-item {
    flex: 1;
  }
}
.tabs-container.segment .tab-item a {
  padding: var(--space-2xs) var(--space-md);
  border-radius: var(--border05);
  color: var(--text-500);
  font-size: var(--p-small);
  font-weight: 500;
  transition: all var(--transition) ease-out;
  background: transparent;
}
.tabs-container.segment .tab-item a .tab-icon {
  opacity: 0.4;
}
.tabs-container.segment .tab-item a::after {
  display: none;
}
@media (max-width: 767px) {
  .tabs-container.segment .tab-item a {
    justify-content: center;
    padding: 6px 10px;
  }
}
.tabs-container.segment .tab-item a:hover {
  color: var(--text-300);
}
.tabs-container.segment .tab-item.active a {
  background: var(--accent);
  color: var(--accent-950);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04), 0 1px 3px rgba(0, 0, 0, 0.06), inset 0 1px 0 rgba(255, 255, 255, 0.04);
}
.tabs-container.segment .tab-item.active a .tab-icon {
  opacity: 1;
}
.tabs-container.segment .tab-item.active a .tab-badge {
  background-color: var(--accent);
  color: var(--text-950);
}
.tabs-container.segment .underline {
  display: none;
}
.tabs-container.scrollable-tabs .tabs-nav {
  -ms-overflow-style: none;
  position: relative;
  padding-bottom: 2px;
}
.tabs-content {
  position: relative;
}
.tabs-content .tab-content {
  display: none;
  opacity: 0;
}
.tabs-content .tab-content.active {
  display: block;
  opacity: 1;
  animation: tabFadeIn 0.2s ease;
}
@keyframes tabFadeIn {
  from {
    opacity: 0;
    transform: translateY(4px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.right_sidebar {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 1050;
  inset: 0;
}
.right_sidebar.is-open {
  display: flex;
}
.right_sidebar.is-open .right_sidebar__overlay {
  animation: rightSidebarfadeIn 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}
.right_sidebar.is-open .right_sidebar__container {
  animation: rightSidebarslideIn 0.35s cubic-bezier(0.16, 1, 0.3, 1);
}
.right_sidebar[aria-hidden="true"] .right_sidebar__overlay {
  animation: rightSidebarfadeOut 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}
.right_sidebar[aria-hidden="true"] .right_sidebar__container {
  animation: rightSidebarslideOut 0.25s cubic-bezier(0.16, 1, 0.3, 1);
}
.right_sidebar__overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.15) 0%, rgba(0, 0, 0, 0.5) 100%);
  inset: 0;
}
.right_sidebar__container {
  display: flex;
  justify-content: space-between;
  flex-direction: column;
  overflow: hidden;
  box-sizing: border-box;
  background-color: var(--background-950);
  border-left: 1px solid var(--transp-1);
  box-shadow: -1px 0 40px rgba(0, 0, 0, 0.15);
  position: relative;
}
@media (min-width: 1024px) {
  .right_sidebar__container {
    margin: 10px;
    margin-left: auto;
    min-width: 400px;
    height: calc(100vh - 20px);
    border-radius: var(--border1);
    border: 1px solid var(--transp-1);
  }
}
@media (max-width: 767px) {
  .right_sidebar__container {
    width: 100% !important;
    height: 100vh;
    border-radius: 0;
  }
}
.right_sidebar__container:focus {
  outline: none;
}
.right_sidebar__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--space-md) var(--space-lg);
  width: 100%;
  border-bottom: 1px solid var(--transp-1);
  flex-shrink: 0;
}
.right_sidebar__title {
  margin: 0;
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.4;
}
.right_sidebar__close {
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: 0;
  width: 32px;
  height: 32px;
  color: var(--text-400);
  transition: color 0.15s ease, background-color 0.15s ease;
  border-radius: var(--border05);
  cursor: pointer;
  line-height: 1;
  flex-shrink: 0;
}
.right_sidebar__close:hover {
  background-color: var(--transp-1);
  color: var(--text);
}
.right_sidebar__close::before {
  content: "✕";
  font-size: 1.1rem;
}
.right_sidebar__close:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 2px;
}
.right_sidebar__content {
  padding: var(--space-md) var(--space-lg);
  overflow-y: auto;
  flex: 1;
  width: 100%;
}
@media (min-width: 1024px) {
  .right_sidebar__content {
    max-width: 50vw;
  }
}
.right_sidebar__footer {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-direction: row;
  padding: var(--space-md) var(--space-lg);
  width: 100%;
  border-top: 1px solid var(--transp-1);
  flex-shrink: 0;
}
.right_sidebar__content-loading {
  display: flex;
  flex-direction: column;
  margin-top: 2rem;
  gap: 10px;
}
.right_sidebar__content-loading-box, .right_sidebar__content-loading-box-large {
  background-color: var(--background-900);
  min-width: 300px;
  min-height: 40px;
  border-radius: var(--border05);
}
.right_sidebar__content-loading-box-large {
  min-height: 80px;
}
@keyframes rightSidebarfadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes rightSidebarfadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes rightSidebarslideIn {
  from {
    transform: translateX(100%);
  }
  to {
    transform: translateX(0);
  }
}
@keyframes rightSidebarslideOut {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(100%);
  }
}
@media (prefers-reduced-motion: reduce) {
  .right_sidebar__overlay, .right_sidebar__container {
    animation: none !important;
    transition: none !important;
  }
}
.form-field {
  line-height: 1.5;
}
.form__label {
  font-size: var(--p-small);
  color: var(--text-300);
  font-weight: 500;
  line-height: 1.8;
}
.form__label-required:after {
  content: "*";
  color: var(--error);
}
.radio-group {
  border: none;
  padding: 0;
  margin: 0;
}
.radio-group__legend {
  font-size: var(--p-small);
  font-weight: 500;
  color: var(--text);
  margin-bottom: var(--space-sm);
}
.radio-group__items {
  display: flex;
  flex-direction: column;
  gap: var(--space-xs);
}
.radio-group--inline .radio-group__items {
  flex-direction: row;
  display: inline-flex;
  background: var(--transp-05);
  padding: 4px;
  border-radius: var(--border1);
  border: 1px solid var(--transp-1);
  gap: 2px;
}
.radio-group--inline .radio-item {
  padding: 0;
  border: none;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  border-radius: 0;
}
.radio-group--inline .radio-item__control {
  display: none;
}
.radio-group--inline .radio-item__content {
  padding: 0.4375rem 0.875rem;
  border-radius: calc(var(--border1) - 4px);
  transition: all var(--transition) ease-out;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: var(--space-xs);
}
.radio-group--inline .radio-item__icon {
  width: auto;
  height: auto;
  background: none;
  color: inherit;
  font-size: 1rem;
}
.radio-group--inline .radio-item__label {
  font-size: 0.8125rem;
  font-weight: 500;
  color: var(--text-500);
  transition: color var(--transition) ease-out;
}
.radio-group--inline .radio-item__desc {
  display: none;
}
.radio-group--inline .radio-item:hover {
  background: transparent;
}
.radio-group--inline .radio-item:hover .radio-item__content {
  background: var(--transp-1);
}
.radio-group--inline .radio-item:hover .radio-item__label {
  color: var(--text);
}
.radio-group--inline .radio-item__input:checked ~ .radio-item__content {
  background: var(--background);
  box-shadow: var(--shadow-small);
}
.radio-group--inline .radio-item__input:checked ~ .radio-item__content .radio-item__label {
  color: var(--text);
}
.radio-group--inline .radio-item__input:checked ~ .radio-item__content .radio-item__icon {
  color: var(--primary);
}
.radio-item {
  display: flex;
  align-items: flex-start;
  gap: var(--space-md);
  padding: var(--space-lg);
  cursor: pointer;
  position: relative;
  background-color: transparent;
  border: 1px solid var(--transp-1);
  border-radius: var(--border1);
  transition: all var(--transition) ease-out;
}
.radio-item:hover {
  border-color: var(--transp-2);
}
.radio-item--disabled {
  opacity: 0.5;
  cursor: not-allowed;
  pointer-events: none;
}
.radio-item__input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
  pointer-events: none;
}
.radio-item__control {
  flex-shrink: 0;
  margin-left: auto;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  border: 2px solid var(--transp-3);
  transition: border-color var(--transition) ease-out;
  position: relative;
  margin-top: 2px;
}
.radio-item__control::after {
  content: "";
  position: absolute;
  inset: 3px;
  border-radius: 50%;
  background: var(--text);
  transform: scale(0);
  transition: transform var(--transition) ease-out;
}
.radio-item__input:checked ~ .radio-item__control {
  border-color: var(--text);
}
.radio-item__input:checked ~ .radio-item__control::after {
  transform: scale(1);
}
.radio-item__input:focus-visible ~ .radio-item__control {
  outline: 2px solid var(--primary);
  outline-offset: 2px;
}
.radio-item:has(.radio-item__input:checked) {
  border-color: var(--transp-3);
  background: var(--transp-02);
}
.radio-item__content {
  display: flex;
  align-items: flex-start;
  gap: var(--space-md);
  min-width: 0;
  flex: 1;
}
.radio-item__icon {
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  border-radius: var(--border05);
  font-size: var(--h6);
  color: var(--radio-icon-color, var(--text-400));
  background-color: var(--radio-icon-bg, var(--transp-1));
}
.radio-item__text {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
  flex: 1;
}
.radio-item__label {
  font-weight: 500;
  font-size: var(--p);
  line-height: 1.4;
  color: var(--text);
}
.radio-item__desc {
  font-size: var(--p-small);
  color: var(--text-500);
  line-height: 1.6;
}
.toggle-switch {
  display: flex;
  align-items: center;
  cursor: pointer;
  user-select: none;
  position: relative;
  font-size: var(--p);
}
.toggle-switch-input {
  opacity: 0;
  width: 0;
  height: 0;
}
.toggle-switch-input:checked + .toggle-switch-slider {
  background-color: var(--primary);
}
.toggle-switch-input:checked + .toggle-switch-slider::before {
  transform: translate(25px, 1px);
  background-color: var(--primary-950);
  height: 25px;
  width: 25px;
}
.toggle-switch-input:disabled + .toggle-switch-slider {
  cursor: not-allowed;
  pointer-events: none;
  opacity: 0.6;
}
.toggle-switch-slider {
  position: relative;
  width: 62px;
  height: 34px;
  border: 1px solid var(--primary-700);
  border-radius: 34px;
  transition: all var(--transition) ease-out;
  flex-shrink: 0;
}
.toggle-switch-slider::before {
  content: "";
  position: absolute;
  width: 23px;
  height: 23px;
  left: 5px;
  bottom: 5px;
  background-color: var(--primary);
  border-radius: 50%;
  transition: all var(--transition) ease-out;
}
.alert {
  padding: var(--space-md);
  margin-bottom: var(--space-md);
  border-radius: var(--border1);
  display: flex;
  font-size: var(--p-small);
  gap: var(--space-sm);
  background-color: var(--transp-1);
  border: 1px solid var(--transp-1);
  position: relative;
  overflow: hidden;
  letter-spacing: 0.5px;
  line-height: 1.75;
}
.alert p, .alert span, .alert li, .alert a, .alert button {
  line-height: inherit;
  font-size: var(--p-small);
  font-weight: 500;
}
.alert::after {
  content: "";
  position: absolute;
  z-index: -1;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  opacity: 0.15;
}
.alert > svg {
  font-size: var(--h4);
  flex-shrink: 0;
}
@media (max-width: 767px) {
  .alert {
    padding: var(--space-sm) var(--space-md);
  }
}
.alert-success {
  color: var(--success);
}
.alert-success::after {
  background: radial-gradient(circle at 20% 50%, var(--success-light) 0%, transparent 100%);
}
.alert-success.border {
  background-color: transparent;
  border-color: var(--success);
}
.alert-danger, .alert-error {
  color: var(--error);
}
.alert-danger::after, .alert-error::after {
  background: radial-gradient(circle at 20% 50%, var(--error-light) 0%, transparent 100%);
}
.alert-danger.border, .alert-error.border {
  background-color: transparent;
  border-color: var(--error-light);
}
.alert-warning {
  color: var(--warning);
}
.alert-warning::after {
  background: radial-gradient(circle at 20% 50%, var(--warning-light) 0%, transparent 100%);
}
.alert-warning.border {
  background-color: transparent;
  border-color: var(--warning-light);
}
.alert-info {
  color: var(--info);
}
.alert-info::after {
  background: radial-gradient(circle at 20% 50%, var(--info-light) 0%, transparent 100%);
}
.alert-info.border {
  background-color: transparent;
  border-color: var(--info-light);
}
.alert-close {
  position: absolute;
  right: var(--space-xs);
  color: var(--text-400);
  top: var(--space-xs);
}
.alert-close svg {
  font-size: var(--h5);
}
.alert-close:hover {
  color: var(--text-200);
}
.alert a {
  color: inherit;
  font-weight: 500;
  text-decoration: underline;
}
.checkbox__field {
  position: absolute;
  opacity: 0;
}
.checkbox__field + label {
  display: inline-block;
  position: relative;
  cursor: pointer;
  line-height: 22px;
  padding-left: 31px;
  font-size: var(--p);
  color: var(--text-200);
  transition: color var(--transition) ease-out;
}
.checkbox__field + label:before {
  position: absolute;
  display: block;
  left: 0;
  top: 0;
  content: "";
  background: transparent;
  width: 22px;
  height: 22px;
  box-shadow: inset 0 0 0 1px var(--transp-5);
  border-radius: 50%;
  transition: all var(--transition) ease-out;
}
.checkbox__field + label:after {
  position: absolute;
  display: block;
  top: var(--space-2xs);
  left: var(--space-xs);
  content: "";
  width: 6px;
  height: 10px;
  border-right: 1px solid transparent;
  border-bottom: 1px solid transparent;
  transform: rotate(45deg);
  transition: all var(--transition) ease-out;
}
.checkbox__field + label a {
  line-height: inherit;
}
.checkbox__field + label:focus {
  outline: none;
}
.checkbox__field + label:hover {
  color: var(--text-100);
}
.checkbox__field:checked + label:before {
  background: var(--primary);
  box-shadow: none;
}
.checkbox__field:checked + label:after {
  border-color: var(--primary-950);
}
.checkbox__field:disabled + label {
  opacity: 0.5;
  cursor: default;
}
.input-wrapper {
  position: relative;
}
.input__prefix {
  font-size: var(--h5);
  line-height: 1;
}
.input__field-container {
  gap: 8px;
  position: relative;
  width: 100%;
  min-height: 36px;
  padding: 6px 12px;
  font-size: 14px;
  border: 1px solid var(--transp-2);
  border-radius: 12px;
  color: var(--text);
  background-color: var(--transp-05);
  transition: border-color 0.15s, box-shadow 0.15s;
}
.input__field-container-withPassword {
  padding-right: 3em;
}
.input__field-container:hover:not(:focus-within):not(.has-error):not(.input__field-container-readonly) {
  border-color: var(--transp-3);
}
.input__field-container:focus-within:not(.input__field-container-readonly):not(.has-error) {
  border-color: var(--primary-300);
}
.input__field-container.has-error {
  border-color: var(--error);
}
.input__field {
  font: inherit;
  outline: 0;
  border: 0;
  padding: 0;
  margin: 0;
  flex: 1;
  background-color: transparent;
  color: inherit;
}
.input__toggle-btn {
  position: absolute;
  right: var(--space-2xs);
  width: 36px;
  height: 36px;
  font-size: var(--p-small);
  color: var(--text-500);
  transition: all var(--transition) ease-out;
}
.input__toggle-btn:hover {
  color: var(--text);
}
.input__toggle-btn .icon-eye, .input__toggle-btn .icon-eye-slash {
  width: 1.5em;
  height: 1.5em;
  transition: opacity var(--transition) ease;
}
.input__toggle-btn .icon-eye.visible, .input__toggle-btn .icon-eye-slash.visible {
  display: inline;
}
.input__error {
  color: var(--error);
  font-size: var(--small);
  font-weight: 500;
  letter-spacing: 0.02em;
  margin-top: 0.2em;
  animation: fadeIn 0.3s ease-out;
}
input:-webkit-autofill, input:-webkit-autofill:focus {
  transition: background-color 600000s 0s, color 600000s 0s;
}
input[data-autocompleted] {
  background-color: var(--transp-1) !important;
}
a.link {
  transition: all var(--transition) ease;
  background-position-y: 0%;
  background-image: linear-gradient(180deg, transparent 50%, var(--transp-2) 50%) !important;
  background-size: 2px;
  background-size: auto 190%;
  padding: 0;
  font-size: var(--p);
}
a.link:hover {
  background-image: linear-gradient(180deg, transparent 60%, var(--accent-200) 60%) !important;
  background-position-y: 0%;
  color: var(--accent);
  transition: all var(--transition) ease-out;
}
a.link:focus {
  outline: none;
}
a.link:focus-visible {
  outline: 2px solid var(--primary);
  outline-offset: 2px;
  border-radius: 2px;
}
a.link-primary {
  background-image: linear-gradient(180deg, transparent 50%, var(--primary-500) 50%) !important;
  color: var(--primary);
}
a.link-primary:hover {
  background-image: linear-gradient(180deg, transparent 50%, var(--primary) 50%) !important;
  color: var(--primary);
}
a.link-primary:focus-visible {
  outline-color: var(--primary);
}
a.link-accent {
  background-image: linear-gradient(180deg, transparent 50%, var(--accent-500) 50%) !important;
  color: var(--accent);
}
a.link-accent:hover {
  background-image: linear-gradient(180deg, transparent 50%, var(--accent) 50%) !important;
  color: var(--accent);
}
a.link-accent:focus-visible {
  outline-color: var(--accent);
}
a.link-secondary {
  background-image: linear-gradient(180deg, transparent 50%, var(--secondary-500) 50%) !important;
  color: var(--secondary);
}
a.link-secondary:hover {
  background-image: linear-gradient(180deg, transparent 50%, var(--secondary) 50%) !important;
  color: var(--secondary);
}
a.link-error {
  background-image: linear-gradient(180deg, transparent 50%, var(--error-light) 50%) !important;
  color: var(--error);
}
a.link-error:hover {
  background-image: linear-gradient(180deg, transparent 50%, var(--error) 50%) !important;
  color: var(--error);
}
a.link-success {
  background-image: linear-gradient(180deg, transparent 50%, var(--success-light) 50%) !important;
  color: var(--success);
}
a.link-success:hover {
  background-image: linear-gradient(180deg, transparent 50%, var(--success) 50%) !important;
  color: var(--success);
}
a.link-warning {
  background-image: linear-gradient(180deg, transparent 50%, var(--warning-light) 50%) !important;
  color: var(--warning);
}
a.link-warning:hover {
  background-image: linear-gradient(180deg, transparent 50%, var(--warning) 50%) !important;
  color: var(--warning);
}
a.link-info {
  background-image: linear-gradient(180deg, transparent 50%, var(--info-light) 50%) !important;
  color: var(--info);
}
a.link-info:hover {
  background-image: linear-gradient(180deg, transparent 50%, var(--info) 50%) !important;
  color: var(--info);
}
.tabbar {
  position: fixed;
  z-index: 60;
  bottom: 0px;
  left: 0;
  right: 0;
  width: 100%;
  min-height: 60px;
  border-top: 1px solid var(--transp-1);
  background-color: var(--background-900);
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
@media (min-width: 1024px) {
  .tabbar {
    display: none;
  }
}
@supports (padding-bottom: env(safe-area-inset-bottom)) {
  .tabbar {
    padding-bottom: env(safe-area-inset-bottom);
  }
}
.tabbar__content {
  padding: 0 var(--space-sm);
  display: flex;
  justify-content: space-around;
  width: 100%;
}
.tabbar__item {
  padding: var(--space-md);
  opacity: 0.7;
  color: var(--text);
  cursor: pointer;
}
.tabbar__item svg {
  font-size: var(--h3);
}
.tabbar__item > span {
  font-size: var(--small);
  margin-top: var(--space-xs);
}
.tabbar__item.active {
  opacity: 1;
  color: var(--accent);
}
.tabbar__modal-items {
  gap: var(--space-sm);
  padding-top: var(--space-lg);
}
.tabbar__modal-item {
  gap: var(--space-sm);
  color: var(--text);
  background-color: var(--transp-1);
  padding: var(--space-xs) var(--space-sm);
  font-size: var(--p);
  border-radius: var(--border05);
}
.tabbar__modal-item svg {
  font-size: var(--h4);
}
.tabbar__modal-submenu {
  display: flex;
  flex-direction: column;
}
.tabbar__modal-submenu-trigger {
  width: 100%;
  justify-content: flex-start;
  cursor: pointer;
  border: none;
  text-align: left;
}
.tabbar__modal-submenu-trigger .tabbar__modal-submenu-arrow {
  margin-left: auto;
  font-size: var(--p-small);
  color: var(--text-400);
  transition: transform var(--transition) ease-out;
}
.tabbar__modal-submenu-trigger[aria-expanded="true"] .tabbar__modal-submenu-arrow {
  transform: rotate(180deg);
}
.tabbar__modal-submenu-content {
  display: none;
  flex-direction: column;
  gap: var(--space-xs);
  margin-top: var(--space-xs);
  border-left: 2px solid var(--transp-2);
}
.tabbar__modal-submenu.expanded > .tabbar__modal-submenu-content {
  display: flex;
}
.select-wrapper {
  position: relative;
  width: 100%;
}
.select__prefix {
  font-size: var(--small);
  font-weight: 500;
  color: var(--text-600);
  margin-bottom: var(--space-xs);
}
.select__field-container {
  position: relative;
  width: 100%;
}
.select__field-container.has-error .fs__trigger, .select__field-container.has-error .select__field {
  border-color: var(--error);
}
.select__field-container--native {
  gap: 8px;
  font-size: 14px;
  border: 1px solid var(--transp-2);
  border-radius: 12px;
  color: var(--text);
  background-color: var(--transp-05);
  transition: border-color 0.15s, box-shadow 0.15s;
}
.select__field-container--native > select {
  padding: 6px 12px;
  padding-right: 2rem;
}
.select__field-container--native:focus-within:not(.has-error) {
  border-color: var(--primary-300);
}
.select__field-container--native:hover:not(:focus-within):not(.has-error) {
  border-color: var(--transp-3);
}
.select__field-container--native option {
  background-color: var(--background);
}
.select__field {
  font: inherit;
  outline: 0;
  border: 0;
  padding: 0;
  margin: 0;
  flex: 1;
  background-color: transparent;
  color: inherit;
  width: 100%;
  appearance: none;
}
.select__toggle-icon {
  position: absolute;
  right: 0.875rem;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
  color: var(--text-400);
}
.select__error {
  color: var(--error);
  font-size: var(--small);
  margin-top: var(--space-2xs);
}
select[data-tom-select] {
  display: none;
}
.fs {
  width: 100%;
  display: flex;
}
.button-group {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 0.125rem;
  background: var(--transp-05);
  border: 1px solid var(--transp-2);
  border-radius: 12px;
  padding: 0.1875rem;
}
.button-group__item {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-xs);
  padding: var(--space-xs) var(--space-sm);
  border-radius: 8px;
  background: transparent;
  border: 1px solid transparent;
  color: var(--text-500);
  font-size: var(--p-small);
  font-weight: 500;
  cursor: pointer;
  transition: all 0.15s ease;
  white-space: nowrap;
}
.button-group__item svg {
  width: 16px;
  height: 16px;
}
.button-group__item:hover {
  background: var(--transp-05);
  color: var(--text);
}
.button-group__item.active {
  background: var(--accent);
  border-color: var(--accent);
  color: var(--background-950);
  box-shadow: 0 1px 3px color-mix(in srgb, var(--accent) 25%, transparent);
}
.button-group--icons .button-group__item {
  padding: var(--space-xs);
}
.button-group--icons .button-group__item span {
  display: none;
}
.button-group--compact {
  gap: 0.0625rem;
}
.button-group--compact .button-group__item {
  padding: var(--space-xs) var(--space-sm);
  font-size: var(--small);
}
.button-group--compact .button-group__item svg {
  width: 14px;
  height: 14px;
}
tbody, td, tfoot, th, thead, tr {
  border: 0 solid;
  border-color: inherit;
}
.table-responsive {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.table {
  vertical-align: top;
  width: 100%;
  border-spacing: 0;
}
.table thead {
  vertical-align: bottom;
}
.table thead tr th {
  border-top: 0;
  color: var(--text-500);
  font-weight: 500;
  font-size: 0.75rem;
  letter-spacing: 0.02em;
  vertical-align: middle;
  white-space: nowrap;
  padding: 0.625rem 1rem;
  border-bottom: 1px solid var(--transp-1);
  cursor: default;
  background: transparent;
  transition: color 0.15s ease;
}
.table thead tr th .table-th {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  flex-direction: row;
}
.table thead tr th:first-child {
  padding-left: 1.25rem;
}
.table thead tr th.sortable {
  cursor: pointer;
}
.table thead tr th.sortable:hover {
  color: var(--text);
}
.table thead tr th.sortable .sort-icon {
  display: inline-flex;
  opacity: 0.4;
  transition: opacity 0.15s ease;
}
.table thead tr th.sortable .sort-icon svg {
  width: 14px;
  height: 14px;
}
.table thead tr th.sortable:hover .sort-icon {
  opacity: 0.7;
}
.table thead tr th.sortable .sort-icon:has(.ph-arrow-up), .table thead tr th.sortable .sort-icon:has(.ph-arrow-down) {
  opacity: 1;
  color: var(--text);
}
.table tbody {
  vertical-align: inherit;
}
.table tbody tr {
  transition: background-color 0.1s ease;
}
.table tbody tr:hover {
  background-color: var(--transp-05);
}
.table tbody tr td {
  border-top: 0;
  font-size: var(--p-small);
  padding: 0.75rem 1rem;
  vertical-align: middle;
  word-break: break-word;
  color: var(--text);
}
.table tbody tr td:first-child {
  padding-left: 1.25rem !important;
}
.table tbody tr > td {
  border-bottom: 1px solid var(--transp-05);
}
:root[data-theme=light] .table tbody tr > td {
  border-bottom-color: var(--transp-1);
}
.table tbody tr:last-of-type > td {
  border-bottom: 0;
}
.table__pagination {
  margin: 0;
  padding: 0;
  gap: 2px;
}
.table__pagination-item {
  width: 32px;
  height: 32px;
  color: var(--text-400);
  border-radius: var(--border05);
  font-weight: 500;
  font-size: var(--p-small);
  transition: color 0.15s ease, background-color 0.15s ease;
}
.table__pagination-item button, .table__pagination-item span {
  cursor: pointer;
  height: 100%;
  width: 100%;
  padding: 0 0.375rem;
  color: inherit;
  font-size: 0.8125rem;
  font-weight: 500;
}
.table__pagination-item button.link-icon, .table__pagination-item span.link-icon {
  font-size: var(--p);
}
.table__pagination-item:not(.disabled):hover {
  background-color: var(--transp-1);
  color: var(--text);
}
.table__pagination-item:not(.disabled).active {
  color: var(--text);
  background-color: var(--transp-1);
  font-weight: 600;
}
.table__pagination-item.disabled {
  pointer-events: none;
  opacity: 0.3;
}
.table__header {
  padding: var(--space-sm) var(--space-md);
}
.table__footer {
  border-top: 1px solid var(--transp-05);
  padding: var(--space-sm) var(--space-md);
}
:root[data-theme=light] .table__footer {
  border-top-color: var(--transp-1);
}
@media (max-width: 767px) {
  .table__footer {
    gap: 1rem;
    flex-direction: column;
    padding-left: 1rem;
  }
}
.table__footer-per-page select {
  padding: 0.3em 1em;
  text-align: center;
}
.table__footer-per-page .select__toggle-icon {
  display: none;
}
.table__columns {
  gap: var(--space-sm);
  padding: var(--space-sm);
}
.table__columns label {
  width: 100%;
}
.table__search {
  max-width: 400px;
}
.table__search-standalone {
  position: relative;
}
.table__search-standalone .table__search-icon {
  position: absolute;
  left: 16px;
  top: 50%;
  transform: translateY(-50%);
  width: 18px;
  height: 18px;
  color: var(--text-600);
  pointer-events: none;
  transition: color 0.2s ease;
}
.table-compact > :not(caption) > * > * {
  padding: 0.25rem !important;
}
.legend-block {
  width: 100%;
  padding: 0;
  border: 0;
  position: relative;
}
.legend-block legend {
  width: 100%;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  padding: 0 0 var(--space-md) 0;
  background: transparent;
  position: relative;
}
.legend-block legend .legend-content {
  align-items: center;
  gap: var(--space-md);
}
.legend-block legend .legend-text {
  flex-direction: column;
}
.legend-block legend .legend-icon {
  width: 1.5rem;
  height: 1.5rem;
  justify-content: center;
  align-items: center;
  color: var(--accent);
  opacity: 0.85;
  transition: opacity var(--transition);
}
.legend-block legend .legend-icon:hover {
  opacity: 1;
}
.legend-block legend .legend-icon svg {
  width: 100%;
  height: 100%;
}
.legend-block legend h1 {
  font-weight: 700;
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: var(--space-xs);
  margin: 0;
  color: var(--text);
  line-height: 1.4;
  letter-spacing: -0.01em;
}
.legend-block legend p {
  color: var(--text-400);
  line-height: 1.4;
  font-size: var(--h6);
  max-width: 80ch;
}
.legend-block legend .legend-actions {
  gap: var(--space-sm);
  margin-left: auto;
  padding-left: 1rem;
}
@media (max-width: 767px) {
  .legend-block legend {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--space-sm);
    margin-left: 0.5rem;
  }
  .legend-block legend::before {
    left: -0.5rem;
    top: 0.75rem;
    transform: none;
  }
  .legend-block legend::after {
    left: -0.25rem;
    height: calc(100% - 0.5rem);
    top: 1rem;
  }
  .legend-block legend .legend-content {
    width: 100%;
  }
  .legend-block legend .legend-actions {
    width: 100%;
    justify-content: center;
    padding: 0.5rem 0 0 0;
    margin-top: 0.5rem;
    border-left: none;
    border-top: 1px dashed var(--transp-3);
  }
}
.role-badge {
  --role-color: #8e8e8e;
  display: inline-flex;
  align-items: center;
  vertical-align: middle;
  line-height: 1;
  flex-shrink: 0;
}
.role-badge--full {
  gap: 5px;
  padding: 7px 10px;
  border-radius: 999px;
  font-size: 11px;
  line-height: 1.2;
  font-weight: 600;
  letter-spacing: 0.01em;
  border: 1px solid var(--transp-1);
  transition: background 0.15s ease, border-color 0.15s ease;
}
.role-badge--full svg {
  width: 12px;
  height: 12px;
  flex-shrink: 0;
}
.role-badge--full .role-badge__swatch {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--role-color);
  flex-shrink: 0;
}
.role-badge--full .role-badge__name {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 120px;
}
.role-badge--full.role-badge--small {
  padding: 2px 8px;
  font-size: 10px;
  gap: 4px;
}
.role-badge--full.role-badge--small svg {
  width: 10px;
  height: 10px;
}
.role-badge--full.role-badge--small .role-badge__swatch {
  width: 6px;
  height: 6px;
}
.role-badge--icon {
  width: 28px;
  height: 28px;
  justify-content: center;
  border-radius: 8px;
  color: var(--role-color);
  background: color-mix(in srgb, var(--role-color) 10%, transparent);
  border: 1px solid color-mix(in srgb, var(--role-color) 18%, transparent);
  transition: background 0.15s ease;
  cursor: default;
}
.role-badge--icon svg {
  width: 15px;
  height: 15px;
}
.role-badge--icon:hover {
  background: color-mix(in srgb, var(--role-color) 16%, transparent);
}
.role-badge--icon.role-badge--small {
  width: 24px;
  height: 24px;
  border-radius: 6px;
}
.role-badge--icon.role-badge--small svg {
  width: 13px;
  height: 13px;
}
.role-badge--dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--role-color);
  box-shadow: 0 0 0 1px color-mix(in srgb, var(--role-color) 25%, transparent);
  cursor: default;
}
.role-badges {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 5px;
}
.role-badges--center {
  justify-content: center;
}
.role-badges__overflow {
  display: grid;
  place-items: center;
  min-width: 22px;
  height: 22px;
  padding: 0 6px;
  font-size: 10px;
  font-weight: 700;
  color: var(--text-500);
  background: transparent;
  border: 1px solid var(--transp-2);
  border-radius: 999px;
  cursor: default;
}
.verified-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  color: var(--accent);
  background: none;
  border: none;
  padding: 0;
  margin: 0;
  font: inherit;
  line-height: 1;
  transition: opacity 0.2s ease, color 0.2s ease, transform 0.15s ease;
}
.verified-badge svg {
  width: 16px;
  height: 16px;
}
.verified-badge--small svg {
  width: 13px;
  height: 13px;
}
.verified-badge--ghosted {
  color: var(--text-400);
  opacity: 0.3;
}
button.verified-badge {
  cursor: pointer;
}
button.verified-badge:hover {
  transform: scale(1.15);
  opacity: 1;
  color: var(--accent);
}
button.verified-badge:active {
  transform: scale(0.95);
}
.user-card-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 999;
  display: none;
  background-color: rgba(0, 0, 0, 0.08);
  transition: opacity 0.15s ease;
  opacity: 0;
}
.user-card-overlay.active {
  display: block;
  opacity: 1;
}
.user-card {
  position: absolute;
  width: 280px;
  color: var(--text);
  border-radius: 14px;
  pointer-events: none;
  opacity: 0;
  z-index: 1000;
  will-change: transform, opacity;
  transition: background var(--transition), border var(--transition), opacity var(--transition), box-shadow var(--transition), transform var(--transition);
  background: var(--dynamic-bg, var(--background));
  border: 1px solid var(--dynamic-border, var(--transp-1));
  overflow: hidden;
  max-width: 90vw;
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.2), 0 0 0 1px var(--transp-05), inset 0 1px 0 var(--transp-05);
}
.user-card::before {
  display: none;
}
@media (max-width: 480px) {
  .user-card {
    width: calc(100vw - 40px);
    max-width: 100vw;
  }
}
.user-card.from-left, .user-card.from-right, .user-card.from-top, .user-card.from-bottom {
  transform: none;
}
.user-card-content.enhanced {
  display: grid;
  grid-template-rows: auto 1fr;
  gap: 0;
  isolation: isolate;
}
.user-card-header {
  position: relative;
  height: 80px;
}
.user-card-header .user-card-banner {
  position: absolute;
  inset: 0;
}
.user-card-header .user-card-banner img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: brightness(0.7) saturate(1.15);
}
.user-card-header .user-card-banner::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 20%, var(--background) 100%);
  pointer-events: none;
}
.user-card-header .user-card-avatar {
  position: absolute;
  left: 50%;
  bottom: -30px;
  width: 60px;
  height: 60px;
  border-radius: 50%;
  border: 3px solid var(--background);
  background: var(--secondary);
  z-index: 2;
  pointer-events: auto;
  transform: translateX(-50%);
  transition: box-shadow 0.2s ease, border var(--transition);
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.25);
}
.user-card-header .user-card-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: 50%;
}
.user-card-header .user-card-avatar:hover {
  box-shadow: 0 2px 16px rgba(0, 0, 0, 0.35), 0 0 0 2px var(--role-color, var(--accent));
}
.user-card-header .user-card-avatar .uc-status-dot {
  position: absolute;
  right: 1px;
  bottom: 1px;
  width: 13px;
  height: 13px;
  border-radius: 50%;
  border: 2.5px solid var(--background);
  background-color: var(--text-600);
  transition: background-color 0.2s ease;
  z-index: 3;
}
.user-card-header .user-card-avatar .uc-status-dot.online {
  background-color: #2ecc71;
  box-shadow: 0 0 6px rgba(46, 204, 113, 0.5);
}
.user-card-body {
  padding: 38px 16px 14px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  background: var(--background);
}
.user-card-identity {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  width: 100%;
}
.user-card-identity .user-card-name-row {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  max-width: 100%;
}
.user-card-identity .user-card-name {
  margin: 0;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: -0.01em;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
  text-align: center;
  line-height: 1.3;
}
.user-card-identity .user-card-presence {
  display: flex;
  align-items: center;
  gap: 5px;
  margin-top: 2px;
  font-size: 11px;
  color: var(--text-500);
  font-weight: 500;
}
.user-card-identity .user-card-presence .uc-presence-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--text-600);
  flex-shrink: 0;
  transition: background-color 0.2s ease;
}
.user-card-identity .user-card-presence .uc-presence-dot.online {
  background: #2ecc71;
  box-shadow: 0 0 4px rgba(46, 204, 113, 0.45);
}
.uc-roles {
  padding: 0 10px;
}
.uc-card-bottom {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  width: 100%;
  padding-top: 6px;
  border-top: 1px solid var(--transp-05);
  flex-wrap: wrap;
}
.uc-socials {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2px;
}
.uc-social-link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border-radius: 8px;
  color: var(--text-500);
  background: transparent;
  pointer-events: auto;
  transition: color 0.15s ease, background 0.15s ease, transform 0.15s ease;
}
.uc-social-link svg {
  width: 15px;
  height: 15px;
}
.uc-social-link:hover {
  color: var(--text);
  background: var(--transp-05);
  transform: translateY(-1px);
}
.uc-profile-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 5px 16px;
  border-radius: 7px;
  font-size: 12px;
  font-weight: 500;
  text-decoration: none;
  color: var(--text-400);
  background: var(--transp-05);
  transition: background 0.15s ease, color 0.15s ease;
  pointer-events: auto;
}
.uc-profile-btn svg {
  width: 11px;
  height: 11px;
  opacity: 0.5;
  transition: opacity 0.15s ease, transform 0.15s ease;
}
.uc-profile-btn:hover {
  background: var(--transp-1);
  color: var(--text);
}
.uc-profile-btn:hover svg {
  opacity: 0.8;
  transform: translateX(2px);
}
.user-card .uc-sk-banner {
  height: 80px;
  width: 100%;
  border-radius: 0;
}
.user-card .uc-sk-avatar {
  width: 60px;
  height: 60px;
  border-radius: 50%;
}
.user-card .uc-sk-name {
  width: 50%;
  height: 13px;
  border-radius: 7px;
  margin: 0 auto;
}
.user-card .uc-sk-sub {
  width: 30%;
  height: 10px;
  border-radius: 5px;
  margin: 4px auto 0;
}
.user-card .uc-sk-roles {
  display: flex;
  gap: 4px;
  justify-content: center;
}
.user-card .uc-sk-role-pill {
  width: 60px;
  height: 20px;
  border-radius: 6px;
}
.user-card .uc-sk-role-dot {
  width: 10px;
  height: 10px;
  border-radius: 999px;
}
.user-card .uc-sk-button {
  width: 80px;
  height: 14px;
  border-radius: 7px;
}
@keyframes uc-in-right {
  from {
    opacity: 0;
    transform: translateX(8px) scale(0.98);
  }
  to {
    opacity: 1;
    transform: translateX(0) scale(1);
  }
}
@keyframes uc-in-left {
  from {
    opacity: 0;
    transform: translateX(-8px) scale(0.98);
  }
  to {
    opacity: 1;
    transform: translateX(0) scale(1);
  }
}
@keyframes uc-in-top {
  from {
    opacity: 0;
    transform: translateY(8px) scale(0.98);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}
@keyframes uc-in-bottom {
  from {
    opacity: 0;
    transform: translateY(-8px) scale(0.98);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}
@keyframes uc-out-right {
  from {
    opacity: 1;
    transform: translateX(0) scale(1);
  }
  to {
    opacity: 0;
    transform: translateX(6px) scale(0.98);
  }
}
@keyframes uc-out-left {
  from {
    opacity: 1;
    transform: translateX(0) scale(1);
  }
  to {
    opacity: 0;
    transform: translateX(-6px) scale(0.98);
  }
}
@keyframes uc-out-top {
  from {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
  to {
    opacity: 0;
    transform: translateY(6px) scale(0.98);
  }
}
@keyframes uc-out-bottom {
  from {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
  to {
    opacity: 0;
    transform: translateY(-6px) scale(0.98);
  }
}
.user-card.active {
  opacity: 1;
  pointer-events: auto;
}
.user-card.active.from-right {
  animation: uc-in-right 0.16s cubic-bezier(0.2, 0.9, 0.3, 1) both;
}
.user-card.active.from-left {
  animation: uc-in-left 0.16s cubic-bezier(0.2, 0.9, 0.3, 1) both;
}
.user-card.active.from-top {
  animation: uc-in-top 0.16s cubic-bezier(0.2, 0.9, 0.3, 1) both;
}
.user-card.active.from-bottom {
  animation: uc-in-bottom 0.16s cubic-bezier(0.2, 0.9, 0.3, 1) both;
}
.user-card.hide.from-right {
  animation: uc-out-right 0.12s ease-in both;
}
.user-card.hide.from-left {
  animation: uc-out-left 0.12s ease-in both;
}
.user-card.hide.from-top {
  animation: uc-out-top 0.12s ease-in both;
}
.user-card.hide.from-bottom {
  animation: uc-out-bottom 0.12s ease-in both;
}
@media (max-width: 480px) {
  .user-card-header {
    height: 64px;
  }
  .user-card-header .user-card-avatar {
    width: 52px;
    height: 52px;
    bottom: -26px;
  }
  .user-card-body {
    padding: 32px 12px 12px;
  }
  .user-card-identity .user-card-name {
    font-size: 14px;
  }
  .uc-roles {
    padding: 0 6px;
  }
}
html.page-edit-active {
  padding-left: 0 !important;
}
html.page-edit-active body {
  padding-left: 0 !important;
}
html.page-edit-active .sidebar-nav {
  display: none !important;
}
html.page-edit-active .flute_header {
  left: 0 !important;
}
html.page-edit-active .flute_footer {
  margin-left: 0 !important;
}
body.page-edit-mode {
  margin-left: 0;
  padding-bottom: 204px;
}
body.page-edit-mode .navbar, body.page-edit-mode #footer {
  pointer-events: none;
  opacity: 0.3;
  filter: grayscale(0.4);
  transition: opacity var(--transition), filter var(--transition);
}
.pe-topbar {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  height: 80px;
  z-index: 1001;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 16px;
  pointer-events: none;
  transform: translateY(-100%);
  opacity: 0;
  transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.25s ease;
}
.pe-topbar.active {
  transform: translateY(0);
  opacity: 1;
}
.pe-topbar__pill {
  display: flex;
  align-items: center;
  gap: 4px;
  height: 42px;
  padding: 4px 6px;
  background: color-mix(in srgb, var(--background) 72%, transparent);
  border: 1px solid color-mix(in srgb, var(--text) 7%, transparent);
  border-radius: 14px;
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.1), 0 1px 6px rgba(0, 0, 0, 0.04), 0 0 0 1px rgba(255, 255, 255, 0.04) inset;
  backdrop-filter: blur(32px) saturate(1.4);
  -webkit-backdrop-filter: blur(32px) saturate(1.4);
  pointer-events: auto;
}
.pe-topbar__back {
  width: 32px;
  height: 32px;
  border-radius: 10px;
  border: none;
  background: transparent;
  color: var(--text-500);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.15s ease;
  flex-shrink: 0;
}
.pe-topbar__back svg {
  width: 15px;
  height: 15px;
}
.pe-topbar__back:hover {
  background: var(--error-light);
  color: var(--error);
}
.pe-topbar__title {
  display: flex;
  align-items: center;
  gap: 5px;
  min-width: 0;
  padding: 0 4px;
}
.pe-topbar__title svg {
  width: 13px;
  height: 13px;
  color: var(--text-500);
  flex-shrink: 0;
}
.pe-topbar__page {
  font-size: 12.5px;
  font-weight: 600;
  color: var(--text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 140px;
}
.pe-topbar__divider {
  width: 1px;
  height: 18px;
  background: color-mix(in srgb, var(--text) 8%, transparent);
  flex-shrink: 0;
  margin: 0 2px;
}
.pe-topbar__group {
  display: flex;
  gap: 1px;
}
.pe-topbar__btn {
  width: 32px;
  height: 32px;
  border-radius: 10px;
  border: none;
  background: transparent;
  color: var(--text-500);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.15s ease;
  flex-shrink: 0;
}
.pe-topbar__btn svg {
  width: 15px;
  height: 15px;
}
.pe-topbar__btn:hover:not(:disabled) {
  background: color-mix(in srgb, var(--text) 7%, transparent);
  color: var(--text);
}
.pe-topbar__btn:disabled {
  opacity: 0.2;
  cursor: default;
}
.pe-topbar__spacer {
  width: 8px;
  flex-shrink: 0;
}
.pe-topbar__discard {
  height: 30px;
  padding: 0 10px;
  border-radius: 8px;
  border: none;
  background: transparent;
  color: var(--text-500);
  font-size: 12px;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.15s ease;
  white-space: nowrap;
  flex-shrink: 0;
}
.pe-topbar__discard:hover {
  background: color-mix(in srgb, var(--text) 7%, transparent);
  color: var(--text);
}
.pe-topbar__save {
  height: 30px;
  padding: 0 14px;
  border-radius: 8px;
  border: none;
  background: var(--accent);
  color: var(--background-950);
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 4px;
  transition: all 0.15s ease;
  white-space: nowrap;
  flex-shrink: 0;
}
.pe-topbar__save svg {
  width: 13px;
  height: 13px;
}
.pe-topbar__save:hover {
  filter: brightness(1.1);
}
.pe-topbar__save:active {
  filter: brightness(0.95);
}
.pe-topbar__save.saving {
  pointer-events: none;
  opacity: 0.6;
}
.pe-scope-toggle {
  display: flex;
  background: color-mix(in srgb, var(--text) 5%, transparent);
  border-radius: 8px;
  padding: 2px;
  flex-shrink: 0;
}
.pe-scope-toggle__btn {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 4px 10px;
  border: none;
  background: transparent;
  color: var(--text-500);
  font-size: 11.5px;
  font-weight: 500;
  cursor: pointer;
  border-radius: 6px;
  transition: all 0.15s ease;
  white-space: nowrap;
}
.pe-scope-toggle__btn svg {
  width: 13px;
  height: 13px;
}
.pe-scope-toggle__btn:hover:not(.active) {
  color: var(--text-300);
}
.pe-scope-toggle__btn.active {
  background: var(--background);
  color: var(--text);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}
.pe-dock {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1002;
  padding: 0 24px 16px;
  pointer-events: none;
  transform: translateY(calc(100% + 16px));
  opacity: 0;
  transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.3s ease;
}
.pe-dock.active {
  transform: translateY(0);
  opacity: 1;
  pointer-events: auto;
}
.pe-dock__container {
  max-width: 1100px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  background: color-mix(in srgb, var(--background) 68%, transparent);
  border: 1px solid color-mix(in srgb, var(--text) 7%, transparent);
  border-radius: 16px;
  box-shadow: 0 -6px 40px rgba(0, 0, 0, 0.09), 0 -1px 10px rgba(0, 0, 0, 0.04), 0 0 0 1px rgba(255, 255, 255, 0.05) inset;
  overflow: hidden;
  backdrop-filter: blur(36px) saturate(1.5);
  -webkit-backdrop-filter: blur(36px) saturate(1.5);
}
.pe-dock__header {
  flex-shrink: 0;
  padding: 8px 10px 0;
  border-bottom: 1px solid color-mix(in srgb, var(--text) 4%, transparent);
}
.pe-dock__search {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 0 10px;
  height: 32px;
  background: color-mix(in srgb, var(--text) 4%, transparent);
  border-radius: 8px;
  border: 1.5px solid transparent;
  margin-bottom: 8px;
  transition: border-color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease;
}
.pe-dock__search:focus-within {
  border-color: color-mix(in srgb, var(--accent) 30%, transparent);
  background: color-mix(in srgb, var(--background) 60%, transparent);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--accent) 6%, transparent);
}
.pe-dock__search > svg {
  width: 13px;
  height: 13px;
  color: var(--text-600);
  flex-shrink: 0;
  transition: color 0.2s ease;
}
.pe-dock__search:focus-within > svg {
  color: var(--accent);
}
.pe-dock__search input {
  flex: 1;
  border: none;
  background: transparent;
  color: var(--text);
  font-size: 12.5px;
  outline: none;
  min-width: 0;
}
.pe-dock__search input::placeholder {
  color: var(--text-600);
}
.pe-dock__search-clear {
  width: 18px;
  height: 18px;
  border: none;
  background: transparent;
  color: var(--text-600);
  cursor: pointer;
  display: none;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  transition: all 0.12s ease;
  flex-shrink: 0;
}
.pe-dock__search-clear svg {
  width: 10px;
  height: 10px;
}
.pe-dock__search-clear:hover {
  color: var(--text);
  background: color-mix(in srgb, var(--text) 8%, transparent);
}
.pe-dock__search-clear.visible {
  display: flex;
}
.pe-dock__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  padding-bottom: 8px;
}
.pe-dock__chip {
  display: flex;
  align-items: center;
  gap: 5px;
  padding: 4px 10px;
  border: 1px solid color-mix(in srgb, var(--text) 6%, transparent);
  background: transparent;
  color: var(--text-500);
  font-size: 11.5px;
  font-weight: 500;
  cursor: pointer;
  border-radius: 20px;
  transition: all 0.15s ease;
  white-space: nowrap;
  flex-shrink: 0;
}
.pe-dock__chip svg {
  width: 13px;
  height: 13px;
  flex-shrink: 0;
}
.pe-dock__chip-count {
  font-size: 10px;
  font-weight: 600;
  color: var(--text-600);
  font-variant-numeric: tabular-nums;
}
.pe-dock__chip:hover {
  background: color-mix(in srgb, var(--text) 5%, transparent);
  border-color: color-mix(in srgb, var(--text) 10%, transparent);
  color: var(--text-300);
}
.pe-dock__chip.active {
  background: color-mix(in srgb, var(--accent) 12%, transparent);
  border-color: color-mix(in srgb, var(--accent) 25%, transparent);
  color: var(--accent);
}
.pe-dock__chip.active .pe-dock__chip-count {
  color: color-mix(in srgb, var(--accent) 70%, transparent);
}
.pe-dock__body {
  display: flex;
  flex: 1;
  min-height: 0;
}
.pe-dock__content {
  flex: 1;
  padding: 8px 10px 10px;
  overflow: hidden;
}
.pe-dock__category {
  display: none;
}
.pe-dock__category.active {
  display: block;
}
.pe-dock__widgets {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  overflow-y: auto;
  max-height: 220px;
  padding-right: 4px;
  scrollbar-width: thin;
  scrollbar-color: color-mix(in srgb, var(--text) 8%, transparent) transparent;
}
.pe-dock__widgets::-webkit-scrollbar {
  width: 3px;
}
.pe-dock__widgets::-webkit-scrollbar-track {
  background: transparent;
}
.pe-dock__widgets::-webkit-scrollbar-thumb {
  background: color-mix(in srgb, var(--text) 8%, transparent);
  border-radius: 3px;
}
.pe-dock__group {
  width: 100%;
}
.pe-dock__group + .pe-dock__group {
  margin-top: 6px;
  padding-top: 8px;
  border-top: 1px solid color-mix(in srgb, var(--text) 5%, transparent);
}
.pe-dock__group-title {
  display: flex;
  align-items: center;
  gap: 5px;
  padding: 0 2px 6px;
  font-size: 10.5px;
  font-weight: 600;
  color: var(--text-500);
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.pe-dock__group-title svg {
  width: 12px;
  height: 12px;
  opacity: 0.6;
}
.pe-dock__group-items {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.pe-dock__search-results .pe-dock__widgets {
  flex-wrap: wrap;
}
.pe-dock__no-results {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 16px 8px;
  color: var(--text-500);
  font-size: 12px;
  margin: 0;
}
.pe-dock__no-results svg {
  width: 16px;
  height: 16px;
  opacity: 0.2;
}
.pe-widget-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 10px 6px 8px;
  border-radius: 10px;
  background: color-mix(in srgb, var(--text) 3.5%, transparent);
  border: 1px solid transparent;
  cursor: grab;
  user-select: none;
  width: 82px;
  height: 72px;
  flex-shrink: 0;
  transition: background 0.15s ease, border-color 0.15s ease;
}
.pe-widget-card:hover {
  background: color-mix(in srgb, var(--text) 7%, transparent);
  border-color: color-mix(in srgb, var(--text) 5%, transparent);
}
.pe-widget-card:hover .pe-widget-card__icon {
  color: var(--text-200);
}
.pe-widget-card:hover .pe-widget-card__name {
  color: var(--text);
}
.pe-widget-card:active {
  cursor: grabbing;
  background: color-mix(in srgb, var(--text) 9%, transparent);
  transform: scale(0.96);
  transition-duration: 0.06s;
}
.pe-widget-card__icon {
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  color: var(--text-400);
  background: color-mix(in srgb, var(--text) 5%, transparent);
  border-radius: 8px;
  transition: color 0.15s ease;
}
.pe-widget-card__icon svg {
  width: 17px;
  height: 17px;
}
.pe-widget-card__name {
  font-size: 10.5px;
  font-weight: 500;
  color: var(--text-400);
  text-align: center;
  line-height: 1.2;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
  transition: color 0.15s ease;
}
.pe-widget-card__info {
  display: contents;
}
.pe-widget-card__cols {
  display: none;
}
.pe-widget-card__add {
  display: none;
}
.pe-dock .pe-widget-card.grid-stack-item {
  position: relative !important;
  width: 86px !important;
  height: 72px !important;
  top: auto !important;
  left: auto !important;
  padding: 10px 6px 8px !important;
}
.pe-quick-inserter {
  position: fixed;
  z-index: 10010;
  width: 260px;
  max-height: 320px;
  background: var(--background);
  border: 1px solid var(--transp-1);
  border-radius: 12px;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12), 0 2px 8px rgba(0, 0, 0, 0.06);
  overflow: hidden;
}
.pe-quick-inserter__search {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 12px;
  border-bottom: 1px solid var(--transp-1);
}
.pe-quick-inserter__search svg {
  width: 13px;
  height: 13px;
  color: var(--text-600);
  flex-shrink: 0;
}
.pe-quick-inserter__search input {
  flex: 1;
  border: none;
  background: transparent;
  color: var(--text);
  font-size: 12.5px;
  outline: none;
}
.pe-quick-inserter__search input::placeholder {
  color: var(--text-600);
}
.pe-quick-inserter__list {
  overflow-y: auto;
  max-height: 268px;
  padding: 4px;
  scrollbar-width: thin;
}
.pe-quick-inserter__item {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  padding: 7px 10px;
  border: none;
  background: transparent;
  color: var(--text-300);
  font-size: 12.5px;
  cursor: pointer;
  border-radius: 8px;
  transition: background 0.12s ease, color 0.12s ease;
  text-align: left;
}
.pe-quick-inserter__item svg {
  width: 15px;
  height: 15px;
  flex-shrink: 0;
  color: var(--text-500);
  transition: color 0.12s ease;
}
.pe-quick-inserter__item:hover {
  background: var(--transp-05);
  color: var(--text);
}
.pe-quick-inserter__item:hover svg {
  color: var(--accent);
}
.page-edit-fab {
  position: fixed;
  bottom: 24px;
  right: 24px;
  z-index: 100;
}
.page-edit-fab__trigger {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: var(--accent);
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
  transition: transform var(--transition), background var(--transition);
  position: relative;
  z-index: 10;
}
.page-edit-fab__trigger svg {
  width: 20px;
  height: 20px;
  color: var(--background-950);
  transition: transform var(--transition);
}
.page-edit-fab__trigger:hover {
  transform: scale(1.06);
}
.page-edit-fab__trigger:active {
  transform: scale(0.95);
}
.page-edit-fab__ring {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 48px;
  height: 48px;
  pointer-events: none;
}
.page-edit-fab__item {
  position: absolute;
  bottom: 4px;
  right: 4px;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: var(--background);
  border: 1px solid var(--transp-1);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transform: scale(0.5);
  transition: all 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
  box-shadow: var(--shadow-medium);
  pointer-events: none;
}
.page-edit-fab__item svg {
  width: 17px;
  height: 17px;
  color: var(--text-400);
  transition: color var(--transition);
}
.page-edit-fab__item:hover {
  background: var(--accent);
}
.page-edit-fab__item:hover svg {
  color: var(--background-950);
}
.page-edit-fab__item:nth-child(1) {
  --tx: -66px;
  --ty: 0;
}
.page-edit-fab__item:nth-child(2) {
  --tx: -46.662px;
  --ty: -46.662px;
}
.page-edit-fab__item:nth-child(3) {
  --tx: 0;
  --ty: -66px;
}
.page-edit-fab.open .page-edit-fab__trigger {
  background: var(--text-400);
  transform: rotate(45deg);
}
.page-edit-fab.open .page-edit-fab__trigger svg {
  color: var(--background);
}
.page-edit-fab.open .page-edit-fab__item {
  opacity: 1;
  pointer-events: auto;
  transform: translate(var(--tx), var(--ty)) scale(1);
}
.page-edit-fab.open .page-edit-fab__item:nth-child(1) {
  transition-delay: 0s;
}
.page-edit-fab.open .page-edit-fab__item:nth-child(2) {
  transition-delay: 0.03s;
}
.page-edit-fab.open .page-edit-fab__item:nth-child(3) {
  transition-delay: 0.06s;
}
.page-edit-fab.open .page-edit-fab__backdrop {
  opacity: 1;
  visibility: visible;
}
.page-edit-fab__backdrop {
  position: fixed;
  inset: 0;
  background: transparent;
  opacity: 0;
  visibility: hidden;
  z-index: -1;
}
.page-edit-fab.hide {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}
#widget-grid.grid-stack {
  min-height: 300px;
  padding: var(--space-lg) var(--space-md);
  background: transparent;
  margin-top: 20px;
}
#widget-grid.grid-stack .grid-stack-placeholder > .placeholder-content {
  border-radius: var(--border05);
  background: color-mix(in srgb, var(--accent) 12%, transparent);
  border: 2px dashed var(--accent);
  opacity: 0.5;
}
#widget-grid.grid-stack .grid-stack-item {
  overflow: visible !important;
  padding: var(--pe-widget-gap, 8px) !important;
}
#widget-grid.grid-stack .grid-stack-item:hover:not(.ui-draggable-dragging):not(.ui-resizable-resizing) > .grid-stack-item-content, #widget-grid.grid-stack .grid-stack-item.toolbar-hover:not(.ui-draggable-dragging):not(.ui-resizable-resizing) > .grid-stack-item-content {
  border-color: var(--transp-3);
}
#widget-grid.grid-stack .grid-stack-item:hover:not(.ui-draggable-dragging):not(.ui-resizable-resizing) > .widget-toolbar, #widget-grid.grid-stack .grid-stack-item.toolbar-hover:not(.ui-draggable-dragging):not(.ui-resizable-resizing) > .widget-toolbar {
  opacity: 1;
  transform: translateX(-50%) translateY(-100%);
  pointer-events: auto;
}
#widget-grid.grid-stack .grid-stack-item.ui-draggable-dragging > .grid-stack-item-content {
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.15), 0 0 0 1.5px var(--accent);
  border-color: var(--accent);
}
#widget-grid.grid-stack .grid-stack-item.ui-draggable-dragging > .widget-toolbar {
  display: none !important;
}
#widget-grid.grid-stack .grid-stack-item.ui-resizable-resizing > .grid-stack-item-content {
  border-color: var(--accent);
}
#widget-grid.grid-stack .grid-stack-item.ui-resizable-resizing > .widget-toolbar {
  display: none !important;
}
#widget-grid.grid-stack .grid-stack-item[data-widget-name="Content"] .grid-stack-item-content, #widget-grid.grid-stack .grid-stack-item[data-system-widget="true"] .grid-stack-item-content {
  border: 1.5px dashed var(--transp-2);
}
#widget-grid.grid-stack .grid-stack-item[data-widget-name="Content"] > .widget-toolbar, #widget-grid.grid-stack .grid-stack-item[data-system-widget="true"] > .widget-toolbar {
  display: none !important;
}
#widget-grid.grid-stack .grid-stack-item-content {
  border-radius: var(--border05);
  background: transparent;
  border: 1.5px solid transparent;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
  overflow: hidden !important;
  inset: 4px !important;
}
#widget-grid.grid-stack .grid-stack-item-content .widget-content {
  width: 100%;
  overflow: hidden;
}
#widget-grid.grid-stack .grid-stack-item-content .widget-content > * {
  pointer-events: none;
  user-select: none;
  word-wrap: break-word;
  overflow-wrap: break-word;
  max-width: 100%;
}
#widget-grid.grid-stack .ui-resizable-handle {
  opacity: 0;
  transition: opacity 0.15s ease;
}
#widget-grid.grid-stack .grid-stack-item:hover .ui-resizable-handle, #widget-grid.grid-stack .ui-resizable-resizing .ui-resizable-handle {
  opacity: 1;
}
#widget-grid.grid-stack .ui-resizable-e {
  width: 6px !important;
  right: 4px !important;
  top: 4px !important;
  bottom: 4px !important;
  background: var(--transp-3);
  border-radius: 3px;
  cursor: ew-resize;
}
#widget-grid.grid-stack .ui-resizable-e:hover, #widget-grid.grid-stack .ui-resizable-e:active {
  background: var(--accent);
}
#widget-grid.grid-stack .ui-resizable-w {
  width: 6px !important;
  left: 4px !important;
  top: 4px !important;
  bottom: 4px !important;
  background: var(--transp-3);
  border-radius: 3px;
  cursor: ew-resize;
}
#widget-grid.grid-stack .ui-resizable-w:hover, #widget-grid.grid-stack .ui-resizable-w:active {
  background: var(--accent);
}
.widget-toolbar {
  position: absolute;
  top: var(--pe-widget-gap, 8px);
  left: 50%;
  transform: translateX(-50%) translateY(-90%);
  z-index: 1001;
  display: flex;
  align-items: center;
  gap: 2px;
  padding: 4px 5px;
  border-radius: 10px;
  border: 1px solid var(--transp-1);
  background: var(--background);
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.12), 0 1px 4px rgba(0, 0, 0, 0.06);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.15s ease, transform 0.15s ease;
  white-space: nowrap;
}
.widget-toolbar::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -8px;
  height: 8px;
}
.widget-toolbar__name {
  font-size: 10.5px;
  font-weight: 600;
  color: var(--text-500);
  padding: 0 5px;
  max-width: 110px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.widget-toolbar__sep {
  width: 1px;
  height: 16px;
  background: var(--transp-1);
  flex-shrink: 0;
}
.widget-toolbar__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  padding: 0;
  border: none;
  border-radius: 8px;
  background: transparent;
  color: var(--text-400);
  cursor: pointer;
  transition: background 0.12s ease, color 0.12s ease;
}
.widget-toolbar__btn svg {
  width: 15px;
  height: 15px;
  display: block;
}
.widget-toolbar__btn:hover {
  background: var(--transp-05);
  color: var(--text-200);
}
.widget-toolbar__btn--settings:hover {
  background: color-mix(in srgb, var(--accent) 12%, transparent);
  color: var(--accent);
}
.widget-toolbar__btn--refresh:hover {
  background: var(--info-light);
  color: var(--info);
}
.widget-toolbar__btn--delete:hover {
  background: var(--error-light);
  color: var(--error);
}
.pe-empty-state {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: var(--space-2xl) var(--space-xl);
  border: 2px dashed var(--transp-2);
  border-radius: 14px;
  text-align: center;
  min-height: 220px;
  background: repeating-linear-gradient(-45deg, transparent, transparent 10px, color-mix(in srgb, var(--text) 1.5%, transparent) 10px, color-mix(in srgb, var(--text) 1.5%, transparent) 11px);
}
.pe-empty-state__icon {
  width: 48px;
  height: 48px;
  border-radius: 14px;
  background: var(--secondary);
  border: 1px solid var(--transp-1);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: var(--space-md);
  color: var(--text-500);
}
.pe-empty-state__icon svg {
  width: 22px;
  height: 22px;
}
.pe-empty-state__title {
  font-size: var(--p);
  font-weight: 700;
  color: var(--text-200);
  margin-bottom: 4px;
  letter-spacing: -0.01em;
}
.pe-empty-state__desc {
  font-size: var(--p-small);
  color: var(--text-500);
  max-width: 280px;
  line-height: 1.55;
}
.pe-content-placeholder {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: var(--space-xl) var(--space-lg);
  text-align: center;
  min-height: 90px;
  border: 1.5px dashed color-mix(in srgb, var(--accent) 30%, transparent);
  border-radius: 12px;
  background: color-mix(in srgb, var(--accent) 3%, transparent);
}
.pe-content-placeholder__icon {
  width: 42px;
  height: 42px;
  border-radius: 12px;
  background: color-mix(in srgb, var(--accent) 10%, transparent);
  border: 1px solid color-mix(in srgb, var(--accent) 15%, transparent);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: var(--space-sm);
  color: var(--accent);
}
.pe-content-placeholder__icon svg {
  width: 20px;
  height: 20px;
}
.pe-content-placeholder__title {
  font-size: 13px;
  font-weight: 700;
  color: var(--text-200);
  margin-bottom: 3px;
  letter-spacing: -0.01em;
}
.pe-content-placeholder__desc {
  font-size: 12px;
  color: var(--text-500);
  max-width: 300px;
  line-height: 1.5;
}
.page-edit-skeleton {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: var(--space-md);
}
.page-edit-skeleton__block, .page-edit-skeleton__line {
  border-radius: 6px;
  background: linear-gradient(90deg, var(--secondary) 25%, var(--transp-05) 37%, var(--secondary) 63%);
  background-size: 400% 100%;
  animation: pe-shimmer 1.4s ease-in-out infinite;
}
.page-edit-skeleton__line {
  height: 12px;
}
.page-edit-skeleton__block:nth-child(1) {
  animation-delay: 0s;
}
.page-edit-skeleton__line:nth-child(2) {
  animation-delay: 0.08s;
}
.page-edit-skeleton__line:nth-child(3) {
  animation-delay: 0.16s;
}
.page-edit-skeleton__line:nth-child(4) {
  animation-delay: 0.24s;
}
.page-edit-skeleton.widget-setting-loading {
  min-height: 80px;
  margin-bottom: var(--space-md);
}
@keyframes pe-shimmer {
  0% {
    background-position: 100% 0;
  }
  100% {
    background-position: 0 0;
  }
}
.pe-settings-skeleton {
  display: flex;
  flex-direction: column;
  gap: 20px;
  padding: 4px 0;
}
.pe-settings-skeleton__title {
  background: linear-gradient(90deg, var(--transp-05) 25%, var(--transp-1) 37%, var(--transp-05) 63%);
  background-size: 400% 100%;
  animation: pe-shimmer 1.4s ease-in-out infinite;
  border-radius: 8px;
  width: 45%;
  height: 16px;
  border-radius: 6px;
}
.pe-settings-skeleton__field {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.pe-settings-skeleton__label {
  background: linear-gradient(90deg, var(--transp-05) 25%, var(--transp-1) 37%, var(--transp-05) 63%);
  background-size: 400% 100%;
  animation: pe-shimmer 1.4s ease-in-out infinite;
  border-radius: 8px;
  width: 30%;
  height: 12px;
  border-radius: 5px;
}
.pe-settings-skeleton__input {
  background: linear-gradient(90deg, var(--transp-05) 25%, var(--transp-1) 37%, var(--transp-05) 63%);
  background-size: 400% 100%;
  animation: pe-shimmer 1.4s ease-in-out infinite;
  border-radius: 8px;
  width: 100%;
  height: 38px;
}
.pe-settings-skeleton__input--tall {
  height: 80px;
}
.pe-settings-skeleton__field:nth-child(2) .pe-settings-skeleton__label {
  animation-delay: 0.06s;
}
.pe-settings-skeleton__field:nth-child(2) .pe-settings-skeleton__input {
  animation-delay: 0.1s;
}
.pe-settings-skeleton__field:nth-child(3) .pe-settings-skeleton__label {
  animation-delay: 0.14s;
}
.pe-settings-skeleton__field:nth-child(3) .pe-settings-skeleton__input {
  animation-delay: 0.18s;
}
.pe-settings-skeleton__field:nth-child(4) .pe-settings-skeleton__label {
  animation-delay: 0.22s;
}
.pe-settings-skeleton__field:nth-child(4) .pe-settings-skeleton__input {
  animation-delay: 0.26s;
}
.page-edit-dialog-content {
  margin-top: var(--space-md);
  height: 100%;
  width: 100%;
  border-radius: var(--border05);
  overflow: hidden;
}
.widget-error, .widget-action-error {
  border-radius: var(--border05);
  padding: var(--space-xs) var(--space-sm);
  font-size: var(--p-small);
}
.page-widgets {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  grid-auto-flow: row dense;
  gap: var(--widget-gap, 25px);
}
.page-widgets > section > .container {
  padding-left: 0;
  padding-right: 0;
}
.page-edit-onboarding {
  position: fixed;
  inset: 0;
  z-index: 3000;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s, visibility 0.3s;
  backdrop-filter: blur(15px);
  background-color: var(--blurred-background);
}
.page-edit-onboarding.active {
  opacity: 1;
  visibility: visible;
}
.page-edit-onboarding .page-edit-onboarding-inner {
  max-width: 800px;
  width: 90%;
  display: flex;
  flex-direction: column;
  gap: var(--space-xl);
}
.page-edit-onboarding .page-edit-onboarding-slides {
  width: 100%;
  overflow: hidden;
}
.page-edit-onboarding .page-edit-onboarding-slides .page-edit-onboarding-slide {
  display: none;
  text-align: center;
}
.page-edit-onboarding .page-edit-onboarding-slides .page-edit-onboarding-slide.active {
  display: block;
}
.page-edit-onboarding .page-edit-onboarding-slides .page-edit-onboarding-slide .slide-media {
  margin-bottom: var(--space-xl);
  border-radius: var(--border05);
  overflow: hidden;
  background-color: var(--transp-05);
  max-height: 400px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.page-edit-onboarding .page-edit-onboarding-slides .page-edit-onboarding-slide .slide-media img, .page-edit-onboarding .page-edit-onboarding-slides .page-edit-onboarding-slide .slide-media video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.page-edit-onboarding .page-edit-onboarding-slides .page-edit-onboarding-slide .slide-content h3 {
  font-size: var(--h3);
  margin-bottom: var(--space-md);
  font-weight: 700;
  color: var(--accent);
}
.page-edit-onboarding .page-edit-onboarding-slides .page-edit-onboarding-slide .slide-content p {
  color: var(--text-300);
  font-size: var(--p);
  line-height: 1.6;
  margin: 0 auto;
  max-width: 500px;
}
.page-edit-onboarding .page-edit-onboarding-controls {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-lg);
}
.page-edit-onboarding .page-edit-onboarding-controls .next-btn {
  min-width: 200px;
  height: 48px;
  font-weight: 500;
  font-size: var(--p);
  border-radius: var(--border05);
  transition: all var(--transition);
}
.page-edit-onboarding .page-edit-onboarding-indicators {
  display: flex;
  gap: var(--space-xs);
  justify-content: center;
}
.page-edit-onboarding .page-edit-onboarding-indicators .indicator {
  width: 7px;
  height: 7px;
  background-color: var(--transp-2);
  border-radius: 50%;
  transition: all var(--transition);
  cursor: pointer;
}
.page-edit-onboarding .page-edit-onboarding-indicators .indicator.active {
  background-color: var(--accent);
}
.page-edit-onboarding .page-edit-onboarding-indicators .indicator:hover:not(.active) {
  background-color: var(--transp-4);
}
@keyframes btn-spin {
  to {
    transform: rotate(360deg);
  }
}
.btn-spinner {
  width: 14px;
  height: 14px;
  border: 2px solid transparent;
  border-top-color: currentColor;
  border-radius: 50%;
  animation: btn-spin 0.6s linear infinite;
}
@media (max-width: 768px) {
  #widget-grid.grid-stack {
    padding: var(--space-sm);
  }
  .page-widgets {
    display: flex;
    flex-direction: column;
    gap: var(--widget-gap, 15px);
    padding: 10px;
  }
  .page-widgets section[data-widget-id] {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    grid-column: unset !important;
  }
  .pe-topbar {
    padding: 0 8px;
  }
  .pe-topbar__pill {
    width: 100%;
    border-radius: 12px;
  }
  .pe-topbar__title {
    display: none;
  }
  .pe-topbar__divider:nth-child(2), .pe-topbar__divider:nth-child(4) {
    display: none;
  }
  .pe-topbar__discard {
    display: none;
  }
  .pe-topbar__spacer {
    flex: 1;
  }
  .pe-topbar .pe-scope-toggle__btn span {
    display: none;
  }
  .pe-dock {
    padding: 0 8px 8px;
  }
  .pe-dock__container {
    border-radius: 14px;
    max-width: 100%;
  }
  .pe-dock__chips {
    gap: 3px;
  }
  .pe-dock__chip {
    padding: 3px 8px;
    font-size: 11px;
  }
  .pe-dock__chip-count {
    display: none;
  }
  .pe-dock__widgets {
    max-height: 160px;
  }
  .pe-dock__group-title {
    font-size: 10px;
  }
  .pe-widget-card {
    width: 72px;
    height: 64px;
    padding: 8px 4px 6px;
  }
  .pe-dock .pe-widget-card.grid-stack-item {
    width: 72px !important;
    height: 64px !important;
    padding: 8px 4px 6px !important;
  }
}
.pe-sidebar-overlay {
  display: none;
}
.pe-excluded-paths {
  display: flex;
  flex-direction: column;
  gap: var(--space-md);
}
.pe-excluded-paths__header {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.pe-excluded-paths__title {
  font-size: var(--p);
  font-weight: 600;
  color: var(--text);
  margin: 0;
}
.pe-excluded-paths__desc {
  font-size: var(--p-small);
  color: var(--text-300);
  margin: 0;
}
.pe-excluded-paths__list {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-height: 0;
}
.pe-excluded-paths__tag {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-xs);
  padding: 6px 10px;
  background: var(--transp-1);
  border: 1px solid var(--transp-2);
  border-radius: var(--border05);
  font-size: var(--p-small);
  color: var(--text);
}
.pe-excluded-paths__tag-text {
  font-family: monospace;
  word-break: break-all;
  flex: 1;
}
.pe-excluded-paths__tag-remove {
  flex-shrink: 0;
  width: 20px;
  height: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: none;
  border: none;
  cursor: pointer;
  color: var(--text-300);
  border-radius: 50%;
  font-size: 16px;
  line-height: 1;
  transition: color var(--transition), background var(--transition);
}
.pe-excluded-paths__tag-remove:hover {
  color: var(--danger, #ef4444);
  background: color-mix(in srgb, var(--danger, #ef4444) 10%, transparent);
}
.pe-excluded-paths__add {
  display: flex;
  gap: 8px;
  align-items: center;
}
.pe-excluded-paths__input {
  flex: 1;
  height: 36px;
  padding: 0 10px;
  background: var(--transp-1);
  border: 1px solid var(--transp-2);
  border-radius: var(--border05);
  color: var(--text);
  font-size: var(--p-small);
  font-family: monospace;
  transition: border-color var(--transition);
}
.pe-excluded-paths__input::placeholder {
  color: var(--text-300);
}
.pe-excluded-paths__input:focus {
  outline: none;
  border-color: var(--accent);
}
.pe-excluded-paths__add-btn {
  flex-shrink: 0;
  height: 36px;
  padding: 0 14px;
  background: var(--accent);
  color: var(--background);
  border: none;
  border-radius: var(--border05);
  font-size: var(--p-small);
  font-weight: 500;
  cursor: pointer;
  transition: opacity var(--transition);
  white-space: nowrap;
}
.pe-excluded-paths__add-btn:hover {
  opacity: 0.85;
}
.pe-excluded-paths__hint {
  font-size: var(--p-small);
  color: var(--text-300);
  margin: 0;
  line-height: 1.4;
}
.pe-preview-device, .pe-preview-auth {
  display: flex;
  background: color-mix(in srgb, var(--text) 5%, transparent);
  border-radius: 8px;
  padding: 2px;
  flex-shrink: 0;
}
.pe-preview-device__btn, .pe-preview-auth__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  padding: 0;
  border: none;
  background: transparent;
  color: var(--text-500);
  cursor: pointer;
  border-radius: 6px;
  transition: all 0.15s ease;
}
.pe-preview-device__btn svg, .pe-preview-auth__btn svg {
  width: 14px;
  height: 14px;
}
.pe-preview-device__btn:hover:not(.active), .pe-preview-auth__btn:hover:not(.active) {
  color: var(--text-300);
  background: color-mix(in srgb, var(--text) 4%, transparent);
}
.pe-preview-device__btn.active, .pe-preview-auth__btn.active {
  background: var(--background);
  color: var(--text);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}
body.pe-device-tablet #widget-grid, body.pe-device-mobile #widget-grid {
  transition: max-width 0.35s cubic-bezier(0.22, 1, 0.36, 1);
}
body.pe-device-tablet .container, body.pe-device-tablet .container-fullwidth {
  max-width: 768px !important;
  margin: 0 auto !important;
  transition: max-width 0.35s cubic-bezier(0.22, 1, 0.36, 1);
}
body.pe-device-mobile .container, body.pe-device-mobile .container-fullwidth {
  max-width: 375px !important;
  margin: 0 auto !important;
  transition: max-width 0.35s cubic-bezier(0.22, 1, 0.36, 1);
}
.pe-conditions-badge {
  position: absolute;
  top: calc(var(--pe-widget-gap, 8px) + 2px);
  left: calc(var(--pe-widget-gap, 8px) + 2px);
  z-index: 10;
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 3px 8px;
  border-radius: 6px;
  background: color-mix(in srgb, var(--info) 15%, transparent);
  border: 1px solid color-mix(in srgb, var(--info) 25%, transparent);
  backdrop-filter: blur(8px);
  color: var(--info);
  font-size: 10px;
  font-weight: 600;
  white-space: nowrap;
  pointer-events: none;
  letter-spacing: 0.02em;
}
.grid-stack-item.pe-condition-hidden {
  display: none !important;
}
.widget-toolbar__btn--conditions:hover {
  background: color-mix(in srgb, var(--info) 12%, transparent);
  color: var(--info);
}
.pe-conditions-editor {
  display: flex;
  flex-direction: column;
  gap: var(--space-lg);
}
.pe-conditions-editor__header {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.pe-conditions-editor__title {
  font-size: var(--p);
  font-weight: 600;
  color: var(--text);
  margin: 0;
}
.pe-conditions-editor__desc {
  font-size: var(--p-small);
  color: var(--text-300);
  margin: 0;
  line-height: 1.4;
}
.pe-conditions-editor__section {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.pe-conditions-editor__label {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 600;
  color: var(--text-300);
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.pe-conditions-editor__label svg {
  width: 14px;
  height: 14px;
  color: var(--text-500);
}
.pe-cond-toggle {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}
.pe-cond-toggle--3 .pe-cond-toggle__btn {
  flex: 1 1 0;
  min-width: 0;
}
.pe-cond-toggle--2x2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6px;
}
.pe-cond-toggle__btn {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 8px 14px;
  border: 1.5px solid var(--transp-2);
  background: transparent;
  color: var(--text-400);
  font-size: 12.5px;
  font-weight: 500;
  cursor: pointer;
  border-radius: 10px;
  transition: all 0.15s ease;
  justify-content: center;
}
.pe-cond-toggle__btn svg {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}
.pe-cond-toggle__btn:hover:not(.active) {
  border-color: var(--transp-3);
  color: var(--text-200);
  background: color-mix(in srgb, var(--text) 3%, transparent);
}
.pe-cond-toggle__btn.active {
  border-color: var(--accent);
  background: color-mix(in srgb, var(--accent) 8%, transparent);
  color: var(--accent);
}
.pe-cond-roles {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.pe-cond-roles__loading {
  font-size: 12px;
  color: var(--text-500);
  padding: 6px 0;
}
.pe-cond-role__chip {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 5px 12px;
  border: 1.5px solid var(--transp-2);
  background: transparent;
  color: var(--text-400);
  font-size: 12px;
  font-weight: 500;
  cursor: pointer;
  border-radius: 8px;
  transition: all 0.15s ease;
}
.pe-cond-role__chip:hover:not(.active) {
  border-color: var(--transp-3);
  color: var(--text-200);
}
.pe-cond-role__chip.active {
  border-color: var(--accent);
  background: color-mix(in srgb, var(--accent) 8%, transparent);
  color: var(--accent);
}
.pe-cond-role__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  flex-shrink: 0;
}
.pe-conditions-editor__divider {
  height: 1px;
  background: var(--transp-1);
  margin: 4px 0;
}
.pe-conditions-editor__hint {
  font-size: 11.5px;
  color: var(--text-500);
  margin: 0;
  line-height: 1.4;
}
@media (max-width: 768px) {
  .pe-preview-device, .pe-preview-auth {
    display: none;
  }
}
.ve {
  position: fixed;
  top: 0;
  right: 0;
  width: 400px;
  height: 100vh;
  height: 100dvh;
  z-index: 1100;
  display: flex;
  flex-direction: column;
  background: var(--blurred-background);
  border-left: 1px solid var(--transp-1);
  transform: translateX(100%);
  opacity: 0;
  visibility: hidden;
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1), visibility 0.3s;
}
.ve.open {
  transform: translateX(0);
  opacity: 1;
  visibility: visible;
}
.ve__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 14px;
  border-bottom: 1px solid var(--transp-1);
  flex-shrink: 0;
  background: var(--background);
}
.ve__header-title {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  font-weight: 600;
  color: var(--text);
}
.ve__header-icon {
  display: flex;
  color: var(--accent);
}
.ve__header-icon svg {
  width: 16px;
  height: 16px;
}
.ve__header-actions {
  display: flex;
  align-items: center;
  gap: 2px;
}
.ve__icon-btn {
  width: 28px;
  height: 28px;
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--text-500);
  transition: all 0.15s;
}
.ve__icon-btn svg {
  width: 15px;
  height: 15px;
}
.ve__icon-btn:hover:not(:disabled) {
  background: var(--transp-1);
  color: var(--text);
}
.ve__icon-btn:disabled {
  opacity: 0.3;
  cursor: default;
}
.ve__close {
  margin-left: 4px;
}
.ve__alert {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin: 10px 12px;
  margin-bottom: 0;
  padding: 10px 12px;
  border-radius: 8px;
  background: var(--transp-05);
  border: 1px solid var(--transp-1);
  flex-shrink: 0;
}
.ve__alert--warning {
  background: rgba(255, 193, 7, 0.08);
  border-color: rgba(255, 193, 7, 0.2);
}
.ve__alert--warning .ve__alert-icon {
  color: #ffc107;
}
.ve__alert--info {
  background: rgba(33, 150, 243, 0.08);
  border-color: rgba(33, 150, 243, 0.2);
}
.ve__alert--info .ve__alert-icon {
  color: #2196f3;
}
.ve__alert-icon {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 1px;
}
.ve__alert-icon svg {
  width: 14px;
  height: 14px;
}
.ve__alert-content {
  flex: 1;
  min-width: 0;
}
.ve__alert-title {
  font-size: 11px;
  font-weight: 600;
  color: var(--text);
  line-height: 1.3;
}
.ve__alert-desc {
  font-size: 10px;
  color: var(--text-400);
  line-height: 1.4;
  margin-top: 2px;
}
.ve__body {
  flex: 1;
  overflow-y: auto;
  overflow-x: hidden;
}
.ve__body::-webkit-scrollbar {
  width: 3px;
}
.ve__body::-webkit-scrollbar-thumb {
  background: var(--transp-2);
  border-radius: 2px;
}
.ve__tabs {
  display: flex;
  border-bottom: 1px solid var(--transp-1);
  flex-shrink: 0;
  background: var(--background);
}
.ve__tab {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 10px 0;
  color: var(--text-500);
  cursor: pointer;
  position: relative;
  transition: color 0.15s;
}
.ve__tab svg {
  width: 18px;
  height: 18px;
}
.ve__tab::after {
  content: "";
  position: absolute;
  bottom: -1px;
  left: 20%;
  right: 20%;
  height: 2px;
  background: var(--accent);
  border-radius: 1px 1px 0 0;
  opacity: 0;
  transform: scaleX(0);
  transition: opacity 0.2s, transform 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
.ve__tab:hover {
  color: var(--text-300);
}
.ve__tab.active {
  color: var(--accent);
}
.ve__tab.active::after {
  opacity: 1;
  transform: scaleX(1);
}
.ve__panel {
  display: none;
  padding: 14px;
}
.ve__panel.active {
  display: block;
  animation: veFadeIn 0.15s ease;
}
@keyframes veFadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.ve__section {
  margin-bottom: 16px;
}
.ve__section:last-child {
  margin-bottom: 0;
}
.ve__section--divider {
  padding-top: 16px;
  border-top: 1px solid var(--transp-05);
}
.ve__section-title {
  font-size: 11px;
  font-weight: 600;
  color: var(--text-500);
  text-transform: uppercase;
  letter-spacing: 0.04em;
  margin: 0 0 10px;
}
.ve__colors {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}
.ve__color {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 5px;
  cursor: pointer;
}
.ve__color-preview {
  width: 40px;
  height: 40px;
  border-radius: 10px;
  border: 1px solid var(--transp-1);
  transition: all 0.15s;
  box-shadow: 0 1px 3px var(--transp-05);
}
.ve__color-preview:hover {
  transform: scale(1.08);
  border-color: var(--transp-3);
  box-shadow: 0 2px 8px var(--transp-1);
}
.ve__color-input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}
.ve__color-name {
  font-size: 9px;
  color: var(--text-500);
  text-align: center;
}
.ve__gradient-types {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 4px;
  margin-bottom: var(--space-md);
}
.ve__gradient-type {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 3px;
  padding: 8px 4px 6px;
  border-radius: 8px;
  border: 1px solid transparent;
  background: transparent;
  color: var(--text-500);
  transition: all 0.15s;
  cursor: pointer;
}
.ve__gradient-type svg {
  width: 18px;
  height: 18px;
}
.ve__gradient-type span {
  font-size: 9px;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.02em;
}
.ve__gradient-type:hover {
  background: var(--transp-05);
  color: var(--text-300);
}
.ve__gradient-type.active {
  border-color: var(--accent);
  background: color-mix(in srgb, var(--accent) 8%, transparent);
  color: var(--accent);
}
.ve__gradient-editor {
  display: flex;
  flex-direction: column;
  gap: var(--space-md);
  animation: veFadeIn 0.2s ease;
}
.ve__gradient-editor[hidden] {
  display: none;
}
.ve__gradient-bar-container {
  display: flex;
  align-items: center;
  gap: 8px;
}
.ve__gradient-bar {
  flex: 1;
  height: 28px;
  border-radius: 6px;
  border: 1px solid var(--transp-1);
  background: var(--transp-05);
  position: relative;
  cursor: pointer;
  overflow: visible;
}
.ve__gradient-bar-track {
  position: absolute;
  inset: 2px;
  border-radius: 4px;
  background: linear-gradient(90deg, #A5FF75 0%, #121214 100%);
}
.ve__gradient-bar-stop {
  position: absolute;
  top: 50%;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  border: 2.5px solid #fff;
  box-shadow: 0 0 0 1.5px rgba(0, 0, 0, 0.25), 0 2px 6px rgba(0, 0, 0, 0.3);
  transform: translate(-50%, -50%);
  cursor: grab;
  z-index: 2;
  transition: transform 0.1s ease, box-shadow 0.15s ease;
}
.ve__gradient-bar-stop:hover {
  transform: translate(-50%, -50%) scale(1.12);
}
.ve__gradient-bar-stop:active {
  cursor: grabbing;
  transform: translate(-50%, -50%) scale(1.05);
}
.ve__gradient-bar-stop.active {
  border-color: #fff;
  box-shadow: 0 0 0 2px var(--accent), 0 0 0 4px rgba(0, 0, 0, 0.15), 0 3px 10px rgba(0, 0, 0, 0.3);
  z-index: 3;
}
.ve__gradient-bar-actions {
  display: flex;
  flex-shrink: 0;
}
.ve__gradient-bar-add {
  width: 28px;
  height: 28px;
  border-radius: 6px;
  border: 1px dashed var(--transp-2);
  background: transparent;
  color: var(--text-500);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.15s;
}
.ve__gradient-bar-add svg {
  width: 14px;
  height: 14px;
}
.ve__gradient-bar-add:hover {
  border-color: var(--accent);
  border-style: solid;
  color: var(--accent);
  background: color-mix(in srgb, var(--accent) 8%, transparent);
}
.ve__gradient-stop-editor {
  background: var(--transp-02);
  border: 1px solid var(--transp-1);
  border-radius: 8px;
  overflow: hidden;
  animation: veFadeIn 0.15s ease;
}
.ve__gradient-stop-editor[hidden] {
  display: none;
}
.ve__gradient-stop-editor-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 7px 10px;
  background: var(--transp-02);
  border-bottom: 1px solid var(--transp-1);
}
.ve__gradient-stop-editor-title {
  font-size: 10px;
  font-weight: 600;
  color: var(--text-500);
  text-transform: uppercase;
  letter-spacing: 0.03em;
}
.ve__gradient-stop-delete {
  width: 22px;
  height: 22px;
  border-radius: 5px;
  border: none;
  background: transparent;
  color: var(--text-500);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.15s;
}
.ve__gradient-stop-delete svg {
  width: 13px;
  height: 13px;
}
.ve__gradient-stop-delete:hover {
  background: var(--error-light);
  color: var(--error);
}
.ve__gradient-stop-delete:disabled {
  opacity: 0.3;
  cursor: not-allowed;
}
.ve__gradient-stop-editor-body {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px;
}
.ve__gradient-stop-opacity {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0 10px 10px;
}
.ve__gradient-stop-opacity .ve__field-label {
  font-size: 12px;
  white-space: nowrap;
}
.ve__opacity-slider {
  flex: 1;
  display: flex;
  align-items: center;
  gap: 8px;
}
.ve__opacity-slider .ve__range {
  flex: 1;
}
.ve__opacity-slider .ve__range-val {
  min-width: 40px;
  font-size: 11px;
}
.ve__gradient-color-picker {
  position: relative;
  width: 40px;
  height: 40px;
  border-radius: 8px;
  border: 1px solid var(--transp-2);
  overflow: hidden;
  cursor: pointer;
  flex-shrink: 0;
  transition: border-color 0.15s;
}
.ve__gradient-color-picker input {
  position: absolute;
  inset: -10px;
  width: calc(100% + 20px);
  height: calc(100% + 20px);
  opacity: 0;
  cursor: pointer;
}
.ve__gradient-color-picker::after {
  content: "";
  position: absolute;
  inset: 0;
  background: inherit;
  pointer-events: none;
}
.ve__gradient-color-picker:hover {
  border-color: var(--accent);
}
.ve__gradient-position-input {
  display: flex;
  align-items: center;
  gap: 4px;
  background: var(--transp-05);
  border: 1px solid var(--transp-1);
  border-radius: 6px;
  padding: 0 8px 0 0;
  overflow: hidden;
}
.ve__gradient-position-input input {
  width: 44px;
  padding: 8px;
  border: none;
  background: transparent;
  color: var(--text);
  font-size: 13px;
  font-weight: 500;
  text-align: center;
}
.ve__gradient-position-input input::-webkit-inner-spin-button, .ve__gradient-position-input input::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.ve__gradient-position-input input:focus {
  outline: none;
}
.ve__gradient-position-input span {
  font-size: 12px;
  color: var(--text-500);
}
.ve__gradient-position-control[hidden] {
  display: none;
}
.ve__gradient-position-preview {
  width: 100%;
  height: 72px;
  border-radius: 8px;
  border: 1px solid var(--transp-1);
  background: var(--transp-02);
  position: relative;
  cursor: crosshair;
  margin-top: 6px;
  background-image: linear-gradient(var(--transp-05) 1px, transparent 1px), linear-gradient(90deg, var(--transp-05) 1px, transparent 1px);
  background-size: 20% 20%;
}
.ve__gradient-position-handle {
  position: absolute;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: white;
  border: 1px solid var(--accent);
  box-shadow: 0 1px 6px rgba(0, 0, 0, 0.25);
  transform: translate(-50%, -50%);
  cursor: grab;
  z-index: 2;
  left: 50%;
  top: 50%;
}
.ve__gradient-position-handle:active {
  cursor: grabbing;
}
.ve__gradient-angle-control[hidden] {
  display: none;
}
.ve__angle-dial-container {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-top: 6px;
}
.ve__angle-dial {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  border: 1px solid var(--transp-2);
  background: var(--transp-02);
  position: relative;
  cursor: pointer;
  flex-shrink: 0;
  transition: border-color 0.15s;
}
.ve__angle-dial::before {
  content: "";
  position: absolute;
  inset: 4px;
  border-radius: 50%;
  background: radial-gradient(circle at 50% 4px, var(--text-500) 1.5px, transparent 1.5px), radial-gradient(circle at 96% 50%, var(--text-500) 1.5px, transparent 1.5px), radial-gradient(circle at 50% 96%, var(--text-500) 1.5px, transparent 1.5px), radial-gradient(circle at 4% 50%, var(--text-500) 1.5px, transparent 1.5px);
}
.ve__angle-dial:hover {
  border-color: var(--accent);
}
.ve__angle-dial-marker {
  position: absolute;
  left: 50%;
  width: 2px;
  height: 45%;
  background: linear-gradient(to bottom, var(--accent), var(--accent) 60%, transparent 60%);
  transform-origin: bottom center;
  transform: translateX(-50%) rotate(135deg);
  border-radius: 2px;
}
.ve__angle-dial-value {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 10px;
  font-weight: 600;
  color: var(--text-400);
  pointer-events: none;
}
.ve__angle-range {
  flex: 1;
}
.ve__gradient-swatch {
  position: relative;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  border: 1px solid var(--transp-2);
  overflow: hidden;
  cursor: pointer;
  background: var(--secondary);
}
.ve__gradient-swatch input {
  position: absolute;
  inset: -10px;
  width: calc(100% + 20px);
  height: calc(100% + 20px);
  opacity: 0;
  cursor: pointer;
}
.ve__gradient-swatch:hover {
  border-color: var(--transp-4);
}
.ve__bg-effects {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 4px;
}
.ve__bg-effect {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 3px;
  padding: 6px 4px 5px;
  border-radius: 6px;
  border: 1px solid transparent;
  background: transparent;
  cursor: pointer;
  transition: all 0.15s;
}
.ve__bg-effect:hover {
  background: var(--transp-05);
}
.ve__bg-effect.active {
  border-color: var(--accent);
  background: color-mix(in srgb, var(--accent) 8%, transparent);
}
.ve__bg-effect.active .ve__bg-effect-label {
  color: var(--accent);
}
.ve__bg-effect-preview {
  width: 26px;
  height: 26px;
  border-radius: 4px;
  background: var(--transp-05);
  position: relative;
  overflow: hidden;
}
.ve__bg-effect-preview.none-preview::after {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--transp-1);
}
.ve__bg-effect-preview.none-preview::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  height: 1px;
  background: var(--text-500);
  transform: rotate(-45deg);
}
.ve__bg-effect-preview.dots-preview {
  background-image: radial-gradient(circle, var(--text-400) 1px, transparent 1px);
  background-size: 5px 5px;
}
.ve__bg-effect-preview.grid-preview {
  background-image: linear-gradient(var(--text-400) 1px, transparent 1px), linear-gradient(90deg, var(--text-400) 1px, transparent 1px);
  background-size: 7px 7px;
}
.ve__bg-effect-preview.cross-preview {
  background-image: linear-gradient(var(--text-400) 1px, transparent 1px), linear-gradient(90deg, var(--text-400) 1px, transparent 1px);
  background-size: 7px 7px;
  background-position: -0.5px -0.5px;
}
.ve__bg-effect-preview.cross-preview::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(circle at center, var(--text-400) 1.5px, transparent 1.5px);
  background-size: 7px 7px;
  background-position: 3px 3px;
}
.ve__bg-effect-preview.diagonal-preview {
  background-image: repeating-linear-gradient(45deg, transparent, transparent 3px, var(--text-400) 3px, var(--text-400) 4px);
}
.ve__bg-effect-preview.squares-preview {
  background-image: linear-gradient(45deg, var(--text-400) 25%, transparent 25%), linear-gradient(-45deg, var(--text-400) 25%, transparent 25%), linear-gradient(45deg, transparent 75%, var(--text-400) 75%), linear-gradient(-45deg, transparent 75%, var(--text-400) 75%);
  background-size: 8px 8px;
  background-position: 0 0, 0 4px, 4px -4px, -4px 0px;
}
.ve__bg-effect-preview.mesh-preview {
  background: radial-gradient(ellipse at 30% 20%, color-mix(in srgb, var(--accent) 30%, transparent) 0%, transparent 50%), radial-gradient(ellipse at 70% 80%, color-mix(in srgb, var(--primary) 30%, transparent) 0%, transparent 50%), radial-gradient(ellipse at 80% 30%, color-mix(in srgb, var(--secondary) 30%, transparent) 0%, transparent 50%);
}
.ve__bg-effect-preview.emoji-preview {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
}
.ve__bg-effect-preview.emoji-preview::after {
  content: "⭐";
  opacity: 0.5;
}
.ve__bg-effect-preview.noise-preview {
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 64 64' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  opacity: 0.5;
}
.ve__bg-effect-label {
  font-size: 9px;
  color: var(--text-500);
  text-transform: capitalize;
  font-weight: 500;
  transition: color 0.15s;
}
.ve__emoji-editor {
  margin-top: var(--space-md);
  padding-top: var(--space-md);
  border-top: 1px solid var(--transp-05);
  animation: veFadeIn 0.2s ease;
}
.ve__emoji-editor[hidden] {
  display: none;
}
.ve__emoji-presets {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin-top: 6px;
  margin-bottom: var(--space-sm);
}
.ve__emoji-preset {
  width: 36px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  border-radius: 8px;
  border: 1px solid transparent;
  background: transparent;
  cursor: pointer;
  transition: all 0.15s;
}
.ve__emoji-preset:hover {
  background: var(--transp-05);
  transform: scale(1.08);
}
.ve__emoji-preset.active {
  border-color: var(--accent);
  background: color-mix(in srgb, var(--accent) 8%, transparent);
}
.ve__emoji-custom-wrap {
  margin-bottom: var(--space-sm);
  animation: veFadeIn 0.15s ease;
}
.ve__emoji-custom-wrap[hidden] {
  display: none;
}
.ve__emoji-input {
  width: 100%;
  padding: 8px 10px;
  font-size: 15px;
  color: var(--text);
  background: var(--transp-02);
  border: 1px solid var(--transp-1);
  border-radius: 6px;
  margin-top: 4px;
  transition: all 0.15s;
}
.ve__emoji-input::placeholder {
  color: var(--text-600);
}
.ve__emoji-input:focus {
  outline: none;
  border-color: var(--accent);
}
.ve__gradient-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 8px;
  padding: 8px 10px;
  background: var(--transp-02);
  border-radius: 6px;
  border: 1px solid var(--transp-1);
}
.ve__gradient-row[hidden] {
  display: none;
}
.ve__gradient-label {
  font-size: 12px;
  color: var(--text-500);
}
.ve__gradient-swatches {
  display: flex;
  gap: 6px;
}
.ve__upload-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}
.ve__upload-slot {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.ve__upload-slot--logo .ve__upload-slot-inner {
  aspect-ratio: 2.5;
}
.ve__upload-slot--logo .ve__upload-slot-inner .ve__upload-slot-preview img {
  object-fit: contain;
  padding: 8px;
}
.ve__upload-slot-inner {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 1.7777777778;
  cursor: pointer;
  border-radius: 6px;
  border: 1px dashed var(--transp-2);
  background: var(--transp-02);
  overflow: hidden;
  transition: border-color 0.15s;
}
.ve__upload-slot-inner:has(img) {
  border-style: solid;
  border-color: var(--transp-1);
}
.ve__upload-slot-inner:hover {
  border-color: var(--transp-3);
}
.ve__upload-slot-inner:not(:has(img)) .ve__upload-slot-overlay {
  opacity: 0.3;
  color: var(--text-400);
}
.ve__upload-slot-inner:hover .ve__upload-slot-overlay {
  opacity: 1;
  background: rgba(0, 0, 0, 0.5);
  color: white;
}
.ve__upload-slot-inner:has(img):not(:hover) .ve__upload-slot-overlay {
  opacity: 0;
}
.ve__upload-slot-preview {
  position: absolute;
  inset: 0;
}
.ve__upload-slot-preview img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.ve__upload-slot-overlay {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity 0.15s, background 0.15s, color 0.15s;
  pointer-events: none;
}
.ve__upload-slot-overlay svg {
  width: 16px;
  height: 16px;
  filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.4));
}
.ve__upload-slot-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 2px;
}
.ve__upload-slot-label {
  font-size: 10px;
  color: var(--text-500);
  font-weight: 500;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.ve__upload-slot-delete {
  width: 16px;
  height: 16px;
  border-radius: 3px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--text-600);
  background: transparent;
  border: none;
  cursor: pointer;
  transition: all 0.15s;
  flex-shrink: 0;
}
.ve__upload-slot-delete svg {
  width: 10px;
  height: 10px;
}
.ve__upload-slot-delete:hover {
  background: var(--error-light);
  color: var(--error);
}
.ve__upload-slot-delete[hidden] {
  display: none;
}
.ve__row {
  display: flex;
  align-items: center;
  gap: 12px;
}
.ve__radius-preview {
  width: 32px;
  height: 32px;
  background: var(--accent);
  border-radius: var(--border1);
  flex-shrink: 0;
  transition: border-radius 0.15s;
}
.ve__slider-wrap {
  flex: 1;
  display: flex;
  align-items: center;
  gap: 10px;
}
.ve__field:last-child {
  margin-bottom: 0;
}
.ve__field--switch {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.ve__field--switch .toggle-switch {
  transform: scale(0.7);
  transform-origin: right center;
}
.ve__field-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 2px;
}
.ve__field-label {
  font-size: 12px;
  color: var(--text-400);
}
.ve__select-wrap {
  position: relative;
}
.ve__select {
  width: 100%;
  padding: 8px 32px 8px 10px;
  font-size: 12px;
  color: var(--text);
  background: var(--transp-02);
  border: 1px solid var(--transp-1);
  border-radius: 6px;
  appearance: none;
  cursor: pointer;
  transition: all 0.15s;
}
.ve__select:hover {
  border-color: var(--transp-3);
}
.ve__select:focus {
  outline: none;
  border-color: var(--accent);
}
.ve__select option {
  background: var(--background);
  color: var(--text);
  padding: 8px;
}
.ve__select-icon {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  width: 12px;
  height: 12px;
  color: var(--text-500);
  pointer-events: none;
}
.ve__range {
  --track-h: 3px;
  --thumb-size: 14px;
  width: 100%;
  -webkit-appearance: none;
  appearance: none;
  height: var(--track-h);
  background: var(--transp-2);
  border-radius: 2px;
  outline: none;
  cursor: pointer;
}
.ve__range::-webkit-slider-thumb {
  -webkit-appearance: none;
  width: var(--thumb-size);
  height: var(--thumb-size);
  border-radius: 50%;
  background: var(--accent);
  border: 2px solid var(--background);
  box-shadow: 0 0 0 1px var(--transp-1);
  cursor: pointer;
  transition: transform 0.1s;
}
.ve__range::-webkit-slider-thumb:hover {
  transform: scale(1.15);
}
.ve__range::-moz-range-thumb {
  width: var(--thumb-size);
  height: var(--thumb-size);
  border-radius: 50%;
  background: var(--accent);
  border: 2px solid var(--background);
  box-shadow: 0 0 0 1px var(--transp-1);
  cursor: pointer;
}
.ve__range-val {
  min-width: 44px;
  font-size: 11px;
  font-weight: 500;
  color: var(--text-400);
  text-align: right;
  font-variant-numeric: tabular-nums;
}
.ve__option-cards {
  display: grid;
  gap: 6px;
  grid-template-columns: repeat(3, 1fr);
}
.ve__option-cards--nav-2col {
  grid-template-columns: repeat(2, 1fr);
}
.ve__option-cards--nav-3col {
  grid-template-columns: repeat(3, 1fr);
}
.ve__option-cards--nav-4col {
  grid-template-columns: repeat(4, 1fr);
}
.ve__option-cards--nav-5col {
  grid-template-columns: repeat(5, 1fr);
}
.ve__option-cards--footer-3col {
  grid-template-columns: repeat(3, 1fr);
}
.ve__option-cards--footer {
  grid-template-columns: repeat(2, 1fr);
}
.ve__option-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  padding: 8px 6px 6px;
  background: transparent;
  border: 1px solid var(--transp-1);
  border-radius: 8px;
  cursor: pointer;
  transition: all 0.15s;
}
.ve__option-card:hover {
  border-color: var(--transp-3);
  background: var(--transp-02);
}
.ve__option-card.active {
  border-color: var(--accent);
  background: color-mix(in srgb, var(--accent) 6%, transparent);
}
.ve__option-card.active .ve__option-label {
  color: var(--accent);
}
.ve__option-preview {
  width: 100%;
  aspect-ratio: 1.3333333333;
  background: var(--background);
  border: 1px solid var(--transp-05);
  border-radius: 4px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  padding: 3px;
  gap: 2px;
}
.ve__option-preview--nav-default .ve__preview-navbar--full {
  height: 7px;
  background: var(--transp-2);
  border-radius: 2px;
  flex-shrink: 0;
}
.ve__option-preview--nav-default .ve__preview-content {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.ve__option-preview--nav-pill .ve__preview-navbar--floating {
  height: 5px;
  width: 55%;
  margin: 3px auto 0;
  background: var(--transp-2);
  border-radius: 9999px;
  flex-shrink: 0;
}
.ve__option-preview--nav-pill .ve__preview-content {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 2px;
  margin-top: 2px;
}
.ve__option-preview--nav-pill-transparent {
  position: relative;
}
.ve__option-preview--nav-pill-transparent .ve__preview-navbar--transparent {
  position: absolute;
  top: 3px;
  left: 50%;
  transform: translateX(-50%);
  height: 5px;
  width: 50%;
  background: transparent;
  border: 1px dashed var(--transp-3);
  border-radius: 9999px;
  z-index: 2;
}
.ve__option-preview--nav-pill-transparent .ve__preview-content {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.ve__option-preview--nav-pill-transparent .ve__preview-block--hero {
  flex: 1.5;
  background: linear-gradient(135deg, color-mix(in srgb, var(--accent) 35%, transparent) 0%, var(--transp-1) 100%);
  border-radius: 2px;
}
.ve__option-preview--nav-pill-full .ve__preview-navbar--pill-full {
  height: 7px;
  width: calc(100% - 4px);
  margin: 2px auto 0;
  background: var(--transp-2);
  border-radius: var(--border05, 4px);
  border: 1px solid var(--transp-05);
  flex-shrink: 0;
}
.ve__option-preview--nav-pill-full .ve__preview-content {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 2px;
  margin-top: 2px;
}
.ve__option-preview--nav-sidebar {
  flex-direction: row;
  padding: 0;
}
.ve__option-preview--nav-sidebar .ve__preview-sidebar {
  width: 20%;
  min-width: 10px;
  background: var(--transp-2);
  border-right: 1px solid var(--transp-05);
  flex-shrink: 0;
}
.ve__option-preview--nav-sidebar .ve__preview-main {
  flex: 1;
  display: flex;
  flex-direction: column;
  padding: 3px;
  gap: 2px;
}
.ve__option-preview--nav-sidebar .ve__preview-navbar--slim {
  height: 5px;
  background: var(--transp-2);
  border-radius: 2px;
  flex-shrink: 0;
}
.ve__option-preview--nav-sidebar .ve__preview-content {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.ve__option-preview--sidebar-default, .ve__option-preview--sidebar-mini {
  flex-direction: row;
  padding: 0;
}
.ve__option-preview--sidebar-default .ve__preview-main, .ve__option-preview--sidebar-mini .ve__preview-main {
  flex: 1;
  display: flex;
  flex-direction: column;
  padding: 3px;
  gap: 2px;
}
.ve__option-preview--sidebar-default .ve__preview-sidebar--full {
  width: 35%;
  background: var(--transp-2);
  border-right: 1px solid var(--transp-05);
  display: flex;
  flex-direction: column;
  padding: 3px;
  gap: 2px;
}
.ve__option-preview--sidebar-default .ve__preview-sidebar-logo {
  height: 5px;
  background: var(--transp-2);
  border-radius: 2px;
}
.ve__option-preview--sidebar-default .ve__preview-sidebar-items {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.ve__option-preview--sidebar-default .ve__preview-sidebar-item {
  height: 3px;
  background: var(--transp-2);
  border-radius: 1px;
}
.ve__option-preview--sidebar-default .ve__preview-sidebar-item:first-child {
  background: color-mix(in srgb, var(--accent) 50%, transparent);
}
.ve__option-preview--sidebar-mini .ve__preview-sidebar--mini {
  width: 18%;
  min-width: 10px;
  background: var(--transp-2);
  border-right: 1px solid var(--transp-05);
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 3px 2px;
  gap: 2px;
}
.ve__option-preview--sidebar-mini .ve__preview-sidebar-icon {
  width: 5px;
  height: 5px;
  background: var(--transp-3);
  border-radius: 1px;
}
.ve__option-preview--sidebar-mini .ve__preview-sidebar-icon:first-child {
  background: color-mix(in srgb, var(--accent) 50%, transparent);
}
.ve__option-preview--sidebar-minimal {
  padding: 0;
}
.ve__option-preview--sidebar-minimal .ve__preview-sidebar--full {
  width: 100%;
  height: 100%;
  background: var(--transp-1);
  border-radius: 3px;
  display: flex;
  flex-direction: column;
  padding: 6px 5px;
  gap: 2px;
}
.ve__option-preview--sidebar-minimal .ve__preview-sidebar-item {
  height: 2px;
  width: 70%;
  background: var(--transp-2);
  border-radius: 1px;
}
.ve__option-preview--sidebar-minimal .ve__preview-sidebar-item--minimal {
  height: 2px;
  width: 65%;
  background: var(--transp-2);
  border-radius: 1px;
}
.ve__option-preview--sidebar-minimal .ve__preview-sidebar-item:first-child {
  background: color-mix(in srgb, var(--accent) 60%, transparent);
  width: 55%;
}
.ve__option-preview--sidebar-full {
  padding: 0;
}
.ve__option-preview--sidebar-full .ve__preview-sidebar--full {
  width: 100%;
  height: 100%;
  background: var(--transp-1);
  border-radius: 3px;
  display: flex;
  flex-direction: column;
  padding: 5px 3px;
  gap: 2px;
}
.ve__option-preview--sidebar-full .ve__preview-sidebar-item {
  height: 5px;
  background: var(--transp-05);
  border-radius: 2px;
  border: 1px solid var(--transp-05);
}
.ve__option-preview--sidebar-full .ve__preview-sidebar-item--active {
  background: color-mix(in srgb, var(--accent) 12%, transparent);
  border-color: color-mix(in srgb, var(--accent) 35%, transparent);
}
.ve__option-preview--sidebar-position-top {
  padding: 0;
}
.ve__option-preview--sidebar-position-top .ve__preview-sidebar--mini {
  width: 100%;
  height: 100%;
  background: var(--transp-1);
  border-radius: 3px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  padding: 5px 3px;
  gap: 3px;
}
.ve__option-preview--sidebar-position-top .ve__preview-sidebar-icon {
  width: 8px;
  height: 8px;
  background: var(--transp-3);
  border-radius: 2px;
}
.ve__option-preview--sidebar-position-top .ve__preview-sidebar-icon:first-child {
  background: color-mix(in srgb, var(--accent) 50%, transparent);
}
.ve__option-preview--sidebar-position-center {
  padding: 0;
}
.ve__option-preview--sidebar-position-center .ve__preview-sidebar--mini {
  width: 100%;
  height: 100%;
  background: var(--transp-1);
  border-radius: 3px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 3px;
  gap: 3px;
}
.ve__option-preview--sidebar-position-center .ve__preview-sidebar-icon {
  width: 8px;
  height: 8px;
  background: var(--transp-3);
  border-radius: 2px;
}
.ve__option-preview--sidebar-position-center .ve__preview-sidebar-icon:first-child {
  background: color-mix(in srgb, var(--accent) 50%, transparent);
}
.ve__option-preview--footer-default .ve__preview-content, .ve__option-preview--footer-minimal .ve__preview-content, .ve__option-preview--footer-expanded .ve__preview-content, .ve__option-preview--footer-glass .ve__preview-content, .ve__option-preview--footer-centered .ve__preview-content, .ve__option-preview--footer-hidden .ve__preview-content {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.ve__option-preview--footer-default .ve__preview-footer, .ve__option-preview--footer-minimal .ve__preview-footer, .ve__option-preview--footer-expanded .ve__preview-footer, .ve__option-preview--footer-glass .ve__preview-footer, .ve__option-preview--footer-centered .ve__preview-footer, .ve__option-preview--footer-hidden .ve__preview-footer {
  flex-shrink: 0;
  background: var(--transp-2);
  border-radius: 2px;
  padding: 2px;
}
.ve__option-preview--footer-minimal .ve__preview-footer--minimal {
  height: 5px;
}
.ve__option-preview--footer-expanded .ve__preview-footer--expanded {
  height: 24px;
}
.ve__option-preview--footer-glass .ve__preview-footer--glass {
  height: 5px;
  width: 50%;
  margin: 0 auto;
  background: var(--transp-2);
  border-radius: 9999px;
  border: 1px solid var(--transp-05);
}
.ve__option-preview--footer-centered .ve__preview-footer--centered {
  height: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.ve__option-preview--footer-centered .ve__preview-footer--centered .ve__preview-footer-center {
  width: 30%;
  height: 3px;
  background: var(--transp-2);
  border-radius: 2px;
}
.ve__option-preview--footer-hidden .ve__preview-content {
  flex: 1;
}
.ve__preview-block {
  flex: 1;
  background: var(--transp-1);
  border-radius: 2px;
}
.ve__preview-footer-cols {
  display: flex;
  gap: 2px;
  height: 100%;
}
.ve__preview-footer-col {
  flex: 1;
  background: var(--transp-2);
  border-radius: 1px;
}
.ve__preview-footer-col--wide {
  flex: 1.5;
}
.ve__option-label {
  font-size: 9px;
  font-weight: 500;
  color: var(--text-500);
  text-align: center;
  line-height: 1.2;
  transition: color 0.15s;
}
.ve__preview-card {
  padding: 14px;
  background: var(--transp-02);
  border: 1px solid var(--transp-05);
  border-radius: 8px;
  margin-top: 6px;
}
.ve__preview-h {
  font-size: var(--h5);
  font-weight: 600;
  margin: 0 0 6px;
  font-family: var(--font-header);
}
.ve__preview-p {
  font-size: var(--p);
  color: var(--text-500);
  margin: 0;
  line-height: 1.6;
}
.ve__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 14px;
  border-top: 1px solid var(--transp-1);
  flex-shrink: 0;
  background: var(--background);
}
.ve__footer-right {
  display: flex;
  gap: 6px;
}
.ve__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  padding: 7px 14px;
  font-size: 12px;
  font-weight: 500;
  border-radius: 6px;
  transition: all 0.15s;
  cursor: pointer;
}
.ve__btn svg {
  width: 13px;
  height: 13px;
}
.ve__btn--text {
  padding: 7px 10px;
  color: var(--text-500);
  background: transparent;
}
.ve__btn--text:hover {
  color: var(--error);
  background: var(--error-light);
}
.ve__btn--secondary {
  color: var(--text-400);
  background: var(--transp-1);
}
.ve__btn--secondary:hover {
  background: var(--transp-2);
  color: var(--text);
}
.ve__btn--primary {
  color: var(--background-950);
  background: var(--accent);
  min-width: 72px;
}
.ve__btn--primary:hover {
  filter: brightness(1.05);
}
.ve__btn--primary:active {
  filter: brightness(0.95);
}
.ve__btn--primary.saving {
  opacity: 0.6;
  pointer-events: none;
}
.ve__backdrop {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.4);
  z-index: 1099;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s, visibility 0.3s;
  backdrop-filter: blur(4px);
}
.ve.open ~ .ve__backdrop {
  opacity: 1;
  visibility: visible;
}
@media (min-width: 769px) {
  .ve__backdrop {
    display: none;
  }
}
.ve #ve-effect-opacity-wrap {
  margin-top: 8px;
}
.ve__color-presets {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6px;
}
.ve__color-preset {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 7px 10px;
  background: var(--transp-02);
  border: 1.5px solid var(--transp-1);
  border-radius: 8px;
  cursor: pointer;
  transition: all 0.15s;
}
.ve__color-preset:hover {
  background: var(--transp-05);
  border-color: var(--transp-2);
}
.ve__color-preset.active {
  border-color: var(--accent);
  background: color-mix(in srgb, var(--accent) 6%, transparent);
}
.ve__color-preset.active .ve__color-preset-name {
  color: var(--accent);
}
.ve__color-preset-swatch {
  display: flex;
  width: 28px;
  height: 28px;
  border-radius: 6px;
  overflow: hidden;
  flex-shrink: 0;
  flex-wrap: wrap;
  border: 1px solid var(--transp-1);
}
.ve__color-preset-swatch i {
  display: block;
  width: 50%;
  height: 50%;
}
.ve__color-preset-name {
  font-size: 11px;
  font-weight: 500;
  color: var(--text-400);
  line-height: 1.2;
  transition: color 0.15s;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.ve__font-cards {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 6px;
}
.ve__font-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 12px 4px 8px;
  background: var(--transp-02);
  border: 1.5px solid var(--transp-1);
  border-radius: 10px;
  cursor: pointer;
  transition: all 0.15s;
  user-select: none;
}
.ve__font-card input[type="radio"] {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
  pointer-events: none;
}
.ve__font-card:hover {
  background: var(--transp-05);
  border-color: var(--transp-2);
}
.ve__font-card.active {
  border-color: var(--accent);
  background: color-mix(in srgb, var(--accent) 6%, transparent);
}
.ve__font-card.active .ve__font-card-name {
  color: var(--accent);
}
.ve__font-card-preview {
  font-size: 24px;
  font-weight: 400;
  line-height: 1;
  color: var(--text);
  letter-spacing: -0.02em;
}
.ve__font-card-name {
  font-size: 9px;
  font-weight: 500;
  color: var(--text-500);
  text-align: center;
  line-height: 1.1;
  transition: color 0.15s;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
}
@media (min-width: 769px) {
  body.ve-open {
    margin-right: 400px;
    transition: margin-right 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  }
}
@media (max-width: 768px) {
  .ve {
    width: 100%;
    height: 85vh;
    height: 85dvh;
    top: auto;
    bottom: 0;
    border-left: none;
    border-top: 1px solid var(--transp-1);
    border-radius: 16px 16px 0 0;
    transform: translateY(100%);
  }
  .ve.open {
    transform: translateY(0);
  }
  .ve__header {
    padding-top: 20px;
  }
  .ve__header::before {
    content: "";
    position: absolute;
    top: 8px;
    left: 50%;
    transform: translateX(-50%);
    width: 36px;
    height: 4px;
    background: var(--transp-3);
    border-radius: 2px;
  }
}
.badge {
  font-size: var(--small);
  padding: var(--space-2xs) var(--space-sm);
  line-height: 1.4;
  margin: 0;
  border-radius: 25px;
  text-decoration: none;
  transition: all var(--transition) ease;
}
.badge.secondary {
  background-color: var(--secondary-300);
  color: var(--secondary-950);
}
.badge.accent {
  background-color: var(--accent);
  color: var(--accent-900);
}
.badge.primary {
  background-color: var(--primary);
  color: var(--primary-950);
}
.badge.error {
  background-color: var(--error-light);
  color: var(--error);
}
.badge.warning {
  background-color: var(--warning-light);
  color: var(--warning);
}
.badge.info {
  background-color: var(--info-light);
  color: var(--info);
}
.badge.success {
  background-color: var(--success-light);
  color: var(--success);
}
.badge.ghost-accent {
  background-color: var(--accent-900);
  border: 1px solid var(--accent-900);
  color: var(--accent);
}
.badge.ghost-accent[href]:hover, .badge.ghost-accent[type="button"]:hover {
  background-color: var(--accent);
  border-color: var(--accent);
  color: var(--accent-900);
}
.badge.ghost-primary {
  background-color: var(--transp-1);
  color: var(--primary);
}
.badge.ghost-primary[href]:hover, .badge.ghost-primary[type="button"]:hover {
  background-color: var(--primary);
  color: var(--primary-950);
}
.confirmation-dialog__icon > svg {
  border-radius: 50%;
  background-color: var(--transp-1);
  color: var(--primary);
  width: 50px;
  height: 50px;
  padding: var(--space-sm);
}
.confirmation-dialog__icon > svg.icon-error {
  color: var(--error);
  background-color: var(--error-light);
}
.confirmation-dialog__icon > svg.icon-success {
  color: var(--success);
  background-color: var(--success-light);
}
.confirmation-dialog__icon > svg.icon-warning {
  color: var(--warning);
  background-color: var(--warning-light);
}
.confirmation-dialog__icon > svg.icon-info {
  color: var(--info);
  background-color: var(--info-light);
}
#confirmation-dialog {
  z-index: 9998;
}
#confirmation-dialog-content {
  margin: var(--space-lg) 0;
}
#confirmation-dialog-message {
  max-width: 450px;
  line-height: 1.7;
  font-size: var(--p);
  color: var(--text-200);
}
.admin-onboarding {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 9999;
  display: flex;
  justify-content: center;
  align-items: center;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
  backdrop-filter: blur(10px);
}
.admin-onboarding.active {
  opacity: 1;
  visibility: visible;
}
.admin-onboarding.hidden {
  display: none;
}
.admin-onboarding__backdrop {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: var(--blurred-background);
  z-index: -1;
}
.admin-onboarding__container {
  display: flex;
  width: 85%;
  max-width: 1000px;
  height: 75vh;
  max-height: 600px;
  border-radius: var(--border05);
  animation: slideUp 0.4s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}
.admin-onboarding__sidebar {
  width: 300px;
  display: flex;
  flex-direction: column;
  padding-top: var(--space-md);
}
.admin-onboarding__steps {
  flex: 1;
  overflow-y: auto;
  padding: var(--space-sm);
}
.admin-onboarding__step {
  display: flex;
  align-items: center;
  padding: var(--space-sm);
  margin-bottom: var(--space-xs);
  cursor: pointer;
  transition: all 0.2s ease;
  border-radius: var(--border05);
}
.admin-onboarding__step:hover {
  background-color: var(--transp-05);
}
.admin-onboarding__step.active {
  background-color: var(--transp-1);
}
.admin-onboarding__step.active .admin-onboarding__step-icon {
  color: var(--accent);
}
.admin-onboarding__step.active .admin-onboarding__step-title {
  color: var(--text);
  font-weight: 600;
}
.admin-onboarding__step-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 8px;
  background-color: var(--transp-1);
  margin-right: var(--space-sm);
  color: var(--text-400);
  flex-shrink: 0;
  transition: all 0.2s ease;
}
.admin-onboarding__step-info {
  flex: 1;
}
.admin-onboarding__step-title {
  font-size: var(--p-small);
  font-weight: 500;
  color: var(--text-200);
  transition: color 0.2s ease;
}
.admin-onboarding__step-subtitle {
  font-size: var(--small);
  color: var(--text-500);
  transition: color 0.2s ease;
}
.admin-onboarding__content {
  flex: 1;
  display: flex;
  flex-direction: column;
  position: relative;
}
.admin-onboarding__content-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-direction: column;
  padding: var(--space-md);
  gap: var(--space-sm);
}
.admin-onboarding__content-header-container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}
.admin-onboarding__content-header h4 {
  font-weight: 600;
  color: var(--text);
  font-size: var(--h5);
}
.admin-onboarding__nav {
  display: flex;
  align-items: center;
}
.admin-onboarding__step-counter {
  font-size: var(--small);
  color: var(--text-400);
  margin: 0 var(--space-sm);
  min-width: 30px;
  text-align: center;
}
.admin-onboarding__nav-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background-color: var(--transp-1);
  color: var(--text);
  cursor: pointer;
  transition: all 0.2s ease;
}
.admin-onboarding__nav-btn:hover {
  background-color: var(--transp-2);
}
.admin-onboarding__nav-btn:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.admin-onboarding__nav-btn:disabled:hover {
  background-color: var(--transp-1);
  transform: none;
}
.admin-onboarding__slide-container {
  flex: 1;
  position: relative;
}
.admin-onboarding__slide {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  visibility: hidden;
  transition: 0.3s ease;
  transform: translateX(30px);
  display: flex;
  flex-direction: column;
}
.admin-onboarding__slide.active {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
  z-index: 1;
}
.admin-onboarding__slide-image {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: var(--space-md);
  flex: 1;
}
.admin-onboarding__slide-image img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  border-radius: var(--border05);
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
}
.admin-onboarding__slide-content {
  padding: 0 var(--space-md) var(--space-md);
  color: var(--text-200);
}
.admin-onboarding__slide-content p {
  margin-bottom: var(--space-2xs);
  font-size: var(--p-small);
  line-height: 1.5;
}
.admin-onboarding__slide-content code {
  background-color: var(--transp-1);
  padding: 2px 6px;
  border-radius: 3px;
  font-size: 90%;
  color: var(--accent);
}
.admin-onboarding__action {
  margin-top: var(--space-sm);
  display: flex;
  justify-content: center;
}
.admin-onboarding__progress {
  height: 3px;
  background-color: var(--transp-1);
  width: 100%;
}
.admin-onboarding__progress-bar {
  height: 100%;
  background-color: var(--accent);
  width: 16.67%;
  border-radius: 50px;
  transition: width 0.3s ease;
}
@keyframes slideUp {
  from {
    opacity: 0;
    transform: translateY(15px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@media screen and (max-width: 980px) {
  .admin-onboarding__container {
    flex-direction: column;
    width: 90%;
    height: 90vh;
    max-height: none;
  }
  .admin-onboarding__sidebar {
    width: 100%;
    height: auto;
    border-right: none;
    border-bottom: 1px solid var(--transp-1);
    padding-top: var(--space-sm);
  }
  .admin-onboarding__steps {
    display: flex;
    overflow-x: auto;
    overflow-y: hidden;
    padding: var(--space-xs);
  }
  .admin-onboarding__step {
    flex-direction: column;
    align-items: center;
    text-align: center;
    min-width: 120px;
    margin-right: var(--space-sm);
    margin-bottom: 0;
    padding: var(--space-sm) var(--space-xs);
  }
  .admin-onboarding__step:hover {
    transform: translateY(-2px);
  }
  .admin-onboarding__step-icon {
    margin-right: 0;
    margin-bottom: var(--space-xs);
  }
  .admin-onboarding__content-header {
    padding: var(--space-sm);
  }
  .admin-onboarding__content-header h4 {
    font-size: var(--p);
  }
  .admin-onboarding__slide-image {
    padding: var(--space-sm);
  }
  .admin-onboarding__slide-content {
    padding: 0 var(--space-sm) var(--space-sm);
  }
}
@media screen and (max-width: 480px) {
  .admin-onboarding__container {
    width: 100%;
    height: 100vh;
    border-radius: 0;
  }
  .admin-onboarding__step {
    min-width: 150px;
  }
}
.textarea-wrapper {
  position: relative;
}
.textarea__field-container {
  gap: 8px;
  position: relative;
  width: 100%;
  padding: 6px 12px;
  font-size: 14px;
  border: 1px solid var(--transp-2);
  border-radius: 12px;
  color: var(--text);
  background-color: var(--transp-05);
  transition: border-color 0.15s, box-shadow 0.15s;
}
.textarea__field-container:hover:not(:focus-within):not(.has-error):not(.textarea__field-container-readonly) {
  border-color: var(--transp-3);
}
.textarea__field-container:focus-within:not(.textarea__field-container-readonly):not(.has-error) {
  border-color: var(--primary-300);
}
.textarea__field-container.has-error {
  border-color: var(--error);
}
.textarea__field {
  font: inherit;
  outline: 0;
  border: 0;
  padding: 0;
  margin: 0;
  flex: 1;
  background-color: transparent;
  color: inherit;
  width: 100%;
  resize: vertical;
  min-height: 5em;
  line-height: 1.5;
}
.textarea__field::placeholder {
  color: var(--text-500);
}
.textarea__error {
  color: var(--error);
  font-size: var(--small);
  font-weight: 500;
  letter-spacing: 0.02em;
  margin-top: 0.2em;
}
.richtext-editor {
  border-radius: var(--border05);
  border: none;
  transition: all var(--transition);
  background-color: transparent;
}
.richtext-editor-wrapper {
  margin-bottom: var(--space-md);
}
.richtext-editor-wrapper.is-invalid .tiptap-editor {
  border: 1px solid var(--error);
}
.tiptap-editor {
  border-radius: var(--border05);
  transition: border-color var(--transition), box-shadow var(--transition);
  overflow: visible;
  margin-bottom: 0;
  border: 1px solid var(--transp-1);
  position: relative;
}
.tiptap-editor .tiptap-content-area {
  position: relative;
}
.tiptap-editor .ProseMirror {
  border-radius: 0;
  border: none;
  color: var(--text);
  background-color: transparent;
  font-family: var(--font);
  font-size: var(--p);
  line-height: 1.6;
  padding: 1rem var(--space-md);
  min-height: 200px;
  outline: none;
  white-space: pre-wrap;
}
.tiptap-editor .ProseMirror > * + * {
  margin-top: 0.75em;
}
.tiptap-editor .ProseMirror p.is-editor-empty:first-child::before {
  content: attr(data-placeholder);
  float: left;
  color: var(--text-600);
  pointer-events: none;
  height: 0;
}
.tiptap-editor .ProseMirror a {
  cursor: text;
}
.tiptap-editor .ProseMirror img {
  max-width: 100%;
  height: auto;
  border-radius: var(--border05);
  cursor: pointer;
  transition: outline 0.15s;
}
.tiptap-editor .ProseMirror img.ProseMirror-selectednode {
  outline: 2px solid var(--accent);
  border-radius: var(--border05);
}
.tiptap-editor .ProseMirror [data-resize-container] {
  display: inline-flex !important;
  line-height: 0;
}
.tiptap-editor .ProseMirror [data-resize-container].ProseMirror-selectednode {
  outline: 2px solid var(--accent);
  border-radius: var(--border05);
}
.tiptap-editor .ProseMirror [data-resize-container].ProseMirror-selectednode [data-resize-handle], .tiptap-editor .ProseMirror [data-resize-container]:hover [data-resize-handle] {
  opacity: 1;
}
.tiptap-editor .ProseMirror [data-resize-handle] {
  width: 10px;
  height: 10px;
  background: var(--accent);
  border: 2px solid #fff;
  border-radius: 50%;
  z-index: 10;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3);
  opacity: 0;
  transition: opacity 0.15s;
}
.tiptap-editor .ProseMirror [data-resize-handle][data-resize-handle="top-left"] {
  cursor: nwse-resize;
  transform: translate(-50%, -50%);
}
.tiptap-editor .ProseMirror [data-resize-handle][data-resize-handle="top-right"] {
  cursor: nesw-resize;
  transform: translate(50%, -50%);
}
.tiptap-editor .ProseMirror [data-resize-handle][data-resize-handle="bottom-left"] {
  cursor: nesw-resize;
  transform: translate(-50%, 50%);
}
.tiptap-editor .ProseMirror [data-resize-handle][data-resize-handle="bottom-right"] {
  cursor: nwse-resize;
  transform: translate(50%, 50%);
}
.tiptap-editor .ProseMirror [data-resize-container][data-resize-state="true"] [data-resize-handle] {
  opacity: 1;
}
.tiptap-editor .ProseMirror .tableWrapper {
  overflow-x: auto;
  margin: 1em 0;
  position: relative;
}
.tiptap-editor .ProseMirror table {
  border-collapse: collapse;
  table-layout: fixed;
  width: 100%;
  overflow: visible;
  margin: 0;
  border-radius: 4px;
}
.tiptap-editor .ProseMirror table td, .tiptap-editor .ProseMirror table th {
  border: 1px solid var(--transp-2);
  padding: 0.5rem 0.75rem;
  min-width: 80px;
  vertical-align: top;
  position: relative;
  box-sizing: border-box;
  transition: background-color 0.1s;
}
.tiptap-editor .ProseMirror table td:hover, .tiptap-editor .ProseMirror table th:hover {
  background-color: var(--transp-05);
}
.tiptap-editor .ProseMirror table td p, .tiptap-editor .ProseMirror table th p {
  margin: 0;
}
.tiptap-editor .ProseMirror table th {
  background-color: var(--transp-05);
  font-weight: 600;
}
.tiptap-editor .ProseMirror table th:hover {
  background-color: var(--transp-1);
}
.tiptap-editor .ProseMirror table .selectedCell {
  background-color: rgba(var(--accent-rgb, 99, 102, 241), 0.08);
}
.tiptap-editor .ProseMirror table .selectedCell::after {
  content: "";
  position: absolute;
  inset: 0;
  border: 2px solid var(--accent);
  pointer-events: none;
}
.tiptap-editor .ProseMirror .column-resize-handle {
  position: absolute;
  z-index: 20;
  background-color: var(--accent);
  pointer-events: none;
  width: 2px !important;
  border-radius: 1px;
}
.tiptap-editor .ProseMirror.resize-cursor {
  cursor: col-resize;
}
.tiptap-editor .ProseMirror ul[data-type="taskList"] {
  list-style: none;
  padding: 0;
  margin: 0.5em 0;
}
.tiptap-editor .ProseMirror ul[data-type="taskList"] li[data-type="taskItem"] {
  display: flex;
  align-items: flex-start;
  gap: 0.5em;
  margin: 0.25em 0;
}
.tiptap-editor .ProseMirror ul[data-type="taskList"] li[data-type="taskItem"] > label {
  flex: 0 0 auto;
  margin-top: 0.15em;
  user-select: none;
}
.tiptap-editor .ProseMirror ul[data-type="taskList"] li[data-type="taskItem"] > label input[type="checkbox"] {
  cursor: pointer;
  width: 16px;
  height: 16px;
  accent-color: var(--accent);
}
.tiptap-editor .ProseMirror ul[data-type="taskList"] li[data-type="taskItem"] > div {
  flex: 1;
  min-width: 0;
}
.tiptap-editor .ProseMirror ul[data-type="taskList"] li[data-type="taskItem"][data-checked="true"] > div {
  text-decoration: line-through;
  opacity: 0.6;
}
.tiptap-editor .ProseMirror ul[data-type="taskList"] ul[data-type="taskList"] {
  margin-left: 1.5em;
}
.tiptap-editor .ProseMirror blockquote {
  border-left: 3px solid var(--accent);
  padding-left: 1rem;
  margin-left: 0;
  color: var(--text-400);
}
.tiptap-editor .ProseMirror pre {
  background: var(--transp-1);
  border-radius: var(--border05);
  padding: 0.75rem 1rem;
  overflow-x: auto;
}
.tiptap-editor .ProseMirror pre code {
  background: none;
  padding: 0;
  font-size: 0.9em;
}
.tiptap-editor .ProseMirror code {
  background: var(--transp-1);
  border-radius: 4px;
  padding: 0.15rem 0.3rem;
  font-size: 0.9em;
  color: var(--accent);
}
.tiptap-editor .ProseMirror hr {
  border: none;
  border-top: 1px solid var(--transp-2);
  margin: 1.5em 0;
}
.tiptap-editor .ProseMirror mark {
  background-color: #fef08a;
  border-radius: 2px;
  padding: 0.1em 0.2em;
}
.tiptap-editor .ProseMirror iframe {
  max-width: 100%;
  border-radius: var(--border05);
}
.tiptap-editor .tiptap-toolbar {
  border: none;
  background-color: var(--transp-05);
  padding: 4px 8px;
  border-bottom: 1px solid var(--transp-1);
  display: flex;
  flex-wrap: wrap;
  gap: 1px;
  align-items: center;
}
.tiptap-editor .tiptap-toolbar button {
  color: var(--text-500);
  background: none;
  border: none;
  border-radius: 6px;
  transition: all 0.15s;
  margin: 0;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  padding: 0;
}
.tiptap-editor .tiptap-toolbar button svg {
  width: 16px;
  height: 16px;
  fill: currentColor;
}
.tiptap-editor .tiptap-toolbar button:hover {
  background-color: var(--transp-1);
  color: var(--text-200);
}
.tiptap-editor .tiptap-toolbar button.is-active {
  background-color: rgba(var(--accent-rgb, 99, 102, 241), 0.12);
  color: var(--accent);
}
.tiptap-editor .tiptap-toolbar .toolbar-separator {
  width: 1px;
  height: 20px;
  background-color: var(--transp-2);
  margin: 0 4px;
  opacity: 0.4;
}
.tiptap-editor .tiptap-toolbar .toolbar-group {
  display: flex;
  align-items: center;
  gap: 1px;
}
.tiptap-editor .toolbar-dropdown {
  position: relative;
  display: inline-flex;
}
.tiptap-editor .toolbar-dropdown .toolbar-dropdown-toggle {
  display: flex;
  align-items: center;
  gap: 2px;
  width: auto;
  padding: 0 6px;
}
.tiptap-editor .toolbar-dropdown .toolbar-dropdown-toggle .toolbar-dropdown-chevron {
  display: flex;
}
.tiptap-editor .toolbar-dropdown .toolbar-dropdown-toggle .toolbar-dropdown-chevron svg {
  width: 12px;
  height: 12px;
  transition: transform 0.15s;
}
.tiptap-editor .toolbar-dropdown .toolbar-dropdown-menu {
  display: none;
  position: absolute;
  top: calc(100% + 4px);
  left: 0;
  background: var(--background);
  border: 1px solid var(--transp-1);
  border-radius: 8px;
  padding: 4px;
  min-width: 160px;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15);
  z-index: 60;
}
.tiptap-editor .toolbar-dropdown .toolbar-dropdown-menu.is-open {
  display: block;
}
.tiptap-editor .toolbar-dropdown .toolbar-dropdown-item {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 10px;
  border: none;
  background: none;
  color: var(--text);
  font-size: 13px;
  border-radius: 6px;
  cursor: pointer;
  transition: all 0.1s;
  height: auto;
}
.tiptap-editor .toolbar-dropdown .toolbar-dropdown-item .dropdown-item-icon {
  display: flex;
  width: 18px;
  height: 18px;
}
.tiptap-editor .toolbar-dropdown .toolbar-dropdown-item .dropdown-item-icon svg {
  width: 18px;
  height: 18px;
}
.tiptap-editor .toolbar-dropdown .toolbar-dropdown-item:hover {
  background: var(--transp-1);
}
.tiptap-editor .toolbar-dropdown .toolbar-dropdown-item.is-active {
  background: rgba(var(--accent-rgb, 99, 102, 241), 0.1);
  color: var(--accent);
}
.tiptap-editor .tiptap-statusbar {
  color: var(--text-600);
  padding: 4px 12px;
  background-color: var(--transp-05);
  border-top: 1px solid var(--transp-1);
  font-size: 0.75em;
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  user-select: none;
}
.tiptap-editor.tiptap-fullscreen {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 100;
  background-color: var(--background);
  border-radius: 0;
  border: none;
  display: flex;
  flex-direction: column;
}
.tiptap-editor.tiptap-fullscreen .tiptap-toolbar {
  padding: 8px 16px;
  background-color: var(--transp-1);
  flex-shrink: 0;
}
.tiptap-editor.tiptap-fullscreen .tiptap-content-area {
  flex: 1 !important;
  max-height: none !important;
  overflow-y: auto !important;
}
.tiptap-editor.tiptap-fullscreen .ProseMirror {
  padding: 2rem;
  max-width: 900px;
  margin: 0 auto;
  min-height: 100%;
}
.tiptap-editor.tiptap-fullscreen .tiptap-statusbar {
  flex-shrink: 0;
  padding: 6px 16px;
}
.popup-body-list {
  padding: 4px;
}
.popup-list-item {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 12px;
  border: none;
  background: none;
  color: var(--text);
  font-size: 13px;
  border-radius: 8px;
  cursor: pointer;
  transition: all 0.1s;
}
.popup-list-item .popup-list-icon {
  display: flex;
  width: 18px;
  height: 18px;
  color: var(--text-500);
}
.popup-list-item .popup-list-icon svg {
  width: 18px;
  height: 18px;
  fill: currentColor;
}
.popup-list-item:hover {
  background: var(--transp-1);
}
.popup-list-item-danger {
  color: #ef4444;
}
.popup-list-item-danger .popup-list-icon {
  color: #ef4444;
}
.popup-list-item-danger:hover {
  background: rgba(239, 68, 68, 0.08);
}
.table-grid-picker {
  display: grid;
  grid-template-columns: repeat(8, 1fr);
  gap: 3px;
  padding: 4px;
  margin-bottom: 8px;
}
.table-grid-picker .table-grid-cell {
  width: 24px;
  height: 24px;
  border: 1px solid var(--transp-2);
  border-radius: 3px;
  cursor: pointer;
  transition: all 0.1s;
}
.table-grid-picker .table-grid-cell.is-selected {
  background: rgba(var(--accent-rgb, 99, 102, 241), 0.2);
  border-color: var(--accent);
}
.table-grid-picker .table-grid-cell:hover {
  border-color: var(--accent);
}
.table-grid-label {
  text-align: center;
  font-size: 12px;
  color: var(--text-500);
  font-weight: 500;
}
.tiptap-bubble-menu {
  position: absolute;
  left: 0;
  top: 0;
  background: var(--background);
  border: 1px solid var(--transp-1);
  border-radius: 10px;
  padding: 4px;
  display: flex;
  align-items: center;
  gap: 2px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15);
  white-space: nowrap;
  pointer-events: auto;
}
.tiptap-bubble-menu.tiptap-bubble-link {
  z-index: 52;
}
.tiptap-bubble-menu.tiptap-bubble-image {
  z-index: 53;
}
.tiptap-bubble-menu.tiptap-bubble-text {
  z-index: 54;
}
.tiptap-bubble-menu.tiptap-bubble-table {
  z-index: 51;
}
.tiptap-bubble-menu .bubble-link-url {
  font-size: 12px;
  color: var(--accent);
  padding: 4px 8px;
  text-decoration: none;
  max-width: 200px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.tiptap-bubble-menu .bubble-link-url:hover {
  text-decoration: underline;
}
.tiptap-bubble-menu .bubble-btn {
  width: 28px;
  height: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
  background: none;
  color: var(--text-500);
  border-radius: 6px;
  cursor: pointer;
  transition: all 0.1s;
  padding: 0;
  font-size: 12px;
  font-weight: 600;
}
.tiptap-bubble-menu .bubble-btn svg {
  width: 14px;
  height: 14px;
  fill: currentColor;
}
.tiptap-bubble-menu .bubble-btn:hover {
  background: var(--transp-1);
  color: var(--text-200);
}
.tiptap-bubble-menu .bubble-btn.is-active {
  background: rgba(var(--accent-rgb, 99, 102, 241), 0.12);
  color: var(--accent);
}
.tiptap-bubble-menu .bubble-btn-danger:hover {
  background: rgba(239, 68, 68, 0.1);
  color: #ef4444;
}
.tiptap-bubble-menu .bubble-sep {
  width: 1px;
  height: 18px;
  background: var(--transp-2);
  margin: 0 2px;
}
.tiptap-bubble-menu .bubble-heading-dropdown {
  position: relative;
}
.tiptap-bubble-menu .bubble-heading-toggle {
  display: flex;
  align-items: center;
  gap: 2px;
  width: auto !important;
  padding: 0 6px !important;
}
.tiptap-bubble-menu .bubble-heading-chevron {
  display: flex;
}
.tiptap-bubble-menu .bubble-heading-chevron svg {
  width: 10px;
  height: 10px;
  transition: transform 0.15s;
}
.tiptap-bubble-menu .bubble-heading-menu {
  display: none;
  position: absolute;
  top: calc(100% + 4px);
  left: 0;
  background: var(--background);
  border: 1px solid var(--transp-1);
  border-radius: 8px;
  padding: 4px;
  min-width: 140px;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15);
  z-index: 60;
  white-space: nowrap;
}
.tiptap-bubble-menu .bubble-heading-menu.is-open {
  display: block;
}
.tiptap-bubble-menu .bubble-heading-item {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 10px;
  border: none;
  background: none;
  color: var(--text);
  font-size: 13px;
  border-radius: 6px;
  cursor: pointer;
  transition: all 0.1s;
}
.tiptap-bubble-menu .bubble-heading-item svg {
  width: 16px;
  height: 16px;
  fill: currentColor;
}
.tiptap-bubble-menu .bubble-heading-item:hover {
  background: var(--transp-1);
}
.tiptap-bubble-menu .bubble-heading-item.is-active {
  background: rgba(var(--accent-rgb, 99, 102, 241), 0.1);
  color: var(--accent);
}
.modal .modal__footer {
  display: flex;
  gap: 8px;
  justify-content: flex-end;
}
.table-controls-overlay {
  position: absolute;
  pointer-events: none;
  z-index: 25;
  display: none;
}
.table-controls-overlay > * {
  pointer-events: auto;
}
.table-ctrl {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  background: none;
  border: 1.5px dashed var(--transp-2);
  border-radius: 6px;
  color: var(--text-600);
  cursor: pointer;
  transition: all 0.15s;
  padding: 0;
}
.table-ctrl svg {
  width: 12px;
  height: 12px;
}
.table-ctrl:hover {
  border-color: var(--accent);
  color: var(--accent);
  background: rgba(var(--accent-rgb, 99, 102, 241), 0.06);
  border-style: solid;
}
.table-ctrl-add-col {
  width: 20px;
}
.table-ctrl-add-row {
  height: 22px;
}
.table-ctrl-col-grip, .table-ctrl-row-grip {
  position: absolute;
  background: none;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  color: var(--text-600);
  opacity: 0.4;
  transition: all 0.15s;
}
.table-ctrl-col-grip:hover, .table-ctrl-row-grip:hover {
  opacity: 1;
  background: rgba(var(--accent-rgb, 99, 102, 241), 0.12);
  color: var(--accent);
}
.table-ctrl-col-grip svg, .table-ctrl-row-grip svg {
  width: 12px;
  height: 12px;
}
.table-context-menu {
  position: fixed;
  z-index: 200;
  background: var(--background);
  border: 1px solid var(--transp-1);
  border-radius: 10px;
  padding: 4px;
  min-width: 200px;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.18), 0 2px 8px rgba(0, 0, 0, 0.08);
  animation: tableCtxFadeIn 0.12s ease-out;
}
@keyframes tableCtxFadeIn {
  from {
    opacity: 0;
    transform: scale(0.96);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}
.table-ctx-item {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  padding: 7px 12px;
  border: none;
  background: none;
  color: var(--text);
  font-size: 13px;
  border-radius: 6px;
  cursor: pointer;
  transition: all 0.1s;
  text-align: left;
}
.table-ctx-item:hover {
  background: var(--transp-1);
}
.table-ctx-danger {
  color: #ef4444;
}
.table-ctx-danger:hover {
  background: rgba(239, 68, 68, 0.08);
}
.table-ctx-sep {
  height: 1px;
  background: var(--transp-1);
  margin: 3px 8px;
}
.tiptap-upload-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.4);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  color: #fff;
  font-size: var(--p);
  z-index: 10;
  border-radius: var(--border05);
  pointer-events: none;
  backdrop-filter: blur(2px);
}
.tiptap-upload-overlay .upload-spinner {
  width: 24px;
  height: 24px;
  border: 3px solid rgba(255, 255, 255, 0.3);
  border-top-color: #fff;
  border-radius: 50%;
  animation: tiptap-spin 0.6s linear infinite;
}
@keyframes tiptap-spin {
  to {
    transform: rotate(360deg);
  }
}
.metrics {
  margin-bottom: var(--space-md);
}
.metrics__title {
  margin-bottom: var(--space-sm);
  color: var(--text);
  font-weight: 600;
  font-size: var(--h4);
}
.metrics__grid {
  display: flex;
  background-color: var(--blurred-background);
  border: 1px solid var(--transp-1);
  border-radius: var(--border1);
  box-shadow: var(--shadow-small);
  overflow: hidden;
}
.metrics__grid > .metric {
  flex: 1;
  min-width: 0;
  position: relative;
  border: none;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
.metrics__grid > .metric:hover {
  background-color: var(--transp-05);
}
.metrics__grid > .metric + .metric::before {
  content: "";
  position: absolute;
  left: 0;
  top: var(--space-md);
  bottom: var(--space-md);
  width: 1px;
  background: var(--transp-1);
}
.metrics--cards .metrics__grid {
  display: grid;
  grid-template-columns: repeat(var(--metrics-cols, auto-fit), minmax(200px, 1fr));
  gap: var(--space-md);
  background: transparent;
  border: none;
  border-radius: 0;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  overflow: visible;
}
.metrics--cards .metrics__grid > .metric {
  background-color: var(--blurred-background);
  border: 1px solid var(--transp-1);
  border-radius: var(--border1);
  box-shadow: var(--shadow-small);
}
.metrics--cards .metrics__grid > .metric + .metric::before {
  display: none;
}
.metrics--cards .metrics__grid > .metric:hover {
  border-color: var(--transp-2);
}
.metric {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: var(--space-xs);
  padding: var(--space-lg);
  height: 100%;
  background-color: var(--blurred-background);
  border: 1px solid var(--transp-1);
  border-radius: var(--border1);
  box-shadow: var(--shadow-small);
  transition: background-color var(--transition) ease-out;
}
.metric--primary .metric__icon-svg {
  color: var(--primary);
}
.metric--primary .metric__progress-fill {
  background: var(--primary);
}
.metric--success .metric__icon-svg {
  color: var(--success);
}
.metric--success .metric__progress-fill {
  background: var(--success);
}
.metric--warning .metric__icon-svg {
  color: var(--warning);
}
.metric--warning .metric__progress-fill {
  background: var(--warning);
}
.metric--error .metric__icon-svg {
  color: var(--error);
}
.metric--error .metric__progress-fill {
  background: var(--error);
}
.metric--info .metric__icon-svg {
  color: var(--info);
}
.metric--info .metric__progress-fill {
  background: var(--info);
}
.metric--sm {
  padding: var(--space-md);
  gap: var(--space-2xs);
}
.metric--sm .metric__number {
  font-size: var(--h5);
}
.metric--lg {
  padding: var(--space-xl) var(--space-lg);
}
.metric--lg .metric__number {
  font-size: var(--h1);
}
.metric__header {
  display: flex;
  align-items: center;
  gap: var(--space-xs);
}
.metric__icon {
  flex-shrink: 0;
}
.metric__icon-svg {
  width: 1rem;
  height: 1rem;
  color: var(--primary);
  transition: color var(--transition) ease-out;
}
.metric__label {
  font-size: var(--p-small);
  color: var(--text-400);
  font-weight: 500;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.metric__body {
  margin-top: auto;
}
.metric__row {
  display: flex;
  align-items: baseline;
  gap: var(--space-sm);
  flex-wrap: wrap;
}
.metric__value {
  display: flex;
  align-items: baseline;
  gap: 0.1em;
}
.metric__number {
  font-size: var(--h3);
  font-weight: 700;
  letter-spacing: -0.025em;
  line-height: 1.2;
  font-variant-numeric: tabular-nums;
  color: var(--text);
}
.metric__affix {
  font-size: 0.55em;
  font-weight: 500;
  color: var(--text-500);
}
.metric__affix--after {
  margin-left: 0.1em;
}
.metric__trend {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  font-size: var(--small);
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  padding: var(--space-2xs) var(--space-xs);
  border-radius: var(--border05);
}
.metric__trend--up {
  color: var(--success);
  background: var(--success-light);
}
.metric__trend--down {
  color: var(--error);
  background: var(--error-light);
}
.metric__trend-icon {
  width: 1em;
  height: 1em;
}
.metric__progress {
  margin-top: var(--space-sm);
  width: 100%;
  height: 4px;
  background: var(--transp-1);
  border-radius: 999px;
  overflow: hidden;
}
.metric__progress-fill {
  height: 100%;
  border-radius: 999px;
  background: var(--primary);
  transition: width var(--transition) ease-out;
}
.metric__hint {
  margin-top: var(--space-xs);
  color: var(--text-500);
  font-size: var(--p-small);
  line-height: 1.4;
}
.metric__extra {
  margin-top: var(--space-xs);
}
@media (max-width: 768px) {
  .metrics__grid {
    flex-direction: column;
  }
  .metrics__grid > .metric + .metric::before {
    left: var(--space-lg);
    right: var(--space-lg);
    top: 0;
    bottom: auto;
    width: auto;
    height: 1px;
  }
  .metrics--cards .metrics__grid {
    grid-template-columns: repeat(2, 1fr);
    gap: var(--space-sm);
  }
  .metric {
    padding: var(--space-md);
  }
  .metric__number {
    font-size: var(--h4);
  }
}
@media (max-width: 480px) {
  .metrics--cards .metrics__grid {
    grid-template-columns: 1fr;
  }
}
.two-factor-setup .input-group {
  display: flex;
  align-items: center;
  gap: var(--space-xs);
}
.otp-input-wrapper {
  display: flex;
  flex-direction: column;
  gap: var(--space-xs);
  width: 100%;
}
.otp-input {
  display: flex;
  gap: var(--space-sm);
}
.otp-input__field {
  width: 44px;
  height: 52px;
  text-align: center;
  font-size: var(--h5);
  font-weight: 600;
  font-family: var(--font-mono);
  border: 1px solid var(--transp-3);
  border-radius: var(--border05);
  background: var(--background);
  color: var(--text);
  transition: all var(--transition);
  caret-color: var(--accent);
}
.otp-input__field:hover {
  border-color: var(--transp-4);
}
.otp-input__field:focus {
  outline: none;
  border-color: var(--accent);
}
.otp-input__field::placeholder {
  color: var(--text-700);
}
.otp-input.has-error .otp-input__field {
  border-color: var(--error);
  background: var(--error-light);
}
.otp-input.has-error .otp-input__field:focus {
  border-color: var(--error);
}
@media (max-width: 480px) {
  .otp-input {
    gap: var(--space-xs);
  }
  .otp-input__field {
    width: 38px;
    height: 46px;
    font-size: var(--h6);
  }
}
.two-factor-qr {
  display: flex;
  justify-content: center;
  padding: var(--space-md);
  background: var(--background-950);
  border-radius: var(--border1);
  border: 1px solid var(--transp-1);
}
.two-factor-qr img {
  width: 180px;
  height: 180px;
  border-radius: var(--border05);
}
.two-factor-secret {
  display: flex;
  align-items: center;
  flex: 1;
  padding: var(--space-sm) var(--space-md);
  background: var(--transp-05);
  border: 1px solid var(--transp-2);
  border-radius: var(--border05);
  font-family: var(--font-mono);
  font-size: var(--p-small);
  letter-spacing: 0.5px;
  word-break: break-all;
  color: var(--text);
}
.two-factor-codes {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
  gap: var(--space-xs);
}
.two-factor-codes code {
  display: block;
  padding: var(--space-sm) var(--space-md);
  background: var(--transp-05);
  border: 1px solid var(--transp-2);
  border-radius: var(--border05);
  font-family: var(--font-mono);
  font-size: var(--p-small);
  text-align: center;
  color: var(--text);
}
.two-factor-verify {
  text-align: center;
}
.two-factor-verify__icon {
  font-size: 3rem;
  color: var(--accent);
  margin-bottom: var(--space-md);
}
.two-factor-verify__title {
  margin-bottom: var(--space-xs);
}
.two-factor-verify__subtitle {
  color: var(--text-500);
  margin-bottom: var(--space-lg);
}
.two-factor-verify__actions {
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
  margin-top: var(--space-lg);
}
.two-factor-verify__actions .btn {
  width: 100%;
}
#two-factor-alert {
  transition: opacity 0.3s ease, transform 0.3s ease;
}
.two-factor-alert-content {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-md);
  width: 100%;
  flex-wrap: wrap;
}
@media (max-width: 768px) {
  .two-factor-alert-content {
    flex-direction: column;
    align-items: flex-start;
  }
}
.two-factor-alert-text {
  display: flex;
  flex-direction: column;
  gap: var(--space-2xs);
}
.two-factor-alert-text strong {
  font-weight: 600;
}
.two-factor-alert-actions {
  display: flex;
  gap: var(--space-xs);
  flex-shrink: 0;
}
@media (max-width: 768px) {
  .two-factor-alert-actions {
    width: 100%;
  }
}
.chart-wrapper {
  position: relative;
  border-radius: var(--border1);
  overflow: hidden;
  min-height: 320px;
}
.chart-wrapper.skeleton {
  min-height: 320px;
}
.chart-wrapper.skeleton::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, var(--transp-05) 0%, var(--transp-1) 50%, var(--transp-05) 100%);
  background-size: 200% 100%;
  animation: shimmer 1.5s infinite;
}
@keyframes shimmer {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}
.apexcharts-canvas, .apexcharts-svg {
  background: transparent !important;
}
.apexcharts-tooltip {
  background: var(--background) !important;
  border: 1px solid var(--transp-1) !important;
  border-radius: 8px !important;
  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.08), 0 1px 2px -1px rgba(0, 0, 0, 0.08) !important;
  padding: 0 !important;
  overflow: hidden;
  backdrop-filter: none !important;
}
.apexcharts-tooltip.apexcharts-theme-dark, .apexcharts-tooltip.apexcharts-theme-light {
  color: var(--text) !important;
}
.apexcharts-tooltip .apexcharts-tooltip-title {
  background: transparent !important;
  border-bottom: 1px solid var(--transp-1) !important;
  padding: 6px 10px !important;
  font-weight: 500 !important;
  font-size: 11px !important;
  color: var(--text-500) !important;
  margin: 0 !important;
  letter-spacing: 0.01em;
}
.apexcharts-tooltip .apexcharts-tooltip-series-group {
  padding: 4px 10px !important;
}
.apexcharts-tooltip .apexcharts-tooltip-series-group:not(:last-child) {
  border-bottom: 1px solid var(--transp-05);
}
.apexcharts-tooltip .apexcharts-tooltip-series-group.apexcharts-active {
  background: transparent !important;
}
.apexcharts-tooltip .apexcharts-tooltip-marker {
  width: 8px !important;
  height: 8px !important;
  border-radius: 2px !important;
  margin-right: 8px !important;
  box-shadow: none !important;
}
.apexcharts-tooltip .apexcharts-tooltip-text {
  font-size: 12px !important;
  line-height: 1.4 !important;
}
.apexcharts-tooltip .apexcharts-tooltip-text-y-label {
  color: var(--text-500) !important;
  font-weight: 400 !important;
  font-size: 12px !important;
}
.apexcharts-tooltip .apexcharts-tooltip-text-y-value {
  color: var(--text) !important;
  font-weight: 600 !important;
  margin-left: 4px !important;
  font-size: 12px !important;
  font-variant-numeric: tabular-nums;
}
.apexcharts-legend {
  padding: 12px 0 0 !important;
}
.apexcharts-legend .apexcharts-legend-series {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  margin: 0 4px !important;
  padding: 4px 10px !important;
  border-radius: 6px !important;
  transition: background 0.15s ease !important;
  cursor: pointer !important;
}
.apexcharts-legend .apexcharts-legend-series:hover {
  background: var(--transp-05) !important;
}
.apexcharts-legend .apexcharts-legend-marker {
  width: 8px !important;
  height: 8px !important;
  border-radius: 2px !important;
  margin-right: 0 !important;
}
.apexcharts-legend .apexcharts-legend-text {
  font-size: 12px !important;
  font-weight: 500 !important;
  color: var(--text-500) !important;
  transition: color 0.15s ease !important;
}
.apexcharts-legend .apexcharts-legend-series:hover .apexcharts-legend-text {
  color: var(--text) !important;
}
.apexcharts-legend.apexcharts-align-center {
  justify-content: center !important;
}
.apexcharts-gridlines-horizontal line, .apexcharts-gridlines-vertical line {
  stroke: var(--transp-05) !important;
  stroke-dasharray: none !important;
}
.apexcharts-grid-borders line {
  stroke: var(--transp-05) !important;
}
.apexcharts-xaxis-label, .apexcharts-yaxis-label {
  fill: var(--text-600) !important;
  font-size: 11px !important;
  font-weight: 400 !important;
}
.apexcharts-xaxis-title-text, .apexcharts-yaxis-title-text {
  fill: var(--text-500) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
}
.apexcharts-line {
  stroke-width: 2px !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}
.apexcharts-marker {
  stroke-width: 2px !important;
}
.apexcharts-bar-area {
  rx: 4px;
  ry: 4px;
}
.apexcharts-bar-series .apexcharts-bar-area {
  transition: opacity 0.15s ease !important;
}
.apexcharts-bar-series .apexcharts-bar-area:hover {
  opacity: 0.8 !important;
}
.apexcharts-pie-series path {
  transition: opacity 0.15s ease !important;
}
.apexcharts-pie-series path:hover {
  opacity: 0.85 !important;
}
.apexcharts-datalabels-group .apexcharts-datalabel-label {
  fill: var(--text-500) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
}
.apexcharts-datalabels-group .apexcharts-datalabel-value {
  fill: var(--text) !important;
  font-size: 22px !important;
  font-weight: 600 !important;
  font-variant-numeric: tabular-nums;
}
.apexcharts-pie-label {
  fill: #fff !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.4) !important;
}
.apexcharts-radialbar-track path {
  stroke: var(--transp-05) !important;
}
.apexcharts-radialbar-hollow {
  fill: transparent !important;
}
.apexcharts-selection-rect {
  fill: var(--primary) !important;
  fill-opacity: 0.08 !important;
  stroke: var(--primary) !important;
  stroke-width: 1px !important;
  stroke-dasharray: none !important;
}
.apexcharts-zoom-rect {
  fill: var(--primary) !important;
  fill-opacity: 0.08 !important;
}
.apexcharts-xcrosshairs, .apexcharts-ycrosshairs {
  stroke: var(--text-600) !important;
  stroke-width: 1px !important;
  stroke-dasharray: 3 3 !important;
}
.apexcharts-toolbar {
  opacity: 0;
  transition: opacity 0.15s ease !important;
  top: 4px !important;
  right: 4px !important;
  z-index: 10 !important;
  gap: 2px;
}
.chart-wrapper:hover .apexcharts-toolbar {
  opacity: 1;
}
.apexcharts-toolbar .apexcharts-menu-icon, .apexcharts-toolbar .apexcharts-pan-icon, .apexcharts-toolbar .apexcharts-zoom-icon, .apexcharts-toolbar .apexcharts-zoomin-icon, .apexcharts-toolbar .apexcharts-zoomout-icon, .apexcharts-toolbar .apexcharts-reset-icon {
  width: 26px !important;
  height: 26px !important;
  border-radius: 6px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: background 0.15s ease !important;
}
.apexcharts-toolbar .apexcharts-menu-icon:hover, .apexcharts-toolbar .apexcharts-pan-icon:hover, .apexcharts-toolbar .apexcharts-zoom-icon:hover, .apexcharts-toolbar .apexcharts-zoomin-icon:hover, .apexcharts-toolbar .apexcharts-zoomout-icon:hover, .apexcharts-toolbar .apexcharts-reset-icon:hover {
  background: var(--transp-05) !important;
}
.apexcharts-toolbar .apexcharts-menu-icon svg, .apexcharts-toolbar .apexcharts-pan-icon svg, .apexcharts-toolbar .apexcharts-zoom-icon svg, .apexcharts-toolbar .apexcharts-zoomin-icon svg, .apexcharts-toolbar .apexcharts-zoomout-icon svg, .apexcharts-toolbar .apexcharts-reset-icon svg {
  width: 14px !important;
  height: 14px !important;
  fill: var(--text-500) !important;
}
.apexcharts-menu {
  background: var(--background) !important;
  border: 1px solid var(--transp-1) !important;
  border-radius: 8px !important;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.08), 0 2px 4px -2px rgba(0, 0, 0, 0.04) !important;
  padding: 4px !important;
  min-width: 110px !important;
}
.apexcharts-menu .apexcharts-menu-item {
  padding: 6px 10px !important;
  font-size: 12px !important;
  border-radius: 4px !important;
  color: var(--text) !important;
  transition: background 0.15s ease !important;
}
.apexcharts-menu .apexcharts-menu-item:hover {
  background: var(--transp-05) !important;
}
.apexcharts-annotation-rect {
  fill: var(--primary) !important;
  fill-opacity: 0.06 !important;
}
.apexcharts-point-annotation-label {
  fill: var(--text) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
}
.apexcharts-no-data {
  fill: var(--text-600) !important;
  font-size: 13px !important;
  font-weight: 400 !important;
}
.apexcharts-series {
  transition: opacity 0.2s ease !important;
}
@media (max-width: 768px) {
  .apexcharts-legend {
    flex-wrap: wrap !important;
  }
  .apexcharts-legend .apexcharts-legend-series {
    padding: 3px 8px !important;
  }
  .apexcharts-tooltip {
    max-width: 200px !important;
  }
}
.lk-page {
  width: 100%;
}
.lk-form {
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
}
.lk-grid {
  display: grid;
  grid-template-columns: 1fr 340px;
  gap: var(--space-lg);
  align-items: start;
}
.lk-grid__main {
  display: flex;
  flex-direction: column;
  gap: var(--space-md);
  min-width: 0;
}
.lk-grid__aside {
  display: flex;
  flex-direction: column;
  gap: var(--space-md);
  position: sticky;
  top: calc(var(--space-xl) + 60px);
}
.lk-card {
  padding: var(--space-lg);
  display: flex;
  flex-direction: column;
  gap: var(--space-md);
}
.lk-card__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-md);
  flex-wrap: wrap;
}
.lk-card__title {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  font-size: var(--h6);
  font-weight: 600;
  color: var(--text);
  letter-spacing: -0.01em;
}
.lk-step-num {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--primary);
  color: var(--primary-950);
  font-size: 11px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  line-height: 1;
}
.lk-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: calc(var(--space-xl) * 3) var(--space-xl);
  text-align: center;
}
.lk-empty__icon {
  width: 52px;
  height: 52px;
  border-radius: 50%;
  background: var(--transp-05);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: var(--space-lg);
  color: var(--text-600);
}
.lk-empty__icon svg {
  width: 24px;
  height: 24px;
}
.lk-empty__title {
  font-size: var(--h5);
  font-weight: 600;
  color: var(--text);
  margin-bottom: var(--space-2xs);
}
.lk-empty__text {
  font-size: var(--p-small);
  color: var(--text-500);
  max-width: 300px;
  line-height: 1.5;
}
.lk-currency-bar {
  display: flex;
  background: var(--transp-05);
  border-radius: 100px;
  padding: 3px;
  gap: 2px;
}
.lk-currency-bar__item {
  position: relative;
}
.lk-currency-bar__item input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.lk-currency-bar__item input:checked ~ label {
  background: var(--primary);
  color: var(--primary-950);
  box-shadow: var(--shadow-small);
}
.lk-currency-bar__item input:focus-visible ~ label {
  box-shadow: 0 0 0 2px var(--accent);
}
.lk-currency-bar__item label {
  display: block;
  padding: 6px 16px;
  border-radius: 100px;
  font-size: var(--small);
  font-weight: 600;
  color: var(--text-500);
  cursor: pointer;
  transition: all var(--transition) ease-out;
  text-align: center;
  user-select: none;
  white-space: nowrap;
}
.lk-currency-bar__item label:hover {
  color: var(--text-200);
}
.lk-amount-field {
  position: relative;
}
.lk-amount-field input {
  width: 100%;
  background: transparent;
  border: none;
  border-bottom: 1px solid var(--transp-1);
  font-size: var(--h2);
  font-weight: 300;
  color: var(--text);
  padding: var(--space-xs) 0;
  min-width: 0;
  font-variant-numeric: tabular-nums;
  letter-spacing: -0.02em;
  outline: none;
  transition: border-color var(--transition) ease-out;
}
.lk-amount-field input:focus {
  border-bottom-color: var(--primary);
}
.lk-amount-field input.is-error {
  border-bottom-color: var(--error);
  animation: lk-shake 0.3s ease;
}
.lk-amount-field input::placeholder {
  color: var(--text-800);
  font-weight: 300;
}
.lk-amount-field input::-webkit-outer-spin-button, .lk-amount-field input::-webkit-inner-spin-button {
  -webkit-appearance: none;
}
.lk-amount-field__cur {
  position: absolute;
  right: 0;
  bottom: var(--space-sm);
  font-weight: 300;
  color: var(--text-600);
  font-size: var(--h5);
  pointer-events: none;
}
.lk-amount-field--compact input {
  font-size: var(--h5);
  font-weight: 500;
  border-bottom: 1px solid var(--transp-1);
  padding: var(--space-xs) 0;
  letter-spacing: -0.01em;
}
.lk-amount-field--compact input::placeholder {
  font-weight: 400;
  color: var(--text-700);
}
.lk-amount-field--compact .lk-amount-field__cur {
  font-size: var(--p);
  font-weight: 500;
}
.lk-presets {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.lk-presets--grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--space-xs);
}
.lk-preset {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: var(--space-2xs) var(--space-md);
  border-radius: 50px;
  border: 1px solid var(--transp-1);
  background: var(--transp-03);
  font-size: var(--small);
  font-weight: 500;
  color: var(--text-300);
  cursor: pointer;
  transition: all var(--transition) ease-out;
  user-select: none;
  font-variant-numeric: tabular-nums;
}
.lk-preset:hover {
  background: var(--primary);
  color: var(--primary-950);
  border-color: var(--primary);
}
.lk-preset.is-active {
  background: var(--primary);
  color: var(--primary-950);
  border-color: var(--primary);
}
.lk-hint {
  font-size: 12px;
  color: var(--text-600);
  line-height: 1.4;
  margin-top: calc(-1 * var(--space-xs));
}
.lk-hint:empty {
  display: none;
}
.lk-gw-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--space-xs);
}
.lk-gw-grid.is-single {
  grid-template-columns: 1fr;
  max-width: 220px;
}
.lk-gw-grid.is-single .lk-gw-card {
  cursor: default;
}
.lk-gw-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: var(--space-xs);
  padding: var(--space-md) var(--space-sm);
  border-radius: var(--border1);
  border: 1px solid var(--transp-1);
  background: var(--transp-03);
  cursor: pointer;
  transition: all var(--transition) ease-out;
  position: relative;
  text-align: center;
  min-height: 110px;
}
.lk-gw-card:hover {
  border-color: var(--transp-3);
  background: var(--transp-05);
}
.lk-gw-card:has(input:checked) {
  border-color: var(--primary);
  background: var(--transp-05);
}
.lk-gw-card:has(input:checked) .lk-gw-card__name {
  color: var(--text);
}
.lk-gw-card:has(input:focus-visible) {
  box-shadow: 0 0 0 2px var(--accent);
}
.lk-gw-card input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.lk-gw-card__icon {
  width: 100%;
  max-width: 80px;
  height: 44px;
  border-radius: 8px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.lk-gw-card__icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.lk-gw-card__icon svg {
  width: 28px;
  height: 28px;
  color: var(--text-500);
}
.lk-gw-card__body {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  min-width: 0;
}
.lk-gw-card__name {
  font-weight: 500;
  font-size: 11px;
  color: var(--text-500);
  transition: color var(--transition) ease-out;
  line-height: 1.3;
  word-break: break-word;
}
.lk-gw-card__desc {
  font-size: 10px;
  color: var(--text-600);
  line-height: 1.3;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.lk-gw-card__tag {
  position: absolute;
  top: 6px;
  right: 6px;
  font-size: 10px;
  font-weight: 700;
  padding: 2px 7px;
  border-radius: 100px;
}
.lk-gw-card__tag--bonus {
  color: var(--primary-950);
  background: var(--accent);
}
.lk-gw-card__tag--fee {
  color: var(--text-400);
  background: var(--transp-1);
}
.lk-gw-fields {
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
}
.lk-gw-fields .lk-payment-section {
  padding: var(--space-lg);
  display: flex;
  flex-direction: column;
  gap: var(--space-md);
}
.lk-gw-fields .lk-payment-section-title {
  font-size: var(--p);
  font-weight: 600;
  color: var(--text);
  letter-spacing: -0.01em;
  margin: 0;
}
.lk-gw-fields .lk-payment-section-content {
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
}
.lk-gw-fields .lk-payment-section-content .lk-field {
  margin-bottom: 0 !important;
}
.lk-gw-fields .lk-payment-hint, .lk-gw-fields small.text-muted, .lk-gw-fields small.footer__socials-title, .lk-gw-fields small.input__prefix, .lk-gw-fields .page-no-widgets small.description, .page-no-widgets .lk-gw-fields small.description {
  font-size: 12px;
  color: var(--text-600);
  line-height: 1.4;
  margin-top: 2px;
}
.lk-gw-empty {
  padding: var(--space-md);
  border-radius: var(--border05);
  color: var(--error);
  background: var(--error-light);
  text-align: center;
  font-size: var(--p-small);
  font-weight: 500;
}
.lk-balance-widget {
  padding: var(--space-md) var(--space-lg);
  position: relative;
  overflow: hidden;
}
.lk-balance-widget__label {
  display: block;
  font-size: var(--small);
  color: var(--text-600);
  font-weight: 500;
  margin-bottom: var(--space-2xs);
}
.lk-balance-widget__value {
  font-size: var(--h2);
  font-weight: 300;
  color: var(--text);
  letter-spacing: -0.03em;
  font-variant-numeric: tabular-nums;
  line-height: 1.1;
}
.lk-balance-widget__value span {
  font-size: var(--p-small);
  font-weight: 500;
  color: var(--text-500);
  margin-left: 4px;
  letter-spacing: 0;
}
.lk-balance-widget__bg {
  position: absolute;
  right: -12px;
  bottom: -12px;
  opacity: 0.03;
  pointer-events: none;
}
.lk-balance-widget__bg svg {
  width: 100px;
  height: 100px;
}
.lk-checkout {
  padding: var(--space-lg);
  display: flex;
  flex-direction: column;
  gap: var(--space-md);
}
.lk-checkout__title {
  font-size: var(--h6);
  font-weight: 600;
  color: var(--text);
  display: flex;
  align-items: center;
  gap: var(--space-xs);
  margin: 0;
}
.lk-checkout__title svg {
  width: 18px;
  height: 18px;
  color: var(--text-500);
}
.lk-promo__field {
  display: flex;
  align-items: center;
  gap: var(--space-xs);
  padding: 5px 5px 5px 1em;
  min-height: 50px;
  border: 1px solid var(--transp-2);
  border-radius: 100px;
  background: var(--transp-03);
  transition: border-color var(--transition) ease-out;
}
.lk-promo__field:focus-within {
  border-color: var(--primary-300);
}
.lk-promo__field.is-valid {
  border-color: var(--success);
}
.lk-promo__field.has-error {
  border-color: var(--error);
}
.lk-promo__input {
  flex: 1;
  border: none;
  outline: none;
  background: transparent;
  font: inherit;
  font-size: var(--p-small);
  color: var(--text);
  padding: 0;
  min-width: 0;
}
.lk-promo__input::placeholder {
  color: var(--text-600);
}
.lk-promo__btn {
  flex-shrink: 0;
  padding: 8px 16px;
  border-radius: 100px;
  border: none;
  background: var(--primary);
  color: var(--primary-950);
  font-size: var(--small);
  font-weight: 600;
  cursor: pointer;
  transition: all var(--transition) ease-out;
  white-space: nowrap;
}
.lk-promo__btn:hover {
  background: var(--primary-300);
}
.lk-promo__btn.is-applied {
  background: var(--error);
}
.lk-promo__btn.is-applied:hover {
  background: color-mix(in srgb, var(--error) 80%, transparent);
}
.lk-promo__message {
  display: block;
  font-size: 12px;
  line-height: 1.4;
  margin-top: var(--space-2xs);
  padding-left: 1em;
}
.lk-promo__message:empty {
  display: none;
}
.lk-promo__message--valid {
  color: var(--success);
}
.lk-promo__message--invalid {
  color: var(--error);
}
.lk-receipt {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.lk-receipt--compact {
  gap: 1px;
}
.lk-receipt__row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 4px 0;
  font-size: var(--small);
  color: var(--text-400);
}
.lk-receipt__row span:first-child {
  font-weight: 500;
}
.lk-receipt__row span:last-child {
  font-weight: 600;
  color: var(--text-200);
  font-variant-numeric: tabular-nums;
}
.lk-receipt__row--green span, .lk-receipt__row--green span:last-child {
  color: var(--success);
}
.lk-receipt__total {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  padding-top: var(--space-sm);
  margin-top: var(--space-2xs);
  border-top: 1px solid var(--transp-1);
}
.lk-receipt__total span:first-child {
  font-weight: 500;
  font-size: var(--p-small);
  color: var(--text-400);
}
.lk-receipt__total span:last-child {
  font-size: var(--h4);
  font-weight: 300;
  color: var(--text);
  letter-spacing: -0.02em;
  font-variant-numeric: tabular-nums;
  line-height: 1.1;
}
.lk-terms .checkbox__label {
  font-size: 12px;
  color: var(--text-500);
  line-height: 1.5;
}
.lk-terms .checkbox__label a {
  color: var(--accent);
  text-decoration: underline;
  text-underline-offset: 2px;
}
.lk-terms .checkbox__label a:hover {
  color: var(--accent-300);
}
.lk-submit {
  width: 100%;
  position: relative;
}
.lk-submit svg {
  width: 16px;
  height: 16px;
}
.lk-submit.is-loading {
  pointer-events: none;
}
.lk-submit__loader {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 18px;
  height: 18px;
  margin: -9px 0 0 -9px;
  border: 2px solid var(--primary-300);
  border-top-color: var(--primary-950);
  border-radius: 50%;
  animation: lk-spin 0.7s linear infinite;
}
@keyframes lk-spin {
  to {
    transform: rotate(360deg);
  }
}
@keyframes lk-shake {
  0%, 100% {
    transform: translateX(0);
  }
  20%, 60% {
    transform: translateX(-4px);
  }
  40%, 80% {
    transform: translateX(4px);
  }
}
.lk-disclaimer {
  font-size: 11px;
  color: var(--text-600);
  line-height: 1.5;
  text-align: center;
  margin: 0;
}
.lk-redirect-overlay {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: var(--space-md);
  padding: calc(var(--space-xl) * 3) var(--space-lg);
  text-align: center;
}
.lk-redirect-overlay__spinner {
  width: 28px;
  height: 28px;
  border: 2px solid var(--transp-1);
  border-top-color: var(--primary);
  border-radius: 50%;
  animation: lk-spin 0.7s linear infinite;
}
.lk-redirect-overlay__text {
  font-size: var(--p-small);
  color: var(--text-500);
  margin: 0;
  line-height: 1.5;
}
.lk-step-actions {
  display: flex;
  justify-content: space-between;
  gap: var(--space-sm);
}
.lk-step-actions .lk-submit {
  flex: 1;
}
.lk-page--steps {
  max-width: 640px;
  margin: 0 auto;
}
.lk-page--steps .lk-card {
  padding: var(--space-lg);
}
.lk-modal-wrap--steps .steps-content {
  margin-top: var(--space-sm);
}
.lk-modal-wrap {
  max-width: 480px;
  margin: 0 auto;
}
.lk-modal-wrap .lk-form--modal {
  gap: var(--space-md);
}
@media (max-width: 900px) {
  .lk-grid {
    grid-template-columns: 1fr;
  }
  .lk-grid__aside {
    position: static;
    order: -1;
    flex-direction: row;
  }
  .lk-grid__aside > * {
    flex: 1;
    min-width: 0;
  }
  .lk-grid__main {
    order: 2;
  }
}
@media (max-width: 640px) {
  .lk-card {
    padding: var(--space-md);
  }
  .lk-checkout {
    padding: var(--space-md);
  }
  .lk-balance-widget {
    padding: var(--space-md);
  }
  .lk-balance-widget__value {
    font-size: var(--h3);
  }
  .lk-amount-field input {
    font-size: var(--h3);
  }
  .lk-gw-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .lk-gw-card {
    padding: var(--space-sm);
    min-height: 90px;
  }
  .lk-grid__aside {
    flex-direction: column;
  }
}
@media (max-width: 480px) {
  .lk-presets--grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .lk-gw-grid {
    grid-template-columns: 1fr 1fr;
  }
}
.translatable-wrap {
  position: relative;
}
.translatable-tabs {
  display: flex;
  gap: 2px;
  margin-bottom: 6px;
  padding: 2px;
  border-radius: 6px;
  background: var(--transp-1, rgba(0, 0, 0, 0.05));
  overflow-x: auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
  max-width: 100%;
}
.translatable-tabs::-webkit-scrollbar {
  display: none;
}
.translatable-tab {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  padding: 3px 5px;
  border: none;
  border-radius: 4px;
  background: transparent;
  cursor: pointer;
  transition: background 0.15s, box-shadow 0.15s;
  position: relative;
  flex-shrink: 0;
}
.translatable-tab img {
  border-radius: 3px;
  display: block;
  width: 20px;
  height: 15px;
  object-fit: cover;
}
.translatable-tab:hover {
  background: var(--transp-2, rgba(0, 0, 0, 0.08));
}
.translatable-tab.is-active {
  background: var(--primary);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}
.image-cropper {
  width: min(700px, 92vw) !important;
  min-width: unset !important;
}
.image-cropper__body {
  padding: var(--space-md) var(--space-xl) var(--space-sm) !important;
}
@media (max-width: 600px) {
  .image-cropper__body {
    padding: var(--space-sm) var(--space-md) var(--space-xs) !important;
  }
}
.image-cropper__canvas {
  position: relative;
  width: 100%;
  height: 380px;
  background: #0a0a0a;
  border-radius: 10px;
  overflow: hidden;
}
:root[data-theme=light] .image-cropper__canvas {
  background: #e8e8ed;
}
@media (max-width: 600px) {
  .image-cropper__canvas {
    height: 260px;
    border-radius: 8px;
  }
}
.image-cropper__canvas img {
  display: block;
  max-width: 100%;
}
.image-cropper__canvas.is-round .cropper-view-box, .image-cropper__canvas.is-round .cropper-face {
  border-radius: 50%;
}
.image-cropper__canvas.is-round .cropper-view-box {
  outline-color: rgba(255, 255, 255, 0.8);
}
.image-cropper__icon, .image-cropper__icon--sm {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  flex-shrink: 0;
}
.image-cropper__icon svg, .image-cropper__icon--sm svg {
  width: 100%;
  height: 100%;
}
.image-cropper__icon--sm {
  width: 15px;
  height: 15px;
}
.image-cropper__toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: var(--space-sm);
  gap: var(--space-sm);
}
@media (max-width: 600px) {
  .image-cropper__toolbar {
    flex-direction: column;
    align-items: stretch;
  }
}
.image-cropper__ratios {
  display: flex;
  align-items: center;
  gap: 4px;
  overflow-x: auto;
  scrollbar-width: none;
  flex-shrink: 1;
  min-width: 0;
}
.image-cropper__ratios::-webkit-scrollbar {
  display: none;
}
.image-cropper__ratio-btn {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 5px 10px;
  border: 1px solid var(--transp-1);
  background: transparent;
  border-radius: 6px;
  font-size: 12px;
  font-weight: 500;
  color: var(--text-400);
  cursor: pointer;
  white-space: nowrap;
  transition: all 0.15s ease;
  flex-shrink: 0;
}
.image-cropper__ratio-btn .image-cropper__icon--sm {
  opacity: 0.5;
}
.image-cropper__ratio-btn:hover {
  color: var(--text-200);
  background: var(--transp-05);
  border-color: var(--transp-2);
}
.image-cropper__ratio-btn.is-active {
  background: var(--accent);
  color: var(--accent-900);
  border-color: var(--accent);
}
.image-cropper__ratio-btn.is-active .image-cropper__icon--sm {
  opacity: 1;
}
.image-cropper__tools {
  display: flex;
  align-items: center;
  gap: 2px;
  flex-shrink: 0;
}
.image-cropper__tool-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  padding: 0;
  border: none;
  background: transparent;
  border-radius: 7px;
  color: var(--text-400);
  cursor: pointer;
  transition: background-color 0.12s ease, color 0.12s ease, transform 0.1s ease;
}
.image-cropper__tool-btn:hover {
  background: var(--transp-1);
  color: var(--text);
}
.image-cropper__tool-btn:active {
  transform: scale(0.92);
}
.image-cropper__tool-sep {
  width: 1px;
  height: 18px;
  background: var(--transp-1);
  margin: 0 3px;
  flex-shrink: 0;
}
.image-cropper__footer {
  display: flex !important;
  justify-content: flex-end;
  align-items: center;
  gap: var(--space-xs);
}
.image-cropper__footer .btn-accent {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.image-cropper__canvas .cropper-container {
  border-radius: 10px;
}
@media (max-width: 600px) {
  .image-cropper__canvas .cropper-container {
    border-radius: 8px;
  }
}
.image-cropper__canvas .cropper-modal {
  background: #000;
  opacity: 0.45;
}
:root[data-theme=light] .image-cropper__canvas .cropper-modal {
  opacity: 0.25;
}
.image-cropper__canvas .cropper-view-box {
  outline: 2px solid var(--transp-2);
  outline-offset: -1px;
}
:root[data-theme=light] .image-cropper__canvas .cropper-view-box {
  outline-color: rgba(0, 0, 0, 0.6);
}
.image-cropper__canvas .cropper-line {
  background-color: rgba(255, 255, 255, 0.12);
}
.image-cropper__canvas .cropper-dashed {
  border-color: rgba(255, 255, 255, 0.2);
}
.image-cropper__canvas .cropper-point {
  width: 10px;
  height: 10px;
  background-color: var(--accent);
  border-radius: 50%;
  opacity: 1;
  box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.3);
}
.image-cropper__canvas .cropper-point.point-nw {
  top: -5px;
  left: -5px;
}
.image-cropper__canvas .cropper-point.point-ne {
  top: -5px;
  right: -5px;
}
.image-cropper__canvas .cropper-point.point-sw {
  bottom: -5px;
  left: -5px;
}
.image-cropper__canvas .cropper-point.point-se {
  bottom: -5px;
  right: -5px;
  width: 10px;
  height: 10px;
}
.image-cropper__canvas .cropper-bg {
  background-image: none;
}
.has-crop-edit {
  position: relative;
}
.image-cropper__edit-btn {
  position: absolute;
  bottom: 6px;
  right: 6px;
  z-index: 20;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  padding: 0;
  border: none;
  border-radius: 7px;
  background: rgba(0, 0, 0, 0.45);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  color: #fff;
  cursor: pointer;
  opacity: 0.6;
  transition: opacity 0.15s ease, background-color 0.15s ease, transform 0.1s ease;
}
:root[data-theme=light] .image-cropper__edit-btn {
  background: rgba(255, 255, 255, 0.65);
  color: var(--text);
}
.image-cropper__edit-btn .image-cropper__icon, .image-cropper__edit-btn .image-cropper__icon--sm {
  width: 14px;
  height: 14px;
}
.image-cropper__edit-btn:hover {
  opacity: 1;
  background: rgba(0, 0, 0, 0.7);
}
:root[data-theme=light] .image-cropper__edit-btn:hover {
  background: rgba(255, 255, 255, 0.85);
}
.image-cropper__edit-btn:active {
  transform: scale(0.9);
}
.image-cropper__edit-btn:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 2px;
  opacity: 1;
}
.steps-container {
  position: relative;
  width: 100%;
}
.steps-nav {
  position: relative;
  margin-bottom: var(--space-lg);
}
.steps-list {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: 1fr;
  list-style: none;
  padding: 0;
  margin: 0;
  counter-reset: step;
}
.step-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  counter-increment: step;
}
.step-item__trigger {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-xs);
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  position: relative;
  z-index: 1;
  flex-shrink: 0;
  text-align: center;
}
.step-item__trigger:focus {
  outline: none;
}
.step-item__trigger:focus-visible .step-item__dot {
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--primary) 30%, transparent);
}
.step-item__trigger[disabled] {
  cursor: default;
  pointer-events: none;
}
.step-item__dot {
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.8125rem;
  font-weight: 600;
  font-family: var(--font);
  border: 2px solid var(--transp-3);
  background: var(--background);
  color: var(--text-500);
  position: relative;
  flex-shrink: 0;
  transition: all var(--transition) ease-out;
}
.step-item__dot::after {
  content: counter(step);
  line-height: 1;
}
.step-item__check {
  display: none;
  width: 0.875rem;
  height: 0.875rem;
}
.step-item__icon {
  width: 0.875rem;
  height: 0.875rem;
}
.step-item__dot:has(> .step-item__icon)::after {
  display: none;
}
.step-item__body {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
}
.step-item__subtitle {
  font-size: 0.625rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--text-600);
  line-height: 1;
  transition: color var(--transition) ease-out;
}
.step-item__label {
  font-size: var(--p);
  font-weight: 600;
  font-family: var(--font);
  color: var(--text-500);
  white-space: nowrap;
  transition: color var(--transition) ease-out;
  line-height: 1.3;
}
.step-item__connector {
  position: absolute;
  top: calc(2.25rem / 2 - 2px / 2);
  left: 50%;
  right: calc(-50%);
  height: 2px;
  background: var(--transp-2);
  border-radius: 1px;
  overflow: hidden;
  z-index: 0;
}
.step-item__connector-fill {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 0;
  background: var(--primary);
  border-radius: 1px;
  transition: width 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.step-item:last-child .step-item__connector {
  display: none;
}
.step-item.active .step-item__dot {
  border-color: var(--primary);
  background: var(--primary);
  color: var(--primary-950);
  box-shadow: 0 0 0 4px var(--background), 0 0 0 6px color-mix(in srgb, var(--primary) 40%, transparent);
}
.step-item.active .step-item__icon {
  color: var(--primary-950);
}
.step-item.active .step-item__subtitle {
  color: var(--text-400);
}
.step-item.active .step-item__label {
  color: var(--text);
}
.step-item.completed .step-item__dot {
  border-color: var(--primary);
  background: var(--primary);
  color: var(--primary-950);
}
.step-item.completed .step-item__dot::after {
  display: none;
}
.step-item.completed .step-item__check {
  display: block;
  color: var(--primary-950);
}
.step-item.completed .step-item__subtitle {
  color: var(--text-600);
}
.step-item.completed .step-item__label {
  color: var(--text-400);
}
.step-item.completed .step-item__connector-fill {
  width: 100%;
}
.step-item.is-locked .step-item__dot {
  border-color: var(--transp-1);
  background: var(--background);
  color: var(--text-700);
}
.step-item.is-locked .step-item__subtitle {
  color: var(--text-700);
}
.step-item.is-locked .step-item__label {
  color: var(--text-700);
}
.step-item.is-disabled .step-item__dot {
  border-color: var(--transp-1);
  background: var(--background);
  color: var(--text-800);
}
.step-item.is-disabled .step-item__subtitle {
  color: var(--text-800);
}
.step-item.is-disabled .step-item__label {
  color: var(--text-800);
}
.step-item:not(.active):not(.is-disabled):not(.is-locked) .step-item__trigger:hover .step-item__dot {
  border-color: var(--primary-600);
  transform: scale(1.05);
}
.step-item:not(.active):not(.is-disabled):not(.is-locked) .step-item__trigger:hover .step-item__label {
  color: var(--text);
}
.steps-content {
  position: relative;
}
.steps-content > .step-panel {
  display: none;
}
.steps-content > .step-panel.active {
  display: flex;
  flex-direction: column;
  gap: var(--space-md);
  animation: stepFadeIn 0.2s ease;
}
@keyframes stepFadeIn {
  from {
    opacity: 0;
    transform: translateY(4px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.steps--vertical .steps-list {
  grid-auto-flow: row;
  grid-auto-columns: auto;
  grid-template-columns: 1fr;
  gap: 0;
}
.steps--vertical .step-item {
  flex-direction: row;
  align-items: flex-start;
  padding-bottom: var(--space-lg);
  min-height: calc(2.25rem + var(--space-lg));
}
.steps--vertical .step-item:last-child {
  padding-bottom: 0;
  min-height: auto;
}
.steps--vertical .step-item__trigger {
  flex-direction: row;
  align-items: center;
  text-align: left;
  gap: var(--space-sm);
}
.steps--vertical .step-item__body {
  align-items: flex-start;
}
.steps--vertical .step-item__connector {
  position: absolute;
  left: calc(2.25rem / 2 - 2px / 2);
  top: 2.25rem;
  right: auto;
  width: 2px;
  height: calc(100% - 2.25rem);
  margin: var(--space-2xs) 0;
}
.steps--vertical .step-item__connector-fill {
  width: 100%;
  height: 0;
  transition: height 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.steps--vertical .step-item.completed .step-item__connector-fill {
  height: 100%;
}
.steps--progress .steps-nav {
  margin-bottom: var(--space-md);
}
.steps--progress .steps-list {
  position: relative;
}
.steps--progress .steps-list::after {
  content: "";
  position: absolute;
  top: calc(1.75rem / 2);
  left: calc(100% / var(--steps-count, 3) / 2);
  right: calc(100% / var(--steps-count, 3) / 2);
  height: 2px;
  background: var(--transp-2);
  border-radius: 1px;
  z-index: 0;
  transform: translateY(-50%);
}
.steps--progress .steps-list::before {
  content: "";
  position: absolute;
  top: calc(1.75rem / 2);
  left: calc(100% / var(--steps-count, 3) / 2);
  right: calc(100% / var(--steps-count, 3) / 2);
  height: 2px;
  background: var(--primary);
  border-radius: 1px;
  z-index: 0;
  transform: translateY(-50%);
  transition: clip-path 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  clip-path: inset(0 calc(100% - var(--steps-progress, 0%)) 0 0);
}
.steps--progress .steps-nav::after {
  display: none;
}
.steps--progress .step-item__dot {
  width: 1.75rem;
  height: 1.75rem;
  font-size: 0.6875rem;
  border-width: 1.5px;
}
.steps--progress .step-item.active .step-item__dot {
  box-shadow: 0 0 0 3px var(--background), 0 0 0 5px color-mix(in srgb, var(--primary) 35%, transparent);
}
.steps--progress .step-item__check {
  width: 0.6875rem;
  height: 0.6875rem;
}
.steps--progress .step-item__icon {
  width: 0.6875rem;
  height: 0.6875rem;
}
.steps--progress .step-item__connector {
  display: none;
}
.steps--progress .step-item__subtitle {
  display: none;
}
.steps--progress .step-item__label {
  font-size: var(--p-small);
}
.steps--minimal .steps-list {
  display: flex;
  gap: var(--space-2xs);
}
.steps--minimal .step-item {
  flex: 0 0 auto;
}
.steps--minimal .step-item__dot {
  display: none;
}
.steps--minimal .step-item__trigger {
  flex-direction: row;
  padding: var(--space-xs) var(--space-md);
  border-radius: var(--border05);
  transition: all var(--transition) ease-out;
}
.steps--minimal .step-item__connector {
  display: none;
}
.steps--minimal .step-item__subtitle {
  display: none;
}
.steps--minimal .step-item.active .step-item__trigger {
  background: var(--primary);
}
.steps--minimal .step-item.active .step-item__trigger .step-item__label {
  color: var(--primary-950);
}
.steps--minimal .step-item.completed .step-item__trigger {
  background: var(--transp-05);
}
.steps--minimal .step-item:not(.active):not(.is-disabled):not(.is-locked) .step-item__trigger:hover {
  background: var(--transp-1);
}
.steps-field--error {
  animation: stepShake 0.3s ease;
}
.steps-field--error .input__field-container, .steps-field--error .input__field, .steps-field--error textarea.input {
  border-color: var(--error) !important;
}
@keyframes stepShake {
  0%, 100% {
    transform: translateX(0);
  }
  20%, 60% {
    transform: translateX(-4px);
  }
  40%, 80% {
    transform: translateX(4px);
  }
}
@media (max-width: 767px) {
  .step-item__body {
    display: none;
  }
  .steps--minimal .step-item__body, .steps--vertical .step-item__body {
    display: flex;
  }
  .step-item.active .step-item__body {
    display: flex;
  }
}
#nprogress {
  pointer-events: none;
}
#nprogress .bar {
  background: var(--accent);
  position: fixed;
  z-index: 10000;
  top: 0;
  left: 0;
  width: 100%;
  height: 2px;
}
#nprogress .peg {
  display: block;
  position: absolute;
  right: 0px;
  width: 100px;
  height: 100%;
  box-shadow: 0 0 10px var(--accent), 0 0 5px var(--accent);
  opacity: 1;
  -webkit-transform: rotate(3deg) translate(0px, -4px);
  -ms-transform: rotate(3deg) translate(0px, -4px);
  transform: rotate(3deg) translate(0px, -4px);
}
#nprogress .spinner {
  display: none;
  position: fixed;
  z-index: 1031;
  top: 15px;
  right: 15px;
}
#nprogress .spinner-icon {
  width: 18px;
  height: 18px;
  box-sizing: border-box;
  border: solid 2px transparent;
  border-top-color: var(--accent);
  border-left-color: var(--accent);
  border-radius: 50%;
  -webkit-animation: nprogress-spinner 400ms linear infinite;
  animation: nprogress-spinner 400ms linear infinite;
}
.nprogress-custom-parent {
  overflow: hidden;
  position: relative;
}
.nprogress-custom-parent #nprogress .spinner, .nprogress-custom-parent #nprogress .bar {
  position: absolute;
}
html[data-theme=light] #nprogress .bar {
  background: var(--primary);
}
html[data-theme=light] #nprogress .peg {
  box-shadow: 0 0 10px var(--primary), 0 0 5px var(--primary);
}
html[data-theme=light] #nprogress .spinner-icon {
  border-top-color: var(--primary);
  border-left-color: var(--primary);
}
@-webkit-keyframes nprogress-spinner {
  0% {
    -webkit-transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
  }
}
@keyframes nprogress-spinner {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.breadcrumb {
  display: flex;
  border-radius: 35px;
  margin: var(--space-lg) 0;
  margin-top: var(--space-xs);
}
html[data-nav-style="sidebar"] .breadcrumb {
  display: none;
}
.breadcrumb-links {
  display: flex;
  column-gap: var(--space-md);
  align-items: center;
  list-style: none;
  margin: 0;
  padding: 0;
}
@media (max-width: 767px) {
  .breadcrumb-links {
    flex-direction: column;
    align-items: flex-start;
  }
}
.breadcrumb-box {
  display: flex;
  align-items: center;
}
.breadcrumb-link {
  color: var(--primary-400);
  transition: all var(--transition) ease-out;
}
.breadcrumb-box:hover > *:not(.breadcrumb-icon) {
  color: var(--primary);
}
.breadcrumb-icon {
  flex-shrink: 0;
  width: 1.25rem;
  height: 1.25rem;
  margin-right: var(--space-md);
  color: var(--primary-400);
}
@media (max-width: 767px) {
  .breadcrumb-icon {
    margin-right: var(--space-xs);
  }
}
.breadcrumb-text {
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 500;
  color: var(--primary-400);
}
.breadcrumb-links li:last-child .breadcrumb-text {
  max-width: 28ch;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
@media (min-width: 768px) and (max-width: 1023px) {
  .breadcrumb-links li:last-child .breadcrumb-text {
    max-width: 20ch;
  }
}
@media (max-width: 767px) {
  .breadcrumb-links li:last-child .breadcrumb-text {
    max-width: 14ch;
  }
}
[data-simplebar] {
  position: relative;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-content: flex-start;
  align-items: flex-start;
}
.simplebar-wrapper {
  overflow: hidden;
  width: inherit;
  height: inherit;
  max-width: inherit;
  max-height: inherit;
}
.simplebar-mask {
  direction: inherit;
  position: absolute;
  overflow: hidden;
  padding: 0;
  margin: 0;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  width: auto !important;
  height: auto !important;
  z-index: 0;
}
.simplebar-offset {
  direction: inherit !important;
  box-sizing: inherit !important;
  resize: none !important;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  padding: 0;
  margin: 0;
  -webkit-overflow-scrolling: touch;
}
.simplebar-content-wrapper {
  direction: inherit;
  box-sizing: border-box !important;
  position: relative;
  display: block;
  height: 100%;
  /* Required for horizontal native scrollbar to not appear if parent is taller than natural height */
  width: auto;
  max-width: 100%;
  /* Not required for horizontal scroll to trigger */
  max-height: 100%;
  /* Needed for vertical scroll to trigger */
  overflow: auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.simplebar-content-wrapper::-webkit-scrollbar, .simplebar-hide-scrollbar::-webkit-scrollbar {
  display: none;
  width: 0;
  height: 0;
}
.simplebar-content:before, .simplebar-content:after {
  content: " ";
  display: table;
}
.simplebar-placeholder {
  max-height: 100%;
  max-width: 100%;
  width: 100%;
  pointer-events: none;
}
.simplebar-height-auto-observer-wrapper {
  box-sizing: inherit !important;
  height: 100%;
  width: 100%;
  max-width: 1px;
  position: relative;
  float: left;
  max-height: 1px;
  overflow: hidden;
  z-index: -1;
  padding: 0;
  margin: 0;
  pointer-events: none;
  flex-grow: inherit;
  flex-shrink: 0;
  flex-basis: 0;
}
.simplebar-height-auto-observer {
  box-sizing: inherit;
  display: block;
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  height: 1000%;
  width: 1000%;
  min-height: 1px;
  min-width: 1px;
  overflow: hidden;
  pointer-events: none;
  z-index: -1;
}
.simplebar-track {
  z-index: 1;
  position: absolute;
  right: 0;
  bottom: 0;
  pointer-events: none;
  overflow: hidden;
}
[data-simplebar].simplebar-dragging {
  pointer-events: none;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
[data-simplebar].simplebar-dragging .simplebar-content {
  pointer-events: none;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
[data-simplebar].simplebar-dragging .simplebar-track {
  pointer-events: all;
}
.simplebar-scrollbar {
  position: absolute;
  left: 0;
  right: 0;
  min-height: 10px;
}
.simplebar-scrollbar:before {
  position: absolute;
  content: "";
  background: var(--accent);
  border-radius: 7px;
  left: 2px;
  right: 2px;
  opacity: 0;
  transition: opacity 0.2s 0.5s linear;
}
.simplebar-scrollbar.simplebar-visible:before {
  opacity: 0.5;
  transition-delay: 0s;
  transition-duration: 0s;
}
.simplebar-track.simplebar-vertical {
  top: 0;
  width: 11px;
}
.simplebar-scrollbar:before {
  top: 2px;
  bottom: 2px;
  left: 2px;
  right: 2px;
}
.simplebar-track.simplebar-horizontal {
  left: 0;
  height: 11px;
}
.simplebar-track.simplebar-horizontal .simplebar-scrollbar {
  right: auto;
  left: 0;
  top: 0;
  bottom: 0;
  min-height: 0;
  min-width: 10px;
  width: auto;
}
/* Rtl support */
[data-simplebar-direction="rtl"] .simplebar-track.simplebar-vertical {
  right: auto;
  left: 0;
}
.simplebar-dummy-scrollbar-size {
  direction: rtl;
  position: fixed;
  opacity: 0;
  visibility: hidden;
  height: 500px;
  width: 500px;
  overflow-y: hidden;
  overflow-x: scroll;
  -ms-overflow-style: scrollbar !important;
}
.simplebar-dummy-scrollbar-size > div {
  width: 200%;
  height: 200%;
  margin: 10px 0;
}
.simplebar-hide-scrollbar {
  position: fixed;
  left: 0;
  visibility: hidden;
  overflow-y: scroll;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.tooltip {
  --tooltip-bg: var(--blurred-background);
  position: absolute;
  z-index: 10100;
  max-width: 240px;
  padding: 8px 14px;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.4;
  text-align: center;
  color: var(--text);
  background: var(--tooltip-bg);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid color-mix(in srgb, var(--text) 8%, transparent);
  border-radius: 10px;
  box-shadow: var(--shadow-small);
  opacity: 0;
  transform: scale(0.96);
  transform-origin: center;
  pointer-events: none;
  will-change: opacity, transform;
  transition: opacity 0.15s cubic-bezier(0.16, 1, 0.3, 1), transform 0.15s cubic-bezier(0.16, 1, 0.3, 1);
}
.tooltip[data-placement^="top"] {
  transform-origin: center bottom;
  transform: scale(0.96) translateY(4px);
}
.tooltip[data-placement^="bottom"] {
  transform-origin: center top;
  transform: scale(0.96) translateY(-4px);
}
.tooltip[data-placement^="left"] {
  transform-origin: right center;
  transform: scale(0.96) translateX(4px);
}
.tooltip[data-placement^="right"] {
  transform-origin: left center;
  transform: scale(0.96) translateX(-4px);
}
.tooltip.show {
  opacity: 1;
  transform: scale(1) translate(0);
}
.notyf {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 9999;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  padding: 1rem;
  pointer-events: none;
}
.notyf__toast {
  display: flex;
  align-items: center;
  gap: 1rem;
  min-width: 280px;
  max-width: 380px;
  padding: 1rem 1.25rem;
  background: #111111 !important;
  border: 1px solid var(--transp-1);
  border-radius: var(--border1);
  pointer-events: auto;
  transform: translateX(calc(100% + 2rem));
  overflow: hidden;
  animation: toast-in 0.6s cubic-bezier(0.3, 1.3, 0.3, 1) forwards;
  margin-bottom: 0.5rem;
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
}
.notyf__toast::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  opacity: 0.1;
  pointer-events: none;
  background-image: radial-gradient(circle at 15% 55%, rgba(255, 255, 255, 0.9) 1px, transparent 1px), radial-gradient(circle at 85% 15%, rgba(255, 255, 255, 0.9) 1px, transparent 1px), radial-gradient(circle at 45% 85%, rgba(255, 255, 255, 0.9) 1.5px, transparent 1.5px), radial-gradient(circle at 65% 35%, rgba(255, 255, 255, 0.9) 1px, transparent 1px), radial-gradient(circle at 25% 25%, rgba(255, 255, 255, 0.9) 1.5px, transparent 1.5px), radial-gradient(circle at 75% 75%, rgba(255, 255, 255, 0.9) 1px, transparent 1px), radial-gradient(circle at 55% 45%, rgba(255, 255, 255, 0.9) 1px, transparent 1px), radial-gradient(circle at 10% 90%, rgba(255, 255, 255, 0.9) 1px, transparent 1px), radial-gradient(circle at 90% 10%, rgba(255, 255, 255, 0.9) 1.5px, transparent 1.5px);
  background-size: 100px 100px;
}
.notyf__toast--disappear {
  animation: toast-out 0.4s forwards;
}
.notyf__toast--success {
  --toast-background: var(--success);
}
.notyf__toast--success .notyf__icon {
  background: var(--success);
  color: #000;
}
.notyf__toast--error {
  --toast-background: var(--error);
}
.notyf__toast--error .notyf__icon {
  background: var(--error);
  color: #000;
}
.notyf__toast--warning {
  --toast-background: var(--warning);
}
.notyf__toast--warning .notyf__icon {
  background: var(--warning);
  color: #000;
}
.notyf__toast--info {
  --toast-background: var(--info);
}
.notyf__toast--info .notyf__icon {
  background: var(--info);
  color: #000;
}
.notyf__toast--dismissible {
  padding-right: 3rem;
}
.notyf__toast::after {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--toast-background);
  border-radius: 50%;
  filter: blur(70px);
  opacity: 0.15;
  left: -70px;
  top: 15px;
  width: 170px;
  height: 120px;
  z-index: -1;
}
.notyf__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.3em;
  height: 1.3em;
  border-radius: 50%;
  flex-shrink: 0;
  position: relative;
}
.notyf__icon::after {
  content: "";
  position: absolute;
  border-radius: 50%;
  width: 100%;
  height: 100%;
  background-color: var(--toast-background);
  opacity: 0.07;
  z-index: -1;
  transform: scale(1.8);
}
.notyf__icon::before {
  content: "";
  display: block;
  width: 0.8rem;
  height: 0.8rem;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.notyf__icon--success::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E");
}
.notyf__icon--error::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='18' y1='6' x2='6' y2='18'/%3E%3Cline x1='6' y1='6' x2='18' y2='18'/%3E%3C/svg%3E");
}
.notyf__icon--warning::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 9v4'/%3E%3Cpath d='M12 17h.01'/%3E%3C/svg%3E");
}
.notyf__icon--info::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 16v-4'/%3E%3Cpath d='M12 8h.01'/%3E%3C/svg%3E");
}
.notyf__wrapper {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 1.15rem;
  flex: 1;
  min-width: 0;
}
.notyf__message {
  font-size: var(--p-small);
  font-weight: 500;
  color: #ffffffde;
}
.notyf__dismiss {
  position: absolute;
  top: 50%;
  right: 0.75rem;
  transform: translateY(-50%);
}
.notyf__dismiss-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  padding: 0;
  background: transparent;
  border: none;
  border-radius: 0.25rem;
  cursor: pointer;
  opacity: 0.7;
  transition: opacity 0.15s ease;
}
.notyf__dismiss-btn::before, .notyf__dismiss-btn::after {
  content: "";
  position: absolute;
  width: 1rem;
  height: 1.5px;
  background: #ffffffde;
  border-radius: 1px;
}
.notyf__dismiss-btn::before {
  transform: rotate(45deg);
}
.notyf__dismiss-btn::after {
  transform: rotate(-45deg);
}
.notyf__dismiss-btn:hover {
  opacity: 1;
}
@keyframes toast-in {
  from {
    transform: translateX(calc(100% + 2rem));
  }
  to {
    transform: translateX(0);
  }
}
@keyframes toast-out {
  0% {
    transform: translateX(0);
    opacity: 1;
    max-height: 200px;
    margin-bottom: 0.5rem;
    padding: 1rem 1.25rem;
    border-width: 1px;
  }
  40% {
    transform: translateX(calc(100% + 2rem));
    opacity: 0;
    max-height: 200px;
    margin-bottom: 0.5rem;
    padding: 1rem 1.25rem;
    border-width: 1px;
  }
  100% {
    transform: translateX(calc(100% + 2rem));
    opacity: 0;
    max-height: 0;
    margin-bottom: 0;
    padding: 0;
    border-width: 0;
  }
}
.notyf__ripple {
  display: none !important;
}
@media (max-width: 480px) {
  .notyf {
    left: 0;
    right: 0;
    padding: 0.75rem;
    align-items: stretch;
  }
  .notyf__toast {
    min-width: 0;
    max-width: none;
  }
}
.skeleton {
  background-color: var(--transp-1);
  display: inline-block;
  min-height: 1em;
  min-width: 1em;
  position: relative;
  overflow: hidden;
  border-radius: var(--border1);
}
.skeleton::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  transform: translateX(-100%);
  background-image: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, var(--transp-1) 20%, var(--transp-1) 60%, rgba(255, 255, 255, 0) 100%);
  animation: shimmer 1.6s cubic-bezier(0.22, 1, 0.36, 1) infinite;
  content: "";
}
@keyframes shimmer {
  to {
    transform: translateX(100%);
  }
}
.tab-skeleton-content {
  padding: var(--space-xs) 0;
}
.tabs-skeleton-card {
  display: flex;
  flex-direction: column;
  gap: var(--space-md);
  padding: var(--space-lg);
  background: var(--transp-02);
  border: 1px solid var(--transp-05);
  border-radius: var(--border1);
}
.tabs-skeleton-card__header {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
}
.tabs-skeleton-card__icon {
  width: 36px;
  height: 36px;
  border-radius: 8px;
  background: var(--transp-1);
  flex-shrink: 0;
}
.tabs-skeleton-card__icon::after {
  animation: shimmer 1.6s cubic-bezier(0.22, 1, 0.36, 1) infinite;
}
.tabs-skeleton-card__title-group {
  display: flex;
  flex-direction: column;
  gap: var(--space-2xs);
  flex: 1;
}
.tabs-skeleton-card__title {
  height: 14px;
  width: 45%;
  min-width: 100px;
  border-radius: 4px;
}
.tabs-skeleton-card__subtitle {
  height: 10px;
  width: 30%;
  min-width: 60px;
  border-radius: 3px;
  opacity: 0.6;
}
.tabs-skeleton-card__content {
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
}
.tabs-skeleton-card__row {
  display: flex;
  gap: var(--space-sm);
}
.tabs-skeleton-card__row--split .tabs-skeleton-card__field {
  flex: 1;
}
.tabs-skeleton-card__field {
  display: flex;
  flex-direction: column;
  gap: var(--space-2xs);
  flex: 1;
}
.tabs-skeleton-card__field--half {
  flex: 0 0 50%;
}
.tabs-skeleton-card__field--third {
  flex: 0 0 33.333%;
}
.tabs-skeleton-card__label {
  height: 10px;
  width: 80px;
  border-radius: 3px;
  opacity: 0.5;
}
.tabs-skeleton-card__input {
  height: 38px;
  width: 100%;
  border-radius: 6px;
}
.tabs-skeleton-card__textarea {
  height: 80px;
  width: 100%;
  border-radius: 6px;
}
.tabs-skeleton-card__toggle {
  display: flex;
  align-items: center;
  gap: var(--space-xs);
  padding: var(--space-xs) 0;
}
.tabs-skeleton-card__toggle-switch {
  width: 40px;
  height: 22px;
  border-radius: 11px;
  flex-shrink: 0;
}
.tabs-skeleton-card__toggle-label {
  height: 12px;
  width: 120px;
  border-radius: 3px;
}
.modal-skeleton {
  display: flex;
  flex-direction: column;
  width: 100%;
  margin-top: var(--space-md);
}
.modal-skeleton__socials {
  display: flex;
  gap: var(--space-sm);
  margin-bottom: var(--space-lg);
}
.modal-skeleton__social-btn {
  width: 100%;
  height: 50px;
  border-radius: var(--border1);
}
.modal-skeleton__divider {
  display: flex;
  align-items: center;
  gap: var(--space-md);
  margin-bottom: var(--space-lg);
}
.modal-skeleton__divider::before, .modal-skeleton__divider::after {
  content: "";
  flex: 1;
  height: 1px;
  background: var(--transp-1);
}
.modal-skeleton__divider-text {
  width: 24px;
  height: 12px;
  border-radius: 4px;
  flex-shrink: 0;
}
.modal-skeleton__field {
  display: flex;
  flex-direction: column;
  gap: var(--space-2xs);
  margin-bottom: var(--space-md);
}
.modal-skeleton__label {
  height: 12px;
  width: 100px;
  border-radius: 4px;
}
.modal-skeleton__label--link {
  width: 80px;
}
.modal-skeleton__label-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.modal-skeleton__input {
  height: 44px;
  width: 100%;
  border-radius: var(--border05);
}
.modal-skeleton__checkbox {
  display: flex;
  align-items: center;
  gap: var(--space-xs);
  margin-bottom: var(--space-lg);
}
.modal-skeleton__checkbox-box {
  width: 18px;
  height: 18px;
  border-radius: 4px;
  flex-shrink: 0;
}
.modal-skeleton__checkbox-label {
  height: 12px;
  width: 110px;
  border-radius: 4px;
}
.modal-skeleton__submit {
  height: 46px;
  width: 100%;
  border-radius: var(--border05);
}
.modal-skeleton__footer {
  display: flex;
  justify-content: center;
  margin-top: var(--space-xl);
}
.modal-skeleton__footer-text {
  height: 12px;
  width: 180px;
  border-radius: 4px;
}
.modal-skeleton__currency-bar {
  display: flex;
  gap: var(--space-2xs);
  margin-bottom: var(--space-sm);
}
.modal-skeleton__currency-item {
  flex: 1;
  height: 38px;
  border-radius: var(--border05);
}
.modal-skeleton__amount-input {
  height: 46px;
  width: 100%;
  border-radius: var(--border05);
  margin-bottom: var(--space-sm);
}
.modal-skeleton__presets {
  display: flex;
  gap: var(--space-2xs);
  margin-bottom: var(--space-md);
}
.modal-skeleton__preset {
  flex: 1;
  height: 36px;
  border-radius: var(--border05);
}
.modal-skeleton__gateways {
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
  margin-bottom: var(--space-md);
}
.modal-skeleton__gateway-card {
  height: 60px;
  width: 100%;
  border-radius: var(--border1);
}
.modal-skeleton__promo {
  height: 42px;
  width: 100%;
  border-radius: var(--border05);
  margin-bottom: var(--space-md);
}
.modal-skeleton--auth .skeleton::after, .modal-skeleton--register .skeleton::after, .modal-skeleton--lk .skeleton::after {
  animation-delay: 0s;
}
.modal-skeleton--auth .skeleton:nth-child(1)::after, .modal-skeleton--register .skeleton:nth-child(1)::after, .modal-skeleton--lk .skeleton:nth-child(1)::after {
  animation-delay: 0.08s;
}
.modal-skeleton--auth .skeleton:nth-child(2)::after, .modal-skeleton--register .skeleton:nth-child(2)::after, .modal-skeleton--lk .skeleton:nth-child(2)::after {
  animation-delay: 0.16s;
}
.modal-skeleton--auth .skeleton:nth-child(3)::after, .modal-skeleton--register .skeleton:nth-child(3)::after, .modal-skeleton--lk .skeleton:nth-child(3)::after {
  animation-delay: 0.24s;
}
.modal-skeleton--auth .skeleton:nth-child(4)::after, .modal-skeleton--register .skeleton:nth-child(4)::after, .modal-skeleton--lk .skeleton:nth-child(4)::after {
  animation-delay: 0.32s;
}
.modal-skeleton--auth .skeleton:nth-child(5)::after, .modal-skeleton--register .skeleton:nth-child(5)::after, .modal-skeleton--lk .skeleton:nth-child(5)::after {
  animation-delay: 0.4s;
}
.modal-skeleton--auth .skeleton:nth-child(6)::after, .modal-skeleton--register .skeleton:nth-child(6)::after, .modal-skeleton--lk .skeleton:nth-child(6)::after {
  animation-delay: 0.48s;
}
.modal-skeleton--auth .skeleton:nth-child(7)::after, .modal-skeleton--register .skeleton:nth-child(7)::after, .modal-skeleton--lk .skeleton:nth-child(7)::after {
  animation-delay: 0.56s;
}
.modal-skeleton--auth .skeleton:nth-child(8)::after, .modal-skeleton--register .skeleton:nth-child(8)::after, .modal-skeleton--lk .skeleton:nth-child(8)::after {
  animation-delay: 0.64s;
}
.modal-skeleton--auth .skeleton:nth-child(9)::after, .modal-skeleton--register .skeleton:nth-child(9)::after, .modal-skeleton--lk .skeleton:nth-child(9)::after {
  animation-delay: 0.72s;
}
.modal-skeleton--auth .skeleton:nth-child(10)::after, .modal-skeleton--register .skeleton:nth-child(10)::after, .modal-skeleton--lk .skeleton:nth-child(10)::after {
  animation-delay: 0.8s;
}
.modal-skeleton--auth .skeleton:nth-child(11)::after, .modal-skeleton--register .skeleton:nth-child(11)::after, .modal-skeleton--lk .skeleton:nth-child(11)::after {
  animation-delay: 0.88s;
}
.modal-skeleton--auth .skeleton:nth-child(12)::after, .modal-skeleton--register .skeleton:nth-child(12)::after, .modal-skeleton--lk .skeleton:nth-child(12)::after {
  animation-delay: 0.96s;
}
.modal-skeleton--auth > *:nth-child(1) .skeleton::after, .modal-skeleton--register > *:nth-child(1) .skeleton::after, .modal-skeleton--lk > *:nth-child(1) .skeleton::after {
  animation-delay: 0s;
}
.modal-skeleton--auth > *:nth-child(2) .skeleton::after, .modal-skeleton--register > *:nth-child(2) .skeleton::after, .modal-skeleton--lk > *:nth-child(2) .skeleton::after {
  animation-delay: 0.06s;
}
.modal-skeleton--auth > *:nth-child(3) .skeleton::after, .modal-skeleton--register > *:nth-child(3) .skeleton::after, .modal-skeleton--lk > *:nth-child(3) .skeleton::after {
  animation-delay: 0.12s;
}
.modal-skeleton--auth > *:nth-child(4) .skeleton::after, .modal-skeleton--register > *:nth-child(4) .skeleton::after, .modal-skeleton--lk > *:nth-child(4) .skeleton::after {
  animation-delay: 0.18s;
}
.modal-skeleton--auth > *:nth-child(5) .skeleton::after, .modal-skeleton--register > *:nth-child(5) .skeleton::after, .modal-skeleton--lk > *:nth-child(5) .skeleton::after {
  animation-delay: 0.24s;
}
.modal-skeleton--auth > *:nth-child(6) .skeleton::after, .modal-skeleton--register > *:nth-child(6) .skeleton::after, .modal-skeleton--lk > *:nth-child(6) .skeleton::after {
  animation-delay: 0.3s;
}
.modal-skeleton--auth > *:nth-child(7) .skeleton::after, .modal-skeleton--register > *:nth-child(7) .skeleton::after, .modal-skeleton--lk > *:nth-child(7) .skeleton::after {
  animation-delay: 0.36s;
}
.modal-skeleton--auth > *:nth-child(8) .skeleton::after, .modal-skeleton--register > *:nth-child(8) .skeleton::after, .modal-skeleton--lk > *:nth-child(8) .skeleton::after {
  animation-delay: 0.42s;
}
.modal-skeleton--auth > *:nth-child(9) .skeleton::after, .modal-skeleton--register > *:nth-child(9) .skeleton::after, .modal-skeleton--lk > *:nth-child(9) .skeleton::after {
  animation-delay: 0.48s;
}
.modal-skeleton--auth > *:nth-child(10) .skeleton::after, .modal-skeleton--register > *:nth-child(10) .skeleton::after, .modal-skeleton--lk > *:nth-child(10) .skeleton::after {
  animation-delay: 0.54s;
}
.tabs-skeleton-form {
  display: flex;
  flex-direction: column;
  gap: var(--space-lg);
}
.tabs-skeleton-form__section {
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
}
.tabs-skeleton-form__section-title {
  height: 16px;
  width: 150px;
  border-radius: var(--space-2xs);
  margin-bottom: var(--space-2xs);
}
.tabs-skeleton-form__fields {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: var(--space-md);
}
[aria-busy="true"] {
  cursor: progress;
}
[aria-busy="true"]:not(input, select, textarea, html)::before {
  display: inline-block;
  width: 0.8em;
  height: 0.8em;
  border: 0.1875em solid currentColor;
  border-radius: 1em;
  border-right-color: transparent;
  content: "";
  vertical-align: text-bottom;
  vertical-align: -0.125em;
  animation: spinner 0.75s linear infinite;
  opacity: 0.75;
  order: 2;
}
[aria-busy="true"]:not(input, select, textarea, html):not(:empty)::before {
  margin-right: 4px;
  margin-left: 0;
  margin-inline-start: 0;
  margin-inline-end: 4px;
}
[aria-busy="true"]:not(input, select, textarea, html):empty {
  text-align: center;
}
a[aria-busy="true"], button[aria-busy="true"], input[type="button"][aria-busy="true"], input[type="reset"][aria-busy="true"], input[type="submit"][aria-busy="true"] {
  pointer-events: none;
}
@keyframes spinner {
  to {
    transform: rotate(360deg);
  }
}
@media (prefers-reduced-motion: reduce) {
  :not([aria-busy=true]), :not([aria-busy=true])::after, :not([aria-busy=true])::before {
    background-attachment: initial !important;
    animation-duration: 1ms !important;
    animation-delay: -1ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-delay: 0s !important;
    transition-duration: 0s !important;
  }
}
.notifications__container {
  width: 450px;
}
.notifications__main {
  width: 100%;
  height: 100%;
}
@media (min-width: 1024px) {
  .notifications__main {
    width: 450px;
  }
}
.notifications__main > header, .notifications__main .tabs-nav {
  border-bottom: 1px solid var(--transp-1);
}
.notifications__main > header {
  padding-bottom: 15px;
}
@media (max-width: 767px) {
  .notifications__main .tabs-nav .tab-item {
    width: 100%;
  }
  .notifications__main .tabs-nav .tab-item a {
    justify-content: center;
  }
}
.notifications__items {
  all: unset;
  overflow: hidden;
  border-radius: var(--border1);
}
.notifications__skeleton {
  display: flex;
  gap: var(--space-md);
  padding: var(--space-md);
}
.notifications__skeleton-icon {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  flex-shrink: 0;
}
.notifications__skeleton-content {
  display: flex;
  flex-direction: column;
  gap: var(--space-xs);
  flex: 1;
}
.notifications__skeleton-title {
  height: 14px;
  width: 60%;
  border-radius: var(--space-2xs);
}
.notifications__skeleton-text {
  height: 10px;
  width: 80%;
  border-radius: var(--space-2xs);
  opacity: 0.6;
}
.notifications__skeleton-date {
  height: 8px;
  width: 30%;
  border-radius: var(--space-2xs);
  opacity: 0.4;
  margin-top: var(--space-2xs);
}
.notifications__empty {
  padding: var(--space-xl) var(--space-md);
  color: var(--text-500);
}
.navbar__notifications-wrapper {
  position: relative;
}
.notification-dropdown {
  position: fixed;
  width: 380px;
  max-height: 480px;
  background: var(--blurred-background);
  backdrop-filter: blur(var(--blur-amount, 10px)) saturate(180%);
  -webkit-backdrop-filter: blur(var(--blur-amount, 10px)) saturate(180%);
  border: 1px solid var(--transp-1);
  border-radius: var(--border1);
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.2);
  display: flex;
  flex-direction: column;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-8px);
  transform-origin: top right;
  transition: opacity 0.2s ease-out, visibility 0.2s ease-out, transform 0.2s cubic-bezier(0.16, 1, 0.3, 1);
  pointer-events: none;
  z-index: 9999;
}
.notification-dropdown[data-placement^="top"] {
  transform-origin: bottom right;
  transform: translateY(8px);
}
.notification-dropdown[data-placement="bottom-start"], .notification-dropdown[data-placement="top-start"] {
  transform-origin: top left;
}
.notification-dropdown[data-placement="top-start"] {
  transform-origin: bottom left;
  transform: translateY(8px);
}
.notification-dropdown.is-open {
  opacity: 1;
  visibility: visible;
  transform: translateY(0) scale(1);
  pointer-events: auto;
}
.notification-dropdown__header {
  padding: var(--space-md);
  border-bottom: 1px solid var(--transp-1);
}
.notification-dropdown__title {
  font-size: var(--p);
  font-weight: 600;
  margin: 0;
}
.notification-dropdown__actions {
  gap: var(--space-2xs);
}
.notification-dropdown__action {
  padding: var(--space-xs);
  background: transparent;
  border: none;
  color: var(--text-400);
  cursor: pointer;
  border-radius: var(--border05);
  transition: all var(--transition) ease-out;
}
.notification-dropdown__action svg {
  font-size: 1.1rem;
}
.notification-dropdown__action:hover {
  background: var(--transp-1);
  color: var(--primary);
}
.notification-dropdown__action--danger:hover {
  background: rgba(var(--error-rgb), 0.1);
  color: var(--error);
}
.notification-dropdown__action--sound {
  color: var(--accent);
}
.notification-dropdown__action--sound.is-muted {
  color: var(--text-600);
  opacity: 0.7;
}
.notification-dropdown__action--sound.is-muted:hover {
  opacity: 1;
  color: var(--text-400);
}
.notification-dropdown__mark-read {
  padding: var(--space-xs);
  background: transparent;
  border: none;
  color: var(--text-400);
  cursor: pointer;
  border-radius: var(--border05);
  transition: all var(--transition) ease-out;
}
.notification-dropdown__mark-read svg {
  font-size: 1.1rem;
}
.notification-dropdown__mark-read:hover {
  background: var(--transp-1);
  color: var(--primary);
}
.notification-dropdown__tabs {
  border-bottom: 1px solid var(--transp-1);
}
.notification-dropdown__tab {
  flex: 1;
  gap: var(--space-xs);
  padding: var(--space-sm);
  background: transparent;
  border: none;
  border-bottom: 2px solid transparent;
  color: var(--text-400);
  font-size: var(--p-small);
  font-weight: 500;
  cursor: pointer;
  transition: all var(--transition) ease-out;
  margin-bottom: -1px;
}
.notification-dropdown__tab:hover {
  color: var(--text-200);
}
.notification-dropdown__tab.active {
  color: var(--text);
  border-bottom-color: var(--primary);
}
.notification-dropdown__badge {
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  background: var(--transp-1);
  border-radius: 9px;
  font-size: 10px;
  font-weight: 600;
  color: var(--text-400);
}
.active .notification-dropdown__badge {
  background: var(--primary);
  color: var(--primary-900);
}
.notification-dropdown__content {
  flex: 1;
  overflow-y: auto;
  max-height: 360px;
}
.notification-dropdown__list {
  overflow: hidden;
  border-bottom-right-radius: var(--border1);
  border-bottom-left-radius: var(--border1);
}
.notification-dropdown__skeleton {
  display: flex;
  gap: var(--space-sm);
  padding: var(--space-md);
}
.notification-dropdown__skeleton-avatar {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  flex-shrink: 0;
}
.notification-dropdown__skeleton-body {
  gap: var(--space-xs);
  flex: 1;
}
.notification-dropdown__skeleton-title {
  height: 12px;
  width: 50%;
  border-radius: var(--space-2xs);
}
.notification-dropdown__skeleton-text {
  height: 10px;
  width: 70%;
  border-radius: var(--space-2xs);
  opacity: 0.5;
}
@media (max-width: 767px) {
  .notification-dropdown {
    top: auto !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100%;
    max-height: 70vh;
    border-radius: var(--border1) var(--border1) 0 0;
    transform: translateY(100%);
    transform-origin: bottom center;
  }
  .notification-dropdown.is-open {
    transform: translateY(0);
  }
}
.notification-content {
  flex: 1;
  gap: var(--space-xs);
  min-width: 0;
}
.notification-item {
  position: relative;
  display: flex;
  gap: var(--space-sm);
  padding: var(--space-md);
  border-bottom: 1px solid var(--transp-05);
  transition: background-color var(--transition) ease-out;
}
.notification-item.unread {
  background: var(--transp-05);
}
.notification-item.hovered {
  cursor: pointer;
}
.notification-item:hover {
  background-color: var(--transp-1);
}
.notification-item:hover .notification-delete {
  opacity: 1;
}
.notification-item:last-child {
  border-bottom: none;
}
.notification-date {
  font-size: var(--small);
  color: var(--text-500);
  line-height: 1.4;
}
.notification-text {
  font-size: var(--small);
  color: var(--text-300);
  line-height: 1.4;
}
.notification-text p {
  line-height: inherit;
  margin: 0;
  font-size: var(--small);
}
.notification-unread-indicator {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: var(--primary);
  flex-shrink: 0;
}
.notification-header {
  align-items: flex-start;
  gap: var(--space-sm);
}
.notification-header h6 {
  font-size: var(--p-small);
  font-weight: 500;
  margin: 0;
  line-height: 1.3;
}
.notification-name {
  flex: 1;
  min-width: 0;
  gap: 2px;
}
.notification-icon {
  width: 36px;
  height: 36px;
  background-color: var(--transp-1);
  border-radius: 50%;
  overflow: hidden;
  flex-shrink: 0;
}
.notification-icon img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.notification-icon svg {
  font-size: 18px;
  color: var(--primary);
}
.notification-buttons {
  flex-wrap: wrap;
  gap: var(--space-xs);
  margin-top: var(--space-2xs);
}
.notification-btn {
  gap: var(--space-2xs);
  padding: var(--space-2xs) var(--space-sm);
  font-size: var(--small);
  font-weight: 500;
  border-radius: var(--border05);
  text-decoration: none;
  transition: all var(--transition) ease-out;
  cursor: pointer;
}
.notification-btn--primary {
  background: var(--primary);
  color: var(--primary-900);
}
.notification-btn--primary:hover {
  background: var(--primary-200);
}
.notification-btn--secondary {
  background: var(--transp-1);
  color: var(--text-200);
}
.notification-btn--secondary:hover {
  background: var(--transp-2);
}
.notification-btn--danger {
  background: var(--error);
  color: #fff;
}
.notification-btn--danger:hover {
  opacity: 0.9;
}
.notification-btn--success {
  background: var(--success);
  color: #fff;
}
.notification-btn--success:hover {
  opacity: 0.9;
}
.notification-btn--outline {
  background: transparent;
  color: var(--text-300);
  border: 1px solid var(--transp-2);
}
.notification-btn--outline:hover {
  background: var(--transp-1);
  border-color: var(--transp-3);
}
.notification-btn[type="button"] {
  border: none;
  outline: none;
}
.notification-btn[type="button"].notification-btn--outline {
  border: 1px solid var(--transp-2);
}
.notification-file {
  margin-top: var(--space-2xs);
}
.notification-file-link {
  gap: var(--space-xs);
  padding: var(--space-2xs) var(--space-sm);
  background: var(--transp-1);
  border-radius: var(--border05);
  color: var(--primary);
  font-size: var(--small);
  text-decoration: none;
  transition: all var(--transition) ease-out;
}
.notification-file-link:hover {
  background: var(--transp-2);
}
.notification-delete {
  position: absolute;
  top: 50%;
  right: var(--space-sm);
  transform: translateY(-50%);
  width: 26px;
  height: 26px;
  background: var(--transp-1);
  border: none;
  border-radius: var(--border05);
  color: var(--text-400);
  cursor: pointer;
  opacity: 0;
  transition: all var(--transition) ease-out;
}
.notification-delete svg {
  font-size: 13px;
}
.notification-delete:hover {
  background: var(--error);
  color: #fff;
}
.notification-popups {
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 9998;
  display: flex;
  flex-direction: column-reverse;
  gap: 8px;
  pointer-events: none;
  max-height: 80vh;
  overflow: visible;
}
@media (max-width: 767px) {
  .notification-popups {
    bottom: 12px;
    left: 12px;
    right: 12px;
  }
}
.notification-popup {
  pointer-events: auto;
  display: flex;
  align-items: flex-start;
  gap: 12px;
  width: 340px;
  max-width: 100%;
  padding: 14px 16px;
  background: var(--blurred-background);
  backdrop-filter: blur(16px) saturate(180%);
  -webkit-backdrop-filter: blur(16px) saturate(180%);
  border: 1px solid var(--transp-1);
  border-radius: 12px;
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.15);
  cursor: pointer;
  opacity: 0;
  transform: translateY(12px);
  transition: opacity 0.3s ease, transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
  position: relative;
  overflow: hidden;
}
.notification-popup.is-visible {
  opacity: 1;
  transform: translateY(0);
}
.notification-popup.is-hiding {
  opacity: 0;
  transform: translateY(8px);
  transition: opacity 0.2s ease, transform 0.2s ease;
}
@media (max-width: 767px) {
  .notification-popup {
    width: 100%;
  }
}
.notification-popup__icon {
  width: 34px;
  height: 34px;
  background: var(--transp-1);
  border-radius: 10px;
  flex-shrink: 0;
  overflow: hidden;
}
.notification-popup__icon img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 10px;
}
.notification-popup__icon svg {
  width: 17px;
  height: 17px;
  color: var(--primary);
}
.notification-popup__body {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.notification-popup__title {
  font-size: 13px;
  font-weight: 600;
  color: var(--text);
  line-height: 1.3;
}
.notification-popup__close {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  background: transparent;
  border: none;
  color: var(--text-400);
  cursor: pointer;
  border-radius: 6px;
  transition: all var(--transition) ease-out;
  opacity: 0;
}
.notification-popup:hover .notification-popup__close {
  opacity: 1;
}
.notification-popup__close:hover {
  background: var(--transp-2);
  color: var(--text);
}
.notification-popup__text {
  font-size: 12px;
  color: var(--text-300);
  line-height: 1.4;
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.notification-popup__progress {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: var(--primary);
  border-radius: 0 0 12px 12px;
  transform-origin: left;
  animation: popup-progress 6s linear forwards;
}
@keyframes popup-progress {
  from {
    transform: scaleX(1);
  }
  to {
    transform: scaleX(0);
  }
}
.dropdown-backdrop {
  display: none;
}
@media (max-width: 767px) {
  .dropdown-backdrop {
    display: block;
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.5);
    z-index: 499;
    opacity: 0;
    transition: opacity 0.2s ease;
  }
  .dropdown-backdrop.is-visible {
    opacity: 1;
  }
}
.navbar__profile-wrapper {
  position: relative;
  display: flex;
  align-items: center;
}
.navbar__profile-trigger {
  position: relative;
  width: 32px;
  height: 32px;
  padding: 0;
  margin: 0 var(--space-xs);
  background: transparent;
  border: none;
  border-radius: 50%;
  cursor: pointer;
  transition: all var(--transition) ease-out;
}
.navbar__profile-trigger img {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  object-fit: cover;
  display: block;
}
.navbar__profile-trigger:hover, .navbar__profile-trigger[aria-expanded="true"] {
  opacity: 0.8;
}
.navbar__profile-trigger:active {
  transform: scale(0.92);
}
.profile-dropdown {
  position: fixed;
  width: 272px;
  background: var(--blurred-background);
  backdrop-filter: blur(48px) saturate(180%);
  -webkit-backdrop-filter: blur(48px) saturate(180%);
  border: 1px solid var(--transp-1);
  border-radius: 14px;
  box-shadow: 0 0 0 0.5px var(--transp-05), 0 8px 40px rgba(0, 0, 0, 0.18);
  opacity: 0;
  visibility: hidden;
  transform: scale(0.97) translateY(-4px);
  transform-origin: top right;
  transition: opacity 0.2s cubic-bezier(0.2, 0, 0, 1), visibility 0.2s cubic-bezier(0.2, 0, 0, 1), transform 0.2s cubic-bezier(0.2, 0, 0, 1);
  pointer-events: none;
  overflow: hidden;
  z-index: 500;
}
.profile-dropdown[data-placement^="top"] {
  transform-origin: bottom right;
  transform: scale(0.97) translateY(4px);
}
.profile-dropdown[data-placement="bottom-start"], .profile-dropdown[data-placement="top-start"] {
  transform-origin: top left;
}
.profile-dropdown[data-placement="top-start"] {
  transform-origin: bottom left;
  transform: scale(0.97) translateY(4px);
}
.profile-dropdown.is-open {
  opacity: 1;
  visibility: visible;
  transform: scale(1) translateY(0);
  pointer-events: auto;
}
.profile-dropdown__hero {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 16px 14px 12px;
  gap: 6px;
  background: var(--transp-05);
}
.profile-dropdown__hero[style*="--banner"] {
  padding-top: 30px;
  background: none;
}
.profile-dropdown__hero[style*="--banner"]::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: var(--banner) center / cover no-repeat;
}
.profile-dropdown__hero[style*="--banner"]::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(to bottom, transparent 0%, var(--blurred-background) 65%);
}
.profile-dropdown__hero-avatar {
  position: relative;
  z-index: 1;
  width: 56px;
  height: 56px;
  border-radius: 50%;
  overflow: hidden;
  box-shadow: 0 0 0 3px var(--blurred-background);
  flex-shrink: 0;
}
.profile-dropdown__hero-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.profile-dropdown__hero-name {
  position: relative;
  z-index: 1;
  font-size: 15px;
  font-weight: 600;
  color: var(--text);
  line-height: 1.25;
  text-align: center;
  max-width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.profile-dropdown__hero-sub {
  position: relative;
  z-index: 1;
  font-size: 12px;
  color: var(--text-500);
  line-height: 1.25;
  text-align: center;
  margin-top: -4px;
}
.profile-dropdown__section {
  padding: 6px;
  position: relative;
}
.profile-dropdown__section::before {
  content: "";
  position: absolute;
  top: 0;
  left: 14px;
  right: 14px;
  height: 1px;
  background: var(--transp-1);
}
.profile-dropdown__balance {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  padding: 7px 8px;
  border-radius: 8px;
  background: transparent;
  border: none;
  text-decoration: none;
  cursor: pointer;
  transition: all var(--transition) ease-out;
}
.profile-dropdown__balance:hover {
  background: var(--transp-05);
}
.profile-dropdown__balance:hover .profile-dropdown__balance-topup {
  opacity: 1;
  background: var(--accent);
  color: var(--background);
}
.profile-dropdown__balance:active {
  background: var(--transp-1);
}
.profile-dropdown__balance-icon {
  width: 28px;
  height: 28px;
  flex-shrink: 0;
}
.profile-dropdown__balance-icon svg {
  color: var(--text-700);
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}
.profile-dropdown__balance-label {
  font-size: 13px;
  font-weight: 500;
  color: var(--text-300);
  min-width: 0;
}
.profile-dropdown__balance-amount {
  font-size: 13px;
  font-weight: 600;
  color: var(--text);
  font-variant-numeric: tabular-nums;
  flex-shrink: 0;
  margin-left: auto;
}
.profile-dropdown__balance-topup {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: var(--transp-1);
  color: var(--text-400);
  flex-shrink: 0;
  opacity: 0.6;
  transition: all var(--transition) ease-out;
}
.profile-dropdown__balance-topup svg {
  width: 10px;
  height: 10px;
  flex-shrink: 0;
}
.profile-dropdown__menu {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2px;
  padding: 6px;
  position: relative;
}
.profile-dropdown__menu::before {
  content: "";
  position: absolute;
  top: 0;
  left: 14px;
  right: 14px;
  height: 1px;
  background: var(--transp-1);
}
.profile-dropdown__menu-item {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px;
  border-radius: 8px;
  text-decoration: none;
  cursor: pointer;
  transition: all var(--transition) ease-out;
}
.profile-dropdown__menu-item:hover {
  background: var(--transp-05);
}
.profile-dropdown__menu-item:hover .profile-dropdown__menu-icon {
  color: var(--text);
}
.profile-dropdown__menu-item:active {
  transform: scale(0.97);
}
.profile-dropdown__menu-icon {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  color: var(--text-500);
  transition: color var(--transition) ease-out;
}
.profile-dropdown__menu-icon svg {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}
.profile-dropdown__menu-label {
  font-size: 12px;
  font-weight: 500;
  color: var(--text-300);
  line-height: 1.25;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  min-width: 0;
}
.profile-dropdown__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 4px 6px 6px;
  position: relative;
}
.profile-dropdown__footer::before {
  content: "";
  position: absolute;
  top: 0;
  left: 14px;
  right: 14px;
  height: 1px;
  background: var(--transp-1);
}
.profile-dropdown__footer-settings {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 7px 10px;
  border-radius: 8px;
  text-decoration: none;
  color: var(--text-400);
  font-size: 12px;
  font-weight: 500;
  transition: all var(--transition) ease-out;
}
.profile-dropdown__footer-settings svg {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}
.profile-dropdown__footer-settings:hover {
  background: var(--transp-05);
  color: var(--text);
}
.profile-dropdown__footer-actions {
  display: flex;
  align-items: center;
  gap: 2px;
}
.profile-dropdown__footer-btn {
  width: 34px;
  height: 34px;
  padding: 0;
  background: transparent;
  border: none;
  border-radius: 8px;
  color: var(--text-500);
  cursor: pointer;
  text-decoration: none;
  transition: all var(--transition) ease-out;
}
.profile-dropdown__footer-btn svg {
  width: 17px;
  height: 17px;
  flex-shrink: 0;
}
.profile-dropdown__footer-btn:hover {
  background: var(--transp-05);
  color: var(--text);
}
.profile-dropdown__footer-btn--danger:hover {
  background: var(--error-light);
  color: var(--error);
}
@media (max-width: 767px) {
  .profile-dropdown {
    top: auto !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100%;
    max-height: 80vh;
    overflow-y: auto;
    border-radius: 16px 16px 0 0;
    transform: translateY(100%);
    transform-origin: bottom center;
  }
  .profile-dropdown::after {
    content: "";
    display: block;
    width: 36px;
    height: 4px;
    background: var(--transp-3);
    border-radius: 2px;
    margin: 8px auto 0;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
  }
  .profile-dropdown.is-open {
    transform: translateY(0);
  }
  .profile-dropdown__hero {
    padding: 24px 16px 14px;
  }
  .profile-dropdown__hero[style*="--banner"] {
    padding-top: 80px;
  }
  .profile-dropdown__hero-avatar {
    width: 64px;
    height: 64px;
  }
  .profile-dropdown__hero-name {
    font-size: 17px;
  }
  .profile-dropdown__section {
    padding: 4px 8px;
  }
  .profile-dropdown__section::before {
    left: 16px;
    right: 16px;
  }
  .profile-dropdown__menu {
    padding: 4px 8px;
  }
  .profile-dropdown__menu::before {
    left: 16px;
    right: 16px;
  }
  .profile-dropdown__menu-item {
    padding: 10px;
  }
  .profile-dropdown__menu-icon svg {
    width: 18px;
    height: 18px;
  }
  .profile-dropdown__menu-label {
    font-size: 13px;
  }
  .profile-dropdown__footer {
    padding: 4px 8px 8px;
  }
  .profile-dropdown__footer::before {
    left: 16px;
    right: 16px;
  }
  .profile-dropdown__footer-settings {
    padding: 9px 12px;
    font-size: 13px;
  }
  .profile-dropdown__footer-btn {
    width: 40px;
    height: 40px;
  }
  .profile-dropdown__footer-btn svg {
    width: 20px;
    height: 20px;
  }
}
.invalid__widget {
  border: 1px solid var(--error) !important;
  border-radius: var(--border1);
  padding: var(--space-lg) var(--space-md);
}
.invalid__widget-icon {
  font-size: var(--h1);
  opacity: 0.3;
}
.invalid__widget-title {
  color: var(--error);
  margin-top: var(--space-sm);
}
.invalid__widget-small {
  color: var(--text-300);
}
.invalid__widget-error {
  background-color: var(--transp-1);
  border-radius: var(--border05);
  font-size: var(--p-small);
  color: var(--text-100);
  padding: var(--space-xs) var(--space-sm);
  margin: var(--space-md) 0;
  margin-bottom: var(--space-lg);
  user-select: all;
}
.page-no-widgets {
  padding: var(--space-md) 0;
}
.page-no-widgets .icon {
  color: var(--accent);
  font-size: var(--h1);
}
.page-no-widgets .description {
  text-align: center;
  font-size: var(--p-small);
  margin-bottom: var(--space-xl);
}
.confirmation-dialog__icon > svg {
  border-radius: 50%;
  background-color: var(--transp-1);
  color: var(--primary);
  width: 50px;
  height: 50px;
  padding: 10px;
}
.confirmation-dialog__icon > svg.icon-error {
  color: var(--error);
  background-color: var(--error-light);
}
.confirmation-dialog__icon > svg.icon-success {
  color: var(--success);
  background-color: var(--success-light);
}
.confirmation-dialog__icon > svg.icon-warning {
  color: var(--warning);
  background-color: var(--warning-light);
}
.confirmation-dialog__icon > svg.icon-info {
  color: var(--info);
  background-color: var(--info-light);
}
#confirmation-dialog-content {
  margin-bottom: 10px;
}
.stat-item .gray-rank, .stat-item .wblue-rank, .stat-item .blue-rank, .stat-item .purple-rank, .stat-item .pink-rank, .stat-item .red-rank, .stat-item .gold-rank {
  width: 100%;
  margin: 5px 0 0 0;
  height: 22px;
  line-height: 18px;
  font-size: 11px;
}
.premier-rank {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.gray-rank, .wblue-rank, .blue-rank, .purple-rank, .pink-rank, .red-rank, .gold-rank {
  font-weight: 700;
  padding: 2px 4px 2px 10px;
  -webkit-transform: skewX(-10deg);
  transform: skewX(-10deg);
  display: inline-block;
  width: 80px;
  height: 25px;
  line-height: 20px;
  text-align: center;
  position: relative;
  margin: 0 auto;
  font-variant-numeric: tabular-nums;
  border-radius: 2px;
}
.sp-rank-inline .premier-rank, .stats__cell-rank .premier-rank {
  width: auto;
  min-width: 80px;
  padding: 2px 12px 2px 12px;
  font-size: 13px;
  height: 28px;
  line-height: 24px;
}
.gray-rank:after, .wblue-rank:after, .blue-rank:after, .purple-rank:after, .pink-rank:after, .red-rank:after, .gold-rank:after {
  left: 0px;
}
.gray-rank:before, .wblue-rank:before, .blue-rank:before, .purple-rank:before, .pink-rank:before, .red-rank:before, .gold-rank:before {
  left: 5px;
}
.gray-rank:after, .gray-rank:before, .wblue-rank:after, .wblue-rank:before, .blue-rank:after, .blue-rank:before, .purple-rank:after, .purple-rank:before, .pink-rank:after, .pink-rank:before, .red-rank:after, .red-rank:before, .gold-rank:after, .gold-rank:before {
  content: "";
  height: 100%;
  position: absolute;
  top: 0;
  width: 3px;
}
.gray-rank {
  background-color: #2f2f2f;
  color: #a0a0a0;
}
.gray-rank:after, .gray-rank:before {
  background-color: #a0a0a0;
}
.wblue-rank {
  background-color: #1a2f4f;
  color: #b3c9ff;
}
.wblue-rank:after, .wblue-rank:before {
  background-color: #b3c9ff;
}
.blue-rank {
  background-color: #1f2758;
  color: #697ce9;
}
.blue-rank:after, .blue-rank:before {
  background-color: #697ce9;
}
.purple-rank {
  background-color: #422158;
  color: #ba69f2;
}
.purple-rank:after, .purple-rank:before {
  background-color: #ba69f2;
}
.pink-rank {
  background-color: #5a005e;
  color: #df16ec;
}
.pink-rank:after, .pink-rank:before {
  background-color: #df16ec;
}
.red-rank {
  background-color: #590c03;
  color: #ec4143;
}
.red-rank:after, .red-rank:before {
  background-color: #ec4143;
}
.gold-rank {
  background-color: #4c3900;
  color: #fdd608;
}
.gold-rank:after, .gold-rank:before {
  background-color: #fdd608;
}
.md-content, .tiptap-editor .ProseMirror {
  line-height: 1.55;
  color: var(--text-100);
  font-size: var(--p-small);
  /* nested lists and variants */
  /* task lists */
  /* images and figures */
  /* description list */
  /* details/summary */
}
.md-content p, .tiptap-editor .ProseMirror p {
  line-height: inherit;
}
.md-content > :first-child, .tiptap-editor .ProseMirror > :first-child {
  margin-top: 0;
}
.md-content > :last-child, .tiptap-editor .ProseMirror > :last-child {
  margin-bottom: 0;
}
.md-content h1, .tiptap-editor .ProseMirror h1, .md-content h2, .tiptap-editor .ProseMirror h2, .md-content h3, .tiptap-editor .ProseMirror h3, .md-content h4, .tiptap-editor .ProseMirror h4, .md-content h5, .tiptap-editor .ProseMirror h5, .md-content h6, .tiptap-editor .ProseMirror h6 {
  color: var(--text-200);
  margin: var(--space-2xs) 0 var(--space-2xs);
  font-weight: bold;
}
.md-content h1, .tiptap-editor .ProseMirror h1 {
  font-size: var(--h6);
}
.md-content h2, .tiptap-editor .ProseMirror h2 {
  font-size: calc(var(--p) * 1.05);
}
.md-content h3, .tiptap-editor .ProseMirror h3 {
  font-size: var(--p);
}
.md-content h4, .tiptap-editor .ProseMirror h4 {
  font-size: var(--p-small);
}
.md-content h5, .tiptap-editor .ProseMirror h5 {
  font-size: var(--small);
}
.md-content h6, .tiptap-editor .ProseMirror h6 {
  font-size: calc(var(--small) * 0.95);
}
.md-content p, .tiptap-editor .ProseMirror p {
  margin: var(--space-xs) 0;
}
.md-content ul, .tiptap-editor .ProseMirror ul, .md-content ol, .tiptap-editor .ProseMirror ol {
  padding-left: var(--space-md);
  margin: var(--space-xs) 0;
  list-style: disc;
  font-size: var(--p-small);
}
.md-content li, .tiptap-editor .ProseMirror li {
  list-style: disc;
  font-size: var(--p-small);
  margin: 0;
}
.md-content ul ul, .tiptap-editor .ProseMirror ul ul {
  list-style: circle;
  margin-top: var(--space-2xs);
}
.md-content ul ul ul, .tiptap-editor .ProseMirror ul ul ul {
  list-style: square;
}
.md-content ol, .tiptap-editor .ProseMirror ol {
  list-style: decimal;
}
.md-content ol ol, .tiptap-editor .ProseMirror ol ol {
  list-style: lower-alpha;
}
.md-content li > ul, .tiptap-editor .ProseMirror li > ul, .md-content li > ol, .tiptap-editor .ProseMirror li > ol {
  margin-left: var(--space-md);
}
.md-content li input[type="checkbox"], .tiptap-editor .ProseMirror li input[type="checkbox"] {
  margin-right: var(--space-xs);
  vertical-align: middle;
}
.md-content li.task-list-item, .tiptap-editor .ProseMirror li.task-list-item {
  list-style: none;
}
.md-content :not(pre) > code, .tiptap-editor .ProseMirror :not(pre) > code {
  background: var(--transp-05);
  color: var(--text-200);
  padding: 0.08rem 0.32rem;
  border: 1px solid var(--transp-1);
  border-radius: var(--border05);
  font-family: var(--font-mono);
}
.md-content pre, .tiptap-editor .ProseMirror pre {
  background: var(--transp-05);
  border: 1px solid var(--transp-1);
  padding: var(--space-sm) var(--space-md);
  border-radius: var(--border05);
  overflow: auto;
  font-size: 90%;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  tab-size: 2;
}
.md-content pre code, .tiptap-editor .ProseMirror pre code {
  background: transparent;
  padding: 0;
  display: block;
  font-family: var(--font-mono);
}
.md-content a, .tiptap-editor .ProseMirror a {
  color: var(--accent);
  text-underline-offset: 2px;
  transition: color var(--transition), text-decoration-color var(--transition);
}
.md-content a:hover, .tiptap-editor .ProseMirror a:hover {
  text-decoration: underline;
}
.md-content blockquote, .tiptap-editor .ProseMirror blockquote {
  border-left: 1px solid var(--transp-2);
  margin: var(--space-sm) 0;
  padding: var(--space-2xs) var(--space-sm);
  padding-left: var(--space-sm);
  color: var(--text-300);
}
.md-content hr, .tiptap-editor .ProseMirror hr {
  border: none;
  height: 1px;
  background: var(--transp-2);
  margin: var(--space-md) 0;
}
.md-content strong, .tiptap-editor .ProseMirror strong {
  font-weight: 600;
  color: var(--text);
}
.md-content em, .tiptap-editor .ProseMirror em {
  font-style: italic;
}
.md-content del, .tiptap-editor .ProseMirror del {
  color: var(--text-500);
}
.md-content mark, .tiptap-editor .ProseMirror mark {
  background: var(--warning-light);
  color: var(--text);
  border-radius: var(--border05);
  padding: 0.05rem 0.2rem;
}
.md-content kbd, .tiptap-editor .ProseMirror kbd {
  font-family: var(--font-mono);
  font-size: 0.9em;
  background: var(--transp-1);
  border: 1px solid var(--transp-2);
  border-bottom-width: 2px;
  padding: 0.1rem 0.35rem;
  border-radius: var(--border05);
}
.md-content sub, .tiptap-editor .ProseMirror sub, .md-content sup, .tiptap-editor .ProseMirror sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
.md-content sup, .tiptap-editor .ProseMirror sup {
  top: -0.4em;
}
.md-content sub, .tiptap-editor .ProseMirror sub {
  bottom: -0.2em;
}
.md-content table, .tiptap-editor .ProseMirror table {
  width: 100%;
  border-collapse: collapse;
  table-layout: auto;
  font-size: var(--small);
  margin: var(--space-xs) 0;
}
.md-content thead th, .tiptap-editor .ProseMirror thead th {
  color: var(--text-300);
  font-weight: 600;
  border-bottom: 1px solid var(--transp-2);
}
.md-content th, .tiptap-editor .ProseMirror th, .md-content td, .tiptap-editor .ProseMirror td {
  text-align: left;
}
.md-content th, .tiptap-editor .ProseMirror th, .md-content td, .tiptap-editor .ProseMirror td {
  padding: var(--space-xs) var(--space-xs);
  border-bottom: 1px solid var(--transp-1);
}
.md-content caption, .tiptap-editor .ProseMirror caption {
  caption-side: bottom;
  font-size: var(--small);
  color: var(--text-500);
  padding-top: var(--space-xs);
}
@media (max-width: 768px) {
  .md-content table, .tiptap-editor .ProseMirror table {
    display: block;
    overflow-x: auto;
  }
  .md-content thead, .tiptap-editor .ProseMirror thead, .md-content tbody, .tiptap-editor .ProseMirror tbody, .md-content th, .tiptap-editor .ProseMirror th, .md-content td, .tiptap-editor .ProseMirror td, .md-content tr, .tiptap-editor .ProseMirror tr {
    display: revert;
  }
}
.md-content img, .tiptap-editor .ProseMirror img {
  max-width: 100%;
  height: auto;
  border-radius: var(--border05);
}
.md-content figure, .tiptap-editor .ProseMirror figure {
  margin: var(--space-sm) 0;
}
.md-content figure > img, .tiptap-editor .ProseMirror figure > img {
  display: block;
  margin: var(--space-2xs) auto;
}
.md-content figcaption, .tiptap-editor .ProseMirror figcaption {
  text-align: center;
  color: var(--text-500);
  font-size: var(--small);
  margin-top: var(--space-2xs);
}
.md-content dl, .tiptap-editor .ProseMirror dl {
  margin: var(--space-xs) 0;
}
.md-content dt, .tiptap-editor .ProseMirror dt {
  font-weight: 600;
  color: var(--text-200);
}
.md-content dd, .tiptap-editor .ProseMirror dd {
  margin: var(--space-2xs) 0 var(--space-xs) var(--space-sm);
}
.md-content details, .tiptap-editor .ProseMirror details {
  background: var(--transp-05);
  border: 1px solid var(--transp-1);
  border-radius: var(--border05);
  padding: var(--space-xs) var(--space-sm);
  margin: var(--space-xs) 0;
}
.md-content details > summary, .tiptap-editor .ProseMirror details > summary {
  cursor: pointer;
  list-style: none;
  font-weight: 600;
  color: var(--text-200);
}
.md-content details > summary::-webkit-details-marker, .tiptap-editor .ProseMirror details > summary::-webkit-details-marker {
  display: none;
}
.md-content details[open], .tiptap-editor .ProseMirror details[open] {
  background: var(--transp-1);
}
.auth__skeleton {
  width: 100%;
  height: 60px;
  margin-bottom: var(--space-md);
}
.auth__skeleton:last-child {
  margin-bottom: 0;
}
.auth-container {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  max-width: 400px;
  min-height: calc(100vh - 200px);
  margin: 0 auto;
  padding: var(--space-xl) var(--space-md);
}
.auth-container form {
  width: 100%;
}
.auth-card {
  width: 100%;
  padding: var(--space-lg) 0;
}
.auth-form {
  width: 100%;
}
.auth-header {
  text-align: center;
  margin-bottom: var(--space-xl);
}
.auth-header h2 {
  font-size: var(--h4);
  font-weight: 600;
  margin-bottom: var(--space-2xs);
  color: var(--text);
}
.auth-header p {
  color: var(--text-500);
  font-size: var(--p-small);
}
.auth__password a {
  font-size: var(--p-small);
  color: var(--text-500);
  font-weight: 500;
  transition: color var(--transition) ease-out;
}
.auth__password a:hover {
  color: var(--text);
}
.auth-divider {
  display: flex;
  align-items: center;
  gap: var(--space-md);
  margin: var(--space-lg) 0;
  color: var(--text-600);
  font-size: var(--small);
  text-transform: lowercase;
}
.auth-divider::before, .auth-divider::after {
  content: "";
  flex: 1;
  height: 1px;
  background: var(--transp-2);
}
.auth__socials {
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
}
.auth__socials-item {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-sm);
  width: 100%;
  padding: 1.25em;
  border: 1px solid var(--transp-2);
  border-radius: var(--border1);
  font-size: var(--p);
  font-weight: 500;
  color: var(--text);
  background: transparent;
  transition: all var(--transition) ease-out;
}
.auth__socials-item svg {
  opacity: 0.8;
}
.auth__socials-item:hover {
  border-color: var(--transp-4);
  background: var(--transp-02);
}
.auth__socials-item:active {
  transform: scale(0.99);
}
.auth__socials-item--icon-only {
  width: auto;
  flex: 1;
  padding: 0.75em;
}
.auth__socials-item--icon-only span {
  display: none;
}
.auth__socials-item--icon-only svg {
  font-size: 1.35em;
}
.auth__socials--row {
  flex-direction: row;
  gap: var(--space-sm);
}
.auth-footer {
  text-align: center;
  margin-top: var(--space-xl);
}
.auth-footer p {
  color: var(--text-500);
  font-size: var(--p-small);
}
.auth-footer p a {
  color: var(--text);
  font-weight: 600;
  margin-left: var(--space-2xs);
  text-decoration: underline;
  text-decoration-color: var(--transp-3);
  text-underline-offset: 3px;
  transition: text-decoration-color var(--transition) ease-out;
}
.auth-footer p a:hover {
  text-decoration-color: var(--text);
}
.two-factor-verify {
  text-align: center;
}
.two-factor-verify__icon {
  font-size: 2.5rem;
  color: var(--accent);
  margin-bottom: var(--space-md);
}
.two-factor-verify__title {
  font-size: var(--h5);
  font-weight: 600;
  margin-bottom: var(--space-2xs);
}
.two-factor-verify__subtitle {
  color: var(--text-500);
  font-size: var(--p-small);
  margin-bottom: var(--space-lg);
}
.two-factor-verify__actions {
  display: flex;
  flex-direction: row;
  gap: var(--space-sm);
  margin-top: var(--space-lg);
}
.two-factor-verify__actions .btn {
  width: 100%;
}
@media (max-width: 767px) {
  .two-factor-verify__actions {
    flex-direction: column;
  }
}
.two-factor-verify__input .otp-input {
  justify-content: center;
}
.reset-container {
  display: flex;
  flex-direction: row;
  align-items: center;
  text-align: center;
  gap: var(--space-sm);
  font-size: var(--h1);
  margin-top: var(--space-lg);
}
.reset-success-icon {
  color: var(--success);
}
.splide__container {
  box-sizing: border-box;
  position: relative;
}
.splide__list {
  backface-visibility: hidden;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  margin: 0 !important;
  padding: 0 !important;
}
.splide.is-initialized:not(.is-active) .splide__list {
  display: block;
}
.splide__pagination {
  -ms-flex-align: center;
  align-items: center;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 0;
  pointer-events: none;
}
.splide__pagination li {
  display: inline-block;
  line-height: 1;
  list-style-type: none;
  margin: 0;
  pointer-events: auto;
}
.splide:not(.is-overflow) .splide__pagination {
  display: none;
}
.splide__progress__bar {
  width: 0;
}
.splide {
  position: relative;
  visibility: hidden;
}
.splide.is-initialized, .splide.is-rendered {
  visibility: visible;
}
.splide__slide {
  backface-visibility: hidden;
  box-sizing: border-box;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  list-style-type: none !important;
  margin: 0;
  height: 250px;
  background-color: var(--transp-1);
  position: relative;
}
.splide__slide img {
  vertical-align: bottom;
}
.splide__spinner {
  animation: splide-loading 1s linear infinite;
  border: 2px solid #999;
  border-left-color: transparent;
  border-radius: 50%;
  bottom: 0;
  contain: strict;
  display: inline-block;
  height: 20px;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0;
  width: 20px;
}
.splide__sr {
  clip: rect(0 0 0 0);
  border: 0;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}
.splide__toggle.is-active .splide__toggle__play, .splide__toggle__pause {
  display: none;
}
.splide__toggle.is-active .splide__toggle__pause {
  display: inline;
}
.splide__track {
  overflow: hidden;
  position: relative;
  z-index: 0;
}
@keyframes splide-loading {
  0% {
    transform: rotate(0);
  }
  to {
    transform: rotate(1turn);
  }
}
.splide__track--draggable {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.splide__track--fade > .splide__list > .splide__slide {
  margin: 0 !important;
  opacity: 0;
  z-index: 0;
}
.splide__track--fade > .splide__list > .splide__slide.is-active {
  opacity: 1;
  z-index: 1;
}
.splide--rtl {
  direction: rtl;
}
.splide__track--ttb > .splide__list {
  display: block;
}
.splide__arrow {
  -ms-flex-align: center;
  align-items: center;
  background: #ccc;
  border: 0;
  border-radius: 50%;
  cursor: pointer;
  display: -ms-flexbox;
  display: flex;
  height: 2em;
  -ms-flex-pack: center;
  justify-content: center;
  opacity: 0.7;
  padding: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 2em;
  z-index: 1;
}
.splide__arrow svg {
  fill: #000;
  height: 1.2em;
  width: 1.2em;
}
.splide__arrow:hover:not(:disabled) {
  opacity: 0.9;
}
.splide__arrow:disabled {
  opacity: 0.3;
}
.splide__arrow:focus-visible {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}
.splide__arrow--prev {
  left: 1em;
}
.splide__arrow--prev svg {
  transform: scaleX(-1);
}
.splide__arrow--next {
  right: 1em;
}
.splide.is-focus-in .splide__arrow:focus {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}
.splide__pagination {
  bottom: 0.5em;
  left: 0;
  padding: 0 1em;
  position: absolute;
  right: 0;
  z-index: 1;
}
.splide__pagination__page {
  background: #ccc;
  border: 0;
  border-radius: 50%;
  display: inline-block;
  height: 8px;
  margin: 3px;
  opacity: 0.7;
  padding: 0;
  position: relative;
  transition: transform 0.2s linear;
  width: 8px;
}
.splide__pagination__page.is-active {
  background: #fff;
  transform: scale(1.4);
  z-index: 1;
}
.splide__pagination__page:hover {
  cursor: pointer;
  opacity: 0.9;
}
.splide__pagination__page:focus-visible {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}
.splide.is-focus-in .splide__pagination__page:focus {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}
.splide__progress__bar {
  background: #ccc;
  height: 3px;
}
.splide__slide {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
.splide__slide:focus {
  outline: 0;
}
@supports (outline-offset:-3px) {
  .splide__slide:focus-visible {
    outline: 3px solid #0bf;
    outline-offset: -3px;
  }
}
@media screen and (-ms-high-contrast: none) {
  .splide__slide:focus-visible {
    border: 3px solid #0bf;
  }
}
@supports (outline-offset:-3px) {
  .splide.is-focus-in .splide__slide:focus {
    outline: 3px solid #0bf;
    outline-offset: -3px;
  }
}
@media screen and (-ms-high-contrast: none) {
  .splide.is-focus-in .splide__slide:focus {
    border: 3px solid #0bf;
  }
  .splide.is-focus-in .splide__track > .splide__list > .splide__slide:focus {
    border-color: #0bf;
  }
}
.splide__toggle {
  cursor: pointer;
}
.splide__toggle:focus-visible {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}
.splide.is-focus-in .splide__toggle:focus {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}
.splide__track--nav > .splide__list > .splide__slide {
  border: 3px solid transparent;
  cursor: pointer;
}
.splide__track--nav > .splide__list > .splide__slide.is-active {
  border: 3px solid #000;
}
.splide__arrows--rtl .splide__arrow--prev {
  left: auto;
  right: 1em;
}
.splide__arrows--rtl .splide__arrow--prev svg {
  transform: scaleX(1);
}
.splide__arrows--rtl .splide__arrow--next {
  left: 1em;
  right: auto;
}
.splide__arrows--rtl .splide__arrow--next svg {
  transform: scaleX(-1);
}
.splide__arrows--ttb .splide__arrow {
  left: 50%;
  transform: translate(-50%);
}
.splide__arrows--ttb .splide__arrow--prev {
  top: 1em;
}
.splide__arrows--ttb .splide__arrow--prev svg {
  transform: rotate(-90deg);
}
.splide__arrows--ttb .splide__arrow--next {
  bottom: 1em;
  top: auto;
}
.splide__arrows--ttb .splide__arrow--next svg {
  transform: rotate(90deg);
}
.splide__pagination--ttb {
  bottom: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  left: auto;
  padding: 1em 0;
  right: 0.5em;
  top: 0;
}
.profile {
  --profile-header-height: 280px;
  --avatar-size: 72px;
  --sidebar-width: 300px;
  --card-bg: var(--background-900);
  --card-border: var(--transp-1);
  position: relative;
  margin-bottom: var(--space-xl);
}
@media (max-width: 767px) {
  .profile {
    --profile-header-height: 200px;
    --avatar-size: 56px;
  }
}
.profile__banner {
  width: 100%;
  height: var(--profile-header-height);
  object-fit: cover;
}
.profile__banner-wrapper {
  position: relative;
  width: 100%;
  height: var(--profile-header-height);
  overflow: hidden;
  background: var(--background-900);
  border-radius: var(--border1);
}
.profile__banner-wrapper-inner {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.profile__banner-wrapper-inner::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 60%;
  background: linear-gradient(to top, var(--background) 0%, transparent 100%);
}
.profile__main {
  position: relative;
  display: grid;
  grid-template-columns: var(--sidebar-width) 1fr;
  gap: var(--space-lg);
  align-items: start;
}
@media (max-width: 767px) {
  .profile__main {
    grid-template-columns: 1fr;
  }
}
.profile__sidebar {
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
}
@media (max-width: 767px) {
  .profile__sidebar {
    position: relative;
    z-index: 2;
  }
}
.profile__hero {
  background: var(--card-bg);
  border-radius: var(--border1);
  border: 1px solid var(--card-border);
  overflow: hidden;
}
.profile__hero-banner {
  position: relative;
  height: 120px;
  overflow: hidden;
}
.profile__hero-banner img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.profile__hero-body {
  padding: 0 var(--space-lg) var(--space-lg);
  margin-top: calc(var(--avatar-size) / -2 - 4px);
  position: relative;
}
.profile__hero-actions {
  position: absolute;
  top: calc(var(--avatar-size) / -2 - 4px + var(--space-xs));
  right: var(--space-sm);
  display: flex;
  align-items: center;
  gap: 2px;
  z-index: 5;
}
.profile__hero-action-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: var(--border05);
  background: var(--transp-03);
  border: 1px solid var(--transp-1);
  color: var(--text-400);
  cursor: pointer;
  transition: all var(--transition);
  text-decoration: none;
}
.profile__hero-action-btn svg {
  width: 14px;
  height: 14px;
}
.profile__hero-action-btn:hover {
  background: var(--transp-05);
  color: var(--text);
}
.profile__hero-avatar {
  position: relative;
  width: var(--avatar-size);
  height: var(--avatar-size);
  border-radius: var(--border1);
  border: 3px solid var(--card-bg);
  overflow: hidden;
  margin-bottom: var(--space-sm);
}
.profile__hero-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.profile__hero-name {
  font-size: var(--h5);
  font-weight: 600;
  line-height: 1.3;
  margin: 0 0 var(--space-2xs);
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
}
.profile__hero-name-row {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.profile__hero-meta {
  display: flex;
  flex-direction: column;
  gap: var(--space-2xs);
  margin-bottom: var(--space-md);
}
.profile__hero-meta-line {
  display: flex;
  align-items: center;
  gap: var(--space-xs);
  font-size: var(--small);
  color: var(--text-400);
  flex-wrap: wrap;
}
.profile__hero-dot {
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: var(--text-600);
  flex-shrink: 0;
}
.profile__status {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2xs);
  font-size: var(--small);
}
.profile__status--online {
  color: var(--success);
}
.profile__status--online::before {
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--success);
  animation: profile-pulse 2s ease-in-out infinite;
}
.profile__status--offline {
  color: var(--text-400);
}
.profile__roles {
  margin-bottom: var(--space-md);
}
.profile .role-badges {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 4px;
}
.profile .role-badge--full {
  border-color: color-mix(in srgb, var(--role-color) 25%, transparent);
  padding: 4px 8px;
  font-size: 11px;
  gap: 5px;
  background: color-mix(in srgb, var(--role-color) 6%, transparent);
}
.profile .role-badge--full .role-badge__swatch {
  width: 8px;
  height: 8px;
}
.profile .role-badge--full:hover {
  background: color-mix(in srgb, var(--role-color) 12%, transparent);
  border-color: color-mix(in srgb, var(--role-color) 35%, transparent);
}
.profile__ids {
  display: flex;
  flex-direction: column;
  gap: var(--space-2xs);
}
.profile__id-copy {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: var(--space-xs) var(--space-sm);
  border-radius: var(--border05);
  background: var(--transp-02);
  border: none;
  cursor: pointer;
  transition: background var(--transition);
  text-align: left;
}
.profile__id-copy:hover {
  background: var(--transp-05);
}
.profile__id-copy-label {
  font-size: 9px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--text-600);
  margin-bottom: 2px;
}
.profile__id-copy-value {
  font-size: var(--small);
  font-family: var(--font-mono);
  color: var(--text-400);
  transition: color var(--transition);
}
.profile__id-copy:hover .profile__id-copy-value {
  color: var(--text-200);
}
.profile__id-copy-icon {
  color: var(--text-600);
  opacity: 0;
  transition: opacity var(--transition);
  flex-shrink: 0;
}
.profile__id-copy-icon--done {
  color: var(--success);
  opacity: 1;
}
.profile__id-copy:hover .profile__id-copy-icon {
  opacity: 1;
}
.profile__section {
  background: var(--card-bg);
  border-radius: var(--border1);
  border: 1px solid var(--card-border);
  padding: var(--space-sm) 0;
}
.profile__section-title {
  font-size: 10px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--text-600);
  padding: 0 var(--space-md);
  margin-bottom: var(--space-xs);
}
.profile__section-more {
  display: block;
  width: 100%;
  padding: var(--space-xs) var(--space-md) 0;
  background: none;
  border: none;
  font-size: var(--small);
  color: var(--text-400);
  cursor: pointer;
  text-align: left;
  transition: color var(--transition);
}
.profile__section-more:hover {
  color: var(--text-200);
}
.profile__section-row {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  padding: var(--space-2xs) var(--space-md);
  transition: background var(--transition);
}
.profile__section-row:hover {
  background: var(--transp-02);
}
.profile__section-row-icon {
  flex-shrink: 0;
  color: var(--text-400);
  display: flex;
  align-items: center;
}
.profile__section-row-content {
  min-width: 0;
  flex: 1;
}
.profile__section-row-label {
  font-size: var(--small);
  font-weight: 500;
  color: var(--text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.profile__section-row-detail {
  font-size: 10px;
  color: var(--text-600);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.profile__section-row-right {
  flex-shrink: 0;
  margin-left: auto;
}
.profile__social-card {
  padding: var(--space-xs) var(--space-md);
}
.profile__social-card-header {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
}
.profile__social-card-avatar {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
}
.profile__social-card-icon {
  flex-shrink: 0;
  display: flex;
  align-items: center;
}
.profile__social-card-info {
  flex: 1;
  min-width: 0;
}
.profile__social-card-name {
  font-size: var(--p-small);
  font-weight: 500;
  color: var(--text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.profile__social-card-platform {
  font-size: 10px;
  color: var(--text-600);
}
.profile__social-card-link {
  flex-shrink: 0;
  color: var(--text-600);
  transition: color var(--transition);
}
.profile__social-card-link:hover {
  color: var(--text-300);
}
.profile__social-card-extra {
  margin-top: var(--space-xs);
  padding-left: calc(16px + var(--space-sm));
}
.profile__discord-role {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 1px 6px;
  border-radius: 4px;
  font-size: 10px;
  font-weight: 500;
  line-height: 1.4;
  border: 1px solid;
}
.profile__discord-role-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  flex-shrink: 0;
}
.profile__privilege-group {
  padding: var(--space-xs) var(--space-md);
}
.profile__privilege-group-header {
  display: flex;
  align-items: center;
  gap: var(--space-xs);
  margin-bottom: var(--space-2xs);
}
.profile__privilege-group-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  flex-shrink: 0;
}
.profile__privilege-group-name {
  font-size: var(--p-small);
  font-weight: 500;
}
.profile__privilege-group-count {
  font-size: 10px;
  color: var(--text-600);
  margin-left: auto;
}
.profile__privilege-group-servers {
  padding-left: var(--space-md);
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.profile__privilege-group-server {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: var(--small);
}
.profile__privilege-group-server-name {
  color: var(--text-300);
}
.profile__privilege-group-server-meta {
  display: flex;
  align-items: center;
  gap: var(--space-xs);
}
.profile__privilege-group-server-expiry {
  color: var(--text-600);
}
.profile__restriction {
  padding: 1px 6px;
  border-radius: 4px;
  font-size: 9px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.02em;
}
.profile__restriction--ban {
  color: var(--error);
  background: var(--error-light);
}
.profile__restriction--mute {
  color: var(--warning);
  background: var(--warning-light);
}
.profile__socials {
  margin-top: 0;
}
.profile__socials-list {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-xs);
  list-style: none;
  padding: 0;
  margin: 0;
}
.profile__socials-item {
  width: 36px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--primary);
  transition: all var(--transition);
  color: var(--primary-900);
}
.profile__socials-item:hover {
  transform: translateY(-2px);
  background: var(--primary-400);
}
.profile__socials-item-icon {
  display: flex;
  align-items: center;
  justify-content: center;
}
.profile__content-wrapper {
  position: relative;
  z-index: 1;
  overflow: hidden;
  min-width: 0;
}
.profile__content {
  overflow: hidden;
}
.profile__content > nav {
  margin-bottom: var(--space-md);
}
.profile__server-info {
  display: flex;
  align-items: center;
  gap: var(--space-md);
  font-size: var(--small);
  color: var(--text-500);
  margin-bottom: var(--space-md);
}
.profile__server-info-dot {
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: var(--text-600);
}
.profile__rank {
  display: flex;
  align-items: center;
  gap: var(--space-xs);
}
.profile__rank-icon {
  height: 24px;
  width: auto;
  image-rendering: pixelated;
}
.profile__rank-name {
  font-size: var(--p-small);
  font-weight: 500;
  color: var(--text-300);
}
.profile__rank-xp {
  font-size: var(--small);
  color: var(--text-600);
  font-variant-numeric: tabular-nums;
}
.profile__custom-block {
  background: var(--card-bg);
  border-radius: var(--border1);
  border: 1px solid var(--card-border);
  padding: var(--space-md);
}
.profile__custom-block--top {
  margin-bottom: var(--space-sm);
}
.profile__custom-block--bottom {
  margin-top: var(--space-sm);
}
.profile__description {
  font-size: var(--small);
  color: var(--text-400);
  line-height: 1.5;
}
.profile__description--top {
  margin-bottom: var(--space-sm);
}
.profile__description--bottom {
  margin-top: var(--space-sm);
}
.profile__tag {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 2px var(--space-xs);
  border-radius: 4px;
  font-size: 10px;
  font-weight: 600;
  background: var(--transp-05);
  color: var(--text-300);
}
.profile__frame {
  position: relative;
}
.profile__frame::after {
  content: "";
  position: absolute;
  inset: -4px;
  border-radius: calc(var(--border1) + 4px);
  border: 3px solid var(--frame-color, var(--accent));
  pointer-events: none;
  opacity: 0;
  transition: opacity var(--transition);
}
.profile__frame--active::after {
  opacity: 1;
}
.profile__overflow-tabs {
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: none;
  -ms-overflow-style: none;
  max-width: 100%;
}
.profile__overflow-tabs::-webkit-scrollbar {
  display: none;
}
.profile .tab-content {
  padding-top: var(--space-md);
}
@keyframes profile-pulse {
  0%, 100% {
    box-shadow: 0 0 0 0 var(--success-light);
  }
  50% {
    box-shadow: 0 0 0 4px transparent;
  }
}
.profile-admin-modal {
  display: flex;
  flex-direction: column;
  gap: var(--space-lg);
}
.profile-admin-modal__info {
  padding-bottom: var(--space-md);
  border-bottom: 1px solid var(--transp-1);
}
.profile-admin-modal__user {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
}
.profile-admin-modal__avatar {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid var(--transp-2);
}
.profile-admin-modal__user-details {
  display: flex;
  flex-direction: column;
  gap: var(--space-2xs);
}
.profile-admin-modal__name {
  font-weight: 600;
  font-size: var(--p);
  color: var(--text);
}
.profile-admin-modal__balance {
  font-size: var(--p-small);
  color: var(--text-500);
}
.profile-admin-modal__balance strong {
  color: var(--accent);
}
.profile-admin-modal__field {
  display: flex;
  flex-direction: column;
  gap: var(--space-xs);
}
.profile-admin-modal__field .input__field-container {
  background: var(--transp-02);
}
.profile-admin-modal__field textarea.input__field {
  width: 100%;
  resize: vertical;
  min-height: 80px;
  padding: 0.75rem;
  background: var(--transp-02);
  border: 1px solid var(--transp-2);
  border-radius: var(--border05);
  color: var(--text);
  font-size: var(--p);
  font-family: var(--font);
  transition: border-color var(--transition);
}
.profile-admin-modal__field textarea.input__field:focus {
  outline: none;
  border-color: var(--accent);
}
.profile-admin-modal__field textarea.input__field::placeholder {
  color: var(--text-500);
}
.profile-admin-modal__label {
  font-size: var(--p-small);
  font-weight: 500;
  color: var(--text);
}
.profile-admin-modal__hint {
  font-size: var(--small);
  color: var(--text-500);
}
.profile-admin-modal__actions {
  display: flex;
  justify-content: flex-end;
  gap: var(--space-sm);
  padding-top: var(--space-xs);
}
.profile__admin-actions {
  position: relative;
}
.profile__admin-actions-trigger {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: var(--border05);
  background: var(--blurred-background);
  border: 1px solid var(--transp-2);
  color: var(--text);
  cursor: pointer;
  transition: all var(--transition);
  font-size: var(--h5);
}
.profile__admin-actions-trigger:hover {
  background: var(--transp-3);
}
.profile__admin-dropdown {
  min-width: 180px;
}
.profile__admin-dropdown-item {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  padding: var(--space-xs) var(--space-sm);
  border-radius: var(--border05);
  width: 100%;
  font-size: var(--p-small);
  color: var(--text);
  cursor: pointer;
  transition: all var(--transition);
  background: transparent;
  border: none;
  text-align: left;
}
.profile__admin-dropdown-item:hover {
  background: var(--transp-1);
}
.profile__admin-dropdown-item--danger {
  color: var(--error);
}
.profile__admin-dropdown-item--danger:hover {
  background: var(--error-light);
}
.profile__admin-dropdown-item--success {
  color: var(--success);
}
.profile__admin-dropdown-item--success:hover {
  background: var(--success-light);
}
.profile__admin-dropdown-item--warning {
  color: var(--warning);
}
.profile__admin-dropdown-item--warning:hover {
  background: var(--warning-light);
}
.profile__admin-dropdown-item svg {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}
.profile__admin-dropdown-divider {
  height: 1px;
  background: var(--transp-2);
  margin: var(--space-xs) 0;
}
.profile-edit-dialog-content {
  padding: 0;
  height: 100%;
}
.profile-edit__main {
  height: 100%;
}
.profile-edit__main-blocks {
  flex-wrap: wrap;
  margin-top: var(--space-xl);
  gap: var(--space-md);
}
@media (max-width: 767px) {
  .profile-edit__main-blocks {
    flex-direction: column;
  }
}
.profile-edit__main-block {
  flex: 1;
  background-color: var(--transp-1);
  border-radius: var(--border1);
  padding: var(--space-md) var(--space-lg);
}
.profile-edit__main-block-header {
  padding-bottom: var(--space-lg);
  border-bottom: 1px solid var(--transp-1);
}
.profile-edit__main-block-header h4 {
  line-height: 1.5;
  margin-bottom: var(--space-2xs);
}
.profile-edit__main-block-header p {
  color: var(--text-400);
  letter-spacing: 0.3px;
  font-size: var(--p-small);
  line-height: 1.5;
}
.profile-edit__hero {
  width: 100%;
  padding-top: var(--space-xl);
}
.profile-edit__hero-avatar img {
  object-fit: cover;
  margin-bottom: var(--space-md);
  width: 100px;
  height: 100px;
  border-radius: 50%;
  border: 1px solid var(--transp-1);
}
.profile-edit__hero-avatar::after {
  content: "";
  background: radial-gradient(ellipse 50% 60% at 50% 25%, var(--glow-color) 0%, var(--background) 100%);
  opacity: 0.09;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  height: 100%;
  width: 100%;
  transition: all var(--transition) ease-out;
}
.profile-edit__hero h3 {
  line-height: 1.1;
}
.profile-edit__hero p {
  font-size: var(--p-small);
  color: var(--text-500);
  font-weight: 500;
}
.profile-edit__field {
  padding: var(--space-sm) 0;
}
.profile-edit__field:not(:last-of-type) {
  border-bottom: 1px solid var(--transp-1);
}
.profile-edit__field:last-of-type {
  padding-bottom: 0;
}
.profile-edit__field-name {
  flex: 1 0 10%;
  color: var(--text-500);
  letter-spacing: 0.3px;
  font-size: var(--p-small);
}
.profile-edit__field-value {
  gap: var(--space-sm);
  flex: 1 0 70%;
}
.profile-edit__field-value.value-password {
  flex-direction: column;
  align-items: flex-start;
  gap: 0;
}
.profile-edit__field-value.value-password p {
  line-height: 1.3;
}
.profile-edit__field-icon {
  font-size: var(--h5);
  align-self: flex-end;
  color: var(--text-300);
}
.profile-edit__field-icon:hover {
  color: var(--text);
}
.profile-edit__verified {
  color: var(--success);
}
.profile-edit__not-verified {
  color: var(--error);
}
.profile-edit__blocks {
  grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
  margin-top: var(--space-md);
  gap: var(--space-md);
}
@media (max-width: 767px) {
  .profile-edit__blocks {
    grid-template-columns: repeat(auto-fit, minmax(100%, 1fr));
  }
}
.profile-edit__block {
  background-color: var(--transp-1);
  border-radius: var(--border1);
  padding: var(--space-lg);
  padding-top: var(--space-md);
  position: relative;
  transition: all var(--transition) ease-out;
  border: 1px solid transparent;
}
.profile-edit__block-header {
  align-items: center;
  gap: var(--space-sm);
  margin-bottom: var(--space-xs);
  transition: all var(--transition) ease-out;
}
.profile-edit__block-header svg {
  font-size: var(--h4);
}
.profile-edit__block-description {
  color: var(--text-500);
  font-size: var(--p-small);
  line-height: 1.5;
  transition: color var(--transition);
}
.profile-edit__block-arrow {
  font-size: var(--h4);
  position: absolute;
  right: var(--space-md);
  top: var(--space-md);
  transform: rotate(-45deg);
  color: var(--text-500);
  transition: transform var(--transition), color var(--transition);
}
.profile-edit__block:hover {
  border: 1px solid var(--transp-2);
  background-color: var(--background-900);
}
.profile-edit__block:hover .profile-edit__block-header {
  color: var(--accent);
}
.profile-edit__block:hover .profile-edit__block-description {
  color: var(--text-300);
}
.profile-edit__block:hover .profile-edit__block-arrow {
  color: var(--text-300);
  transform: translate(10%, -10%) rotate(-45deg);
}
.profile-edit__block:focus-within {
  border: 1px solid var(--transp-2);
  background-color: var(--background-900);
}
.profile-edit__last-changed {
  font-size: var(--small);
  color: var(--text-400);
}
.profile-edit__error {
  color: var(--error);
  letter-spacing: 0.3px;
  font-weight: 500;
}
.profile-edit__layout {
  display: grid;
  grid-template-columns: 220px 1fr;
  gap: var(--space-xl);
  align-items: start;
}
@media (min-width: 768px) and (max-width: 1023px) {
  .profile-edit__layout {
    grid-template-columns: 200px 1fr;
    gap: var(--space-lg);
  }
}
@media (max-width: 767px) {
  .profile-edit__layout {
    grid-template-columns: 1fr;
    gap: var(--space-md);
  }
}
.profile-edit__content {
  min-width: 0;
}
.profile-edit__sidebar {
  position: sticky;
  top: 90px;
  gap: var(--space-xs);
}
@media (max-width: 767px) {
  .profile-edit__sidebar {
    position: static;
    flex-direction: row;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    gap: 0;
  }
  .profile-edit__sidebar-nav {
    display: flex;
    flex-direction: row;
    width: 100%;
  }
  .profile-edit__sidebar-nav ul {
    flex-direction: row !important;
    gap: var(--space-2xs) !important;
    width: auto;
    flex-wrap: nowrap;
  }
  .profile-edit__sidebar-footer {
    display: none;
  }
}
.profile-edit__sidebar-label {
  font-size: var(--small);
  font-weight: 600;
  color: var(--text-500);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  padding: 0 var(--space-sm);
  margin-bottom: var(--space-2xs);
}
@media (max-width: 767px) {
  .profile-edit__sidebar-label {
    display: none;
  }
}
.profile-edit__sidebar-nav {
  flex: 1;
}
.profile-edit__sidebar ul {
  list-style: none;
  margin: 0;
  padding: 0;
  gap: 1px;
}
.profile-edit__sidebar ul li {
  width: 100%;
}
.profile-edit__sidebar-item {
  cursor: pointer;
  gap: var(--space-sm);
  align-items: center;
  font-size: var(--p-small);
  padding: var(--space-xs) var(--space-sm);
  border-radius: var(--border05);
  transition: all var(--transition) ease-out;
  color: var(--text-400);
  font-weight: 500;
  width: 100%;
  white-space: nowrap;
}
.profile-edit__sidebar-item svg {
  font-size: var(--h6);
  flex-shrink: 0;
}
.profile-edit__sidebar-item:hover {
  color: var(--text);
  background-color: var(--transp-05);
}
.profile-edit__sidebar-item.active {
  color: var(--text);
  background-color: var(--transp-1);
}
.profile-edit__sidebar-footer {
  padding-top: var(--space-sm);
  margin-top: var(--space-sm);
  border-top: 1px solid var(--transp-05);
}
.profile-edit__card-header {
  margin-bottom: var(--space-lg);
}
.profile-edit__card-header h3 {
  line-height: 1.2;
  font-size: var(--h4);
}
.profile-edit__card-header p {
  color: var(--text-500);
  line-height: 1.5;
  margin-top: var(--space-2xs);
  font-size: var(--p-small);
}
.profile-edit__card-footer {
  display: flex;
  justify-content: flex-end;
}
.profile-edit__card-content .card, .profile-edit__card-content [data-dropdown], .profile-edit__card-content .lk-card, .profile-edit__card-content .lk-gw-fields .lk-payment-section, .lk-gw-fields .profile-edit__card-content .lk-payment-section, .profile-edit__card-content .lk-balance-widget, .profile-edit__card-content .lk-checkout, .profile-edit__card-content .invalid__widget, .profile-edit__card-content .rules-sidebar, .profile-edit__card-content .rule-content-body {
  box-shadow: none;
  border-color: var(--transp-05);
}
.profile-edit__card-content .card .card-header h4, .profile-edit__card-content [data-dropdown] .card-header h4, .profile-edit__card-content .lk-card .card-header h4, .profile-edit__card-content .lk-gw-fields .lk-payment-section .card-header h4, .lk-gw-fields .profile-edit__card-content .lk-payment-section .card-header h4, .profile-edit__card-content .lk-balance-widget .card-header h4, .profile-edit__card-content .lk-checkout .card-header h4, .profile-edit__card-content .invalid__widget .card-header h4, .profile-edit__card-content .rules-sidebar .card-header h4, .profile-edit__card-content .rule-content-body .card-header h4 {
  font-size: var(--h6);
  font-weight: 600;
}
.profile-edit__card-content .card .card-header .text-muted, .profile-edit__card-content [data-dropdown] .card-header .text-muted, .profile-edit__card-content [data-dropdown] .card-header .footer__socials-title, .profile-edit__card-content [data-dropdown] .card-header .input__prefix, .profile-edit__card-content [data-dropdown] .card-header .page-no-widgets .description, .page-no-widgets .profile-edit__card-content [data-dropdown] .card-header .description, .profile-edit__card-content .lk-card .card-header .text-muted, .profile-edit__card-content .lk-card .card-header .footer__socials-title, .profile-edit__card-content .lk-card .card-header .input__prefix, .profile-edit__card-content .lk-card .card-header .page-no-widgets .description, .page-no-widgets .profile-edit__card-content .lk-card .card-header .description, .profile-edit__card-content .lk-gw-fields .lk-payment-section .card-header .text-muted, .profile-edit__card-content .lk-gw-fields .lk-payment-section .card-header .footer__socials-title, .profile-edit__card-content .lk-gw-fields .lk-payment-section .card-header .input__prefix, .profile-edit__card-content .lk-gw-fields .lk-payment-section .card-header .page-no-widgets .description, .page-no-widgets .profile-edit__card-content .lk-gw-fields .lk-payment-section .card-header .description, .lk-gw-fields .profile-edit__card-content .lk-payment-section .card-header .text-muted, .profile-edit__card-content .lk-balance-widget .card-header .text-muted, .profile-edit__card-content .lk-balance-widget .card-header .footer__socials-title, .profile-edit__card-content .lk-balance-widget .card-header .input__prefix, .profile-edit__card-content .lk-balance-widget .card-header .page-no-widgets .description, .page-no-widgets .profile-edit__card-content .lk-balance-widget .card-header .description, .profile-edit__card-content .lk-checkout .card-header .text-muted, .profile-edit__card-content .lk-checkout .card-header .footer__socials-title, .profile-edit__card-content .lk-checkout .card-header .input__prefix, .profile-edit__card-content .lk-checkout .card-header .page-no-widgets .description, .page-no-widgets .profile-edit__card-content .lk-checkout .card-header .description, .profile-edit__card-content .invalid__widget .card-header .text-muted, .profile-edit__card-content .invalid__widget .card-header .footer__socials-title, .profile-edit__card-content .invalid__widget .card-header .input__prefix, .profile-edit__card-content .invalid__widget .card-header .page-no-widgets .description, .page-no-widgets .profile-edit__card-content .invalid__widget .card-header .description, .profile-edit__card-content .rules-sidebar .card-header .text-muted, .profile-edit__card-content .rules-sidebar .card-header .footer__socials-title, .profile-edit__card-content .rules-sidebar .card-header .input__prefix, .profile-edit__card-content .rules-sidebar .card-header .page-no-widgets .description, .page-no-widgets .profile-edit__card-content .rules-sidebar .card-header .description, .profile-edit__card-content .rule-content-body .card-header .text-muted, .profile-edit__card-content .rule-content-body .card-header .footer__socials-title, .profile-edit__card-content .rule-content-body .card-header .input__prefix, .profile-edit__card-content .rule-content-body .card-header .page-no-widgets .description, .page-no-widgets .profile-edit__card-content .rule-content-body .card-header .description, .profile-edit__card-content .card .card-header .footer__socials-title, .profile-edit__card-content .card .card-header .input__prefix, .profile-edit__card-content .card .card-header .page-no-widgets .description, .page-no-widgets .profile-edit__card-content .card .card-header .description {
  font-size: var(--small);
  color: var(--text-500);
  margin-top: var(--space-2xs);
}
.profile-edit__card-content .profile-settings__row {
  grid-template-columns: repeat(2, 1fr);
  gap: var(--space-md);
}
@media (max-width: 767px) {
  .profile-edit__card-content .profile-settings__row {
    grid-template-columns: 1fr;
  }
}
.profile-edit__card-content .profile-settings__row .profile-settings__section {
  margin-bottom: 0 !important;
}
.profile-edit__card-content .profile-settings__row .profile-settings__section .card, .profile-edit__card-content .profile-settings__row .profile-settings__section [data-dropdown], .profile-edit__card-content .profile-settings__row .profile-settings__section .lk-card, .profile-edit__card-content .profile-settings__row .profile-settings__section .lk-gw-fields .lk-payment-section, .lk-gw-fields .profile-edit__card-content .profile-settings__row .profile-settings__section .lk-payment-section, .profile-edit__card-content .profile-settings__row .profile-settings__section .lk-balance-widget, .profile-edit__card-content .profile-settings__row .profile-settings__section .lk-checkout, .profile-edit__card-content .profile-settings__row .profile-settings__section .invalid__widget, .profile-edit__card-content .profile-settings__row .profile-settings__section .rules-sidebar, .profile-edit__card-content .profile-settings__row .profile-settings__section .rule-content-body {
  height: 100%;
}
.profile-edit__card--full-width .profile-edit__card-content {
  padding: 0;
}
.social-cards {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  gap: var(--space-md);
}
.social-card {
  display: flex;
  flex-direction: column;
  border: 1px solid var(--transp-1);
  border-radius: var(--border1);
  background-color: var(--blurred-background);
  box-shadow: var(--shadow-small);
  transition: border-color box-shadow ease-out;
}
.social-card:hover {
  border-color: var(--transp-2);
}
.social-card--linked {
  border-color: var(--transp-2);
}
.social-card__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding: var(--space-md);
  gap: var(--space-sm);
}
.social-card__identity {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  min-width: 0;
}
.social-card__avatar {
  width: 40px;
  height: 40px;
  border-radius: var(--border05);
  overflow: hidden;
  flex-shrink: 0;
  background: var(--transp-05);
}
.social-card__avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.social-card__avatar-fallback {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}
.social-card__avatar-fallback svg {
  font-size: 20px;
  color: var(--text-400);
}
.social-card__info {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-2xs);
}
.social-card__name-row {
  display: flex;
  align-items: center;
  gap: var(--space-xs);
  flex-wrap: wrap;
}
.social-card__name {
  font-weight: 600;
  font-size: var(--p);
  color: var(--text-200);
  line-height: 1.2;
}
.social-card__badge {
  font-size: 11px;
  font-weight: 500;
  padding: 1px 6px;
  border-radius: var(--border05);
  background: var(--transp-05);
  color: var(--text-500);
  line-height: 1.5;
  white-space: nowrap;
}
.social-card__badge--linked {
  background: color-mix(in srgb, var(--success) 12%, transparent);
  color: var(--success);
}
.social-card__details {
  display: flex;
  align-items: center;
  gap: var(--space-xs);
  flex-wrap: wrap;
  min-width: 0;
}
.social-card__display-name {
  font-size: var(--p-small);
  color: var(--text-300);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 180px;
}
.social-card__linked-at {
  font-size: var(--small);
  color: var(--text-500);
  white-space: nowrap;
}
.social-card__display-name + .social-card__linked-at::before {
  content: "·";
  margin-right: var(--space-xs);
  color: var(--text-500);
}
.social-card__external {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: var(--border05);
  color: var(--text-400);
  transition: color background ease-out;
}
.social-card__external svg {
  font-size: 16px;
}
.social-card__external:hover {
  color: var(--text-200);
  background: var(--transp-05);
}
.social-card__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--space-sm) var(--space-md);
  border-top: 1px solid var(--transp-1);
  gap: var(--space-sm);
  min-height: 48px;
}
.social-card__visibility .toggle-switch {
  gap: var(--space-xs);
}
.social-card__visibility .toggle-switch-label-text {
  font-size: var(--small);
  color: var(--text-400);
}
.social-card__unlink {
  display: flex;
  align-items: center;
  gap: var(--space-2xs);
  font-size: var(--small);
  color: var(--text-500);
  cursor: pointer;
  padding: var(--space-2xs) var(--space-xs);
  border-radius: var(--border05);
  transition: color background ease-out;
}
.social-card__unlink svg {
  font-size: 14px;
}
.social-card__unlink:hover {
  color: var(--error);
  background: color-mix(in srgb, var(--error) 8%, transparent);
}
.profile-settings__avatar, .profile-settings__banner {
  max-height: 200px;
}
.profile-settings__avatar input, .profile-settings__banner input {
  visibility: hidden;
}
.profile-settings__avatar {
  max-width: 200px;
}
.profile-settings__banner {
  height: 100%;
}
@media (min-width: 1024px) {
  .profile-settings__section#images-settings {
    display: flex;
    flex-direction: column;
  }
}
.profile-settings__section#images-settings .form-field {
  min-height: 240px;
}
.profile-settings__section--danger .card, .profile-settings__section--danger [data-dropdown], .profile-settings__section--danger .lk-card, .profile-settings__section--danger .lk-gw-fields .lk-payment-section, .lk-gw-fields .profile-settings__section--danger .lk-payment-section, .profile-settings__section--danger .lk-balance-widget, .profile-settings__section--danger .lk-checkout, .profile-settings__section--danger .invalid__widget, .profile-settings__section--danger .rules-sidebar, .profile-settings__section--danger .rule-content-body {
  border-color: var(--error-light);
}
.profile-payments__overview {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: var(--space-lg);
  margin-bottom: var(--space-lg);
  border-radius: var(--border1);
  background-color: var(--blurred-background);
  border: 1px solid var(--transp-1);
  box-shadow: var(--shadow-small);
}
@media (max-width: 767px) {
  .profile-payments__overview {
    flex-direction: column;
    gap: var(--space-md);
    align-items: flex-start;
  }
}
.profile-payments__balance-label {
  font-size: var(--small);
  color: var(--text-500);
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  margin-bottom: var(--space-2xs);
}
.profile-payments__balance-value {
  font-size: var(--h3);
  font-weight: 700;
  line-height: 1;
}
.profile-payments__section {
  margin-bottom: var(--space-lg);
}
.profile-payments__section:last-child {
  margin-bottom: 0;
}
.profile-payments__section-header {
  margin-bottom: var(--space-md);
}
.profile-payments__section-header h5 {
  font-size: var(--h6);
  font-weight: 600;
  margin-bottom: var(--space-2xs);
}
.profile-payments__section-header p {
  font-size: var(--small);
  color: var(--text-500);
  line-height: 1.4;
}
.profile-payments__section .table {
  table-layout: auto;
}
.profile-payments__section .table thead th, .profile-payments__section .table tbody td {
  white-space: nowrap;
}
.profile-payments__section .table thead th:last-child, .profile-payments__section .table tbody td:last-child {
  text-align: right;
  width: 1%;
}
.profile-payments__section .table .badge {
  display: inline-flex;
  width: auto;
}
#tab-content {
  opacity: 1;
  animation: fadeInTab var(--transition) ease-out;
}
@keyframes fadeInTab {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.notif-settings__section {
  background-color: var(--blurred-background);
  border: 1px solid var(--transp-1);
  border-radius: var(--border1);
  box-shadow: var(--shadow-small);
  margin-bottom: var(--space-md);
  overflow: hidden;
}
.notif-settings__section-header {
  display: flex;
  align-items: flex-start;
  gap: var(--space-md);
  padding: var(--space-lg);
  padding-bottom: var(--space-md);
}
.notif-settings__section-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  flex-shrink: 0;
  border-radius: var(--border05);
  background: var(--transp-05);
  color: var(--text-400);
}
.notif-settings__section-icon svg {
  font-size: 18px;
}
.notif-settings__section-title {
  font-size: var(--h6);
  font-weight: 600;
  line-height: 1.3;
  margin-bottom: var(--space-2xs);
}
.notif-settings__section-desc {
  font-size: var(--small);
  color: var(--text-500);
  line-height: 1.5;
}
.notif-settings__item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-md);
  padding: var(--space-sm) var(--space-lg);
  margin: 0 var(--space-md) var(--space-lg);
  border-radius: var(--border05);
  background: var(--transp-02);
  transition: background var(--transition) ease-out;
}
.notif-settings__item:hover {
  background: var(--transp-05);
}
.notif-settings__item-info {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.notif-settings__item-name {
  font-size: var(--p-small);
  font-weight: 500;
  color: var(--text-200);
}
.notif-settings__item-hint {
  font-size: var(--small);
  color: var(--text-600);
  line-height: 1.4;
}
.notif-settings__channels {
  display: flex;
  flex-direction: column;
  padding: 0 var(--space-lg);
  gap: 1px;
}
.notif-settings__channel {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-md);
  padding: var(--space-sm) var(--space-sm);
  border-radius: var(--border05);
  transition: background var(--transition) ease-out;
}
.notif-settings__channel:hover {
  background: var(--transp-02);
}
.notif-settings__channel-left {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  min-width: 0;
}
.notif-settings__channel-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  flex-shrink: 0;
  border-radius: var(--border05);
  background: var(--transp-05);
  color: var(--text-400);
}
.notif-settings__channel-icon svg {
  font-size: 16px;
}
.notif-settings__channel-info {
  display: flex;
  flex-direction: column;
  gap: 1px;
  min-width: 0;
}
.notif-settings__channel-name {
  font-size: var(--p-small);
  font-weight: 500;
  color: var(--text-200);
  line-height: 1.3;
}
.notif-settings__channel-desc {
  font-size: var(--small);
  color: var(--text-600);
  line-height: 1.3;
}
.notif-settings__footer {
  display: flex;
  justify-content: flex-end;
  padding: var(--space-md) var(--space-lg);
  border-top: 1px solid var(--transp-05);
  margin-top: var(--space-md);
}
.notif-settings__templates {
  display: flex;
  flex-direction: column;
  padding: 0 var(--space-lg);
  gap: var(--space-md);
}
.notif-settings__group:not(:last-child) {
  padding-bottom: var(--space-md);
  border-bottom: 1px solid var(--transp-05);
}
.notif-settings__group-label {
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--text-600);
  padding: 0 var(--space-sm);
  margin-bottom: var(--space-xs);
}
.notif-settings__group-items {
  display: flex;
  flex-direction: column;
}
.notif-settings__template {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-md);
  padding: var(--space-xs) var(--space-sm);
  border-radius: var(--border05);
  transition: background var(--transition) ease-out;
  min-height: 40px;
}
.notif-settings__template:hover {
  background: var(--transp-02);
}
@media (max-width: 767px) {
  .notif-settings__template {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--space-xs);
    padding: var(--space-sm);
  }
}
.notif-settings__template-icon {
  font-size: 16px;
  color: var(--text-500);
  flex-shrink: 0;
}
.notif-settings__template-name {
  font-size: var(--p-small);
  color: var(--text-300);
  line-height: 1.3;
  min-width: 0;
  flex: 1;
}
.notif-settings__template-toggles {
  display: flex;
  align-items: center;
  gap: var(--space-xs);
  flex-shrink: 0;
}
.notif-settings__template-chip {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2xs);
  padding: 4px 10px;
  border-radius: 20px;
  font-size: var(--small);
  font-weight: 500;
  color: var(--text-500);
  background: var(--transp-02);
  border: 1px solid var(--transp-1);
  cursor: pointer;
  user-select: none;
  transition: all var(--transition) ease-out;
}
.notif-settings__template-chip input {
  display: none;
}
.notif-settings__template-chip svg {
  font-size: 13px;
}
.notif-settings__template-chip:hover {
  border-color: var(--transp-2);
  background: var(--transp-05);
}
.notif-settings__template-chip.is-active {
  color: var(--accent);
  background: color-mix(in srgb, var(--accent) 8%, transparent);
  border-color: color-mix(in srgb, var(--accent) 20%, transparent);
}
.notif-settings__template-chip.is-active:hover {
  background: color-mix(in srgb, var(--accent) 14%, transparent);
  border-color: color-mix(in srgb, var(--accent) 30%, transparent);
}
.lk-container {
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
}
.lk-container form {
  width: 100%;
  position: relative;
}
.lk-content {
  width: 100%;
}
.lk-bonus {
  color: var(--success);
  display: inline-flex;
  align-items: center;
  gap: calc(var(--space-2xs) + 2px);
  font-size: var(--p-small);
  font-weight: 600;
}
.lk-payment-container {
  margin: 0 auto;
  width: 100%;
  max-width: 560px;
}
.lk-payment-error {
  padding: var(--space-md) var(--space-lg);
  border-radius: var(--border05);
  color: var(--error);
  background: var(--error-light);
  text-align: center;
  font-size: var(--p-small);
  font-weight: 500;
}
@keyframes statusIn {
  from {
    opacity: 0;
    transform: scale(0.8);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes statusFade {
  from {
    opacity: 0;
    transform: translateY(8px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.status-page {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: calc(100vh - 400px);
  padding: var(--space-xl) 0;
  text-align: center;
}
.status-icon {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.5rem;
  margin-bottom: var(--space-lg);
  opacity: 0;
  animation: statusIn 0.5s cubic-bezier(0.34, 1.56, 0.64, 1) 0.1s forwards;
}
.status-icon.success {
  background: var(--success-light);
  color: var(--success);
}
.status-icon.error {
  background: var(--error-light);
  color: var(--error);
}
.status-title {
  font-size: var(--h3);
  font-weight: 600;
  color: var(--text);
  margin: 0 0 var(--space-xs);
  letter-spacing: -0.02em;
  line-height: 1.2;
  opacity: 0;
  animation: statusFade 0.4s ease-out 0.2s forwards;
}
.status-desc {
  font-size: var(--p);
  color: var(--text-600);
  line-height: 1.5;
  margin: 0;
  max-width: 380px;
  text-wrap: balance;
  opacity: 0;
  text-align: center;
  animation: statusFade 0.4s ease-out 0.3s forwards;
}
.status-hints {
  display: flex;
  flex-direction: column;
  gap: var(--space-2xs);
  margin-top: var(--space-lg);
  opacity: 0;
  animation: statusFade 0.4s ease-out 0.4s forwards;
}
.status-hint {
  display: flex;
  align-items: center;
  gap: var(--space-xs);
  font-size: var(--small);
  color: var(--text-600);
}
.status-hint svg {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  opacity: 0.6;
}
.status-actions {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-md);
  margin-top: var(--space-xl);
  opacity: 0;
  animation: statusFade 0.4s ease-out 0.5s forwards;
}
@media (max-width: 560px) {
  .status-page {
    min-height: calc(100vh - 320px);
    padding: var(--space-lg) var(--space-sm);
  }
  .status-title {
    font-size: var(--h4);
  }
  .status-desc {
    font-size: var(--p-small);
  }
}
.users-stats-icon {
  background-color: var(--transp-1);
  width: 32px;
  height: 32px;
  border-radius: var(--border05);
  font-size: var(--h5);
}
.users-stats-empty {
  color: var(--text-600);
}
.users-stats-avatar-mode .user-avatar {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  overflow: hidden;
  opacity: 0.7;
  transition: opacity var(--transition) ease-in-out;
}
.users-stats-avatar-mode .user-avatar:hover {
  opacity: 1;
}
.users-stats-avatar-mode .user-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.users-stats-compact-mode {
  gap: var(--space-2xs);
}
.users-stats-compact-mode .user-avatar-compact {
  width: 30px;
  height: 30px;
  border-radius: var(--space-2xs);
  overflow: hidden;
  opacity: 0.8;
  transition: all var(--transition) ease-in-out;
}
.users-stats-compact-mode .user-avatar-compact:hover {
  opacity: 1;
}
.users-stats-compact-mode .user-avatar-compact img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.top-donors {
  --medal-gold: #d4a853;
  --medal-silver: #9ca3af;
  --medal-bronze: #b87333;
}
.top-donors__header h5 {
  font-size: var(--h6);
  font-weight: 600;
  color: var(--text);
}
.top-donors__content {
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
}
.top-donors__podium {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: var(--space-md);
  padding: var(--space-xs) 0 var(--space-sm);
}
.top-donors__podium-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-2xs);
  text-decoration: none;
  flex: 1;
  max-width: 5.5rem;
  transition: transform var(--transition);
}
.top-donors__podium-item:hover {
  transform: translateY(-2px);
}
.top-donors__podium-item--1 {
  max-width: 6.5rem;
}
.top-donors__podium-item--1 .top-donors__podium-avatar {
  width: 3.75rem;
  height: 3.75rem;
}
.top-donors__podium-item--1 .top-donors__podium-avatar::after {
  background: var(--medal-gold);
}
.top-donors__podium-item--1 .top-donors__podium-name {
  color: var(--text);
}
.top-donors__podium-item--2 .top-donors__podium-avatar::after {
  background: var(--medal-silver);
}
.top-donors__podium-item--3 .top-donors__podium-avatar::after {
  background: var(--medal-bronze);
}
.top-donors__podium-avatar {
  position: relative;
  width: 3rem;
  height: 3rem;
}
.top-donors__podium-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
}
.top-donors__podium-avatar::after {
  content: attr(data-place);
  position: absolute;
  bottom: -4px;
  left: 50%;
  transform: translateX(-50%);
  min-width: 1.1rem;
  height: 1.1rem;
  padding: 0 4px;
  border-radius: 999px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.6rem;
  font-weight: 700;
  background: var(--transp-2);
  color: var(--background-950);
  border: 2px solid var(--background-950);
}
.top-donors__podium-place {
  display: none;
}
.top-donors__podium-name {
  font-size: var(--small);
  font-weight: 500;
  color: var(--text-300);
  text-align: center;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
  line-height: 1.3;
}
.top-donors__podium-amount {
  font-size: 0.65rem;
  color: var(--text-500);
  font-weight: 500;
  line-height: 1.2;
}
.top-donors__list {
  display: flex;
  flex-direction: column;
}
.top-donors__list--full {
  gap: 0;
}
.top-donors__list-item {
  display: grid;
  grid-template-columns: 1.5rem 2rem 1fr auto;
  align-items: center;
  gap: var(--space-sm);
  padding: var(--space-xs) var(--space-2xs);
  border-radius: var(--border05);
  text-decoration: none;
  color: inherit;
  transition: background var(--transition);
}
.top-donors__list-item:hover {
  background: var(--transp-03);
}
.top-donors__list-item--1 .top-donors__list-rank {
  color: var(--medal-gold);
}
.top-donors__list-item--2 .top-donors__list-rank {
  color: var(--medal-silver);
}
.top-donors__list-item--3 .top-donors__list-rank {
  color: var(--medal-bronze);
}
.top-donors__list-rank {
  font-size: var(--small);
  font-weight: 600;
  color: var(--text-500);
  text-align: center;
  font-variant-numeric: tabular-nums;
}
.top-donors__list-avatar {
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  object-fit: cover;
}
.top-donors__list-name {
  font-size: var(--small);
  font-weight: 500;
  color: var(--text-200);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.3;
}
.top-donors__list-amount {
  font-size: 0.7rem;
  color: var(--text-500);
  font-weight: 500;
  font-variant-numeric: tabular-nums;
}
.top-donors__compact {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-xs);
  justify-content: center;
  padding: var(--space-2xs) 0;
}
.top-donors__compact-item {
  position: relative;
  width: 2.5rem;
  height: 2.5rem;
  transition: transform var(--transition);
}
.top-donors__compact-item:hover {
  transform: scale(1.08);
}
.top-donors__compact-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
}
.top-donors__compact-item--1 img {
  box-shadow: 0 0 0 2px var(--medal-gold);
}
.top-donors__compact-item--2 img {
  box-shadow: 0 0 0 2px var(--medal-silver);
}
.top-donors__compact-item--3 img {
  box-shadow: 0 0 0 2px var(--medal-bronze);
}
.top-donors__compact-badge {
  position: absolute;
  bottom: -2px;
  right: -2px;
  width: 1rem;
  height: 1rem;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.55rem;
  font-weight: 700;
  background: var(--background-900);
  border: 2px solid var(--background-950);
  color: var(--text-400);
}
.top-donors__compact-item--1 .top-donors__compact-badge {
  background: var(--medal-gold);
  color: var(--background-950);
}
.top-donors__compact-item--2 .top-donors__compact-badge {
  background: var(--medal-silver);
  color: var(--background-950);
}
.top-donors__compact-item--3 .top-donors__compact-badge {
  background: var(--medal-bronze);
  color: var(--background-950);
}
.top-donors__empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: var(--space-lg);
  color: var(--text-600);
  gap: var(--space-xs);
}
.top-donors__empty svg {
  font-size: 1.5rem;
  opacity: 0.5;
}
.top-donors__empty span {
  font-size: var(--small);
}
.recent-payments__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-sm);
}
.recent-payments__header h5 {
  font-size: var(--h6);
  font-weight: 600;
  color: var(--text);
}
.recent-payments__count {
  font-size: var(--small);
  font-weight: 500;
  color: var(--text-500);
  background: var(--transp-05);
  padding: 0.15rem 0.5rem;
  border-radius: var(--border05);
}
.recent-payments__list {
  display: flex;
  flex-direction: column;
}
.recent-payments__item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-sm);
  padding: var(--space-xs) var(--space-2xs);
  margin: 0 calc(var(--space-2xs) * -1);
  border-radius: var(--border05);
  text-decoration: none;
  color: inherit;
  transition: background var(--transition);
}
.recent-payments__item:hover {
  background: var(--transp-03);
}
.recent-payments__item:hover .recent-payments__name {
  color: var(--text);
}
.recent-payments__user {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  min-width: 0;
  flex: 1;
}
.recent-payments__avatar {
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
}
.recent-payments__info {
  display: flex;
  flex-direction: column;
  min-width: 0;
  gap: 0;
}
.recent-payments__name {
  font-size: var(--small);
  font-weight: 500;
  color: var(--text-300);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.3;
  transition: color var(--transition);
}
.recent-payments__time {
  font-size: 0.65rem;
  color: var(--text-500);
  line-height: 1.3;
}
.recent-payments__payment {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 0;
  flex-shrink: 0;
}
.recent-payments__amount {
  font-size: var(--small);
  font-weight: 600;
  color: var(--success);
  line-height: 1.3;
  font-variant-numeric: tabular-nums;
}
.recent-payments__amount small {
  font-weight: 500;
  color: var(--text-500);
  margin-left: 2px;
}
.recent-payments__gateway {
  font-size: 0.6rem;
  color: var(--text-600);
  line-height: 1.3;
  text-transform: uppercase;
  letter-spacing: 0.03em;
}
.recent-payments__empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: var(--space-lg);
  gap: var(--space-xs);
  color: var(--text-600);
}
.recent-payments__empty svg {
  font-size: 1.5rem;
  opacity: 0.5;
}
.recent-payments__empty span {
  font-size: var(--small);
}
.promo-codes__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-sm);
}
.promo-codes__header h5 {
  font-size: var(--h6);
  font-weight: 600;
  color: var(--text);
}
.promo-codes__count {
  font-size: var(--small);
  font-weight: 500;
  color: var(--text-500);
  background: var(--transp-05);
  padding: 0.15rem 0.5rem;
  border-radius: var(--border05);
}
.promo-codes__list {
  display: flex;
  flex-direction: column;
  gap: var(--space-xs);
}
.promo-codes__item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-sm);
  padding: var(--space-xs);
  background: var(--transp-02);
  border-radius: var(--border05);
  transition: background var(--transition);
}
.promo-codes__item:hover {
  background: var(--transp-05);
}
.promo-codes__code {
  display: flex;
  align-items: center;
  gap: var(--space-xs);
  min-width: 0;
}
.promo-codes__value {
  font-family: var(--font-mono);
  font-size: var(--small);
  font-weight: 600;
  color: var(--accent);
  letter-spacing: 0.02em;
  padding: 0.2rem 0.5rem;
  background: var(--transp-05);
  border-radius: 4px;
  white-space: nowrap;
}
.promo-codes__copy {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.5rem;
  height: 1.5rem;
  padding: 0;
  background: transparent;
  border: none;
  border-radius: 4px;
  color: var(--text-500);
  cursor: pointer;
  transition: color var(--transition), background var(--transition);
  flex-shrink: 0;
}
.promo-codes__copy svg {
  font-size: 0.85rem;
}
.promo-codes__copy:hover {
  background: var(--transp-1);
  color: var(--accent);
}
.promo-codes__copy:active {
  transform: scale(0.95);
}
.promo-codes__meta {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 0;
  flex-shrink: 0;
}
.promo-codes__discount {
  font-size: var(--small);
  font-weight: 700;
  color: var(--success);
  line-height: 1.3;
}
.promo-codes__expires {
  font-size: 0.6rem;
  color: var(--text-600);
  line-height: 1.3;
}
.promo-codes__empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: var(--space-lg);
  gap: var(--space-xs);
  color: var(--text-600);
}
.promo-codes__empty svg {
  font-size: 1.5rem;
  opacity: 0.5;
}
.promo-codes__empty span {
  font-size: var(--small);
}
.widget-empty {
  width: 100%;
}
.user-mini-profile {
  --profile-radius: 1.25rem;
  --profile-avatar-size: 4.5rem;
  background: var(--background-950);
  border: 1px solid var(--transp-1);
  border-radius: var(--profile-radius);
  overflow: hidden;
}
.user-mini-profile-content {
  display: flex;
  flex-direction: column;
}
.user-mini-profile-main {
  position: relative;
}
.user-mini-profile-cover {
  position: relative;
  height: 4.5rem;
  background: linear-gradient(135deg, var(--accent-900) 0%, var(--background-900) 100%);
}
.user-mini-profile-cover img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.5;
}
.user-mini-profile-cover::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 0%, var(--background-950) 100%);
}
.user-mini-profile-cover-noise {
  display: none;
}
.user-mini-profile-body {
  display: flex;
  flex-direction: column;
  gap: var(--space-md);
  padding: 0 var(--space-md) var(--space-md);
  margin-top: calc(var(--profile-avatar-size) / -2);
  position: relative;
  z-index: 1;
}
.user-mini-profile-top {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: var(--space-sm);
}
.user-mini-profile-avatar-wrapper {
  position: relative;
  flex-shrink: 0;
}
.user-mini-profile-avatar {
  display: block;
  width: var(--profile-avatar-size);
  height: var(--profile-avatar-size);
  padding: 3px;
  background: var(--background-950);
  border-radius: var(--border1);
  transition: transform var(--transition);
}
.user-mini-profile-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: calc(var(--border1) - 2px);
}
.user-mini-profile-avatar:hover {
  transform: scale(1.02);
}
.user-mini-profile-crown {
  position: absolute;
  bottom: -2px;
  right: -2px;
  width: 1.25rem;
  height: 1.25rem;
  background: var(--warning);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--background-950);
  border: 2px solid var(--background-950);
}
.user-mini-profile-crown svg {
  font-size: 0.65rem;
}
.user-mini-profile-rank {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 2px;
  padding-bottom: var(--space-2xs);
}
.user-mini-profile-rank-label {
  font-size: 0.6rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--text-600);
  font-weight: 600;
}
.user-mini-profile-rank-badge {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2xs);
  padding: 0.2rem 0.5rem;
  background: var(--transp-05);
  border-radius: var(--border05);
  font-size: var(--small);
  font-weight: 600;
  color: var(--text-300);
}
.user-mini-profile-rank-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--role-color, var(--text-500));
}
.user-mini-profile-rank-dot.is-muted {
  background: var(--text-600);
}
.user-mini-profile-info {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.user-mini-profile-name-row {
  display: flex;
  align-items: center;
  gap: 4px;
  min-width: 0;
}
.user-mini-profile-name {
  font-size: var(--h6);
  font-weight: 700;
  color: var(--text);
  text-decoration: none;
  line-height: 1.3;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  transition: color var(--transition);
}
.user-mini-profile-name:hover {
  color: var(--accent);
}
.user-mini-profile-presence {
  display: flex;
  align-items: center;
  gap: var(--space-2xs);
  font-size: var(--small);
  color: var(--text-500);
}
.user-mini-profile-presence-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--text-600);
}
.user-mini-profile-presence-dot.online {
  background: var(--success);
}
.user-mini-profile-roles {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2xs);
}
.user-mini-profile-role {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 0.15rem 0.4rem;
  background: var(--transp-03);
  border-radius: var(--border05);
  font-size: var(--small);
  font-weight: 500;
  color: var(--text-400);
}
.user-mini-profile-role-square {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background-color: var(--role-color);
}
.user-mini-profile-balance-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-sm);
  margin: 0 var(--space-md);
  padding: var(--space-sm) var(--space-md);
  background: var(--transp-03);
  border-radius: var(--border05);
}
.user-mini-profile .balance-info {
  display: flex;
  flex-direction: column;
  gap: 0;
}
.user-mini-profile .balance-label {
  font-size: 0.65rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--text-500);
  font-weight: 600;
  line-height: 1.4;
}
.user-mini-profile .balance-amount {
  display: flex;
  align-items: baseline;
  gap: 4px;
  font-size: var(--h5);
  font-weight: 700;
  color: var(--text);
  line-height: 1.3;
}
.user-mini-profile .balance-currency {
  font-size: var(--small);
  font-weight: 500;
  color: var(--text-500);
}
.user-mini-profile .balance-action {
  display: flex;
  align-items: center;
  gap: var(--space-2xs);
  padding: 0.4rem 0.75rem;
  background: var(--accent);
  color: var(--background-950);
  border-radius: var(--border05);
  font-size: var(--small);
  font-weight: 600;
  text-decoration: none;
  white-space: nowrap;
  transition: opacity var(--transition), transform var(--transition);
}
.user-mini-profile .balance-action svg {
  font-size: 0.85rem;
}
.user-mini-profile .balance-action:hover {
  opacity: 0.9;
  transform: translateY(-1px);
}
.user-mini-profile-actions {
  display: flex;
  flex-direction: column;
  padding: var(--space-sm) var(--space-md) var(--space-md);
}
.user-mini-profile-actions .user-mini-profile-action-form {
  width: 100%;
}
.user-mini-profile-action {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  width: 100%;
  padding: var(--space-xs) var(--space-sm);
  background: transparent;
  border: none;
  border-radius: var(--border05);
  color: var(--text-400);
  font-size: var(--p-small);
  font-weight: 500;
  text-decoration: none;
  text-align: left;
  cursor: pointer;
  transition: background var(--transition), color var(--transition);
}
.user-mini-profile-action.btn {
  box-shadow: none;
  background: transparent;
  border: none;
}
.user-mini-profile-action::after {
  display: none;
}
.user-mini-profile-action svg {
  font-size: 1rem;
  color: var(--text-500);
  flex-shrink: 0;
  transition: color var(--transition);
}
.user-mini-profile-action:hover {
  background: var(--transp-05);
  color: var(--text);
}
.user-mini-profile-action:hover svg {
  color: var(--text-300);
}
.user-mini-profile-action-chevron {
  margin-left: auto;
  opacity: 0.3;
  transition: opacity var(--transition), transform var(--transition);
}
.user-mini-profile-action-chevron svg {
  font-size: 0.8rem;
}
.user-mini-profile-action:hover .user-mini-profile-action-chevron {
  opacity: 0.6;
  transform: translateX(2px);
}
.user-mini-profile-action--danger {
  color: var(--error);
}
.user-mini-profile-action--danger svg {
  color: var(--error);
}
.user-mini-profile-action--danger:hover {
  background: var(--error-light);
  color: var(--error);
}
.user-mini-profile-action--danger:hover svg {
  color: var(--error);
}
.guest-profile {
  padding: var(--space-lg);
}
.guest-profile .user-mini-profile-content {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.guest-profile .guest-profile-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-sm);
  margin-bottom: var(--space-lg);
}
.guest-profile .guest-profile-avatar {
  width: 3.5rem;
  height: 3.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--transp-05);
  border-radius: 50%;
}
.guest-profile .guest-profile-avatar svg {
  width: 1.75rem;
  height: 1.75rem;
  color: var(--text-500);
}
.guest-profile .guest-profile-info {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.guest-profile .guest-profile-info h4 {
  font-size: var(--h6);
  font-weight: 600;
  color: var(--text);
  margin: 0;
}
.guest-profile .guest-profile-info p {
  color: var(--text-500);
  font-size: var(--small);
  line-height: 1.5;
  margin: var(--space-2xs) 0 0;
  text-align: center;
}
.guest-profile .guest-profile-actions {
  display: flex;
  flex-direction: column;
  gap: var(--space-xs);
  margin-top: auto;
}
.guest-profile .guest-profile-actions .guest-profile-action {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-xs);
  border-radius: var(--border05);
  transition: transform var(--transition);
}
.guest-profile .guest-profile-actions .guest-profile-action:hover {
  transform: translateY(-1px);
}
.guest-profile .guest-profile-actions .guest-profile-action svg {
  width: 1rem;
  height: 1rem;
}
.guest-profile .guest-profile-socials {
  border-top: 1px solid var(--transp-1);
  padding-top: var(--space-md);
  margin-top: var(--space-md);
}
.guest-profile .guest-profile-socials-label {
  font-size: var(--small);
  color: var(--text-500);
  margin-bottom: var(--space-sm);
  text-align: center;
}
.guest-profile .guest-profile-socials-buttons {
  display: flex;
  justify-content: center;
  gap: var(--space-sm);
}
.guest-profile .guest-profile-social-btn {
  width: 2.25rem;
  height: 2.25rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--transp-05);
  border-radius: var(--border05);
  transition: background var(--transition), color var(--transition);
}
.guest-profile .guest-profile-social-btn svg {
  width: 1.1rem;
  height: 1.1rem;
  color: var(--text-500);
  transition: color var(--transition);
}
.guest-profile .guest-profile-social-btn:hover {
  background: var(--transp-1);
}
.guest-profile .guest-profile-social-btn:hover svg {
  color: var(--accent);
}
.flute-cookie-notification {
  position: fixed;
  inset: auto 1.25rem 1.25rem auto;
  z-index: 9999;
  width: min(92vw, 420px);
  animation: cookieEnterRight 360ms cubic-bezier(0.22, 1, 0.36, 1);
  --cookie-bg: #f7f6ef;
  --cookie-border: rgba(17, 17, 17, 0.08);
  --cookie-shadow: 0 14px 40px rgba(0, 0, 0, 0.22);
  --cookie-radius: 16px;
  --cookie-padding: 1rem;
  --text-main: #161616;
  --text-dim: #4a4a4a;
  --link: #111;
  --btn-bg: #111;
  --btn-bg-hover: #000;
  --btn-text: #fff;
}
.flute-cookie-notification.flute-cookie-notification--hiding {
  animation: cookieExitRight 280ms cubic-bezier(0.4, 0, 0.2, 1) forwards;
}
@media (max-width: 768px) {
  .flute-cookie-notification {
    inset: auto 0 env(safe-area-inset-bottom) 0;
    width: 100%;
  }
}
.flute-cookie-notification__wrapper {
  background: var(--cookie-bg);
  border: 1px solid var(--cookie-border);
  border-radius: var(--cookie-radius);
  padding: var(--cookie-padding);
  box-shadow: var(--cookie-shadow);
  display: grid;
  grid-template-areas: "content" "actions";
  row-gap: 0.875rem;
}
@media (max-width: 768px) {
  .flute-cookie-notification__wrapper {
    border-radius: 16px 16px 0 0;
    padding: 1.1rem 1.1rem calc(1.1rem + env(safe-area-inset-bottom));
  }
}
.flute-cookie-notification__content {
  grid-area: content;
  color: var(--text-main);
  font-size: 0.95rem;
  line-height: 1.55;
}
.flute-cookie-notification__title {
  display: none;
}
.flute-cookie-notification__description {
  margin: 0;
  color: var(--text-main);
  line-height: 1.7;
}
.flute-cookie-notification__description > * {
  line-height: inherit;
}
.flute-cookie-notification__learn {
  color: var(--link);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 600;
}
.flute-cookie-notification__learn:hover {
  text-decoration-thickness: 2px;
}
.flute-cookie-notification__learn:focus-visible {
  outline: 2px solid var(--link);
  outline-offset: 2px;
  border-radius: 4px;
}
.flute-cookie-notification__actions {
  grid-area: actions;
  display: flex;
  justify-content: stretch;
  margin-top: 0.25rem;
}
.flute-cookie-notification__accept-btn {
  width: 100%;
  height: 44px;
  border-radius: 12px;
  background: var(--btn-bg);
  color: var(--btn-text);
  font-weight: 700;
  letter-spacing: 0.2px;
  border: 1px solid #000;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.28);
  transition: transform 0.12s ease, box-shadow 0.12s ease, background 0.12s ease, filter 0.12s ease;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 1rem;
}
.flute-cookie-notification__accept-btn:hover {
  background: var(--btn-bg-hover);
  transform: translateY(-1px);
  box-shadow: 0 10px 26px rgba(0, 0, 0, 0.32);
  filter: saturate(105%);
}
.flute-cookie-notification__accept-btn:active {
  transform: translateY(0);
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.28);
}
@keyframes cookieEnterRight {
  from {
    opacity: 0;
    transform: translate3d(0, 14px, 0) scale(0.98);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
  }
}
@keyframes cookieExitRight {
  from {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
  }
  to {
    opacity: 0;
    transform: translate3d(0, 14px, 0) scale(0.98);
  }
}
@media (max-width: 768px) {
  @keyframes cookieEnterRight {
    from {
      opacity: 0;
      transform: translateY(100%);
    }
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }
  @keyframes cookieExitRight {
    from {
      opacity: 1;
      transform: translateY(0);
    }
    to {
      opacity: 0;
      transform: translateY(100%);
    }
  }
}
.announcement-container {
  position: relative;
  z-index: 120;
  opacity: 0;
  transform: translateY(-100%);
  transition: opacity 0.4s ease, transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.announcement-container--active {
  opacity: 1;
  transform: translateY(0);
}
.announcement-bar {
  position: relative;
  height: 40px;
  overflow: hidden;
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
  backdrop-filter: blur(12px);
  transition: opacity 0.3s ease, height 0.3s ease, transform 0.3s ease;
}
.announcement-bar--hiding {
  opacity: 0;
  height: 0;
  transform: translateY(-100%);
}
.announcement-bar .container {
  height: 100%;
}
.announcement-bar__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 100%;
  gap: var(--space-md);
}
.announcement-bar__spacer {
  width: 32px;
  flex-shrink: 0;
}
@media (max-width: 640px) {
  .announcement-bar__spacer {
    display: none;
  }
}
.announcement-bar__center {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  flex: 1;
  min-width: 0;
}
@media (max-width: 640px) {
  .announcement-bar__center {
    justify-content: flex-start;
    padding-right: 40px;
  }
}
.announcement-bar__badge {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.1);
  flex-shrink: 0;
}
.announcement-bar__badge svg {
  font-size: 10px;
  opacity: 0.9;
}
@media (max-width: 640px) {
  .announcement-bar__badge {
    display: none;
  }
}
.announcement-bar__content {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  font-size: 13px;
}
@media (max-width: 640px) {
  .announcement-bar__content {
    font-size: 12px;
    flex-wrap: wrap;
    gap: 4px 8px;
  }
}
.announcement-bar__text {
  font-weight: 500;
  color: #fff;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
@media (max-width: 640px) {
  .announcement-bar__text {
    white-space: normal;
    overflow: visible;
  }
}
.announcement-bar__text a {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.announcement-bar__text a:hover {
  text-decoration: none;
}
.announcement-bar__separator {
  color: rgba(255, 255, 255, 0.4);
  font-weight: 400;
}
@media (max-width: 640px) {
  .announcement-bar__separator {
    display: none;
  }
}
.announcement-bar__link {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.7);
  text-decoration: none;
  transition: color 0.2s ease;
  flex-shrink: 0;
}
.announcement-bar__link:hover {
  color: #fff;
}
.announcement-bar__link:hover .announcement-bar__arrow {
  transform: translateX(2px);
}
.announcement-bar__arrow {
  font-size: 12px;
  transition: transform 0.2s ease;
}
.announcement-bar__right {
  display: flex;
  align-items: center;
  flex-shrink: 0;
}
@media (max-width: 640px) {
  .announcement-bar__right {
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
  }
}
.announcement-bar__close {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  padding: 0;
  border: none;
  border-radius: 50%;
  background: transparent;
  color: rgba(255, 255, 255, 0.4);
  cursor: pointer;
  transition: all 0.2s ease;
}
.announcement-bar__close:hover {
  background: rgba(255, 255, 255, 0.1);
  color: #fff;
}
.announcement-bar__close svg {
  font-size: 14px;
}
.announcement-bar--info {
  background: linear-gradient(90deg, color-mix(in srgb, var(--info) 60%, #1e1b4b) 0%, color-mix(in srgb, var(--info) 60%, #312e81) 50%, color-mix(in srgb, var(--info) 60%, #1e1b4b) 100%);
}
.announcement-bar--info .announcement-bar__badge svg {
  color: color-mix(in srgb, var(--info), #fff 40%);
}
.announcement-bar--info .announcement-bar__link {
  color: color-mix(in srgb, var(--info), #fff 60%);
}
.announcement-bar--info .announcement-bar__link:hover {
  color: #fff;
}
.announcement-bar--success {
  background: linear-gradient(90deg, color-mix(in srgb, var(--success) 50%, #052e16) 0%, color-mix(in srgb, var(--success) 50%, #14532d) 50%, color-mix(in srgb, var(--success) 50%, #052e16) 100%);
}
.announcement-bar--success .announcement-bar__badge svg {
  color: color-mix(in srgb, var(--success), #fff 40%);
}
.announcement-bar--success .announcement-bar__link {
  color: color-mix(in srgb, var(--success), #fff 50%);
}
.announcement-bar--success .announcement-bar__link:hover {
  color: #fff;
}
.announcement-bar--warning {
  background: linear-gradient(90deg, color-mix(in srgb, var(--warning) 40%, #422006) 0%, color-mix(in srgb, var(--warning) 40%, #713f12) 50%, color-mix(in srgb, var(--warning) 40%, #422006) 100%);
}
.announcement-bar--warning .announcement-bar__badge svg {
  color: color-mix(in srgb, var(--warning), #fff 30%);
}
.announcement-bar--warning .announcement-bar__link {
  color: color-mix(in srgb, var(--warning), #fff 40%);
}
.announcement-bar--warning .announcement-bar__link:hover {
  color: #fff;
}
.announcement-bar--error {
  background: linear-gradient(90deg, color-mix(in srgb, var(--error) 50%, #450a0a) 0%, color-mix(in srgb, var(--error) 50%, #7f1d1d) 50%, color-mix(in srgb, var(--error) 50%, #450a0a) 100%);
}
.announcement-bar--error .announcement-bar__badge svg {
  color: color-mix(in srgb, var(--error), #fff 40%);
}
.announcement-bar--error .announcement-bar__link {
  color: color-mix(in srgb, var(--error), #fff 50%);
}
.announcement-bar--error .announcement-bar__link:hover {
  color: #fff;
}
.banners-widget {
  width: 100%;
}
.banners-widget .banners-empty {
  padding: var(--space-xl);
  text-align: center;
  background-color: var(--transp-1);
  border-radius: var(--border1);
  border: 1px solid var(--transp-2);
}
.banners-widget .banners-slider {
  position: relative;
  width: 100%;
  overflow: hidden;
  border-radius: var(--border1);
  transition: all var(--transition);
}
.banners-widget .banners-slider[data-height-mode="auto"] {
  height: auto !important;
  min-height: 200px;
}
.banners-widget .banners-slider[data-height-mode="auto"] .banner-slide {
  height: auto;
  min-height: 200px;
}
.banners-widget .banners-slider[data-height-mode="auto"] .banner-slide .banner-image {
  height: auto;
  aspect-ratio: 1.7777777778;
  max-height: 60vh;
}
.banners-widget .banners-slider[data-height-mode="auto"] .banner-slide .banner-image img {
  height: auto;
  width: 100%;
  max-height: inherit;
  object-fit: cover;
}
.banners-widget .banners-slider.single-banner .banners-controls {
  display: none;
}
.banners-widget .banners-slider.single-banner .banner-slide {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: none !important;
}
.banners-widget .banners-slider.single-banner .banner-content {
  padding-bottom: var(--space-lg) !important;
}
.banners-widget .banners-slider .banners-slider-track {
  height: 100%;
  width: 100%;
}
.banners-widget .banners-slider .banner-slide {
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
}
.banners-widget .banners-slider .banner-slide a {
  display: block;
  height: 100%;
  color: inherit;
  text-decoration: none;
}
.banners-widget .banners-slider .banner-slide a:focus {
  outline: 2px solid var(--accent);
  outline-offset: 2px;
}
.banners-widget .banners-slider .banner-slide .banner-image {
  height: 100%;
  width: 100%;
  overflow: hidden;
}
.banners-widget .banners-slider .banner-slide .banner-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform calc(var(--transition) * 2);
}
.banners-widget .banners-slider .banner-slide .banner-content {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: var(--space-lg) calc(var(--space-lg) + 3rem) calc(var(--space-lg) + 2rem) var(--space-lg);
  background: linear-gradient(to top, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.5) 50%, transparent);
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  gap: var(--space-xs);
  max-height: 60%;
  overflow: hidden;
}
@media (max-width: 768px) {
  .banners-widget .banners-slider .banner-slide .banner-content {
    padding: var(--space-md) calc(var(--space-md) + 2.5rem) calc(var(--space-md) + 1.5rem) var(--space-md);
    gap: var(--space-xs);
  }
}
.banners-widget .banners-slider .banner-slide .banner-content.content-hidden .banner-title, .banners-widget .banners-slider .banner-slide .banner-content.content-hidden .banner-description {
  opacity: 0;
  transform: translateY(20px) scale(0.98);
  filter: blur(2px);
  pointer-events: none;
}
.banners-widget .banners-slider .banner-slide .banner-content .banner-title {
  font-size: var(--h2);
  font-weight: 600;
  line-height: 1.5;
  text-shadow: 0 1px 4px rgba(0, 0, 0, 0.8);
  transform: translateY(0) scale(1);
  opacity: 1;
  filter: blur(0);
  transition: all 0.4s cubic-bezier(0.2, 0, 0.2, 1);
  backface-visibility: hidden;
  will-change: transform, opacity, filter;
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  word-break: break-word;
  hyphens: auto;
}
@media (max-width: 768px) {
  .banners-widget .banners-slider .banner-slide .banner-content .banner-title {
    font-size: var(--h4);
    -webkit-line-clamp: 1;
  }
}
@media (prefers-reduced-motion: reduce) {
  .banners-widget .banners-slider .banner-slide .banner-content .banner-title {
    transition: none;
  }
}
.banners-widget .banners-slider .banner-slide .banner-content .banner-description {
  font-size: var(--p-small);
  opacity: 0.9;
  line-height: 1.5;
  max-width: 85%;
  text-shadow: 0 1px 3px rgba(0, 0, 0, 0.6);
  transform: translateY(0) scale(1);
  filter: blur(0);
  transition: all 0.4s cubic-bezier(0.2, 0, 0.2, 1);
  backface-visibility: hidden;
  will-change: transform, opacity, filter;
  color: rgba(255, 255, 255, 0.7);
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  word-break: break-word;
  hyphens: auto;
}
@media (max-width: 768px) {
  .banners-widget .banners-slider .banner-slide .banner-content .banner-description {
    font-size: var(--p);
    -webkit-line-clamp: 4;
    max-width: 90%;
  }
}
@media (prefers-reduced-motion: reduce) {
  .banners-widget .banners-slider .banner-slide .banner-content .banner-description {
    transition: none;
  }
}
.banners-widget .banners-slider .banner-slide .banner-content.content-out .banner-title, .banners-widget .banners-slider .banner-slide .banner-content.content-out .banner-description {
  transition-timing-function: cubic-bezier(0.4, 0, 0.6, 1);
  transition-duration: 0.2s;
}
.banners-widget .banners-slider .banner-slide .banner-content.content-in .banner-title, .banners-widget .banners-slider .banner-slide .banner-content.content-in .banner-description {
  transition-timing-function: cubic-bezier(0.2, 0, 0.2, 1);
  transition-duration: 0.3s;
}
.banners-widget .banners-slider .banner-slide .banner-content::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 2rem;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.7), transparent);
  pointer-events: none;
  z-index: 1;
}
.banners-widget .banners-slider .banners-controls {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 var(--space-sm);
  z-index: 12;
  pointer-events: none;
}
@media (prefers-reduced-motion: reduce) {
  .banners-widget .banners-slider .banners-controls {
    transition: none;
  }
}
.banners-widget .banners-slider .banners-controls .banner-prev, .banners-widget .banners-slider .banners-controls .banner-next {
  background-color: var(--blurred-background);
  border: none;
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all var(--transition);
  color: var(--text);
  pointer-events: auto;
  opacity: 0.8;
}
@media (max-width: 768px) {
  .banners-widget .banners-slider .banners-controls .banner-prev, .banners-widget .banners-slider .banners-controls .banner-next {
    width: 2rem;
    height: 2rem;
    opacity: 0.9;
  }
}
@media (prefers-reduced-motion: reduce) {
  .banners-widget .banners-slider .banners-controls .banner-prev, .banners-widget .banners-slider .banners-controls .banner-next {
    transition: none;
  }
}
.banners-widget .banners-slider .banners-controls .banner-prev:hover, .banners-widget .banners-slider .banners-controls .banner-next:hover {
  background-color: var(--accent);
  color: var(--background);
  opacity: 1;
  transform: scale(1.05);
}
.banners-widget .banners-slider .banners-controls .banner-prev:active, .banners-widget .banners-slider .banners-controls .banner-next:active {
  transform: scale(0.95);
}
.banners-widget .banners-slider .banners-controls .banner-prev:focus-visible, .banners-widget .banners-slider .banners-controls .banner-next:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 2px;
}
.banners-widget .banners-slider .banners-controls .banner-prev svg, .banners-widget .banners-slider .banners-controls .banner-next svg {
  width: 1.25rem;
  height: 1.25rem;
}
@media (max-width: 768px) {
  .banners-widget .banners-slider .banners-controls .banner-prev svg, .banners-widget .banners-slider .banners-controls .banner-next svg {
    width: 1rem;
    height: 1rem;
  }
}
.banners-widget .banners-slider .banners-indicators {
  position: absolute;
  bottom: var(--space-md);
  display: flex;
  left: 50%;
  right: 0;
  transform: translateX(-50%);
  justify-content: center;
  gap: var(--space-xs);
  pointer-events: auto;
  z-index: 15;
  background-color: var(--blurred-background);
  padding: var(--space-xs) var(--space-sm);
  border-radius: var(--border1);
  width: min-content;
  opacity: 0.9;
}
@media (max-width: 768px) {
  .banners-widget .banners-slider .banners-indicators {
    bottom: var(--space-sm);
    padding: var(--space-xs);
    gap: calc(var(--space-xs) * 0.75);
  }
}
.banners-widget .banners-slider .banners-indicators .banner-indicator {
  width: 0.375rem;
  height: 0.375rem;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.4);
  opacity: 0.7;
  border: none;
  padding: 0;
  cursor: pointer;
  transition: all var(--transition);
  margin: 0;
}
@media (max-width: 768px) {
  .banners-widget .banners-slider .banners-indicators .banner-indicator {
    width: 0.3rem;
    height: 0.3rem;
  }
}
@media (prefers-reduced-motion: reduce) {
  .banners-widget .banners-slider .banners-indicators .banner-indicator {
    transition: none;
  }
}
.banners-widget .banners-slider .banners-indicators .banner-indicator.active {
  opacity: 1;
  background-color: var(--accent);
  transform: scale(1.4);
}
@media (max-width: 768px) {
  .banners-widget .banners-slider .banners-indicators .banner-indicator.active {
    transform: scale(1.3);
  }
}
.banners-widget .banners-slider .banners-indicators .banner-indicator:hover:not(.active) {
  opacity: 0.9;
  transform: scale(1.2);
  background-color: rgba(255, 255, 255, 0.6);
}
.banners-widget .banners-slider .banners-indicators .banner-indicator:focus-visible {
  outline: 1px solid var(--accent);
  outline-offset: 1px;
}
.banners-widget .banners-slider .banner-progress-timer {
  position: absolute;
  top: var(--space-md);
  right: var(--space-md);
  z-index: 20;
  opacity: 0.9;
}
@media (max-width: 768px) {
  .banners-widget .banners-slider .banner-progress-timer {
    top: var(--space-sm);
    right: var(--space-sm);
  }
}
.banners-widget .banners-slider .banner-progress-timer .progress-circle {
  background-color: var(--blurred-background);
  border-radius: 50%;
  position: relative;
  width: 36px;
  height: 36px;
}
@media (max-width: 768px) {
  .banners-widget .banners-slider .banner-progress-timer .progress-circle {
    width: 32px;
    height: 32px;
  }
}
.banners-widget .banners-slider .banner-progress-timer .progress-circle svg {
  width: 100%;
  height: 100%;
  transform: rotate(-90deg);
  filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.2));
}
.banners-widget .banners-slider .banner-progress-timer .progress-circle svg .progress-path {
  color: var(--accent);
  transition: stroke-dashoffset linear;
  will-change: stroke-dashoffset;
}
.banners-widget .banners-slider .banner-progress-timer .progress-circle .progress-text {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  align-items: center;
  justify-content: center;
}
.banners-widget .banners-slider .banner-progress-timer .progress-circle .progress-text .progress-count {
  font-size: 0.7rem;
  font-weight: 500;
  color: var(--text);
  min-width: 1ch;
  text-align: center;
}
@media (max-width: 768px) {
  .banners-widget .banners-slider .banner-progress-timer .progress-circle .progress-text .progress-count {
    font-size: 0.65rem;
  }
}
.banners-settings-form {
  max-height: 100%;
}
.banners-settings-form .settings-section {
  margin-bottom: var(--space-lg);
  padding-bottom: var(--space-lg);
  border-bottom: 1px solid var(--transp-2);
}
.banners-settings-form .settings-section:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}
.banners-settings-form .settings-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-md);
}
@media (max-width: 768px) {
  .banners-settings-form .settings-row {
    grid-template-columns: 1fr;
  }
}
.banners-settings-form .settings-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: var(--space-md);
}
.banners-settings-form .settings-header .section-title {
  font-size: var(--h5);
  font-weight: 600;
  margin: 0;
}
.banners-settings-form .settings-header .btn-add {
  display: flex;
  align-items: center;
  gap: var(--space-xs);
  padding: var(--space-xs) var(--space-md);
  background-color: var(--accent);
  color: var(--background);
  border-radius: var(--border05);
  transition: all var(--transition);
  font-size: var(--p-small);
  font-weight: 500;
}
@media (prefers-reduced-motion: reduce) {
  .banners-settings-form .settings-header .btn-add {
    transition: none;
  }
}
.banners-settings-form .settings-header .btn-add:hover {
  background-color: var(--accent-400);
  transform: translateY(-1px);
}
.banners-settings-form .settings-header .btn-add:active {
  transform: translateY(0);
}
.banners-settings-form .settings-header .btn-add:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 2px;
}
.banners-settings-form .settings-header .btn-add svg {
  width: 1.25em;
  height: 1.25em;
}
.banners-settings-form .banners-list {
  display: flex;
  flex-direction: column;
  gap: var(--space-md);
  margin-bottom: var(--space-md);
  max-height: min(55vh, 1000px);
  min-height: 200px;
  overflow-y: auto;
  overflow-x: hidden;
}
.banners-settings-form .banners-list .banner-item {
  background-color: var(--transp-05);
  border-radius: var(--border05);
  padding: var(--space-md);
  transition: all var(--transition);
  position: relative;
  border: 1px solid var(--transp-2);
}
@media (prefers-reduced-motion: reduce) {
  .banners-settings-form .banners-list .banner-item {
    transition: none;
  }
}
.banners-settings-form .banners-list .banner-item:hover {
  background-color: var(--transp-1);
}
.banners-settings-form .banners-list .banner-item .banner-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: var(--space-md);
}
.banners-settings-form .banners-list .banner-item .banner-header .banner-title {
  margin: 0;
  font-size: var(--h6);
  font-weight: 500;
}
.banners-settings-form .banners-list .banner-item .banner-header .btn-remove-banner {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  background-color: var(--transp-2);
  color: var(--error);
  transition: all var(--transition);
}
@media (prefers-reduced-motion: reduce) {
  .banners-settings-form .banners-list .banner-item .banner-header .btn-remove-banner {
    transition: none;
  }
}
.banners-settings-form .banners-list .banner-item .banner-header .btn-remove-banner:hover {
  background-color: var(--error-light);
  transform: scale(1.05);
}
.banners-settings-form .banners-list .banner-item .banner-header .btn-remove-banner:active {
  transform: scale(1);
}
.banners-settings-form .banners-list .banner-item .banner-header .btn-remove-banner:focus-visible {
  outline: 2px solid var(--error);
  outline-offset: 2px;
}
.banners-settings-form .banners-list .banner-item .banner-header .btn-remove-banner svg {
  width: 1.25em;
  height: 1.25em;
}
.banners-settings-form .banners-list .banner-item .banner-inputs {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-md);
}
@media (max-width: 992px) {
  .banners-settings-form .banners-list .banner-item .banner-inputs {
    grid-template-columns: 1fr;
  }
}
.banners-settings-form .banners-list .banner-item .banner-inputs .banner-col {
  display: flex;
  flex-direction: column;
}
.banners-settings-form .banners-list .banner-item .banner-image-upload {
  position: relative;
}
.banners-settings-form .banners-list .banner-item .banner-image-upload .image-upload-actions {
  display: flex;
  gap: var(--space-xs);
  margin-top: var(--space-xs);
}
.banners-settings-form .banners-list .banner-item .banner-image-upload .image-upload-actions .btn-upload svg {
  width: 1em;
  height: 1em;
}
.banners-settings-form .banners-list .banner-item .banner-image-upload .upload-progress {
  margin-top: var(--space-xs);
  padding: var(--space-xs);
  background-color: var(--transp-05);
  border-radius: var(--border05);
}
.banners-settings-form .banners-list .banner-item .banner-image-upload .upload-progress .progress-bar {
  width: 100%;
  height: 0.25rem;
  background-color: var(--transp-2);
  border-radius: var(--border05);
  overflow: hidden;
  margin-bottom: var(--space-xs);
}
.banners-settings-form .banners-list .banner-item .banner-image-upload .upload-progress .progress-bar .progress-fill {
  height: 100%;
  background-color: var(--accent);
  transition: width 0.3s ease;
  border-radius: var(--border05);
}
.banners-settings-form .banners-list .banner-item .banner-image-upload .upload-progress .progress-text {
  font-size: var(--p-small);
  color: var(--text-muted);
}
.banners-settings-form .banners-list .banner-item .banner-image-upload .image-preview {
  position: relative;
  margin-top: var(--space-sm);
  border-radius: var(--border05);
  overflow: hidden;
  border: 1px solid var(--transp-2);
  max-width: 200px;
}
.banners-settings-form .banners-list .banner-item .banner-image-upload .image-preview img {
  width: 100%;
  height: 100px;
  object-fit: cover;
  display: block;
}
.banners-settings-form .banners-list .banner-item .banner-image-upload .image-preview .btn-remove-preview {
  position: absolute;
  top: var(--space-xs);
  right: var(--space-xs);
  width: 1.5rem;
  height: 1.5rem;
  background-color: rgba(0, 0, 0, 0.7);
  color: white;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all var(--transition);
}
@media (prefers-reduced-motion: reduce) {
  .banners-settings-form .banners-list .banner-item .banner-image-upload .image-preview .btn-remove-preview {
    transition: none;
  }
}
.banners-settings-form .banners-list .banner-item .banner-image-upload .image-preview .btn-remove-preview:hover {
  background-color: var(--error);
  transform: scale(1.1);
}
.banners-settings-form .banners-list .banner-item .banner-image-upload .image-preview .btn-remove-preview:active {
  transform: scale(1);
}
.banners-settings-form .banners-list .banner-item .banner-image-upload .image-preview .btn-remove-preview svg {
  width: 0.875rem;
  height: 0.875rem;
}
@media (prefers-reduced-motion: reduce) {
  .banners-slider * {
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}
.push-banner {
  position: fixed;
  inset: auto auto 1.25rem 1.25rem;
  z-index: 9999;
  width: min(92vw, 340px);
  opacity: 0;
  transform: translateY(12px);
  pointer-events: none;
  --push-bg: var(--secondary, #f5f5f7);
  --push-border: var(--transp-2, rgba(0, 0, 0, 0.08));
  --push-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
  --push-radius: 14px;
  --push-text: var(--text, #1d1d1f);
  --push-text-dim: var(--text-500, #6d6d70);
  --push-btn-bg: var(--primary, #1d1d1f);
  --push-btn-text: var(--background, #fff);
}
.push-banner.is-visible {
  pointer-events: auto;
  animation: pushIn 360ms cubic-bezier(0.22, 1, 0.36, 1) forwards;
}
.push-banner.is-leaving {
  animation: pushOut 240ms cubic-bezier(0.4, 0, 0.2, 1) forwards;
}
@media (max-width: 480px) {
  .push-banner {
    inset: auto 0 0 0;
    width: 100%;
  }
  .push-banner .push-banner__card {
    border-radius: 14px 14px 0 0;
  }
}
.push-banner__card {
  background: var(--push-bg);
  border: 1px solid var(--push-border);
  border-radius: var(--push-radius);
  padding: 1rem 1.125rem;
  box-shadow: var(--push-shadow);
  position: relative;
}
.push-banner__close {
  position: absolute;
  top: 0.625rem;
  right: 0.625rem;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  padding: 0;
  border: none;
  background: transparent;
  color: var(--push-text-dim);
  cursor: pointer;
  border-radius: 6px;
  transition: color 0.15s, background 0.15s;
}
.push-banner__close:hover {
  color: var(--push-text);
  background: var(--push-border);
}
.push-banner__close svg {
  display: block;
}
.push-banner__title {
  margin: 0 0 0.25rem;
  font-size: 0.8125rem;
  font-weight: 600;
  line-height: 1.4;
  color: var(--push-text);
  letter-spacing: -0.01em;
  padding-right: 24px;
}
.push-banner__text {
  margin: 0;
  font-size: 0.8125rem;
  line-height: 1.5;
  color: var(--push-text-dim);
}
.push-banner__actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.375rem;
  margin-top: 0.75rem;
}
.push-banner__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 32px;
  padding: 0 0.875rem;
  font-size: 0.8125rem;
  font-weight: 500;
  line-height: 1;
  border-radius: 8px;
  border: none;
  cursor: pointer;
  transition: opacity 0.15s, background 0.15s, color 0.15s;
  white-space: nowrap;
}
.push-banner__btn--ghost {
  background: transparent;
  color: var(--push-text-dim);
}
.push-banner__btn--ghost:hover {
  color: var(--push-text);
  background: var(--push-border);
}
.push-banner__btn--primary {
  background: var(--push-btn-bg);
  color: var(--push-btn-text);
}
.push-banner__btn--primary:hover {
  opacity: 0.85;
}
.push-banner__btn--primary:disabled {
  opacity: 0.4;
  cursor: default;
}
@keyframes pushIn {
  from {
    opacity: 0;
    transform: translateY(12px) scale(0.98);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}
@keyframes pushOut {
  from {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
  to {
    opacity: 0;
    transform: translateY(12px) scale(0.98);
  }
}
@media (max-width: 480px) {
  @keyframes pushIn {
    from {
      opacity: 0;
      transform: translateY(100%);
    }
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }
  @keyframes pushOut {
    from {
      opacity: 1;
      transform: translateY(0);
    }
    to {
      opacity: 0;
      transform: translateY(100%);
    }
  }
}
:root {
  --chat-width: 340px;
  --chat-max-height: calc(100vh - var(--space-xl) * 2);
  --chat-offset: var(--space-md);
  --chat-z-index: 100;
  --chat-transition-fast: 0.12s ease;
  --chat-transition-normal: 0.2s ease;
  --chat-radius-sm: 6px;
  --chat-radius-md: 10px;
  --chat-radius-lg: 14px;
  --chat-shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.04);
  --chat-shadow-md: 0 2px 8px rgba(0, 0, 0, 0.08);
  --chat-shadow-lg: 0 4px 16px rgba(0, 0, 0, 0.12);
}
:root[data-theme="dark"] {
  --chat-shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.15);
  --chat-shadow-md: 0 2px 8px rgba(0, 0, 0, 0.2);
  --chat-shadow-lg: 0 4px 16px rgba(0, 0, 0, 0.3);
}
.chat-panel {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
  max-height: var(--chat-max-height);
  background: var(--background);
  border-radius: var(--chat-radius-lg);
  overflow: hidden;
}
.chat-panel.widget-style {
  background: none;
  max-width: 100%;
  border-radius: 0;
}
.chat-panel.widget-style .chat-header, .chat-panel.widget-style .chat-messages, .chat-panel.widget-style .chat-input {
  background: none;
  max-width: 100%;
  border-radius: 0;
}
.chat-shell {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 0;
  height: 100%;
}
.chat-shell--has-sidebar {
  flex-direction: row;
}
.chat-shell--has-sidebar .chat-shell__main {
  flex: 1;
  min-width: 0;
}
.chat-shell__main {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 0;
}
.chat-page {
  display: flex;
  height: calc(100vh - var(--header-height, 60px));
  background: var(--background);
  border: 1px solid var(--transp-1);
  border-radius: var(--border1);
  overflow: hidden;
  margin-block: var(--space-lg);
}
.chat-channel-sidebar {
  width: 240px;
  flex-shrink: 0;
  background: var(--background);
  border-right: 1px solid var(--transp-1);
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.chat-channel-sidebar__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 12px 8px;
  flex-shrink: 0;
}
.chat-channel-sidebar__title {
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--text-400);
}
.chat-channel-sidebar__list {
  flex: 1;
  overflow-y: auto;
  padding: 0 8px 8px;
}
.chat-channel-sidebar__list::-webkit-scrollbar {
  width: 4px;
}
.chat-channel-sidebar__list::-webkit-scrollbar-thumb {
  background: var(--transp-1);
  border-radius: 2px;
}
.chat-channel-tabs {
  display: flex;
  align-items: stretch;
  gap: 0;
  padding: 0 8px;
  border-bottom: 1px solid var(--transp-1);
  flex-shrink: 0;
  overflow-x: auto;
  scrollbar-width: none;
  background: var(--background);
}
.chat-channel-tabs::-webkit-scrollbar {
  display: none;
}
.chat-channel-tab {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 8px 12px;
  font-size: 12px;
  font-weight: 500;
  color: var(--text-400);
  white-space: nowrap;
  cursor: pointer;
  transition: color 0.15s ease;
  border: none;
  background: none;
  border-bottom: 2px solid transparent;
  margin-bottom: -1px;
  font-family: inherit;
}
.chat-channel-tab::before {
  content: "#";
  color: var(--text-600);
  font-weight: 600;
  margin-right: 1px;
}
.chat-channel-tab:hover {
  color: var(--text);
}
.chat-channel-tab.active {
  color: var(--text);
  border-bottom-color: var(--accent);
}
.chat-channel-tab.active::before {
  color: var(--accent);
}
.chat-channel-tab.muted {
  opacity: 0.4;
}
.chat-channel-tab .chat-channel-badge {
  min-width: 16px;
  height: 16px;
  line-height: 16px;
  text-align: center;
  padding: 0 4px;
  font-size: 10px;
  font-weight: 700;
  background: var(--accent);
  color: var(--accent-950);
  border-radius: 8px;
}
.chat-channel-item {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 10px;
  border-radius: var(--border05);
  font-size: 14px;
  color: var(--text-500);
  cursor: pointer;
  transition: background 0.12s ease, color 0.12s ease;
  text-decoration: none;
  border: none;
  background: none;
  width: 100%;
  text-align: left;
}
.chat-channel-item__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  color: var(--text-400);
  font-size: 16px;
  font-weight: 600;
}
.chat-channel-item__icon svg {
  width: 16px;
  height: 16px;
}
.chat-channel-item__name {
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-weight: 500;
}
.chat-channel-item:hover {
  background: var(--transp-05);
  color: var(--text);
}
.chat-channel-item.active {
  background: var(--transp-1);
  color: var(--text);
}
.chat-channel-item.active .chat-channel-item__icon {
  color: var(--text);
}
.chat-channel-item.muted {
  opacity: 0.5;
}
.chat-channel-item.has-unread {
  color: var(--text);
  font-weight: 600;
}
.chat-channel-item.has-unread .chat-channel-item__icon {
  color: var(--text);
}
.chat-channel-group {
  padding: 16px 10px 4px;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--text-400);
}
.chat-channel-group:first-child {
  padding-top: 8px;
}
.chat-channel-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
  color: var(--accent-950);
  background: var(--accent);
  border-radius: 9px;
  flex-shrink: 0;
}
.chat-channel-badge--mention {
  background: var(--warning);
  color: white;
}
.chat-channel-badge--muted {
  background: var(--transp-1);
  color: var(--text-400);
}
@media (max-width: 768px) {
  .chat-shell--has-sidebar {
    flex-direction: column;
  }
  .chat-shell--has-sidebar > .chat-channel-sidebar {
    position: fixed;
    left: 0;
    top: 0;
    bottom: 0;
    z-index: 110;
    transform: translateX(-100%);
    transition: transform 0.3s cubic-bezier(0.2, 0.8, 0.2, 1);
    box-shadow: var(--shadow-small);
  }
  .chat-shell--has-sidebar > .chat-channel-sidebar.is-open {
    transform: translateX(0);
  }
}
.chat-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 16px;
  background: var(--background);
  border-bottom: 1px solid var(--transp-1);
  flex-shrink: 0;
  gap: 12px;
  height: auto;
  min-height: 44px;
}
.chat-header__left {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  flex: 1;
}
.chat-header__info {
  display: flex;
  align-items: baseline;
  gap: 8px;
  min-width: 0;
  flex: 1;
}
.chat-header__title {
  font-size: 15px;
  font-weight: 600;
  color: var(--text);
  line-height: 1.2;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.chat-header__subtitle {
  font-size: 12px;
  color: var(--text-400);
  line-height: 1.2;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.chat-header__online {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 12px;
  font-weight: 500;
  color: var(--text-400);
  cursor: pointer;
  transition: color 0.15s ease;
  white-space: nowrap;
}
.chat-header__online svg {
  width: 12px;
  height: 12px;
}
.chat-header__online:hover {
  color: var(--text);
}
.chat-header__online__dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--success);
}
.chat-header__right {
  display: flex;
  align-items: center;
  gap: 2px;
  flex-shrink: 0;
}
.chat-header__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: var(--border05);
  color: var(--text-400);
  transition: all 0.15s ease;
}
.chat-header__btn svg {
  width: 16px;
  height: 16px;
}
.chat-header__btn:hover {
  background: var(--transp-05);
  color: var(--text);
}
.chat-header__btn.is-active {
  background: color-mix(in srgb, var(--accent) 10%, transparent);
  color: var(--accent);
}
.chat-header__unread {
  display: none;
  align-items: center;
  justify-content: center;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  font-size: 10px;
  font-weight: 700;
  color: white;
  background: var(--error);
  border-radius: 9px;
}
.chat-header__unread:empty {
  display: none !important;
}
.chat-header__unread.has-unread {
  display: flex;
}
.chat-header__unread.has-mentions {
  display: flex;
  background: var(--accent);
}
.chat-online-tooltip {
  min-width: 200px;
  max-width: 280px;
  padding: 12px;
}
.chat-online-tooltip__title {
  font-size: 12px;
  font-weight: 600;
  color: var(--text);
  margin-bottom: 10px;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--transp-1);
}
.chat-online-tooltip__list {
  display: flex;
  flex-direction: column;
  gap: 4px;
  max-height: 250px;
  overflow-y: auto;
  margin: -4px;
  padding: 4px;
}
.chat-online-tooltip__list::-webkit-scrollbar {
  width: 4px;
}
.chat-online-tooltip__list::-webkit-scrollbar-thumb {
  background: var(--transp-1);
  border-radius: 2px;
}
.chat-online-tooltip__user {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 6px 8px;
  font-size: 13px;
  color: var(--text);
  text-decoration: none;
  border-radius: var(--border05);
  transition: background 0.15s;
}
.chat-online-tooltip__user:hover {
  background: var(--transp-05);
}
.chat-online-tooltip__user img {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
}
.chat-online-tooltip__user span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-weight: 500;
}
.chat-online-tooltip__more {
  font-size: 11px;
  color: var(--text-400);
  margin-top: 8px;
  padding-top: 8px;
  border-top: 1px solid var(--transp-1);
  text-align: center;
}
.chat-online-tooltip__empty {
  font-size: 13px;
  color: var(--text-400);
  text-align: center;
  padding: 16px 8px;
}
.chat-messages {
  flex: 1;
  display: flex;
  flex-direction: column;
  padding: 0;
  overflow-y: auto;
  overflow-x: hidden;
  overscroll-behavior: contain;
  position: relative;
  background: var(--background);
}
.chat-messages:not(.is-ready) {
  opacity: 0;
}
.chat-messages::-webkit-scrollbar {
  width: 6px;
}
.chat-messages::-webkit-scrollbar-track {
  background: transparent;
}
.chat-messages::-webkit-scrollbar-thumb {
  background: var(--transp-1);
  border-radius: 3px;
}
.chat-messages::-webkit-scrollbar-thumb:hover {
  background: var(--transp-2);
}
.chat-message-list {
  display: flex;
  flex-direction: column;
  gap: 0;
  padding: 8px 0;
}
.chat-msg {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 0 12px;
  position: relative;
  padding: 2px 16px;
  border-radius: 0;
  transition: background 0.1s ease;
}
.chat-msg.is-new {
  animation: msg-slide-up 0.2s cubic-bezier(0.25, 1, 0.5, 1);
}
.chat-msg--highlight {
  animation: msg-highlight 2s ease;
}
.chat-msg--reply-target {
  background: color-mix(in srgb, var(--accent) 8%, transparent);
}
.chat-msg--first-in-group {
  margin-top: 8px;
  padding-top: 4px;
}
.chat-msg--first-in-group:first-child {
  margin-top: 0;
}
.chat-msg:hover {
  background: var(--transp-02);
}
.chat-msg:hover .chat-msg__time {
  opacity: 1;
}
.chat-msg .chat-msg__actions {
  position: absolute;
  top: -12px;
  right: 16px;
  display: none;
  align-items: center;
  gap: 1px;
  padding: 2px;
  background: var(--background);
  border: 1px solid var(--transp-1);
  border-radius: var(--border05);
  box-shadow: var(--shadow-small);
  z-index: 10;
}
.chat-msg:hover .chat-msg__actions {
  display: flex;
}
.chat-msg .chat-msg__action-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: var(--border05);
  color: var(--text-400);
  background: none;
  border: none;
  cursor: pointer;
  transition: all 0.1s ease;
}
.chat-msg .chat-msg__action-btn svg {
  width: 14px;
  height: 14px;
}
.chat-msg .chat-msg__action-btn:hover {
  background: var(--transp-1);
  color: var(--text);
}
.chat-msg__reply-ref {
  display: flex;
  align-items: center;
  gap: 4px;
  width: 100%;
  padding: 2px 0 2px 48px;
  font-size: 12px;
  line-height: 1;
  color: var(--text-400);
  cursor: pointer;
  overflow: hidden;
  position: relative;
}
.chat-msg__reply-ref:hover .chat-msg__reply-content {
  color: var(--text);
}
.chat-msg__reply-ref--deleted {
  cursor: default;
}
.chat-msg__reply-ref--deleted .chat-msg__reply-content {
  opacity: 0.6;
}
.chat-msg__reply-connector {
  position: absolute;
  left: 17px;
  top: 50%;
  width: 26px;
  height: 12px;
  border-left: 2px solid var(--transp-2);
  border-top: 2px solid var(--transp-2);
  border-top-left-radius: 6px;
  pointer-events: none;
}
.chat-msg__reply-avatar-link {
  flex-shrink: 0;
  line-height: 0;
}
.chat-msg__reply-avatar {
  display: block;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
}
.chat-msg__reply-author {
  font-weight: 600;
  color: var(--accent);
  white-space: nowrap;
  flex-shrink: 0;
  font-size: 12px;
}
.chat-msg__reply-content {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  color: var(--text-400);
  font-size: 12px;
  transition: color 0.1s ease;
}
.chat-msg__reply-content em {
  font-style: italic;
  color: var(--text-500);
}
.chat-msg--system {
  justify-content: center;
  margin: 4px 0;
  padding: 4px 16px;
}
.chat-msg--system:hover {
  background: transparent;
}
.chat-msg--system .chat-msg__content {
  align-items: center;
  max-width: 90%;
}
.chat-msg--system .chat-msg__bubble {
  background: transparent;
  color: var(--text-400);
  font-size: 12px;
  padding: 2px 0;
  text-align: center;
}
.chat-msg--system .chat-msg__meta {
  display: none;
}
.chat-msg--bot .chat-msg__bubble--bot {
  background: color-mix(in srgb, var(--bot-color, var(--accent)) 6%, transparent);
  border-left: 2px solid color-mix(in srgb, var(--bot-color, var(--accent)) 40%, transparent);
  padding-left: 10px;
  border-radius: 0;
}
.chat-msg--bot .chat-msg__avatar--bot {
  background: var(--bot-color, var(--accent));
  color: white;
}
.chat-msg--warning .chat-msg__bubble--bot {
  background: color-mix(in srgb, var(--warning) 8%, transparent);
  border-left-color: color-mix(in srgb, var(--warning) 40%, transparent);
}
.chat-msg--success .chat-msg__bubble--bot {
  background: color-mix(in srgb, var(--success) 8%, transparent);
  border-left-color: color-mix(in srgb, var(--success) 40%, transparent);
}
.chat-msg--targeted {
  position: relative;
  background: color-mix(in srgb, var(--warning) 6%, transparent);
}
.chat-msg--targeted::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 3px;
  background: var(--warning);
  border-radius: 0 2px 2px 0;
}
.chat-msg--system-notice {
  margin: 2px 0;
  padding: 2px 16px;
}
.chat-msg--system-notice:hover {
  background: transparent;
}
.chat-msg--system-notice:hover .chat-msg__time-hover {
  opacity: 1;
}
.chat-msg--system-notice .chat-msg__gutter {
  display: flex;
  align-items: center;
  justify-content: center;
}
.chat-msg--system-notice .chat-msg__time-hover {
  font-size: 10px;
  opacity: 0;
  transition: opacity 0.1s ease;
}
.chat-msg--system-notice .chat-msg__text--system {
  font-size: 12px;
  line-height: 1.25;
  color: var(--text-600);
  font-style: italic;
}
.chat-msg--system-notice .chat-msg__jump-link {
  color: var(--accent);
  text-decoration: none;
  font-style: normal;
  cursor: pointer;
  line-height: inherit;
}
.chat-msg--system-notice .chat-msg__jump-link:hover {
  text-decoration: underline;
}
.chat-msg.is-deleted .chat-msg__text {
  color: var(--text-600);
}
.chat-msg.is-deleted .chat-msg__deleted-text {
  color: var(--text-600);
  font-size: 13px;
  font-style: italic;
}
.chat-msg.is-deleted .chat-msg__actions {
  display: none !important;
}
.chat-msg.is-deleted.show-deleted .chat-msg__body {
  position: relative;
  padding-left: 10px;
  border-left: 2px solid color-mix(in srgb, var(--error) 30%, transparent);
}
.chat-msg.is-deleted.show-deleted .chat-msg__text s {
  color: var(--text-400);
  text-decoration-color: color-mix(in srgb, var(--error) 40%, transparent);
}
.chat-msg--pinned {
  position: relative;
  background: color-mix(in srgb, var(--accent) 4%, transparent);
}
.chat-msg--pinned::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 3px;
  background: var(--accent);
  border-radius: 0 2px 2px 0;
}
.chat-msg--pinned:hover {
  background: color-mix(in srgb, var(--accent) 7%, transparent);
}
.chat-msg.is-removing {
  animation: msg-remove 0.25s cubic-bezier(0.25, 1, 0.5, 1) forwards;
  pointer-events: none;
}
.chat-msg.is-sending {
  opacity: 0.6;
}
.chat-msg.is-failed .chat-msg__bubble {
  border-left: 2px solid var(--error);
  background: color-mix(in srgb, var(--error) 8%, transparent);
  color: var(--error);
}
.chat-msg.is-failed .chat-msg__meta {
  color: var(--error);
  opacity: 0.6;
}
.chat-msg.is-failed .chat-msg__retry {
  display: inline-flex;
}
@keyframes msg-slide-up {
  from {
    opacity: 0;
    transform: translateY(4px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes msg-highlight {
  0%, 15% {
    background: color-mix(in srgb, var(--accent) 12%, transparent);
  }
  100% {
    background: transparent;
  }
}
@keyframes msg-remove {
  0% {
    opacity: 1;
    max-height: 200px;
  }
  40% {
    opacity: 0;
  }
  100% {
    opacity: 0;
    max-height: 0;
    padding-top: 0;
    padding-bottom: 0;
    margin-top: 0;
    margin-bottom: 0;
    overflow: hidden;
  }
}
.chat-msg__avatar {
  flex-shrink: 0;
  width: 36px;
  height: 36px;
  min-width: 36px;
  border-radius: 50%;
  background: var(--transp-1);
  overflow: hidden;
  align-self: flex-start;
  margin-top: 2px;
}
.chat-msg__avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.chat-msg__avatar-placeholder {
  flex-shrink: 0;
  width: 36px;
  min-width: 36px;
  height: 0;
}
.chat-msg__avatar--bot {
  flex-shrink: 0;
  width: 36px;
  height: 36px;
  min-width: 36px;
  border-radius: 50%;
  background: var(--bot-color, var(--accent));
  color: white;
  display: flex;
  align-items: center;
  justify-content: center;
  align-self: flex-start;
  margin-top: 2px;
  font-weight: 700;
  font-size: 14px;
  text-transform: uppercase;
}
.chat-msg__avatar--bot img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
}
.chat-msg__avatar-letter {
  font-weight: 600;
  font-size: 14px;
  line-height: 1;
}
.chat-msg__verified {
  display: inline-flex;
  align-items: center;
}
.chat-msg__verified svg {
  width: 14px;
  height: 14px;
}
.chat-msg__content, .chat-msg__body {
  display: flex;
  flex-direction: column;
  gap: 1px;
  min-width: 0;
  flex: 1;
  position: relative;
}
.chat-msg__gutter {
  flex-shrink: 0;
  width: 36px;
  min-width: 36px;
  display: flex;
  align-items: flex-start;
  margin-top: 2px;
  justify-content: center;
  height: 100%;
  margin-bottom: auto;
}
.chat-msg__time-hover {
  font-size: 10px;
  color: var(--text-600);
  opacity: 0;
  transition: opacity 0.15s ease;
  cursor: default;
}
.chat-msg:hover .chat-msg__time-hover {
  opacity: 1;
}
.chat-msg__header, .chat-msg__head {
  display: flex;
  align-items: baseline;
  gap: 6px;
  font-size: 13px;
  line-height: 1.3;
}
.chat-msg__header .chat-msg__time, .chat-msg__head .chat-msg__time {
  font-size: 11px;
  color: var(--text-600);
  opacity: 0;
  transition: opacity 0.15s ease;
}
.chat-msg:hover .chat-msg__head .chat-msg__time, .chat-msg:hover .chat-msg__header .chat-msg__time {
  opacity: 1;
}
.chat-msg__author {
  font-weight: 600;
  color: var(--text);
  text-decoration: none;
  line-height: 1.25;
  max-width: 200px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.chat-msg__author:hover {
  text-decoration: underline;
}
.chat-msg__role {
  padding: 0 4px;
  border-radius: 3px;
  font-size: 10px;
  font-weight: 600;
  text-transform: uppercase;
  background: var(--transp-05);
  color: var(--text-400);
  display: inline-flex;
  align-items: center;
  gap: 2px;
  vertical-align: middle;
}
.chat-msg__role--accent {
  color: var(--warning);
  padding: 0;
}
.chat-msg__role--bot {
  background: color-mix(in srgb, var(--accent) 12%, transparent);
  color: var(--accent);
}
.chat-msg__role svg {
  width: 8px;
  height: 8px;
}
.chat-status-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 14px;
  height: 14px;
  border-radius: 3px;
  vertical-align: middle;
  flex-shrink: 0;
}
.chat-status-badge svg {
  width: 10px;
  height: 10px;
}
.chat-status-badge--banned {
  color: var(--error);
  background: color-mix(in srgb, var(--error) 12%, transparent);
}
.chat-status-badge--muted {
  color: var(--warning);
  background: color-mix(in srgb, var(--warning) 12%, transparent);
}
.chat-online-tooltip__user .chat-status-badge {
  margin-left: auto;
}
.chat-msg__author--bot {
  font-weight: 600;
  color: var(--accent);
}
@keyframes pulse-glow {
  0%, 100% {
    opacity: 0.6;
  }
  50% {
    opacity: 1;
  }
}
.chat-msg__bubble {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 4px 8px;
  padding: 0;
  background: transparent;
  color: var(--text);
  border-radius: 0;
  max-width: 100%;
}
.chat-msg__text {
  font-size: 14px;
  line-height: 1.45;
  word-break: break-word;
  white-space: normal;
  color: var(--text);
}
.chat-msg__text.is-collapsed {
  max-height: 300px;
  overflow: hidden;
  position: relative;
  mask-image: linear-gradient(to bottom, black 240px, transparent 300px);
  -webkit-mask-image: linear-gradient(to bottom, black 240px, transparent 300px);
}
.chat-link {
  color: var(--accent);
  text-decoration: none;
  word-break: break-all;
}
.chat-link:hover {
  text-decoration: underline;
}
.chat-msg__expand {
  display: none;
  padding: 2px 0;
  font-size: 12px;
  font-weight: 500;
  color: var(--accent);
  background: none;
  border: none;
  cursor: pointer;
}
.chat-msg__expand:hover {
  text-decoration: underline;
}
.is-collapsed + .chat-msg__expand {
  display: block;
}
.chat-msg__meta {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin-left: auto;
  flex-shrink: 0;
}
.chat-msg__time {
  font-size: 11px;
  color: var(--text-600);
  line-height: 1;
  opacity: 0;
  cursor: default;
  transition: opacity 0.15s ease;
}
.chat-msg__retry {
  display: none;
  align-items: center;
  gap: 4px;
  margin-top: 4px;
  font-size: 11px;
  color: var(--error);
  cursor: pointer;
  background: color-mix(in srgb, var(--error) 8%, transparent);
  padding: 2px 8px;
  border-radius: var(--border05);
}
.chat-msg__deleted-label {
  font-size: 10px;
  color: var(--text-600);
  margin-left: 4px;
}
.chat-mention {
  color: var(--accent);
  font-weight: 600;
  text-decoration: none;
  padding: 1px 4px;
  margin: 0 1px;
  border-radius: 3px;
  background: color-mix(in srgb, var(--accent) 12%, transparent);
  transition: all 0.15s ease;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
}
.chat-mention:hover {
  background: color-mix(in srgb, var(--accent) 22%, transparent);
  text-decoration: underline;
}
.chat-msg--mentioned {
  position: relative;
  background: color-mix(in srgb, var(--warning) 6%, transparent);
}
.chat-msg--mentioned::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 3px;
  background: var(--warning);
  border-radius: 0 2px 2px 0;
}
.chat-msg--mentioned:hover {
  background: color-mix(in srgb, var(--warning) 10%, transparent);
}
.chat-scroll-btn {
  position: sticky;
  bottom: 8px;
  align-self: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: var(--background);
  color: var(--text-500);
  border: 1px solid var(--transp-1);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  transition: all 0.2s ease;
  z-index: 20;
  transform: translateY(8px);
  flex-shrink: 0;
  margin-top: -44px;
}
.chat-scroll-btn.is-visible {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.chat-scroll-btn:hover {
  background: var(--transp-1);
  color: var(--text);
}
.chat-scroll-btn svg {
  width: 16px;
  height: 16px;
}
.chat-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: var(--space-xl);
  text-align: center;
  color: var(--text-500);
  flex: 1;
}
.chat-empty__icon {
  width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: var(--space-sm);
  color: var(--text-400);
}
.chat-empty__icon svg {
  width: 32px;
  height: 32px;
}
.chat-empty__text {
  font-size: 13px;
  color: var(--text-400);
}
.chat-msg-skeleton {
  padding: var(--space-sm) var(--space-md);
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.chat-msg-skeleton__row {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 4px 0;
}
.chat-msg-skeleton__row--with-avatar {
  padding-top: 8px;
}
.chat-msg-skeleton__avatar {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  flex-shrink: 0;
}
.chat-msg-skeleton__gutter {
  width: 32px;
  flex-shrink: 0;
}
.chat-msg-skeleton__body {
  display: flex;
  flex-direction: column;
  gap: 6px;
  flex: 1;
  min-width: 0;
}
.chat-msg-skeleton__name {
  height: 12px;
  border-radius: 6px;
}
.chat-msg-skeleton__line {
  height: 14px;
  border-radius: 6px;
}
.chat-loading {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--space-xl);
  flex: 1;
}
.chat-loading__spinner {
  width: 24px;
  height: 24px;
  border: 2px solid var(--transp-1);
  border-top-color: var(--accent);
  border-radius: 50%;
  animation: spin 0.7s linear infinite;
}
@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
.chat-return-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  width: 100%;
  padding: 6px 12px;
  background: color-mix(in srgb, var(--accent) 10%, var(--background));
  color: var(--accent);
  border: none;
  border-bottom: 1px solid var(--transp-1);
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.15s ease, opacity 0.2s ease, max-height 0.25s ease;
  flex-shrink: 0;
  max-height: 0;
  overflow: hidden;
  opacity: 0;
}
.chat-return-btn.is-visible {
  max-height: 40px;
  opacity: 1;
  padding: 6px 12px;
}
.chat-return-btn:hover {
  background: color-mix(in srgb, var(--accent) 18%, var(--background));
}
.chat-return-btn svg {
  width: 12px;
  height: 12px;
}
.chat-typing-bar {
  display: none;
  align-items: center;
  gap: 6px;
  padding: 4px 16px;
  font-size: 11px;
  color: var(--text-400);
  background: transparent;
  min-height: 0;
  overflow: hidden;
  transition: all 0.15s ease;
}
.chat-typing-bar.is-typing {
  display: flex;
}
.chat-typing-bar__text {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.chat-typing-dots {
  display: inline-flex;
  gap: 2px;
}
.chat-typing-dots span {
  width: 4px;
  height: 4px;
  background: var(--text-400);
  border-radius: 50%;
  animation: typing-bounce 1.2s infinite ease-in-out;
}
.chat-typing-dots span:nth-child(1) {
  animation-delay: 0s;
}
.chat-typing-dots span:nth-child(2) {
  animation-delay: 0.15s;
}
.chat-typing-dots span:nth-child(3) {
  animation-delay: 0.3s;
}
@keyframes typing-bounce {
  0%, 60%, 100% {
    transform: translateY(0);
    opacity: 0.5;
  }
  30% {
    transform: translateY(-3px);
    opacity: 1;
  }
}
.chat-reply-bar {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 16px 4px;
  border-top: 1px solid var(--transp-1);
  animation: msg-slide-up 0.15s ease-out;
}
.chat-reply-bar__body {
  flex: 1;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 0;
  font-size: 13px;
  line-height: 1.4;
  overflow: hidden;
}
.chat-reply-bar__label {
  color: var(--text-400);
  white-space: nowrap;
  margin-right: 4px;
}
.chat-reply-bar__author {
  font-weight: 600;
  color: var(--accent);
  white-space: nowrap;
  flex-shrink: 0;
}
.chat-reply-bar__close {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: var(--border05);
  color: var(--text-400);
  background: none;
  border: none;
  cursor: pointer;
  flex-shrink: 0;
  transition: all 0.1s ease;
}
.chat-reply-bar__close svg {
  width: 14px;
  height: 14px;
}
.chat-reply-bar__close:hover {
  background: var(--transp-1);
  color: var(--text);
}
.chat-composer {
  flex-shrink: 0;
  position: relative;
}
.chat-input {
  display: flex;
  align-items: flex-end;
  gap: 8px;
  padding: 8px 16px 12px;
  background: var(--background);
  position: relative;
}
.chat-input__field {
  flex: 1;
  display: flex;
  align-items: flex-end;
  background: var(--transp-05);
  border: 1px solid var(--transp-1);
  border-radius: var(--border1);
  padding: 4px 8px 4px 14px;
  transition: border-color 0.2s ease;
  position: relative;
}
.chat-input__field:focus-within {
  border-color: var(--accent);
}
.chat-input__textarea {
  flex: 1;
  min-height: 32px;
  max-height: 120px;
  padding: 6px 0;
  font-size: 14px;
  font-family: inherit;
  line-height: 1.4;
  color: var(--text);
  background: transparent;
  border: none;
  resize: none;
  outline: none;
}
.chat-input__textarea::placeholder {
  color: var(--text-600);
}
.chat-input__textarea:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.chat-input__emoji {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: var(--border05);
  color: var(--text-400);
  transition: all 0.15s ease;
  flex-shrink: 0;
}
.chat-input__emoji svg {
  width: 18px;
  height: 18px;
}
.chat-input__emoji:hover {
  color: var(--text);
  background: var(--transp-05);
}
.chat-input__send {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  color: var(--accent-950);
  background: var(--accent);
  border: none;
  cursor: pointer;
  transition: all 0.15s ease;
  flex-shrink: 0;
}
.chat-input__send svg {
  width: 16px;
  height: 16px;
  fill: currentColor;
}
.chat-input__send:hover:not(:disabled) {
  filter: brightness(1.1);
}
.chat-input__send:active:not(:disabled) {
  transform: scale(0.95);
}
.chat-input__send:disabled {
  background: var(--transp-1);
  color: var(--text-600);
  cursor: not-allowed;
}
.chat-input__send[aria-busy="true"] {
  background: var(--transp-1);
  color: transparent;
  pointer-events: none;
  position: relative;
}
.chat-input__send[aria-busy="true"]::after {
  content: "";
  position: absolute;
  width: 14px;
  height: 14px;
  border: 2px solid var(--text-500);
  border-top-color: transparent;
  border-radius: 50%;
  animation: spin 0.8s linear infinite;
}
.chat-auth {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 16px;
  margin: 0 16px 12px;
  background: var(--transp-02);
  border-radius: var(--border1);
  border: 1px solid var(--transp-1);
  text-align: center;
  color: var(--text-400);
  font-size: 13px;
}
.chat-auth svg {
  width: 20px;
  height: 20px;
  color: var(--text-600);
  margin-bottom: 4px;
}
.chat-auth a {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 16px;
  background: var(--accent);
  border: none;
  border-radius: var(--border05);
  font-weight: 600;
  color: var(--accent-950);
  text-decoration: none;
  transition: all 0.15s ease;
}
.chat-auth a:hover {
  filter: brightness(1.1);
}
.chat-auth--guest {
  flex-direction: row;
  padding: 10px 16px;
  margin: 0;
  background: none;
  border: none;
  border-top: 1px solid var(--transp-1);
  border-radius: 0;
  gap: 10px;
}
.chat-auth--guest span {
  font-size: 13px;
  color: var(--text-500);
}
.chat-auth--guest a {
  padding: 4px 12px;
  font-size: 12px;
  font-weight: 500;
}
.chat-typing-dots {
  display: inline-flex;
  gap: 3px;
  align-items: center;
  margin-right: 4px;
}
.chat-typing-dots span {
  width: 4px;
  height: 4px;
  background: var(--accent);
  border-radius: 50%;
  animation: typingDot 1.4s infinite ease-in-out both;
}
.chat-typing-dots span:nth-child(1) {
  animation-delay: 0s;
}
.chat-typing-dots span:nth-child(2) {
  animation-delay: 0.16s;
}
.chat-typing-dots span:nth-child(3) {
  animation-delay: 0.32s;
}
@keyframes typingDot {
  0%, 80%, 100% {
    transform: scale(0.6);
    opacity: 0.4;
  }
  40% {
    transform: scale(1.2);
    opacity: 1;
  }
}
.chat-emoji-picker {
  position: absolute;
  bottom: 100%;
  right: 0;
  margin-bottom: 6px;
  z-index: 100;
  width: 350px;
  max-width: calc(100vw - 16px);
  height: 380px;
  border-radius: var(--border1);
  border: 1px solid var(--transp-1);
  box-shadow: var(--shadow-small);
  overflow: hidden;
  opacity: 0;
  transform: translateY(4px);
  pointer-events: none;
}
.chat-emoji-picker.is-visible {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
  transition: opacity 0.15s ease, transform 0.15s cubic-bezier(0.25, 1, 0.5, 1);
}
.chat-emoji-picker emoji-picker {
  --background: transparent;
  --border-color: transparent;
  --border-size: 0px;
  --border-radius: 0;
  --category-emoji-size: 1.125rem;
  --category-font-color: var(--text-400);
  --category-font-size: 0;
  --emoji-padding: 0.35rem;
  --emoji-size: 1.625rem;
  --indicator-color: var(--accent);
  --indicator-height: 2px;
  --input-border-color: var(--transp-1);
  --input-border-radius: var(--border05);
  --input-font-color: var(--text);
  --input-font-size: 0.8125rem;
  --input-line-height: 1.5;
  --input-padding: 0.375rem 0.625rem;
  --input-placeholder-color: var(--text-600);
  --num-columns: 8;
  --outline-color: var(--accent);
  --outline-size: 2px;
  --skintone-border-radius: var(--border05);
  width: 100%;
  height: 100%;
}
.chat-emoji-picker emoji-picker .skintone-list {
  background-color: var(--blurred-background);
}
.chat-emoji-picker emoji-picker::part(search) {
  margin: 6px 8px;
}
.chat-emoji-picker emoji-picker button.emoji {
  border-radius: var(--border05);
  transition: transform 0.1s ease, background 0.1s ease;
}
.chat-emoji-picker emoji-picker button.emoji:hover {
  background: var(--transp-1);
  transform: scale(1.2);
}
.chat-emoji-picker emoji-picker button.emoji:active {
  transform: scale(0.9);
}
.chat-mention-autocomplete {
  position: absolute;
  bottom: 100%;
  left: 0;
  right: 0;
  margin: 0 auto;
  margin-bottom: 8px;
  background-color: var(--blurred-background);
  border-radius: var(--border05);
  border: 1px solid var(--transp-1);
  box-shadow: var(--shadow-small);
  max-height: 200px;
  overflow-y: auto;
  z-index: 100;
  animation: mention-slide-up 0.1s ease-out;
  max-width: calc(100% - 30px);
}
.chat-mention-autocomplete::-webkit-scrollbar {
  width: 4px;
}
.chat-mention-autocomplete::-webkit-scrollbar-thumb {
  background: var(--transp-1);
  border-radius: 2px;
}
@keyframes mention-slide-up {
  from {
    opacity: 0;
    transform: translateY(4px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.chat-mention-autocomplete__item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 12px;
  cursor: pointer;
  transition: background 0.1s ease;
}
.chat-mention-autocomplete__item.is-selected, .chat-mention-autocomplete__item:hover {
  background: var(--transp-05);
}
.chat-mention-autocomplete__avatar {
  width: 26px;
  height: 26px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
}
.chat-mention-autocomplete__info {
  display: flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
  flex: 1;
}
.chat-mention-autocomplete__name {
  font-size: 14px;
  font-weight: 500;
  color: var(--text);
  white-space: nowrap;
}
.chat-mention-autocomplete__url {
  font-size: 13px;
  color: var(--text-400);
  white-space: nowrap;
}
.chat-input__send-wrap {
  position: relative;
  flex-shrink: 0;
}
.chat-input__cooldown {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: var(--transp-05);
  color: var(--text-400);
  font-size: 13px;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
}
.chat-input__cooldown [data-cooldown-timer] {
  animation: cooldown-pulse 1s ease-in-out infinite;
}
@keyframes cooldown-pulse {
  0%, 100% {
    opacity: 0.6;
  }
  50% {
    opacity: 1;
  }
}
@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
.chat-mute-bar {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 10px 16px;
  background: color-mix(in srgb, var(--error) 6%, var(--background));
  border-top: 1px solid color-mix(in srgb, var(--error) 12%, transparent);
  color: var(--error);
  font-size: 13px;
  font-weight: 500;
  animation: chat-ctx-in 0.15s ease-out;
}
.chat-mute-bar__icon {
  display: flex;
  align-items: center;
  opacity: 0.7;
}
.chat-mute-bar__icon svg {
  width: 16px;
  height: 16px;
}
.chat-mute-bar__text {
  color: var(--text-400);
}
.chat-mute-bar__time {
  font-variant-numeric: tabular-nums;
  font-weight: 700;
  font-size: 15px;
  animation: cooldown-pulse 1s ease-in-out infinite;
}
body.chat-sidebar-ready {
  transition: margin-right 0.3s cubic-bezier(0.25, 1, 0.5, 1);
}
.chat-sidebar-wrapper {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: var(--chat-z-index);
  display: flex;
  align-items: stretch;
  pointer-events: none;
  transform: translateX(0);
  transition: transform 0.3s cubic-bezier(0.25, 1, 0.5, 1);
}
.chat-sidebar-wrapper .chat-sidebar {
  width: var(--chat-sidebar-width);
  height: 100%;
  background: var(--background);
  border-left: 1px solid var(--transp-1);
  pointer-events: auto;
}
.chat-sidebar-wrapper.is-closed {
  transform: translateX(100%);
}
.chat-sidebar-wrapper.is-closed .chat-sidebar-toggle {
  background-color: var(--accent);
  color: var(--accent-950);
}
.chat-sidebar-toggle {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateX(-100%) translateY(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 72px;
  background: var(--background);
  border: 1px solid var(--transp-1);
  border-right: none;
  border-radius: var(--chat-radius-md) 0 0 var(--chat-radius-md);
  color: var(--text-400);
  cursor: pointer;
  transition: background-color 0.15s ease, color 0.15s ease;
  pointer-events: auto;
}
.chat-sidebar-toggle svg {
  width: 18px;
  height: 18px;
  transition: transform 0.15s ease;
}
.chat-sidebar-toggle .chat-sidebar-toggle__icon--close {
  display: none;
}
.chat-sidebar-toggle:hover {
  background: var(--accent);
  color: var(--accent-950);
}
.chat-sidebar-toggle__badge {
  position: absolute;
  top: 8px;
  right: 8px;
  min-width: 16px;
  height: 16px;
  padding: 0 4px;
  font-size: 10px;
  font-weight: 700;
  line-height: 16px;
  text-align: center;
  color: white;
  background: var(--error);
  border-radius: 8px;
  display: none;
}
.chat-sidebar-toggle__badge:empty {
  display: none !important;
}
.chat-sidebar-toggle__badge.has-unread {
  display: block;
  animation: badge-pop 0.3s cubic-bezier(0.25, 1, 0.5, 1);
}
.chat-sidebar-toggle__badge.has-mentions {
  display: block;
  background: var(--accent);
  animation: mention-pulse 2s ease-in-out infinite;
}
@keyframes badge-pop {
  0% {
    transform: scale(0);
    opacity: 0;
  }
  60% {
    transform: scale(1.08);
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}
@keyframes mention-pulse {
  0%, 100% {
    transform: scale(1);
    box-shadow: 0 0 0 0 color-mix(in srgb, var(--accent) 40%, transparent);
  }
  50% {
    transform: scale(1.03);
    box-shadow: 0 0 0 4px transparent;
  }
}
.chat-sidebar-wrapper:not(.is-closed) .chat-sidebar-toggle .chat-sidebar-toggle__icon--open {
  display: none;
}
.chat-sidebar-wrapper:not(.is-closed) .chat-sidebar-toggle .chat-sidebar-toggle__icon--close {
  display: block;
}
.chat-sidebar-wrapper.is-closed .chat-sidebar-toggle .chat-sidebar-toggle__icon--open {
  display: block;
}
.chat-sidebar-wrapper.is-closed .chat-sidebar-toggle .chat-sidebar-toggle__icon--close {
  display: none;
}
.chat-sidebar .chat-panel {
  height: 100%;
  max-height: 100vh;
  border-radius: 0;
  border-right: none;
  border-top: none;
  border-bottom: none;
  box-shadow: none;
}
.chat-sidebar .chat-channel-tabs {
  background: var(--background);
}
.chat-widget {
  position: fixed;
  bottom: var(--chat-offset-y, var(--chat-offset));
  right: var(--chat-offset-x, var(--chat-offset));
  z-index: var(--chat-z-index);
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 12px;
}
.chat-widget--left {
  right: auto;
  left: var(--chat-offset-x, var(--chat-offset));
  align-items: flex-start;
}
.chat-widget--left .chat-widget__panel {
  transform-origin: bottom left;
}
.chat-widget__toggle {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: var(--accent);
  color: var(--accent-950);
  transition: transform 0.2s cubic-bezier(0.25, 1, 0.5, 1), background-color 0.2s ease, border-color 0.2s ease;
  cursor: pointer;
  border: none;
}
.chat-widget__toggle svg {
  width: 22px;
  height: 22px;
  transition: transform 0.2s cubic-bezier(0.25, 1, 0.5, 1);
  fill: currentColor;
}
.chat-widget__toggle:hover {
  transform: scale(1.04);
}
.chat-widget__toggle:active {
  transform: scale(0.94);
  transition-duration: 0.1s;
}
.chat-widget__toggle.is-active {
  background: var(--background);
  color: var(--text-400);
  border: 1px solid var(--transp-1);
  border-radius: var(--border1);
}
.chat-widget__toggle.is-active:hover {
  color: var(--text);
}
.chat-widget__toggle.is-active [data-chat-icon-open] {
  display: none;
}
.chat-widget__toggle.is-active [data-chat-icon-close] {
  display: block !important;
}
.chat-widget__badge {
  position: absolute;
  top: -4px;
  right: -4px;
  min-width: 20px;
  height: 20px;
  padding: 0 5px;
  font-size: 10px;
  font-weight: 700;
  line-height: 20px;
  text-align: center;
  color: white;
  background: var(--error);
  border: 2px solid var(--background);
  border-radius: 10px;
  display: none;
  z-index: 2;
}
.chat-widget__badge:empty {
  display: none !important;
}
.chat-widget__badge.has-unread {
  display: block;
  animation: badgePop 0.3s cubic-bezier(0.25, 1, 0.5, 1);
}
.chat-widget__badge.has-mentions {
  display: block;
  background: var(--accent);
  box-shadow: 0 0 0 0 color-mix(in srgb, var(--accent) 40%, transparent);
  animation: mentionPulse 2s ease-in-out infinite;
}
@keyframes mentionPulse {
  0%, 100% {
    transform: scale(1);
    box-shadow: 0 0 0 0 color-mix(in srgb, var(--accent) 40%, transparent);
  }
  50% {
    transform: scale(1.03);
    box-shadow: 0 0 0 4px transparent;
  }
}
@keyframes badgePop {
  0% {
    transform: scale(0);
    opacity: 0;
  }
  60% {
    transform: scale(1.08);
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}
.chat-widget__panel {
  width: 380px;
  max-width: calc(100vw - var(--chat-offset) * 2);
  max-height: calc(100vh - 90px - var(--chat-offset) * 2);
  opacity: 0;
  visibility: hidden;
  transform: translateY(6px);
  transform-origin: bottom right;
  transition: transform 0.25s cubic-bezier(0.25, 1, 0.5, 1), opacity 0.2s ease, visibility 0.25s;
  pointer-events: none;
  z-index: 10;
}
.chat-widget__panel.is-open {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  pointer-events: auto;
  transition: transform 0.25s cubic-bezier(0.25, 1, 0.5, 1), opacity 0.2s ease, visibility 0s;
}
.chat-widget__panel .chat-panel {
  height: 520px;
  max-height: calc(100vh - 120px);
  border-radius: var(--border1);
  border: 1px solid var(--transp-1);
  box-shadow: var(--shadow-small);
  overflow: hidden;
}
.chat-widget__panel .chat-channel-tabs {
  background: var(--background);
}
.chat-rules-notice {
  position: fixed;
  inset: 0;
  z-index: 200;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  padding: var(--space-md);
  padding-bottom: 0;
  pointer-events: none;
}
.chat-rules-notice.is-visible {
  pointer-events: auto;
}
.chat-rules-notice.is-visible .chat-rules-notice__backdrop {
  opacity: 1;
}
.chat-rules-notice.is-visible .chat-rules-notice__container {
  opacity: 1;
  transform: translateY(0);
}
.chat-rules-notice.is-hiding .chat-rules-notice__backdrop {
  opacity: 0;
}
.chat-rules-notice.is-hiding .chat-rules-notice__container {
  opacity: 0;
  transform: translateY(20px);
}
.chat-rules-notice__backdrop {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.4);
  backdrop-filter: blur(var(--blur-amount, 10px));
  opacity: 0;
  transition: opacity 0.25s ease;
  cursor: pointer;
}
.chat-rules-notice__container {
  position: relative;
  width: 100%;
  max-width: 400px;
  background: var(--background);
  border-radius: 16px 16px 0 0;
  box-shadow: 0 -4px 32px rgba(0, 0, 0, 0.15);
  opacity: 0;
  transform: translateY(100%);
  transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  max-height: 60vh;
}
.chat-rules-notice__header {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  padding: var(--space-md) var(--space-md) var(--space-sm);
}
.chat-rules-notice__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 8px;
  background: color-mix(in srgb, var(--accent) 12%, transparent);
  color: var(--accent);
}
.chat-rules-notice__icon svg {
  width: 16px;
  height: 16px;
}
.chat-rules-notice__title {
  flex: 1;
  font-size: 15px;
  font-weight: 600;
  color: var(--text);
  margin: 0;
  line-height: 1.3;
}
.chat-rules-notice__close {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 8px;
  color: var(--text-500);
  transition: all 0.15s ease;
}
.chat-rules-notice__close:hover {
  background: var(--transp-1);
  color: var(--text);
}
.chat-rules-notice__close svg {
  width: 14px;
  height: 14px;
}
.chat-rules-notice__content {
  flex: 1;
  overflow-y: auto;
  padding: 0 var(--space-md) var(--space-sm);
  font-size: 13px;
  line-height: 1.6;
  color: var(--text-400);
}
.chat-rules-notice__content h1, .chat-rules-notice__content h2, .chat-rules-notice__content h3, .chat-rules-notice__content h4, .chat-rules-notice__content h5, .chat-rules-notice__content h6 {
  color: var(--text);
  margin: var(--space-sm) 0 var(--space-xs);
  font-size: 13px;
  font-weight: 600;
  line-height: 1.4;
}
.chat-rules-notice__content h1:first-child, .chat-rules-notice__content h2:first-child, .chat-rules-notice__content h3:first-child, .chat-rules-notice__content h4:first-child, .chat-rules-notice__content h5:first-child, .chat-rules-notice__content h6:first-child {
  margin-top: 0;
}
.chat-rules-notice__content p {
  margin: 0 0 var(--space-xs);
  font-size: inherit;
  line-height: inherit;
}
.chat-rules-notice__content p:last-child {
  margin-bottom: 0;
}
.chat-rules-notice__content ul, .chat-rules-notice__content ol {
  margin: 0 0 var(--space-xs);
  padding-left: var(--space-lg);
}
.chat-rules-notice__content ul:last-child, .chat-rules-notice__content ol:last-child {
  margin-bottom: 0;
}
.chat-rules-notice__content li {
  margin-bottom: 2px;
  font-size: inherit;
  line-height: 1.5;
}
.chat-rules-notice__content li:last-child {
  margin-bottom: 0;
}
.chat-rules-notice__content strong {
  color: var(--text);
  font-weight: 600;
}
.chat-rules-notice__content code {
  background: var(--transp-1);
  padding: 1px 5px;
  border-radius: 4px;
  font-size: 12px;
}
.chat-rules-notice__content a {
  color: var(--accent);
}
.chat-rules-notice__content a:hover {
  text-decoration: underline;
}
.chat-rules-notice__footer {
  padding: var(--space-sm) var(--space-md) var(--space-md);
}
.chat-rules-notice__btn {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-xs);
  padding: 10px var(--space-md);
  background: var(--accent);
  color: var(--accent-950);
  border-radius: 10px;
  font-size: 13px;
  font-weight: 600;
  transition: all 0.2s ease;
}
.chat-rules-notice__btn:hover {
  filter: brightness(1.05);
}
.chat-rules-notice__btn:active {
  transform: scale(0.98);
}
.chat-rules-notice__btn svg {
  width: 16px;
  height: 16px;
}
.chat-ctx {
  min-width: 180px;
  max-width: 240px;
  background: var(--background);
  border: 1px solid var(--transp-1);
  border-radius: 8px;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12), 0 2px 8px rgba(0, 0, 0, 0.06);
  padding: 4px;
  animation: chat-ctx-in 0.12s ease-out;
}
.chat-ctx__item {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  padding: 7px 10px;
  border-radius: 5px;
  font-size: 13px;
  color: var(--text);
  background: none;
  border: none;
  cursor: pointer;
  text-align: left;
  transition: background 0.1s;
  position: relative;
  line-height: 1.25;
}
.chat-ctx__item:hover {
  background: var(--transp-05);
}
.chat-ctx__item--danger {
  color: var(--error);
}
.chat-ctx__item--danger:hover {
  background: color-mix(in srgb, var(--error) 10%, transparent);
}
.chat-ctx__item--sub {
  cursor: default;
}
.chat-ctx__item--sub:hover > .chat-ctx__sub {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
}
.chat-ctx__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  opacity: 0.7;
}
.chat-ctx__icon svg {
  width: 16px;
  height: 16px;
}
.chat-ctx__label {
  flex: 1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.chat-ctx__arrow {
  font-size: 10px;
  opacity: 0.4;
  margin-left: auto;
}
.chat-ctx__sep {
  height: 1px;
  background: var(--transp-1);
  margin: 4px 6px;
}
.chat-ctx__sub {
  position: absolute;
  left: 100%;
  top: -4px;
  min-width: 140px;
  background: var(--background);
  border: 1px solid var(--transp-1);
  border-radius: 8px;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
  padding: 4px;
  opacity: 0;
  visibility: hidden;
  transform: translateX(-4px);
  transition: all 0.12s ease;
  z-index: 1;
}
.chat-msg__ephemeral {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 11px;
  color: var(--text-600);
  margin-top: 4px;
}
.chat-msg__ephemeral svg {
  width: 12px;
  height: 12px;
}
.chat-msg__bot-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin-top: 4px;
}
.chat-msg__bot-action {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 3px 10px;
  border-radius: 6px;
  font-size: 12px;
  font-weight: 500;
  border: 1px solid var(--transp-1);
  background: var(--transp-05);
  color: var(--text);
  cursor: pointer;
  transition: all 0.12s ease;
}
.chat-msg__bot-action:hover {
  background: var(--transp-1);
  border-color: var(--transp-2);
}
.chat-msg__bot-action--primary {
  background: color-mix(in srgb, var(--accent) 12%, transparent);
  border-color: color-mix(in srgb, var(--accent) 20%, transparent);
  color: var(--accent);
}
.chat-msg__bot-action--primary:hover {
  background: color-mix(in srgb, var(--accent) 20%, transparent);
}
.chat-msg__bot-action--danger {
  background: color-mix(in srgb, var(--error) 10%, transparent);
  border-color: color-mix(in srgb, var(--error) 15%, transparent);
  color: var(--error);
}
.chat-msg__bot-action--danger:hover {
  background: color-mix(in srgb, var(--error) 18%, transparent);
}
.chat-msg__bot-action:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.chat-msg__bot-action svg {
  width: 12px;
  height: 12px;
}
@keyframes chat-ctx-in {
  from {
    opacity: 0;
    transform: scale(0.95);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}
.chat-pinned-bar {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 12px;
  background: var(--transp-02);
  border-bottom: 1px solid var(--transp-05);
  flex-shrink: 0;
  min-height: 40px;
  cursor: pointer;
  transition: background 0.12s;
}
.chat-pinned-bar:hover {
  background: var(--transp-05);
}
.chat-pinned-bar__stripe {
  width: 3px;
  align-self: stretch;
  border-radius: 2px;
  background: var(--accent);
  flex-shrink: 0;
}
.chat-pinned-bar__stripe--multi {
  display: flex;
  flex-direction: column;
  background: none;
}
.chat-pinned-bar__body {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 1px;
  overflow: hidden;
}
.chat-pinned-bar__label {
  font-size: 11px;
  font-weight: 600;
  color: var(--accent);
  line-height: 1.2;
}
.chat-pinned-bar__text {
  font-size: 12px;
  color: var(--text-500);
  line-height: 1.3;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.chat-pinned-bar__nav, .chat-pinned-bar__close {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  border-radius: 4px;
  color: var(--text-400);
  background: none;
  border: none;
  cursor: pointer;
  flex-shrink: 0;
  transition: all 0.1s;
}
.chat-pinned-bar__nav:hover, .chat-pinned-bar__close:hover {
  background: var(--transp-1);
  color: var(--text);
}
.chat-pinned-bar__nav svg, .chat-pinned-bar__close svg {
  width: 14px;
  height: 14px;
}
.chat-pinned-bar.is-loading {
  opacity: 0.6;
  pointer-events: none;
}
.chat-pinned-bar.is-loading .chat-pinned-bar__body::after {
  content: "";
  position: absolute;
  right: 8px;
  top: 50%;
  transform: translateY(-50%);
  width: 14px;
  height: 14px;
  border: 2px solid var(--transp-1);
  border-top-color: var(--accent);
  border-radius: 50%;
  animation: spin 0.7s linear infinite;
}
.chat-msg__pin-icon {
  display: inline-flex;
  align-items: center;
  color: var(--warning);
}
.chat-msg__pin-icon svg {
  width: 10px;
  height: 10px;
}
.chat-msg--highlight {
  animation: msg-highlight 2s ease-out;
}
@keyframes msg-highlight {
  0% {
    background: color-mix(in srgb, var(--warning) 20%, transparent);
  }
  100% {
    background: transparent;
  }
}
.chat-cmd-palette {
  position: absolute;
  bottom: 100%;
  left: 0;
  right: 0;
  background: var(--background);
  border: 1px solid var(--transp-1);
  border-bottom: none;
  border-radius: 8px 8px 0 0;
  box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.1);
  max-height: 240px;
  overflow-y: auto;
  z-index: 50;
  animation: cmd-slide-up 0.12s ease-out;
}
.chat-cmd-palette__item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 14px;
  cursor: pointer;
  transition: background 0.08s;
}
.chat-cmd-palette__item:first-child {
  border-radius: 8px 8px 0 0;
}
.chat-cmd-palette__item.is-selected, .chat-cmd-palette__item:hover {
  background: var(--transp-05);
}
.chat-cmd-palette__cmd {
  font-size: 13px;
  font-weight: 600;
  color: var(--accent);
  flex-shrink: 0;
  min-width: 80px;
}
.chat-cmd-palette__desc {
  font-size: 12px;
  color: var(--text-400);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
@keyframes cmd-slide-up {
  from {
    opacity: 0;
    transform: translateY(4px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.chat-mod-form {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.chat-mod-form__header {
  display: flex;
  align-items: center;
  gap: 8px;
}
.chat-mod-form__title {
  font-size: 15px;
  font-weight: 600;
  color: var(--text);
}
.chat-mod-form__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.chip {
  padding: 5px 12px;
  border-radius: 16px;
  border: 1px solid var(--transp-1);
  background: var(--transp-05);
  color: var(--text);
  font-size: 12px;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.1s;
}
.chip:hover {
  border-color: var(--accent);
  background: color-mix(in srgb, var(--accent) 8%, transparent);
}
.chip.active {
  border-color: var(--accent);
  background: color-mix(in srgb, var(--accent) 15%, transparent);
  color: var(--accent);
}
.chip--danger {
  color: var(--error);
  border-color: color-mix(in srgb, var(--error) 20%, transparent);
}
.chip--danger:hover, .chip--danger.active {
  border-color: var(--error);
  background: color-mix(in srgb, var(--error) 12%, transparent);
  color: var(--error);
}
@media (max-width: 768px) {
  :root {
    --chat-sidebar-width: 100vw;
    --chat-width: 100vw;
  }
  body.chat-sidebar-active {
    margin-right: 0 !important;
    overflow: hidden;
  }
  .chat-mobile-close {
    display: flex !important;
  }
  .chat-sidebar-wrapper {
    width: 100vw;
    height: 100%;
    height: 100dvh;
  }
  .chat-sidebar-wrapper.is-closed {
    transform: translateX(100%);
    pointer-events: none;
  }
  .chat-sidebar-wrapper .chat-sidebar {
    width: 100vw;
    max-width: 100vw;
  }
  .chat-sidebar-toggle {
    position: fixed;
    left: auto;
    right: 20px;
    bottom: 24px;
    top: auto;
    transform: none !important;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: var(--accent);
    color: var(--accent-950);
    z-index: 101;
  }
  .chat-sidebar-wrapper:not(.is-closed) .chat-sidebar-toggle {
    right: 20px;
    bottom: 24px;
    background: var(--background);
    color: var(--text);
    border: 1px solid var(--transp-1);
  }
  .chat-scroll-btn {
    bottom: 90px;
    right: 20px;
    transform: translateY(10px);
    opacity: 0;
  }
  .chat-scroll-btn.is-visible {
    transform: translateY(0);
    opacity: 1;
  }
  .chat-widget {
    bottom: var(--space-sm);
    right: var(--space-sm);
  }
  .chat-widget__panel {
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    max-width: 100%;
    height: 100dvh;
    max-height: none;
    border-radius: 0;
  }
  .chat-widget__panel .chat-panel {
    border-radius: 0;
    height: 100%;
    max-height: none;
    border: none;
    box-shadow: none;
  }
  .chat-widget__panel.is-open ~ .chat-widget__toggle {
    display: none;
  }
  body.chat-widget-open {
    overflow: hidden;
  }
  .chat-page {
    height: 100dvh;
    margin: 0;
    border-radius: 0;
    border: none;
  }
}
@media (max-width: 480px) {
  .chat-header {
    padding: 8px 12px;
  }
  .chat-msg {
    padding: 2px 12px;
  }
  .chat-msg__text {
    font-size: 13px;
  }
  .chat-input {
    padding: 6px 10px;
  }
  .chat-input__textarea {
    min-height: 32px;
    padding: 6px 10px;
    font-size: 13px;
  }
  .chat-widget__toggle {
    width: 44px;
    height: 44px;
  }
  .chat-widget__toggle svg {
    width: 18px;
    height: 18px;
  }
  .chat-channel-tabs {
    padding: 0 4px;
  }
  .chat-channel-tab {
    padding: 6px 10px;
    font-size: 12px;
  }
}
@media print {
  .chat-sidebar-wrapper, .chat-widget {
    display: none !important;
  }
  body.chat-sidebar-active {
    margin-right: 0 !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  .chat-msg.is-new {
    animation: none;
  }
  .chat-msg.is-sending .chat-msg__text::after {
    animation: none;
  }
}
.faq-widget {
  width: 100%;
  max-width: 100%;
}
.faq-widget .faq-empty {
  padding: var(--space-xl);
  text-align: center;
  background-color: var(--background-900);
  border-radius: var(--border1);
  border: 1px solid var(--transp-1);
  color: var(--text-500);
  font-size: var(--p);
}
.faq-widget .faq-empty p {
  margin: 0;
  font-weight: 400;
}
.faq-widget .faq-accordion {
  display: flex;
  flex-direction: column;
  gap: var(--space-md);
}
.faq-widget .faq-item {
  background-color: var(--background);
  border-radius: var(--border1);
  overflow: hidden;
  transition: all 0.2s ease;
  border: 1px solid var(--transp-3);
}
@media (prefers-reduced-motion: reduce) {
  .faq-widget .faq-item {
    transition: none;
  }
}
.faq-widget .faq-item:hover {
  border-color: var(--transp-5);
}
.faq-widget .faq-item .faq-question {
  width: 100%;
  padding: var(--space-lg);
  background: none;
  border: none;
  text-align: left;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: var(--p);
  font-weight: 500;
  color: var(--text);
  transition: background-color 0.15s ease;
  position: relative;
}
@media (prefers-reduced-motion: reduce) {
  .faq-widget .faq-item .faq-question {
    transition: none;
  }
}
.faq-widget .faq-item .faq-question:hover {
  background-color: var(--transp-05);
}
.faq-widget .faq-item .faq-question .faq-question-text {
  flex: 1;
  text-align: left;
  line-height: 1.5;
  padding-right: var(--space-md);
}
.faq-widget .faq-item .faq-question .faq-toggle-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.5rem;
  height: 1.5rem;
  border-radius: var(--border05);
  background-color: var(--transp-1);
  transition: all 0.15s ease;
  flex-shrink: 0;
}
@media (prefers-reduced-motion: reduce) {
  .faq-widget .faq-item .faq-question .faq-toggle-icon {
    transition: none;
  }
}
.faq-widget .faq-item .faq-question .faq-toggle-icon .faq-icon-minus {
  display: none;
}
.faq-widget .faq-item .faq-question .faq-toggle-icon svg {
  width: 0.875rem;
  height: 0.875rem;
  color: var(--text-500);
  transition: color 0.15s ease;
}
.faq-widget .faq-item .faq-question:hover .faq-toggle-icon {
  background-color: var(--transp-2);
}
.faq-widget .faq-item .faq-question:hover .faq-toggle-icon svg {
  color: var(--text);
}
.faq-widget .faq-item .faq-answer {
  overflow: hidden;
  max-height: 0;
  transition: max-height 0.25s ease-out;
}
@media (prefers-reduced-motion: reduce) {
  .faq-widget .faq-item .faq-answer {
    transition: none;
  }
}
.faq-widget .faq-item .faq-answer .faq-answer-content {
  padding: var(--space-md) var(--space-lg) var(--space-lg);
  color: var(--text);
  line-height: 1.6;
  font-size: var(--p-small);
}
.faq-widget .faq-item .faq-answer .faq-answer-content * {
  line-height: 1.75;
}
.faq-widget .faq-item .faq-answer .faq-answer-content p:last-child {
  margin-bottom: 0;
}
.faq-widget .faq-item .faq-answer .faq-answer-content ul, .faq-widget .faq-item .faq-answer .faq-answer-content ol {
  padding-left: var(--space-lg);
}
.faq-widget .faq-item .faq-answer .faq-answer-content a {
  color: var(--accent);
  text-decoration: none;
  font-weight: 500;
  transition: color 0.15s ease;
}
.faq-widget .faq-item .faq-answer .faq-answer-content a:hover {
  color: var(--accent-400);
  text-decoration: underline;
}
.faq-widget .faq-item .faq-answer .faq-answer-content code {
  background-color: var(--transp-1);
  padding: 0.125rem 0.375rem;
  border-radius: 0.25rem;
  font-family: var(--font-mono);
  font-size: 0.875em;
  color: var(--text);
  border: 1px solid var(--transp-2);
}
.faq-widget .faq-item .faq-answer .faq-answer-content pre {
  background-color: var(--transp-1);
  padding: var(--space-md);
  border-radius: var(--border05);
  overflow-x: auto;
  margin-bottom: var(--space-sm);
  border: 1px solid var(--transp-2);
}
.faq-widget .faq-item .faq-answer .faq-answer-content pre code {
  background: none;
  padding: 0;
  border: none;
}
.faq-widget .faq-item.faq-open {
  border-color: var(--primary-200);
}
.faq-widget .faq-item.faq-open .faq-question {
  background-color: var(--transp-05);
}
.faq-widget .faq-item.faq-open .faq-question .faq-toggle-icon {
  background-color: var(--primary);
  transform: rotate(180deg);
}
.faq-widget .faq-item.faq-open .faq-question .faq-toggle-icon .faq-icon-plus {
  display: none;
}
.faq-widget .faq-item.faq-open .faq-question .faq-toggle-icon .faq-icon-minus {
  display: block;
}
.faq-widget .faq-item.faq-open .faq-question .faq-toggle-icon svg {
  color: var(--primary-950);
}
.faq-widget .faq-item.faq-open .faq-answer {
  max-height: 1000px;
}
.faq-widget.faq-style-minimal .faq-accordion {
  gap: 0;
  border-top: 1px solid var(--transp-2);
}
.faq-widget.faq-style-minimal .faq-item {
  background: none;
  border-radius: 0;
  border: none;
  border-bottom: 1px solid var(--transp-2);
}
.faq-widget.faq-style-minimal .faq-item:hover {
  background-color: transparent;
}
.faq-widget.faq-style-minimal .faq-item.faq-open {
  background-color: transparent;
  border-bottom-color: var(--primary-200);
}
.faq-widget.faq-style-minimal .faq-item .faq-question {
  padding: var(--space-lg) var(--space-md);
  font-weight: 500;
  background-color: transparent;
}
.faq-widget.faq-style-minimal .faq-item .faq-question .faq-toggle-icon {
  background-color: transparent;
  border: 1px solid var(--transp-3);
  border-radius: 50%;
}
.faq-widget.faq-style-minimal .faq-item .faq-question .faq-toggle-icon svg {
  color: var(--text-400);
}
.faq-widget.faq-style-minimal .faq-item .faq-question:hover .faq-toggle-icon {
  border-color: var(--transp-4);
  background-color: var(--transp-1);
}
.faq-widget.faq-style-minimal .faq-item .faq-question:hover .faq-toggle-icon svg {
  color: var(--text);
}
.faq-widget.faq-style-minimal .faq-item .faq-answer .faq-answer-content {
  padding: var(--space-md);
  padding-top: var(--space-xs);
}
.faq-widget.faq-style-minimal .faq-item.faq-open .faq-question .faq-toggle-icon {
  background-color: var(--primary);
  border-color: var(--primary);
}
.faq-widget.faq-style-minimal .faq-item.faq-open .faq-question .faq-toggle-icon svg {
  color: var(--primary-950);
}
.faq-settings-container {
  max-height: 85vh;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
.faq-settings-form {
  flex: 1;
  overflow-y: auto;
  padding-right: var(--space-xs);
}
.faq-settings-form::-webkit-scrollbar {
  width: 4px;
}
.faq-settings-form::-webkit-scrollbar-track {
  background: transparent;
}
.faq-settings-form::-webkit-scrollbar-thumb {
  background: var(--transp-3);
  border-radius: 2px;
}
.faq-settings-form::-webkit-scrollbar-thumb:hover {
  background: var(--transp-4);
}
.faq-settings-form .settings-section {
  margin-bottom: var(--space-lg);
  padding-bottom: var(--space-lg);
  border-bottom: 1px solid var(--transp-1);
}
.faq-settings-form .settings-section:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}
.faq-settings-form .settings-grid {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: var(--space-lg);
  align-items: end;
}
.faq-settings-form .settings-grid .checkbox-wrapper {
  margin-bottom: var(--space-sm);
}
@media (max-width: 768px) {
  .faq-settings-form .settings-grid {
    grid-template-columns: 1fr;
    gap: var(--space-md);
    align-items: stretch;
  }
}
.faq-settings-form .settings-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: var(--space-md);
}
.faq-settings-form .settings-header .section-title {
  font-size: var(--h6);
  font-weight: 600;
  margin: 0;
  color: var(--text);
}
.faq-settings-form .faqs-container {
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
}
.faq-settings-form .faqs-count {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--space-sm) var(--space-md);
  background-color: var(--transp-05);
  border-radius: var(--border05);
  border: 1px solid var(--transp-1);
}
.faq-settings-form .faqs-count .count-text {
  font-size: var(--p-small);
  color: var(--text-400);
  font-weight: 500;
}
.faq-settings-form .faqs-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: var(--space-xl);
  text-align: center;
  background-color: var(--background-900);
  border-radius: var(--border05);
  border: 1px solid var(--transp-1);
}
.faq-settings-form .faqs-empty .empty-icon {
  width: 2.5rem;
  height: 2.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--transp-1);
  border-radius: 50%;
  margin-bottom: var(--space-md);
}
.faq-settings-form .faqs-empty .empty-icon svg {
  width: 1.25rem;
  height: 1.25rem;
  color: var(--text-400);
}
.faq-settings-form .faqs-empty .empty-text {
  font-size: var(--p);
  font-weight: 500;
  color: var(--text);
  margin-bottom: var(--space-xs);
}
.faq-settings-form .faqs-empty .empty-subtext {
  font-size: var(--p-small);
  color: var(--text-400);
  margin: 0;
}
.faq-settings-form .faqs-list {
  display: flex;
  flex-direction: column;
  gap: var(--space-md);
  max-height: 50vh;
  overflow-y: auto;
  padding-right: var(--space-xs);
}
.faq-settings-form .faqs-list::-webkit-scrollbar {
  width: 4px;
}
.faq-settings-form .faqs-list::-webkit-scrollbar-track {
  background: transparent;
}
.faq-settings-form .faqs-list::-webkit-scrollbar-thumb {
  background: var(--transp-2);
  border-radius: 2px;
}
.faq-settings-form .faqs-list::-webkit-scrollbar-thumb:hover {
  background: var(--transp-3);
}
.faq-settings-form .faqs-list .faq-item {
  background-color: var(--blurred-background);
  border-radius: var(--border1);
  padding: var(--space-md);
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  border: 1px solid var(--transp-1);
}
@media (prefers-reduced-motion: reduce) {
  .faq-settings-form .faqs-list .faq-item {
    transition: none;
  }
}
.faq-settings-form .faqs-list .faq-item .faq-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: var(--space-md);
  padding-bottom: var(--space-sm);
  border-bottom: 1px solid var(--transp-1);
}
.faq-settings-form .faqs-list .faq-item .faq-header .faq-title {
  margin: 0;
  font-size: var(--p);
  font-weight: 600;
  color: var(--text);
}
.faq-settings-form .faqs-list .faq-item .faq-header .btn-remove-faq {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.75rem;
  height: 1.75rem;
  border-radius: 50%;
  background-color: var(--error-light);
  color: var(--error);
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  border: 1px solid transparent;
  cursor: pointer;
}
@media (prefers-reduced-motion: reduce) {
  .faq-settings-form .faqs-list .faq-item .faq-header .btn-remove-faq {
    transition: none;
  }
}
.faq-settings-form .faqs-list .faq-item .faq-header .btn-remove-faq:hover {
  background-color: var(--error);
  color: white;
  border-color: var(--error);
}
.faq-settings-form .faqs-list .faq-item .faq-header .btn-remove-faq:focus-visible {
  outline: 2px solid var(--error);
  outline-offset: 2px;
}
.faq-settings-form .faqs-list .faq-item .faq-header .btn-remove-faq svg {
  width: 0.875rem;
  height: 0.875rem;
}
.faq-settings-form .faqs-list .faq-item .faq-inputs {
  display: flex;
  flex-direction: column;
  gap: var(--space-md);
}
@media (max-width: 768px) {
  .faq-widget .faq-item .faq-question {
    padding: var(--space-sm) var(--space-md);
  }
  .faq-widget .faq-item .faq-question .faq-question-text {
    font-size: var(--p-small);
    padding-right: var(--space-sm);
  }
  .faq-widget .faq-item .faq-question .faq-toggle-icon {
    width: 1.25rem;
    height: 1.25rem;
  }
  .faq-widget .faq-item .faq-question .faq-toggle-icon svg {
    width: 0.75rem;
    height: 0.75rem;
  }
  .faq-widget .faq-item .faq-answer .faq-answer-content {
    padding: var(--space-md) var(--space-md) var(--space-md);
  }
  .faq-settings-form .settings-header {
    flex-direction: column;
    align-items: stretch;
    gap: var(--space-sm);
  }
  .faq-settings-form .settings-header .btn-add {
    justify-content: center;
  }
  .faq-settings-form .faqs-list .faq-item {
    padding: var(--space-sm);
  }
  .faq-settings-form .faqs-list .faq-item .faq-header {
    margin-bottom: var(--space-sm);
    padding-bottom: var(--space-xs);
  }
  .faq-settings-form .faqs-list .faq-item .faq-header .faq-title {
    font-size: var(--p-small);
  }
  .faq-settings-form .faqs-list .faq-item .faq-header .btn-remove-faq {
    width: 1.5rem;
    height: 1.5rem;
  }
  .faq-settings-form .faqs-list .faq-item .faq-header .btn-remove-faq svg {
    width: 0.75rem;
    height: 0.75rem;
  }
  .faq-settings-form .faqs-list .faq-item .faq-inputs {
    gap: var(--space-sm);
  }
}
@media (prefers-reduced-motion: reduce) {
  .faq-widget *, .faq-settings-form * {
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}
.faceit-profile__card {
  padding: var(--space-xs) var(--space-md) var(--space-sm);
}
.faceit-profile__card-header {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
}
.faceit-profile__level-icon {
  width: 32px;
  height: 32px;
  flex-shrink: 0;
}
.faceit-profile__card-info {
  flex: 1;
  min-width: 0;
}
.faceit-profile__card-name {
  font-size: var(--p-small);
  font-weight: 600;
  color: var(--text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.3;
}
.faceit-profile__country {
  font-size: 10px;
  font-weight: 500;
  color: var(--text-500);
  margin-left: 4px;
}
.faceit-profile__card-elo {
  font-size: 10px;
  font-weight: 600;
  color: #FF5500;
  letter-spacing: 0.02em;
}
.faceit-profile__link {
  flex-shrink: 0;
  color: var(--text-600);
  transition: color var(--transition);
}
.faceit-profile__link:hover {
  color: var(--text-300);
}
.faceit-profile__quick-stats {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  margin-top: var(--space-xs);
  padding-top: var(--space-xs);
  border-top: 1px solid var(--transp-05);
  flex-wrap: wrap;
}
.faceit-profile__quick-stat {
  display: inline-flex;
  align-items: center;
  gap: 3px;
}
.faceit-profile__quick-stat-value {
  font-size: var(--small);
  font-weight: 600;
  color: var(--text-200);
  font-variant-numeric: tabular-nums;
}
.faceit-profile__quick-stat-label {
  font-size: 10px;
  color: var(--text-500);
  text-transform: uppercase;
  letter-spacing: 0.03em;
}
.faceit-profile__recent {
  display: flex;
  align-items: center;
  gap: 3px;
  margin-top: var(--space-xs);
}
.faceit-profile__recent-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  flex-shrink: 0;
}
.faceit-profile__recent-dot--win {
  background: var(--success);
}
.faceit-profile__recent-dot--loss {
  background: var(--error);
}
.flute-user {
  justify-content: flex-start;
  width: max-content;
}
.flute-user img {
  border-radius: 50%;
  width: 40px;
  height: 40px;
  object-fit: cover;
  transition: var(--transition);
}
.flute-user-text span {
  font-weight: 500;
  font-size: var(--h6);
  line-height: 1.7;
  color: var(--text-300);
}
.flute-user-text small {
  line-height: 1.5;
}
.flute-user__roles {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.flute-user__role {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0 0.6rem;
  background: var(--transp-1);
  border-radius: 25px;
  border: 1px solid var(--transp-2);
  transition: all var(--transition);
}
.flute-user__role-square {
  width: 8px;
  height: 8px;
  border-radius: 50%;
}
.flute-user__role-name {
  font-size: var(--p-small);
  font-weight: 500;
  color: var(--text);
}
.flute-user__socials {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
}
.flute-user__socials-item {
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--primary);
  transition: all var(--transition);
  color: var(--primary-900);
}
.flute-user__socials-item:hover {
  transform: translateY(-2px);
  background: var(--primary-400);
}
.flute-user__socials-item-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  font-size: var(--h6);
}
.hero {
  position: relative;
  overflow: hidden;
  border-radius: var(--hero-radius, 20px);
  padding: var(--hero-py, clamp(40px, 8vw, 96px)) var(--hero-px, clamp(24px, 6vw, 64px));
  background: transparent;
  /* Variants */
}
.hero__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.hero__bg-gradient {
  position: absolute;
  inset: 0;
  z-index: 0;
  background: linear-gradient(135deg, var(--from, #1111116b), var(--to, #1f1f1f));
}
.hero__bg-image {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
}
.hero__overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.35), rgba(0, 0, 0, 0.6));
}
.hero__container {
  position: relative;
  z-index: 1;
}
.hero__pretitle {
  color: rgba(255, 255, 255, 0.7);
  font-weight: 600;
  margin-bottom: 8px;
}
.hero__title {
  font-size: clamp(28px, 6vw, 56px);
  line-height: 1.02;
  letter-spacing: -0.02em;
  font-weight: 800;
  color: var(--text-primary, #fff);
  margin: 0 0 12px 0;
}
.hero__subtitle {
  font-size: clamp(14px, 2.2vw, 18px);
  line-height: 1.55;
  color: rgba(255, 255, 255, 0.8);
  margin: 0 0 20px 0;
  max-width: 600px;
  text-align: center;
}
.hero__actions {
  margin-top: 24px;
}
.hero__dots {
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  opacity: 0.8;
}
.hero__dots::before {
  content: "";
  position: absolute;
  inset: -20% -10%;
  background-image: radial-gradient(rgba(255, 255, 255, 0.12) 1.5px, transparent 1.5px);
  background-size: 20px 20px;
  mask-image: radial-gradient(ellipse 70% 50% at center, black 30%, rgba(0, 0, 0, 0.8) 50%, transparent 80%);
  animation: dotsFloat 20s ease-in-out infinite;
}
.hero__dots__bg-mask {
  position: absolute;
  inset: -10% -10%;
  z-index: 0;
  pointer-events: none;
  /* Single mask pattern */
  background: radial-gradient(60% 40% at 50% 50%, rgba(255, 255, 255, 0.08), transparent 60%);
  mask-image: radial-gradient(75% 55% at 50% 45%, black 40%, rgba(0, 0, 0, 0.85) 65%, transparent 80%);
  -webkit-mask-image: radial-gradient(75% 55% at 50% 45%, black 40%, rgba(0, 0, 0, 0.85) 65%, transparent 80%);
  mix-blend-mode: overlay;
  opacity: 0.6;
}
.hero__lines {
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  opacity: 0.7;
}
.hero__lines::before {
  content: "";
  position: absolute;
  inset: -20% -10%;
  /* default single-direction lines */
  background-image: repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.06) 0 1px, transparent 1px 64px);
}
.hero__lines[data-variant="lines-diagonal"]::before {
  background-image: repeating-linear-gradient(45deg, rgba(255, 255, 255, 0.06) 0 1px, transparent 1px 36px);
}
.hero__lines[data-variant="lines-scan"]::before {
  background-image: repeating-linear-gradient(0deg, rgba(255, 255, 255, 0.08) 0 2px, transparent 2px 24px);
}
.hero__container[style*="text-align: center"] .hero__subtitle {
  margin-left: auto;
  margin-right: auto;
}
.hero-settings-form {
  min-width: 600px;
}
.hero-settings-form .grid-2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-md);
}
.hero-settings-form .setting-tabs .tab-header {
  display: flex;
  margin-bottom: var(--space-md);
  border-radius: 50px;
  padding: 3px;
  gap: 3px;
  border: 1px solid var(--transp-1);
}
.hero-settings-form .setting-tabs .tab-link {
  padding: var(--space-xs) var(--space-md);
  cursor: pointer;
  border: none;
  background: transparent;
  color: var(--text-500);
  font-weight: 500;
  font-size: var(--small);
  border-radius: 50px;
  transition: all var(--transition);
  position: relative;
  line-height: 1;
}
.hero-settings-form .setting-tabs .tab-link:hover {
  background: var(--transp-1);
  color: var(--text-300);
}
.hero-settings-form .setting-tabs .tab-link.active {
  color: var(--text);
  background: var(--transp-1);
  border: 1px solid var(--transp-2);
}
.hero-settings-form .setting-tabs .tab-content {
  background: var(--background);
}
.hero-settings-form .setting-tabs .tab-pane {
  display: none;
  flex-direction: column;
  gap: var(--space-sm);
}
.hero-settings-form .setting-tabs .tab-pane.active {
  display: flex;
}
.hero-settings-form .choice-group {
  display: flex;
  padding: 3px;
  border-radius: 50px;
  border: 1px solid var(--transp-2);
}
.hero-settings-form .choice-group label {
  flex: 1;
  position: relative;
}
.hero-settings-form .choice-group label input {
  position: absolute;
  opacity: 0;
  width: 100%;
  height: 100%;
  cursor: pointer;
}
.hero-settings-form .choice-group label span {
  display: block;
  text-align: center;
  padding: var(--space-sm) var(--space-md);
  border-radius: 50px;
  font-size: var(--small);
  font-weight: 500;
  transition: all var(--transition);
  color: var(--text-500);
  border: 1px solid transparent;
}
.hero-settings-form .choice-group label input:checked + span {
  background: var(--transp-1);
  color: var(--text);
  border: 1px solid var(--transp-2);
}
.hero-settings-form .choice-group label:hover span {
  color: var(--text);
  background: var(--transp-1);
}
.hero-settings-form .bg-settings-panel {
  display: none;
  margin-top: var(--space-md);
}
.hero-settings-form .hero-image-upload {
  margin-top: var(--space-sm);
}
.hero-settings-form .hero-image-upload .upload-actions {
  margin-bottom: var(--space-sm);
}
.hero-settings-form .hero-image-upload .btn-upload {
  display: inline-flex;
  align-items: center;
  gap: var(--space-sm);
  padding: var(--space-sm) var(--space-md);
  background: var(--secondary);
  border: 1px solid var(--transp-2);
  border-radius: var(--border05);
  color: var(--text);
  font-size: var(--small);
  font-weight: 500;
  cursor: pointer;
  transition: all var(--transition);
}
.hero-settings-form .hero-image-upload .btn-upload:hover {
  background: var(--background);
  box-shadow: var(--shadow-small);
  border-color: var(--transp-3);
}
.hero-settings-form .hero-image-upload .btn-upload svg {
  color: var(--text-400);
}
.hero-settings-form .hero-image-upload .upload-progress {
  margin-bottom: var(--space-sm);
}
.hero-settings-form .hero-image-upload .upload-progress .progress-bar {
  width: 100%;
  height: 6px;
  background: var(--secondary);
  border-radius: var(--border05);
  overflow: hidden;
  margin-bottom: var(--space-xs);
  border: 1px solid var(--transp-1);
}
.hero-settings-form .hero-image-upload .upload-progress .progress-bar .progress-fill {
  height: 100%;
  background: linear-gradient(90deg, var(--accent), var(--accent-400));
  transition: width 0.3s ease;
  width: 0%;
  border-radius: var(--border05);
}
.hero-settings-form .hero-image-upload .upload-progress .progress-text {
  font-size: var(--small);
  color: var(--text-500);
  font-weight: 500;
}
.hero-settings-form .hero-image-upload .image-preview {
  position: relative;
  display: inline-block;
  margin-top: var(--space-sm);
}
.hero-settings-form .hero-image-upload .image-preview img {
  max-width: 240px;
  max-height: 140px;
  border-radius: var(--border05);
  border: 1px solid var(--transp-2);
  box-shadow: var(--shadow-small);
}
.hero-settings-form .hero-image-upload .image-preview .btn-remove-preview {
  position: absolute;
  top: calc(var(--space-xs) * -1);
  right: calc(var(--space-xs) * -1);
  width: 28px;
  height: 28px;
  background: var(--error);
  color: white;
  border: 2px solid var(--background);
  border-radius: 50%;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  transition: all var(--transition);
  box-shadow: var(--shadow-medium);
}
.hero-settings-form .hero-image-upload .image-preview .btn-remove-preview:hover {
  background: var(--error);
  transform: scale(1.1);
}
.hero__badge--badge {
  display: inline-block;
  margin-bottom: var(--space-xs);
}
.hero__badge--label {
  display: inline-block;
  background: transparent;
  color: rgba(255, 255, 255, 0.9);
  padding: 4px 0;
  font-weight: 600;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}
#hero-particles {
  display: none;
}
@keyframes dotsFloat {
  0%, 100% {
    transform: translateY(0) translateX(0);
  }
  25% {
    transform: translateY(-10px) translateX(5px);
  }
  50% {
    transform: translateY(0) translateX(-5px);
  }
  75% {
    transform: translateY(5px) translateX(0);
  }
}
.hero__container[style*="text-align: left"] .hero__title, .hero__container[style*="text-align: left"] .hero__subtitle {
  text-align: left;
}
.hero__container[style*="text-align: right"] .hero__title, .hero__container[style*="text-align: right"] .hero__subtitle {
  text-align: right;
}
[data-anim="fade"] {
  animation: hero-fade 0.6s ease both;
}
[data-anim="slide-up"] {
  animation: hero-slide-up 0.7s cubic-bezier(0.2, 0.7, 0.2, 1) both;
}
[data-anim="scale"] {
  animation: hero-scale 0.5s ease both;
}
@keyframes hero-fade {
  from {
    opacity: 0;
    transform: translate3d(0, 6px, 0);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
@keyframes hero-slide-up {
  from {
    opacity: 0;
    transform: translate3d(0, 24px, 0);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
@keyframes hero-scale {
  from {
    opacity: 0.7;
    transform: scale(0.985);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}
.lightbox-overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.95);
  z-index: 10000;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}
.lightbox-overlay.active {
  opacity: 1;
  visibility: visible;
}
.lightbox-image-container {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding: 60px;
  box-sizing: border-box;
  overflow: hidden;
}
.lightbox-image {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  user-select: none;
  transition: transform 0.1s ease;
  cursor: zoom-in;
  border-radius: 4px;
  box-shadow: 0 10px 50px rgba(0, 0, 0, 0.5);
}
.lightbox-close {
  position: absolute;
  top: 20px;
  right: 20px;
  width: 44px;
  height: 44px;
  background: rgba(255, 255, 255, 0.1);
  border: none;
  border-radius: 50%;
  color: #fff;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background-color 0.2s ease, transform 0.2s ease;
  z-index: 10001;
}
.lightbox-close:hover {
  background: rgba(255, 255, 255, 0.2);
  transform: scale(1.02);
}
.lightbox-close svg {
  width: 20px;
  height: 20px;
}
.lightbox-prev, .lightbox-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 50px;
  height: 50px;
  background: rgba(255, 255, 255, 0.1);
  border: none;
  border-radius: 50%;
  color: #fff;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background-color 0.2s ease, transform 0.2s ease;
  z-index: 10001;
}
.lightbox-prev:hover, .lightbox-next:hover {
  background: rgba(255, 255, 255, 0.2);
  transform: translateY(-50%) scale(1.02);
}
.lightbox-prev svg, .lightbox-next svg {
  width: 24px;
  height: 24px;
}
.lightbox-prev {
  left: 20px;
}
.lightbox-next {
  right: 20px;
}
.lightbox-counter {
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  color: #fff;
  font-size: 14px;
  font-weight: 500;
  background: rgba(0, 0, 0, 0.5);
  padding: 8px 16px;
  border-radius: 20px;
  z-index: 10001;
}
.md-content img:not([data-no-lightbox]), .tiptap-editor .ProseMirror img:not([data-no-lightbox]) {
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.md-content img:not([data-no-lightbox]):hover, .tiptap-editor .ProseMirror img:not([data-no-lightbox]):hover {
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
}
@media (max-width: 768px) {
  .lightbox-image-container {
    padding: 20px;
  }
  .lightbox-close {
    top: 10px;
    right: 10px;
    width: 40px;
    height: 40px;
  }
  .lightbox-prev, .lightbox-next {
    width: 40px;
    height: 40px;
  }
  .lightbox-prev {
    left: 10px;
  }
  .lightbox-next {
    right: 10px;
  }
  .lightbox-counter {
    bottom: 10px;
    font-size: 12px;
    padding: 6px 12px;
  }
}
.prime-indicator {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: var(--p);
  height: var(--p);
}
.prime-indicator.prime {
  color: var(--success);
}
.prime-indicator.non-prime {
  color: var(--error);
}
.prime-indicator svg {
  fill: currentColor;
  width: 100%;
  height: 100%;
}
.monitoring-mode-table {
  display: block;
  padding: 0;
  gap: 0;
}
.monitoring-table-rows {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-top: 1em;
}
.server-row {
  position: relative;
  overflow: hidden;
  border-radius: 14px;
  cursor: pointer;
  transition: box-shadow 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}
.server-row:hover {
  box-shadow: 0 0 0 1px var(--transp-1);
}
.server-row:hover .server-row-bg img {
  transform: scale(1.04);
}
.server-row:hover .server-play-btn {
  opacity: 1;
  transform: translateY(-50%) scale(1);
}
.server-row.inactive {
  opacity: 0.45;
}
.server-row.inactive:hover {
  opacity: 0.65;
  box-shadow: none;
}
.server-row.error .server-row-dot {
  background: var(--error);
}
.server-row-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.server-row-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: brightness(0.55) saturate(0.9);
  transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.server-row-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(to right, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0.35) 55%, rgba(0, 0, 0, 0.08) 100%);
  backdrop-filter: blur(2px);
  -webkit-backdrop-filter: blur(2px);
  mask-image: linear-gradient(to right, black 0%, black 40%, transparent 70%);
  -webkit-mask-image: linear-gradient(to right, black 0%, black 40%, transparent 70%);
  transition: background 0.3s;
}
.server-row:not(:has(.server-row-bg)) .server-row-overlay {
  background: var(--transp-05);
  backdrop-filter: none;
}
.server-row:not(:has(.server-row-bg)):hover .server-row-overlay {
  background: var(--transp-1);
}
.server-row-content {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 14px 20px;
  padding-right: 64px;
}
.server-row-main {
  display: flex;
  align-items: center;
  gap: 12px;
  flex: 1;
  min-width: 0;
}
.server-row-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  flex-shrink: 0;
}
.server-row-dot.online {
  background: var(--success);
  box-shadow: 0 0 6px rgba(48, 209, 88, 0.5);
  animation: server-dot-pulse 2.5s ease-in-out infinite;
}
.server-row-dot.error {
  background: var(--error);
  opacity: 0.7;
}
.server-row-dot.inactive {
  background: var(--text-500);
  opacity: 0.4;
}
@keyframes server-dot-pulse {
  0%, 100% {
    box-shadow: 0 0 6px rgba(48, 209, 88, 0.5);
  }
  50% {
    box-shadow: 0 0 12px rgba(48, 209, 88, 0.15);
  }
}
.server-row-ring {
  position: relative;
  width: 38px;
  height: 38px;
  flex-shrink: 0;
}
.server-row-ring svg {
  width: 100%;
  height: 100%;
}
.server-row-ring-text {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 700;
  color: #fff;
  line-height: 1;
}
.server-row-ring-text.dimmed {
  color: rgba(255, 255, 255, 0.2);
}
.server-row:not(:has(.server-row-bg)) .server-row-ring-text {
  color: var(--text);
}
.server-row:not(:has(.server-row-bg)) .server-row-ring-text.dimmed {
  color: var(--text-500);
}
.server-ring-track {
  stroke: rgba(255, 255, 255, 0.06);
}
.server-row:not(:has(.server-row-bg)) .server-ring-track {
  stroke: var(--transp-1);
}
.server-ring-fill {
  transition: stroke-dashoffset 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transform: rotate(-90deg);
  transform-origin: center;
}
.server-row-info {
  display: flex;
  flex-direction: column;
  gap: 3px;
  min-width: 0;
}
.server-row-name {
  font-size: var(--p);
  font-weight: 600;
  color: #fff;
  line-height: 1.3;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.server-row:not(:has(.server-row-bg)) .server-row-name {
  color: var(--text);
}
.server-game-badge {
  display: inline-flex;
  align-items: center;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.02em;
  padding: 2px 7px;
  border-radius: 100px;
  vertical-align: middle;
  margin-left: 6px;
  line-height: 1.2;
  color: #FF9F0A;
  background: rgba(255, 159, 10, 0.12);
  border: 1px solid rgba(255, 159, 10, 0.15);
}
.server-row-ip {
  font-size: 11px;
  font-family: var(--font-mono);
  color: rgba(255, 255, 255, 0.3);
  cursor: pointer;
  transition: color var(--transition);
  line-height: 1;
  white-space: nowrap;
}
.server-row-ip:hover {
  color: var(--accent);
}
.server-row:not(:has(.server-row-bg)) .server-row-ip {
  color: var(--text-500);
}
.server-row-map {
  flex-shrink: 0;
}
@media (max-width: 767px) {
  .server-row-map {
    display: none;
  }
}
.server-map-pill {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: var(--small);
  font-weight: 600;
  padding: 4px 10px;
  border-radius: 100px;
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: saturate(180%) blur(20px);
  -webkit-backdrop-filter: saturate(180%) blur(20px);
  border: 1px solid rgba(255, 255, 255, 0.1);
  color: rgba(255, 255, 255, 0.9);
  white-space: nowrap;
}
.server-row:not(:has(.server-row-bg)) .server-map-pill {
  background: var(--transp-05);
  border-color: var(--transp-05);
  color: var(--text-300);
  backdrop-filter: none;
}
.server-row-ping {
  flex-shrink: 0;
}
@media (max-width: 767px) {
  .server-row-ping {
    display: none;
  }
}
.server-ping-badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-family: var(--font-mono);
  font-size: var(--small);
  font-weight: 600;
  padding: 4px 10px;
  border-radius: 100px;
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: saturate(180%) blur(20px);
  -webkit-backdrop-filter: saturate(180%) blur(20px);
  border: 1px solid rgba(255, 255, 255, 0.1);
  color: rgba(255, 255, 255, 0.7);
  white-space: nowrap;
}
.server-ping-badge svg, .server-ping-badge .icon {
  width: 13px;
  height: 13px;
  opacity: 0.6;
}
.server-row:not(:has(.server-row-bg)) .server-ping-badge {
  background: var(--transp-05);
  border-color: var(--transp-05);
  color: var(--text-400);
  backdrop-filter: none;
}
.server-row-muted {
  color: rgba(255, 255, 255, 0.2);
  font-size: var(--small);
}
.server-row:not(:has(.server-row-bg)) .server-row-muted {
  color: var(--text-600);
}
.server-play-btn {
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%) scale(0.8);
  z-index: 4;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  border: none;
  background: var(--accent);
  color: var(--accent-950);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity 0.25s cubic-bezier(0.4, 0, 0.2, 1), transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}
.server-play-btn:hover {
  filter: brightness(1.1);
}
.server-play-btn svg, .server-play-btn .icon {
  width: 14px;
  height: 14px;
}
@media (max-width: 767px) {
  .server-row-content {
    gap: 10px;
    padding: 10px 56px 10px 14px;
  }
  .server-row-ring {
    width: 32px;
    height: 32px;
  }
  .server-play-btn {
    opacity: 1;
    transform: translateY(-50%) scale(1);
    width: 32px;
    height: 32px;
    right: 10px;
  }
}
.total-online {
  display: flex;
  flex-direction: column;
  gap: 14px;
  width: 100%;
}
.total-online__top {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
}
.total-online__left {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.total-online__label {
  font-size: var(--small);
  color: var(--text-400);
  font-weight: 500;
}
.total-online__num {
  font-family: var(--font-mono);
  font-size: var(--h2);
  font-weight: 700;
  letter-spacing: -0.04em;
  color: var(--text);
  line-height: 1;
}
.total-online__num span {
  font-size: var(--h5);
  color: var(--text-500);
  font-weight: 400;
}
.total-online__right {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 2px;
  text-align: right;
}
.total-online__pct {
  font-family: var(--font-mono);
  font-size: var(--h5);
  font-weight: 700;
  color: var(--text-300);
  letter-spacing: -0.02em;
}
.total-online__servers {
  font-size: var(--small);
  color: var(--success);
  font-weight: 500;
  white-space: nowrap;
}
.total-online__bar {
  width: 100%;
  height: 6px;
  background: var(--transp-1);
  border-radius: 100px;
  overflow: hidden;
}
.total-online__bar-fill {
  height: 100%;
  border-radius: 100px;
  background: linear-gradient(90deg, var(--accent), color-mix(in srgb, var(--accent) 60%, var(--success)));
  transition: width 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}
@media (max-width: 767px) {
  .total-online {
    gap: 10px;
  }
  .total-online__num {
    font-size: var(--h3);
  }
  .total-online__num span {
    font-size: var(--h6);
  }
  .total-online__pct {
    font-size: var(--h6);
  }
  .total-online__bar {
    height: 4px;
  }
}
.monitoring-header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  margin-bottom: var(--space-lg);
  gap: var(--space-md);
}
@media (max-width: 767px) {
  .monitoring-header {
    flex-direction: column;
    align-items: flex-start;
  }
}
.monitoring-header__left {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.monitoring-header__title {
  font-size: var(--h4);
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--text);
  line-height: 1.2;
}
.monitoring-header__meta {
  display: flex;
  align-items: center;
  gap: 10px;
}
.monitoring-header__server-count {
  font-size: var(--small);
  color: var(--text-500);
}
.monitoring-header .monitoring-total {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 2px;
}
@media (max-width: 767px) {
  .monitoring-header .monitoring-total {
    display: none;
  }
}
.monitoring-header .monitoring-total-label {
  font-size: 11px;
  color: var(--text-500);
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.monitoring-header .monitoring-total-num {
  font-family: var(--font-mono);
  font-size: var(--h4);
  font-weight: 700;
  letter-spacing: -0.03em;
  color: var(--text);
  line-height: 1;
}
.monitoring-header .monitoring-total-num span {
  font-size: var(--p);
  color: var(--text-500);
  font-weight: 400;
}
.monitoring-live-badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 2px 8px;
  background: rgba(48, 209, 88, 0.12);
  border: 1px solid rgba(48, 209, 88, 0.25);
  border-radius: 100px;
  font-size: 10px;
  font-weight: 700;
  color: #30D158;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.monitoring-live-badge__dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #30D158;
  animation: monitoring-live-pulse 2s ease-in-out infinite;
  flex-shrink: 0;
}
@keyframes monitoring-live-pulse {
  0%, 100% {
    box-shadow: 0 0 0 0 rgba(48, 209, 88, 0.4);
  }
  50% {
    box-shadow: 0 0 0 4px transparent;
  }
}
.monitoring-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(380px, 1fr));
  gap: 12px;
}
@media (max-width: 767px) {
  .monitoring-grid {
    grid-template-columns: 1fr;
  }
}
.monitoring-grid > div {
  display: flex;
}
.monitoring-mode-compact {
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 10px;
}
.monitoring-mode-ultracompact {
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 8px;
}
@media (max-width: 767px) {
  .monitoring-empty-hide {
    display: none;
  }
}
.monitoring-empty-card {
  background: radial-gradient(circle, var(--background-900) 30%, var(--primary-900) 100%);
  height: 100%;
  width: 100%;
  border-radius: var(--border1);
}
.monitoring-card, .monitoring-card-mode {
  position: relative;
  overflow: hidden;
  border-radius: var(--border1);
  border: 1px solid var(--transp-1);
  cursor: pointer;
  transition: border-color var(--transition), box-shadow 0.3s;
  min-height: 140px;
}
.monitoring-card:hover, .monitoring-card-mode:hover {
  border-color: var(--transp-2);
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.25);
}
.monitoring-card:hover .card-bg img, .monitoring-card-mode:hover .card-bg img {
  transform: scale(1.05);
}
.monitoring-card:hover .card-overlay, .monitoring-card-mode:hover .card-overlay {
  backdrop-filter: blur(2px);
}
.monitoring-card .card-bg, .monitoring-card-mode .card-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.monitoring-card .card-bg img, .monitoring-card-mode .card-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.monitoring-card .card-overlay, .monitoring-card-mode .card-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(to right, rgba(0, 0, 0, 0.75) 20%, rgba(0, 0, 0, 0.4) 55%, transparent 100%);
  backdrop-filter: blur(1px);
  mask-image: linear-gradient(to right, black 0%, black 35%, transparent 80%);
  -webkit-mask-image: linear-gradient(to right, black 0%, black 35%, transparent 80%);
  transition: all 0.3s;
}
.monitoring-card .card-content, .monitoring-card-mode .card-content {
  position: relative;
  z-index: 2;
  padding: 18px;
  display: flex;
  flex-direction: column;
  gap: 4px;
  height: 100%;
}
.monitoring-card .card-name, .monitoring-card-mode .card-name {
  font-size: var(--h6);
  font-weight: 700;
  letter-spacing: -0.01em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  margin: 0;
  color: #fff;
}
.monitoring-card .card-meta, .monitoring-card-mode .card-meta {
  display: flex;
  gap: 5px;
  margin-top: 4px;
  flex-wrap: wrap;
}
.monitoring-card .card-tag, .monitoring-card-mode .card-tag {
  font-size: 10px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  padding: 2px 7px;
  border-radius: 5px;
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(4px);
  color: rgba(255, 255, 255, 0.8);
}
.monitoring-card .card-tag--off, .monitoring-card-mode .card-tag--off {
  color: #FF453A;
  background: rgba(255, 69, 58, 0.15);
}
.monitoring-card .card-tag--csgo, .monitoring-card-mode .card-tag--csgo {
  color: #FF9F0A;
  background: rgba(255, 159, 10, 0.15);
}
.monitoring-card .card-bottom, .monitoring-card-mode .card-bottom {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: auto;
  padding-top: 6px;
}
.monitoring-card .card-ring, .monitoring-card-mode .card-ring {
  width: 22px;
  height: 22px;
  flex-shrink: 0;
  transform: rotate(-90deg);
}
.monitoring-card .card-ring--off, .monitoring-card-mode .card-ring--off {
  opacity: 0.4;
}
.monitoring-card .card-players, .monitoring-card-mode .card-players {
  font-family: var(--font-mono);
  font-size: var(--h6);
  font-weight: 700;
  letter-spacing: -0.02em;
  color: #fff;
}
.monitoring-card .card-players span, .monitoring-card-mode .card-players span {
  color: rgba(255, 255, 255, 0.25);
  font-weight: 400;
  font-size: var(--small);
}
.monitoring-card .card-players--off, .monitoring-card-mode .card-players--off {
  color: var(--text-400);
}
.monitoring-card .card-players--off span, .monitoring-card-mode .card-players--off span {
  color: var(--text-500);
}
.monitoring-card .card-ping, .monitoring-card-mode .card-ping {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-family: var(--font-mono);
  font-size: var(--small);
  font-weight: 600;
  color: var(--text-300);
}
.monitoring-card .card-ping svg, .monitoring-card .card-ping .icon, .monitoring-card-mode .card-ping svg, .monitoring-card-mode .card-ping .icon {
  width: 12px;
  height: 12px;
}
.monitoring-card .card-hover-actions, .monitoring-card-mode .card-hover-actions {
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 4;
  display: flex;
  gap: 4px;
}
.monitoring-card .card-copy-btn, .monitoring-card-mode .card-copy-btn {
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 100px;
  background: rgba(0, 0, 0, 0.4);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border: 1px solid rgba(255, 255, 255, 0.12);
  color: rgba(255, 255, 255, 0.6);
  cursor: pointer;
  transition: var(--transition);
}
.monitoring-card .card-copy-btn:hover, .monitoring-card-mode .card-copy-btn:hover {
  background: rgba(255, 255, 255, 0.15);
  color: #fff;
  border-color: rgba(255, 255, 255, 0.25);
}
.monitoring-card .card-copy-btn svg, .monitoring-card .card-copy-btn .icon, .monitoring-card-mode .card-copy-btn svg, .monitoring-card-mode .card-copy-btn .icon {
  width: 14px;
  height: 14px;
}
.monitoring-card .card-play-btn, .monitoring-card-mode .card-play-btn {
  position: absolute;
  bottom: 12px;
  right: 12px;
  z-index: 4;
  width: 34px;
  height: 34px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--accent);
  color: var(--accent-950);
  transition: opacity var(--transition);
}
.monitoring-card .card-play-btn:hover, .monitoring-card-mode .card-play-btn:hover {
  opacity: 0.85;
}
.monitoring-card .card-play-btn svg, .monitoring-card .card-play-btn .icon, .monitoring-card-mode .card-play-btn svg, .monitoring-card-mode .card-play-btn .icon {
  width: 14px;
  height: 14px;
}
.monitoring-card-inactive, .monitoring-card-mode-inactive {
  opacity: 0.5;
}
.monitoring-card-inactive:hover, .monitoring-card-mode-inactive:hover {
  opacity: 0.65;
  box-shadow: none;
}
.monitoring-card-inactive .card-bg img, .monitoring-card-mode-inactive .card-bg img {
  filter: grayscale(1) brightness(0.5);
}
.monitoring-card--compact {
  min-height: 120px;
}
.monitoring-card--compact .card-content {
  padding: 14px;
}
.monitoring-card--compact .card-name {
  font-size: var(--p-small);
}
.monitoring-card--compact .card-play-btn {
  width: 30px;
  height: 30px;
  bottom: 10px;
  right: 10px;
}
.monitoring-card--ultracompact {
  min-height: 100px;
}
.monitoring-card--ultracompact .card-content {
  padding: 12px;
  gap: 2px;
}
.monitoring-card--ultracompact .card-name {
  font-size: var(--p-small);
}
.monitoring-card--ultracompact .card-meta {
  margin-top: 2px;
}
.monitoring-card--ultracompact .card-play-btn {
  width: 28px;
  height: 28px;
  bottom: 8px;
  right: 8px;
}
.monitoring-card--ultracompact .card-play-btn svg, .monitoring-card--ultracompact .card-play-btn .icon {
  width: 10px;
  height: 10px;
}
.monitoring-card-mode {
  min-height: auto;
  padding: 0;
}
.server-modal-split {
  position: relative;
  display: flex;
  flex-direction: row;
  width: 100%;
  height: 540px;
  max-height: 70vh;
  overflow: hidden;
}
@media (max-width: 767px) {
  .server-modal-split {
    flex-direction: column;
    height: auto;
    max-height: 85vh;
    overflow-y: auto;
  }
}
@media (min-width: 1024px) {
  .server-modal-split {
    min-width: 820px;
  }
}
.server-modal-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
}
.server-modal-split::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(to right, transparent 20%, var(--background-950) 55%);
  pointer-events: none;
}
@media (max-width: 767px) {
  .server-modal-split::before {
    background: linear-gradient(to bottom, transparent 20%, var(--background-950) 50%);
  }
}
.server-modal-split::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  backdrop-filter: blur(24px);
  -webkit-backdrop-filter: blur(24px);
  mask-image: linear-gradient(to right, transparent 360px, black 360px);
  -webkit-mask-image: linear-gradient(to right, transparent 360px, black 360px);
  pointer-events: none;
}
@media (max-width: 767px) {
  .server-modal-split::after {
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    mask-image: linear-gradient(to bottom, transparent 200px, black 200px);
    -webkit-mask-image: linear-gradient(to bottom, transparent 200px, black 200px);
  }
}
.server-modal-map {
  width: 360px;
  flex-shrink: 0;
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  z-index: 2;
}
@media (max-width: 767px) {
  .server-modal-map {
    width: 100%;
    flex-shrink: 0;
  }
}
.server-modal-map-fade {
  position: absolute;
  inset: 0;
  z-index: 1;
  backdrop-filter: blur(24px);
  -webkit-backdrop-filter: blur(24px);
  mask-image: linear-gradient(to top, black 0%, black 45%, transparent 80%);
  -webkit-mask-image: linear-gradient(to top, black 0%, black 45%, transparent 80%);
  background: linear-gradient(to top, rgba(0, 0, 0, 0.82) 0%, rgba(0, 0, 0, 0.4) 45%, transparent 80%);
}
@media (max-width: 767px) {
  .server-modal-map-fade {
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    background: linear-gradient(to top, rgba(0, 0, 0, 0.85) 0%, rgba(0, 0, 0, 0.3) 50%, transparent 100%);
  }
}
.server-modal-map-content {
  position: relative;
  z-index: 2;
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
@media (max-width: 767px) {
  .server-modal-map-content {
    padding: 16px;
  }
}
.server-modal-title {
  font-size: var(--h4);
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1.2;
  color: #fff;
  text-shadow: 0 2px 12px rgba(0, 0, 0, 0.5);
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  word-break: break-word;
}
.server-modal-subtitle {
  font-size: var(--small);
  color: rgba(255, 255, 255, 0.45);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.server-modal-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin-top: 8px;
}
.server-modal-pill {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: var(--small);
  font-weight: 600;
  padding: 4px 10px;
  border-radius: 100px;
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: saturate(180%) blur(20px);
  -webkit-backdrop-filter: saturate(180%) blur(20px);
  border: 1px solid rgba(255, 255, 255, 0.1);
  color: rgba(255, 255, 255, 0.9);
  white-space: nowrap;
}
.server-modal-pill--ping {
  color: rgba(255, 255, 255, 0.7);
}
.server-modal-pill--ping svg, .server-modal-pill--ping .icon {
  width: 13px;
  height: 13px;
  opacity: 0.6;
}
.server-modal-pill--online {
  color: #30D158;
  background: rgba(48, 209, 88, 0.12);
  border-color: rgba(48, 209, 88, 0.2);
}
.server-modal-pill--offline {
  color: #FF453A;
  background: rgba(255, 69, 58, 0.12);
  border-color: rgba(255, 69, 58, 0.2);
}
.server-modal-pill--csgo {
  color: #FF9F0A;
  background: rgba(255, 159, 10, 0.12);
  border-color: rgba(255, 159, 10, 0.2);
  font-size: 10px;
  letter-spacing: 0.03em;
}
.server-modal-online-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #30D158;
  box-shadow: 0 0 8px rgba(48, 209, 88, 0.5);
}
.server-modal-ring {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}
.server-modal-ip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: var(--font-mono);
  font-size: var(--p-small);
  font-weight: 500;
  color: rgba(255, 255, 255, 0.8);
  margin-top: 8px;
  padding: 6px 14px;
  border-radius: 100px;
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: saturate(180%) blur(20px);
  -webkit-backdrop-filter: saturate(180%) blur(20px);
  border: 1px solid rgba(255, 255, 255, 0.12);
  width: fit-content;
  max-width: 100%;
  overflow: hidden;
  cursor: pointer;
  transition: background var(--transition);
}
.server-modal-ip:hover {
  background: rgba(255, 255, 255, 0.16);
}
.server-modal-ip span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  transition: color var(--transition);
}
.server-modal-ip svg, .server-modal-ip .icon {
  width: 15px;
  height: 15px;
  opacity: 0.5;
  flex-shrink: 0;
}
.server-modal-play-btn {
  margin-top: 14px;
}
@media (max-width: 767px) {
  .server-modal-play-btn {
    margin-top: 10px;
  }
}
.server-modal-players {
  flex: 1;
  min-width: 0;
  min-height: 0;
  display: flex;
  flex-direction: column;
  position: relative;
  z-index: 2;
}
@media (max-width: 767px) {
  .server-modal-players {
    border-top: 1px solid rgba(255, 255, 255, 0.06);
    max-height: none;
    flex: none;
  }
}
.server-modal-players-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 14px 20px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
  gap: 8px;
  background: rgba(0, 0, 0, 0.15);
  flex-shrink: 0;
}
.server-modal-players-header h3 {
  font-size: var(--p);
  font-weight: 700;
  display: flex;
  align-items: center;
  gap: 8px;
  white-space: nowrap;
}
.server-modal-players-count {
  background: rgba(255, 255, 255, 0.08);
  font-size: 11px;
  font-weight: 700;
  padding: 2px 8px;
  border-radius: 100px;
  color: rgba(255, 255, 255, 0.45);
  min-width: 24px;
  text-align: center;
}
.server-modal-players-list {
  flex: 1;
  min-height: 0;
  overflow-y: auto;
}
.server-modal-search {
  width: 160px;
  min-height: auto;
  padding: 5px 10px;
  font-size: var(--small);
  transition: width var(--transition);
}
.server-modal-search:focus-within {
  width: 190px;
}
.server-modal-search input {
  background: none;
  border: none;
  outline: none;
  color: var(--text);
  font-size: var(--small);
  width: 100%;
}
.server-modal-search input::placeholder {
  color: var(--text-400);
}
.server-modal-table {
  width: 100%;
  border-collapse: collapse;
}
.server-modal-table th, .server-modal-table td {
  padding: 8px 14px;
  text-align: left;
}
.server-modal-table th {
  position: sticky;
  top: 0;
  background: var(--background);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  font-weight: 600;
  color: rgba(255, 255, 255, 0.3);
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  z-index: 1;
}
.server-modal-table th svg, .server-modal-table th .icon {
  width: 14px;
  height: 14px;
}
.server-modal-table tbody tr {
  transition: background var(--transition);
  border-bottom: 1px solid var(--transp-05);
}
.server-modal-table tbody tr:last-child {
  border-bottom: none;
}
.server-modal-table tbody tr:hover {
  background: var(--transp-05);
}
.server-modal-table tbody tr.ct-row {
  background: linear-gradient(to right, rgba(33, 149, 243, 0.06), transparent 50%);
}
.server-modal-table tbody tr.t-row {
  background: linear-gradient(to right, rgba(255, 193, 7, 0.06), transparent 50%);
}
.server-modal-table .player-info > a {
  display: flex;
  align-items: center;
  gap: 8px;
  width: fit-content;
}
.server-modal-table .player-avatar {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  overflow: hidden;
  flex-shrink: 0;
  background: var(--transp-05);
  border: 1px solid var(--transp-1);
}
.server-modal-table .player-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.server-modal-table .player-faceit-rank {
  width: 22px;
  height: 22px;
  border-radius: 50%;
  overflow: hidden;
  flex-shrink: 0;
}
.server-modal-table .player-faceit-rank img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.server-modal-table .player-name {
  font-weight: 500;
  font-size: var(--p-small);
  color: var(--text-200);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 180px;
  display: flex;
  align-items: center;
  gap: 4px;
}
.server-modal-table .player-rank {
  width: 100%;
  height: 24px;
}
.server-modal-table .player-rank img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.server-modal-table .player-ping .ping-value, .server-modal-table .ping-value {
  font-family: var(--font-mono);
  font-size: var(--small);
  font-weight: 600;
}
.server-modal-table .player-ping .ping-value.good, .server-modal-table .ping-value.good {
  color: #30D158;
}
.server-modal-table .player-ping .ping-value.medium, .server-modal-table .ping-value.medium {
  color: #FF9F0A;
}
.server-modal-table .player-ping .ping-value.bad, .server-modal-table .ping-value.bad {
  color: #FF453A;
}
.server-modal-table td {
  font-size: var(--p-small);
  color: var(--text-300);
}
.server-ping-value {
  font-family: var(--font-mono);
  font-size: var(--small);
  font-weight: 600;
  transition: color 0.2s;
}
.server-ping-value.good {
  color: #30D158;
}
.server-ping-value.medium {
  color: #FF9F0A;
}
.server-ping-value.bad {
  color: #FF453A;
}
.server-ping-value.offline {
  color: rgba(255, 255, 255, 0.3);
}
.server-details-empty {
  color: var(--text-400);
  text-align: center;
  padding: 2em;
  font-size: var(--small);
}
.server-details-skeleton {
  width: 100%;
  display: flex;
  height: 540px;
  max-height: 70vh;
}
@media (min-width: 1024px) {
  .server-details-skeleton {
    min-width: 820px;
  }
}
@media (max-width: 767px) {
  .server-details-skeleton {
    flex-direction: column;
    height: auto;
    max-height: none;
  }
}
.server-details-skeleton .skeleton-left {
  width: 360px;
  flex-shrink: 0;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
@media (max-width: 767px) {
  .server-details-skeleton .skeleton-left {
    width: 100%;
    min-height: 260px;
  }
}
.server-details-skeleton .skeleton-left .skeleton-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  background: var(--background-900);
  border-radius: 0;
}
.server-details-skeleton .skeleton-left-content {
  position: relative;
  z-index: 1;
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.server-details-skeleton .skeleton-left-content .skeleton-title-lg {
  height: 22px;
  width: 70%;
  background: var(--transp-1);
  border-radius: var(--border05);
}
.server-details-skeleton .skeleton-left-content .skeleton-subtitle {
  height: 12px;
  width: 40%;
  background: var(--transp-05);
  border-radius: var(--border05);
}
.server-details-skeleton .skeleton-left-content .skeleton-pills {
  display: flex;
  gap: 6px;
  margin-top: 4px;
}
.server-details-skeleton .skeleton-left-content .skeleton-pill {
  height: 26px;
  width: 80px;
  background: var(--transp-05);
  border-radius: 100px;
}
.server-details-skeleton .skeleton-left-content .skeleton-pill--sm {
  width: 56px;
}
.server-details-skeleton .skeleton-left-content .skeleton-ip {
  height: 28px;
  width: 65%;
  background: var(--transp-05);
  border-radius: 100px;
  margin-top: 4px;
}
.server-details-skeleton .skeleton-left-content .skeleton-btn {
  height: 38px;
  width: 100%;
  background: var(--transp-1);
  border-radius: var(--border05);
  margin-top: 6px;
}
.server-details-skeleton .skeleton-right {
  flex: 1;
  display: flex;
  flex-direction: column;
  background: rgba(0, 0, 0, 0.15);
}
.server-details-skeleton .skeleton-right-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 14px 20px;
  border-bottom: 1px solid var(--transp-05);
}
.server-details-skeleton .skeleton-right-header .skeleton-title {
  height: 18px;
  width: 120px;
  background: var(--transp-1);
  border-radius: var(--border05);
}
.server-details-skeleton .skeleton-right-header .skeleton-search {
  height: 32px;
  width: 140px;
  background: var(--transp-05);
  border-radius: var(--border05);
}
.server-details-skeleton .skeleton-right-rows {
  flex: 1;
  padding: 4px 0;
}
.server-details-skeleton .skeleton-row {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 20px;
}
.server-details-skeleton .skeleton-row .skeleton-avatar {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: var(--transp-05);
  flex-shrink: 0;
}
.server-details-skeleton .skeleton-row .skeleton-name {
  height: 14px;
  width: 120px;
  background: var(--transp-1);
  border-radius: var(--border05);
}
.server-details-skeleton .skeleton-row .skeleton-stat {
  height: 12px;
  width: 36px;
  background: var(--transp-05);
  border-radius: var(--border05);
  margin-left: auto;
}
.server-details-skeleton .skeleton-row .skeleton-stat--sm {
  width: 28px;
  background: var(--background-900);
  margin-left: 0;
}
@media (min-width: 1024px) {
  .server-details-modal .modal__container {
    min-width: 820px;
    max-width: 900px;
  }
}
@media (max-width: 767px) {
  .server-details-modal .modal__container {
    max-width: 100%;
    margin: 0;
    border-radius: 16px 16px 0 0;
    max-height: 90vh;
  }
}
.server-details-modal .modal__content {
  padding: 0;
}
@media (max-width: 767px) {
  .server-details-modal .modal__content {
    overflow: hidden;
  }
}
.server-details-modal .modal__header {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 10;
  padding: var(--space-md);
}
.server-details-modal .modal__header .modal__title {
  display: none;
}
.server-details-modal .modal__close {
  background: rgba(0, 0, 0, 0.3);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-radius: 50%;
  color: rgba(255, 255, 255, 0.6);
}
.server-details-modal .modal__close:hover {
  background: rgba(0, 0, 0, 0.5);
  color: #fff;
}
.server-details-modal .modal__footer-server-details, .server-details-modal .modal__header {
  display: none;
}
.wall-container {
  display: flex;
  flex-direction: column;
}
.wall-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: var(--space-md, 1rem);
}
.wall-header__title {
  font-size: var(--h6, 1rem);
  font-weight: 600;
  color: var(--text);
  margin: 0;
}
.wall-header__count {
  font-size: var(--small, 0.75rem);
  color: var(--text-500);
}
.wall-composer {
  display: flex;
  gap: var(--space-md, 1rem);
  padding: var(--space-md, 1rem);
  background: var(--transp-05);
  border-radius: var(--border1, 0.75rem);
}
.wall-composer__avatar {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
}
.wall-composer__form {
  flex: 1;
  min-width: 0;
}
.wall-composer__input {
  width: 100%;
  background: transparent;
  border: none;
  color: var(--text);
  font-size: var(--p, 0.9375rem);
  font-family: var(--font);
  padding: var(--space-xs, 0.5rem) 0;
  resize: none;
  min-height: 2.5rem;
  outline: none;
  line-height: 1.5;
}
.wall-composer__input::placeholder {
  color: var(--text-600);
}
.wall-composer__actions {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: var(--space-xs, 0.5rem);
}
.wall-composer__attach {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  background: none;
  border: none;
  color: var(--text-500);
  cursor: pointer;
  border-radius: 50%;
  transition: all var(--transition);
}
.wall-composer__attach svg {
  width: 1.25rem;
  height: 1.25rem;
}
.wall-composer__attach:hover {
  color: var(--text);
  background: var(--transp-05);
}
.wall-composer__submit {
  padding: 0.375rem 1rem;
  background: var(--text);
  color: var(--background);
  border: none;
  border-radius: 1rem;
  font-size: var(--small, 0.75rem);
  font-weight: 600;
  font-family: var(--font);
  cursor: pointer;
  transition: opacity var(--transition);
}
.wall-composer__submit:hover {
  opacity: 0.9;
}
.wall-composer__submit:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.wall-composer__preview {
  position: relative;
  margin-top: var(--space-sm, 0.75rem);
  max-width: 200px;
}
.wall-composer__preview img {
  width: 100%;
  border-radius: var(--border05, 0.5rem);
  display: block;
}
.wall-composer__preview-remove {
  position: absolute;
  top: 0.25rem;
  right: 0.25rem;
  width: 1.25rem;
  height: 1.25rem;
  background: rgba(0, 0, 0, 0.6);
  border: none;
  border-radius: 50%;
  color: #fff;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}
.wall-composer__preview-remove svg {
  width: 0.625rem;
  height: 0.625rem;
}
.wall-composer__preview-remove:hover {
  background: rgba(0, 0, 0, 0.8);
}
.wall-notice {
  display: flex;
  align-items: center;
  gap: var(--space-xs, 0.5rem);
  padding: var(--space-sm, 0.75rem);
  border-radius: var(--border05, 0.5rem);
  font-size: var(--small, 0.75rem);
  margin-bottom: var(--space-md, 1rem);
}
.wall-notice svg {
  width: 1rem;
  height: 1rem;
  flex-shrink: 0;
}
.wall-notice--locked {
  background: var(--error-light);
  color: var(--error);
}
.wall-notice--auth {
  background: var(--transp-03);
  color: var(--text-400);
}
.wall-feed {
  display: flex;
  flex-direction: column;
}
.wall-post {
  display: flex;
  gap: var(--space-sm, 0.75rem);
  padding: var(--space-md, 1rem) 0;
  border-bottom: 1px solid var(--transp-05);
}
.wall-post:last-child {
  border-bottom: none;
}
.wall-post__left {
  display: flex;
  flex-direction: column;
  align-items: center;
  flex-shrink: 0;
}
.wall-post__avatar {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  overflow: hidden;
  border: 1px solid var(--transp-1);
}
.wall-post__avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.wall-post__thread-line {
  flex: 1;
  width: 2px;
  background: var(--transp-1);
  margin-top: var(--space-xs, 0.5rem);
  border-radius: 1px;
}
.wall-post__body {
  flex: 1;
  min-width: 0;
}
.wall-post__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--space-xs, 0.5rem);
  margin-bottom: 0.125rem;
}
.wall-post__info {
  display: flex;
  align-items: center;
  gap: var(--space-xs, 0.5rem);
  flex-wrap: wrap;
  line-height: 1.4;
}
.wall-post__name {
  font-weight: 600;
  color: var(--text);
  text-decoration: none;
  font-size: var(--p, 0.9375rem);
}
.wall-post__name:hover {
  text-decoration: underline;
}
.wall-post__verified {
  color: var(--accent);
  display: flex;
  align-items: center;
}
.wall-post__verified svg {
  width: 0.875rem;
  height: 0.875rem;
}
.wall-post__role {
  font-size: var(--small, 0.75rem);
  color: var(--role-color, var(--text-400));
  padding: 0.125rem 0.375rem;
  background: color-mix(in srgb, var(--role-color, var(--text-400)) 15%, transparent);
  border-radius: 0.25rem;
}
.wall-post__time {
  font-size: var(--small, 0.75rem);
  color: var(--text-500);
}
.wall-post__edited {
  font-size: var(--small, 0.75rem);
  color: var(--text-600);
  font-style: italic;
}
.wall-post__menu-wrap {
  position: relative;
}
.wall-post__menu-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  background: var(--transp-05);
  border: none;
  border-radius: 50%;
  color: var(--text-400);
  cursor: pointer;
  transition: all var(--transition);
}
.wall-post__menu-btn svg {
  width: 1.25rem;
  height: 1.25rem;
}
.wall-post__menu-btn:hover {
  color: var(--text);
  background: var(--transp-1);
}
.wall-post__dropdown-item svg {
  width: 1rem;
  height: 1rem;
}
.wall-post__dropdown-item--danger {
  color: var(--error) !important;
}
.wall-post__dropdown-item--danger:hover {
  background: var(--error-light) !important;
}
.wall-post__content {
  font-size: var(--p, 0.9375rem);
  line-height: 1.5;
  color: var(--text-200);
  white-space: pre-wrap;
  word-wrap: break-word;
  margin-bottom: var(--space-sm, 0.75rem);
}
.wall-post__content a {
  color: var(--accent);
}
.wall-post__image {
  margin-bottom: var(--space-sm, 0.75rem);
  max-width: 320px;
  border-radius: var(--border1, 0.75rem);
  overflow: hidden;
  cursor: pointer;
}
.wall-post__image img {
  width: 100%;
  display: block;
}
.wall-post__actions {
  display: flex;
  align-items: center;
  gap: var(--space-xs, 0.5rem);
}
.wall-reactions-row {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  margin-bottom: var(--space-xs, 0.5rem);
}
.wall-reactions-row--compact {
  margin-top: 0.25rem;
  margin-bottom: 0;
  gap: 0.25rem;
}
.wall-reactions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem;
  align-items: center;
  min-width: 0;
}
.wall-reactions:empty {
  display: none;
}
.wall-reactions--appearing {
  animation: wall-reactions-appear 0.2s ease-out;
}
.wall-reactions--hiding {
  animation: wall-reactions-hide 0.15s ease-out forwards;
}
.wall-reactions__pill {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  padding: 0.1875rem 0.5rem;
  background: var(--transp-03);
  border: 1px solid transparent;
  border-radius: 1rem;
  font-size: var(--small, 0.75rem);
  font-family: var(--font);
  cursor: pointer;
  transition: all 0.15s ease;
  user-select: none;
}
.wall-reactions__pill:hover:not(:disabled) {
  background: var(--transp-05);
}
.wall-reactions__pill:active:not(:disabled) {
  transform: scale(0.95);
}
.wall-reactions__pill--active {
  border-color: var(--accent);
  background: color-mix(in srgb, var(--accent) 10%, transparent);
}
.wall-reactions__pill--active .wall-reactions__count {
  color: var(--accent);
}
.wall-reactions__pill--disabled {
  cursor: default;
  opacity: 0.8;
}
.wall-reactions__pill--clicked {
  animation: wall-pill-click 0.2s ease;
}
.wall-reactions__pill--new {
  animation: wall-pill-appear 0.2s ease backwards;
  animation-delay: calc(var(--pill-index, 0) * 0.02s);
}
.wall-reactions__emoji {
  font-size: 0.875rem;
  line-height: 1;
}
.wall-reactions__count {
  font-size: 0.6875rem;
  font-weight: 500;
  color: var(--text-400);
  min-width: 0.5rem;
  text-align: center;
}
.wall-reactions--compact .wall-reactions__pill {
  padding: 0.125rem 0.375rem;
}
.wall-reactions--compact .wall-reactions__emoji {
  font-size: 0.75rem;
}
.wall-reactions--compact .wall-reactions__count {
  font-size: 0.625rem;
}
.wall-reaction-picker {
  flex-shrink: 0;
}
.wall-reaction-picker__toggle {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.75rem;
  height: 1.75rem;
  padding: 0;
  background: var(--transp-03);
  border: 1px dashed var(--transp-1);
  border-radius: 1rem;
  color: var(--text-500);
  cursor: pointer;
  transition: all var(--transition);
}
.wall-reaction-picker__toggle svg {
  width: 1rem;
  height: 1rem;
}
.wall-reaction-picker__toggle:hover {
  color: var(--accent);
  background: var(--transp-05);
  border-color: var(--accent);
  border-style: solid;
}
.wall-reaction-picker__toggle--active {
  color: var(--accent);
  background: color-mix(in srgb, var(--accent) 10%, transparent);
  border-color: var(--accent);
  border-style: solid;
}
.wall-reaction-picker--compact .wall-reaction-picker__toggle {
  width: 1.375rem;
  height: 1.375rem;
}
.wall-reaction-picker--compact .wall-reaction-picker__toggle svg {
  width: 0.75rem;
  height: 0.75rem;
}
@keyframes wall-reactions-appear {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes wall-reactions-hide {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes wall-pill-click {
  0%, 100% {
    transform: scale(1);
  }
  50% {
    transform: scale(0.9);
  }
}
@keyframes wall-pill-appear {
  from {
    opacity: 0;
    transform: scale(0.8);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}
.wall-action-btn {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  padding: 0.5rem;
  margin-left: -0.5rem;
  background: none;
  border: none;
  border-radius: 50%;
  color: var(--text-500);
  cursor: pointer;
  transition: all var(--transition);
}
.wall-action-btn svg {
  width: 1.125rem;
  height: 1.125rem;
}
.wall-action-btn:hover {
  color: var(--text-300);
  background: var(--transp-05);
}
.wall-action-btn__count {
  font-size: var(--small, 0.75rem);
  font-weight: 500;
}
.wall-reaction-popup {
  position: fixed;
  z-index: 1000;
  padding: 0.375rem;
  background: var(--blurred-background);
  backdrop-filter: saturate(150%) blur(var(--blur-amount, 14px));
  -webkit-backdrop-filter: saturate(150%) blur(var(--blur-amount, 14px));
  border: 1px solid var(--transp-1);
  border-radius: 0.75rem;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(2rem, 1fr));
  gap: 0.125rem;
  max-width: 280px;
  min-width: 160px;
  animation: wall-popup-in 0.15s ease-out;
}
.wall-reaction-popup--closing {
  animation: wall-popup-out 0.1s ease-out forwards;
}
.wall-reaction-popup__item {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  background: none;
  border: none;
  border-radius: 0.375rem;
  font-size: 1.125rem;
  cursor: pointer;
  transition: all 0.15s ease;
  animation: wall-popup-item-in 0.2s ease backwards;
  animation-delay: calc(var(--item-index, 0) * 0.015s);
}
.wall-reaction-popup__item:hover {
  background: var(--transp-1);
  transform: scale(1.15);
}
.wall-reaction-popup__item:active {
  transform: scale(0.9);
}
.wall-reaction-popup__item--selected {
  background: color-mix(in srgb, var(--accent) 15%, transparent);
}
.wall-reaction-popup__item--pop {
  animation: wall-emoji-pop 0.2s ease;
}
@keyframes wall-popup-in {
  from {
    opacity: 0;
    transform: scale(0.95) translateY(4px);
  }
  to {
    opacity: 1;
    transform: scale(1) translateY(0);
  }
}
@keyframes wall-popup-out {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    transform: scale(0.95);
  }
}
@keyframes wall-popup-item-in {
  from {
    opacity: 0;
    transform: scale(0.8);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes wall-emoji-pop {
  0%, 100% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.2);
  }
}
.wall-replies {
  margin-top: var(--space-sm, 0.75rem);
}
.wall-replies[data-replies-visible="0"] .wall-replies__list {
  display: none;
}
.wall-replies__list {
  display: flex;
  flex-direction: column;
}
.wall-reply {
  display: flex;
  gap: var(--space-xs, 0.5rem);
  padding: var(--space-xs, 0.5rem) 0;
  position: relative;
}
.wall-reply:hover .wall-reply__delete {
  opacity: 1;
}
.wall-reply__avatar {
  flex-shrink: 0;
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 50%;
  overflow: hidden;
}
.wall-reply__avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.wall-reply__body {
  flex: 1;
  min-width: 0;
}
.wall-reply__header {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  flex-wrap: wrap;
  margin-bottom: 0.0625rem;
}
.wall-reply__name {
  font-size: var(--small, 0.75rem);
  font-weight: 600;
  color: var(--text);
  text-decoration: none;
}
.wall-reply__name:hover {
  text-decoration: underline;
}
.wall-reply__verified {
  color: var(--accent);
  display: flex;
  align-items: center;
}
.wall-reply__verified svg {
  width: 0.75rem;
  height: 0.75rem;
}
.wall-reply__role {
  font-size: 0.625rem;
  color: var(--role-color, var(--text-400));
  padding: 0.0625rem 0.25rem;
  background: color-mix(in srgb, var(--role-color, var(--text-400)) 15%, transparent);
  border-radius: 0.1875rem;
}
.wall-reply__time {
  font-size: 0.6875rem;
  color: var(--text-600);
}
.wall-reply__edited {
  font-size: 0.625rem;
  color: var(--text-600);
  font-style: italic;
}
.wall-reply__actions {
  display: flex;
  gap: 0.25rem;
  margin-left: auto;
}
.wall-reply__edit {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.5rem;
  height: 1.5rem;
  background: var(--transp-05);
  border: none;
  border-radius: 50%;
  color: var(--text-400);
  cursor: pointer;
  opacity: 0;
  transition: all var(--transition);
}
.wall-reply__edit svg {
  width: 0.75rem;
  height: 0.75rem;
}
.wall-reply__edit:hover {
  color: var(--accent);
  background: var(--transp-1);
}
.wall-reply:hover .wall-reply__edit {
  opacity: 1;
}
.wall-reply__text {
  font-size: var(--small, 0.75rem);
  line-height: 1.5;
  color: var(--text-200);
  margin: 0;
}
.wall-reply__actions {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  margin-top: 0.25rem;
}
.wall-reply__delete {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.5rem;
  height: 1.5rem;
  background: var(--transp-05);
  border: none;
  border-radius: 50%;
  color: var(--text-400);
  cursor: pointer;
  opacity: 0;
  transition: all var(--transition);
}
.wall-reply__delete svg {
  width: 0.75rem;
  height: 0.75rem;
}
.wall-reply__delete:hover {
  color: var(--error);
  background: var(--error-light);
}
@media (max-width: 640px) {
  .wall-reply__delete {
    opacity: 1;
  }
}
.wall-reply-input {
  display: flex;
  align-items: center;
  gap: var(--space-sm, 0.75rem);
  margin-top: var(--space-sm, 0.75rem);
  padding-top: var(--space-sm, 0.75rem);
}
.wall-reply-input__avatar {
  flex-shrink: 0;
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 50%;
  object-fit: cover;
}
.wall-reply-input__field {
  flex: 1;
  background: transparent;
  border: none;
  font-size: var(--small, 0.75rem);
  font-family: var(--font);
  color: var(--text);
  outline: none;
}
.wall-reply-input__field::placeholder {
  color: var(--text-600);
}
.wall-reply-input__submit {
  color: var(--accent);
  font-size: var(--small, 0.75rem);
  font-weight: 500;
  font-family: var(--font);
  background: none;
  border: none;
  cursor: pointer;
  transition: opacity var(--transition);
}
.wall-reply-input__submit:hover {
  opacity: 0.8;
}
.wall-empty {
  text-align: center;
  padding: 2rem 1rem;
}
.wall-empty__visual {
  width: 3rem;
  height: 3rem;
  margin: 0 auto var(--space-sm, 0.75rem);
  border-radius: 50%;
  background: var(--transp-03);
  display: flex;
  align-items: center;
  justify-content: center;
}
.wall-empty__icon {
  width: 1.25rem;
  height: 1.25rem;
  color: var(--text-500);
}
.wall-empty__title {
  font-size: var(--p, 0.9375rem);
  font-weight: 600;
  color: var(--text);
  margin: 0 0 0.25rem;
}
.wall-empty__text {
  font-size: var(--small, 0.75rem);
  color: var(--text-500);
  margin: 0;
  text-align: center;
}
.wall-load-more {
  display: flex;
  justify-content: center;
  padding: var(--space-md, 1rem) 0;
}
.wall-load-more__btn {
  display: inline-flex;
  align-items: center;
  gap: var(--space-xs, 0.5rem);
  padding: var(--space-xs, 0.5rem) var(--space-md, 1rem);
  background: transparent;
  border: 1px solid var(--transp-2);
  border-radius: 1rem;
  font-size: var(--small, 0.75rem);
  font-weight: 500;
  font-family: var(--font);
  color: var(--text-400);
  cursor: pointer;
  transition: all var(--transition);
}
.wall-load-more__btn svg {
  width: 0.875rem;
  height: 0.875rem;
}
.wall-load-more__btn:hover {
  border-color: var(--text-400);
  color: var(--text);
}
.wall-mention {
  color: var(--accent);
  text-decoration: none;
  font-weight: 500;
}
.wall-mention:hover {
  text-decoration: underline;
}
.wall-mentions {
  background: var(--blurred-background);
  backdrop-filter: saturate(150%) blur(var(--blur-amount, 14px));
  -webkit-backdrop-filter: saturate(150%) blur(var(--blur-amount, 14px));
  border: 1px solid var(--transp-1);
  border-radius: var(--border05, 0.5rem);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
  max-height: 200px;
  overflow-y: auto;
}
.wall-mentions__item {
  display: flex;
  align-items: center;
  gap: var(--space-xs, 0.5rem);
  padding: var(--space-xs, 0.5rem) var(--space-sm, 0.75rem);
  cursor: pointer;
  transition: background var(--transition);
}
.wall-mentions__item:hover, .wall-mentions__item--active {
  background: var(--transp-05);
}
.wall-mentions__avatar {
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 50%;
  object-fit: cover;
}
.wall-mentions__info {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.wall-mentions__name {
  font-size: var(--small, 0.75rem);
  font-weight: 500;
  color: var(--text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.wall-mentions__login {
  font-size: 0.6875rem;
  color: var(--text-500);
}
.wall-edit-modal {
  position: fixed;
  inset: 0;
  z-index: 10000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--space-md, 1rem);
}
.wall-edit-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.5);
  backdrop-filter: blur(4px);
}
.wall-edit-modal__content {
  position: relative;
  width: 100%;
  max-width: 500px;
  background: var(--background);
  border-radius: var(--border1, 0.75rem);
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.2);
  animation: wall-modal-in 0.2s ease-out;
}
.wall-edit-modal__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--space-md, 1rem);
  border-bottom: 1px solid var(--transp-1);
}
.wall-edit-modal__header h3 {
  margin: 0;
  font-size: var(--p, 0.9375rem);
  font-weight: 600;
  color: var(--text);
}
.wall-edit-modal__close {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  background: var(--transp-05);
  border: none;
  border-radius: 50%;
  font-size: 1.25rem;
  color: var(--text-400);
  cursor: pointer;
  transition: all var(--transition);
}
.wall-edit-modal__close:hover {
  background: var(--transp-1);
  color: var(--text);
}
.wall-edit-modal__body {
  padding: var(--space-md, 1rem);
}
.wall-edit-modal__textarea {
  width: 100%;
  min-height: 120px;
  padding: var(--space-sm, 0.75rem);
  background: var(--transp-03);
  border: 1px solid var(--transp-1);
  border-radius: var(--border05, 0.5rem);
  font-size: var(--p, 0.9375rem);
  font-family: var(--font);
  color: var(--text);
  resize: vertical;
  outline: none;
  transition: border-color var(--transition);
}
.wall-edit-modal__textarea:focus {
  border-color: var(--accent);
}
.wall-edit-modal__textarea::placeholder {
  color: var(--text-500);
}
.wall-edit-modal__footer {
  display: flex;
  justify-content: flex-end;
  gap: var(--space-xs, 0.5rem);
  padding: var(--space-md, 1rem);
  border-top: 1px solid var(--transp-1);
}
.wall-edit-modal__btn {
  padding: var(--space-xs, 0.5rem) var(--space-md, 1rem);
  border-radius: var(--border05, 0.5rem);
  font-size: var(--small, 0.75rem);
  font-weight: 500;
  font-family: var(--font);
  cursor: pointer;
  transition: all var(--transition);
}
.wall-edit-modal__btn--cancel {
  background: var(--transp-05);
  border: 1px solid var(--transp-1);
  color: var(--text-400);
}
.wall-edit-modal__btn--cancel:hover {
  background: var(--transp-1);
  color: var(--text);
}
.wall-edit-modal__btn--save {
  background: var(--accent);
  border: none;
  color: #fff;
}
.wall-edit-modal__btn--save:hover {
  opacity: 0.9;
}
.wall-edit-modal__btn--save:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
@keyframes wall-modal-in {
  from {
    opacity: 0;
    transform: scale(0.95) translateY(-10px);
  }
  to {
    opacity: 1;
    transform: scale(1) translateY(0);
  }
}
:root {
  --ref-radius-sm: 8px;
  --ref-radius-md: 12px;
  --ref-radius-lg: 16px;
  --ref-radius-xl: 20px;
  --ref-transition-fast: 0.15s cubic-bezier(0.4, 0, 0.2, 1);
  --ref-transition-normal: 0.25s cubic-bezier(0.4, 0, 0.2, 1);
  --ref-shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.04), 0 1px 3px rgba(0, 0, 0, 0.06);
  --ref-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.06), 0 2px 4px -1px rgba(0, 0, 0, 0.04);
  --ref-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.08), 0 4px 6px -2px rgba(0, 0, 0, 0.04);
  --ref-success: #10b981;
  --ref-success-bg: rgba(16, 185, 129, 0.1);
  --ref-warning: #f59e0b;
  --ref-warning-bg: rgba(245, 158, 11, 0.1);
}
:root[data-theme=dark] {
  --ref-shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.2), 0 1px 3px rgba(0, 0, 0, 0.3);
  --ref-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.3), 0 2px 4px -1px rgba(0, 0, 0, 0.2);
  --ref-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.35), 0 4px 6px -2px rgba(0, 0, 0, 0.2);
}
.referral-page {
  min-height: calc(100vh - 80px);
  padding-bottom: 60px;
}
.referral-hero {
  position: relative;
  padding: 64px 0 48px;
  text-align: center;
  overflow: hidden;
}
.referral-hero__glow {
  position: absolute;
  top: -100px;
  left: 50%;
  transform: translateX(-50%);
  width: 600px;
  height: 400px;
  background: radial-gradient(ellipse at center, var(--accent-alpha-1) 0%, transparent 70%);
  pointer-events: none;
  opacity: 0.7;
}
.referral-hero__content {
  position: relative;
  z-index: 1;
  max-width: 600px;
  margin: 0 auto;
  padding: 0 24px;
}
.referral-hero__badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 16px;
  background: var(--accent-alpha-1);
  border: 1px solid var(--accent-alpha-2);
  border-radius: 24px;
  margin-bottom: 20px;
}
.referral-hero__badge svg {
  width: 16px;
  height: 16px;
  color: var(--accent);
}
.referral-hero__badge span {
  font-size: 13px;
  font-weight: 600;
  color: var(--accent);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.referral-hero__title {
  font-size: clamp(2rem, 4vw, 2.75rem);
  font-weight: 700;
  color: var(--text);
  letter-spacing: -0.03em;
  line-height: 1.15;
  margin-bottom: 12px;
}
.referral-hero__subtitle {
  font-size: 1.0625rem;
  color: var(--text-400);
  line-height: 1.6;
  max-width: 480px;
  margin: 0 auto;
}
.referral-content {
  display: grid;
  grid-template-columns: 1fr 340px;
  gap: 24px;
  max-width: 1200px;
  margin: 0 auto;
}
.referral-main {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.referral-section-title {
  font-size: 17px;
  font-weight: 600;
  color: var(--text);
  margin-bottom: 16px;
  letter-spacing: -0.01em;
}
.referral-link-card {
  background: var(--block);
  border: 1px solid var(--transp-1);
  border-radius: var(--ref-radius-lg);
  overflow: hidden;
}
.referral-link-card__header {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 20px 24px;
  border-bottom: 1px solid var(--transp-05);
}
.referral-link-card__header svg {
  width: 22px;
  height: 22px;
  color: var(--accent);
}
.referral-link-card__header h2 {
  font-size: 16px;
  font-weight: 600;
  color: var(--text);
  margin: 0;
}
.referral-link-card__body {
  padding: 20px 24px;
}
.referral-link-input {
  display: flex;
  gap: 12px;
}
.referral-link-input input {
  flex: 1;
  padding: 14px 18px;
  background: var(--transp-05);
  border: 1px solid var(--transp-1);
  border-radius: var(--ref-radius-md);
  font-size: 14px;
  font-family: "SF Mono", "Fira Code", monospace;
  color: var(--text);
  cursor: text;
  transition: all var(--ref-transition-fast);
}
.referral-link-input input:focus {
  outline: none;
  border-color: var(--accent);
  background: var(--block);
}
.referral-link-copy {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 14px 20px;
  background: var(--accent);
  border: none;
  border-radius: var(--ref-radius-md);
  font-size: 14px;
  font-weight: 500;
  color: white;
  cursor: pointer;
  transition: all var(--ref-transition-fast);
  white-space: nowrap;
}
.referral-link-copy svg {
  width: 18px;
  height: 18px;
}
.referral-link-copy:hover {
  background: var(--accent-500);
  transform: translateY(-1px);
}
.referral-link-copy:active {
  transform: translateY(0);
}
.referral-link-copy--success {
  background: var(--ref-success);
}
.referral-link-copy--success:hover {
  background: var(--ref-success);
}
.referral-link-code {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 16px;
  padding-top: 16px;
  border-top: 1px solid var(--transp-05);
}
.referral-link-code__label {
  font-size: 13px;
  color: var(--text-400);
}
.referral-link-code__value {
  padding: 6px 12px;
  background: var(--transp-1);
  border-radius: 6px;
  font-size: 14px;
  font-weight: 600;
  font-family: "SF Mono", "Fira Code", monospace;
  color: var(--accent);
  letter-spacing: 1px;
}
.referral-stats-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}
.referral-stat-card {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 20px;
  background: var(--blurred-background);
  border: 1px solid var(--transp-1);
  border-radius: var(--ref-radius-lg);
  transition: all var(--ref-transition-fast);
}
.referral-stat-card:hover {
  border-color: var(--transp-2);
  box-shadow: var(--ref-shadow-sm);
}
.referral-stat-card__icon {
  width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--transp-05);
  border-radius: var(--ref-radius-md);
  flex-shrink: 0;
}
.referral-stat-card__icon svg {
  width: 24px;
  height: 24px;
  color: var(--text-400);
}
.referral-stat-card--success .referral-stat-card__icon {
  background: var(--ref-success-bg);
}
.referral-stat-card--success .referral-stat-card__icon svg {
  color: var(--ref-success);
}
.referral-stat-card--warning .referral-stat-card__icon {
  background: var(--ref-warning-bg);
}
.referral-stat-card--warning .referral-stat-card__icon svg {
  color: var(--ref-warning);
}
.referral-stat-card--accent .referral-stat-card__icon {
  background: var(--accent-alpha-1);
}
.referral-stat-card--accent .referral-stat-card__icon svg {
  color: var(--accent);
}
.referral-stat-card__content {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
.referral-stat-card__value {
  font-size: 22px;
  font-weight: 700;
  color: var(--text);
  letter-spacing: -0.02em;
  line-height: 1.2;
}
.referral-stat-card__label {
  font-size: 13px;
  color: var(--text-400);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.referral-list {
  background: var(--blurred-background);
  border: 1px solid var(--transp-1);
  border-radius: var(--ref-radius-lg);
  overflow: hidden;
}
.referral-list-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 20px;
  border-bottom: 1px solid var(--transp-05);
  transition: background var(--ref-transition-fast);
}
.referral-list-item:last-child {
  border-bottom: none;
}
.referral-list-item:hover {
  background: var(--transp-05);
}
.referral-list-item__user {
  display: flex;
  align-items: center;
  gap: 14px;
}
.referral-list-item__avatar {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid var(--transp-1);
}
.referral-list-item__info {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.referral-list-item__name {
  font-size: 15px;
  font-weight: 500;
  color: var(--text);
}
.referral-list-item__date {
  font-size: 13px;
  color: var(--text-400);
}
.referral-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 12px;
  border-radius: 20px;
  font-size: 13px;
  font-weight: 500;
}
.referral-badge svg {
  width: 14px;
  height: 14px;
}
.referral-badge--success {
  background: var(--ref-success-bg);
  color: var(--ref-success);
}
.referral-badge--pending {
  background: var(--ref-warning-bg);
  color: var(--ref-warning);
}
.referral-sidebar {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.referral-info-card {
  background: var(--blurred-background);
  border: 1px solid var(--transp-1);
  border-radius: var(--ref-radius-lg);
  overflow: hidden;
}
.referral-info-card__header {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 16px 20px;
  border-bottom: 1px solid var(--transp-05);
}
.referral-info-card__header svg {
  width: 20px;
  height: 20px;
  color: var(--accent);
}
.referral-info-card__header h3 {
  font-size: 15px;
  font-weight: 600;
  color: var(--text);
  margin: 0;
}
.referral-info-card__body {
  padding: 16px 20px;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.referral-info-item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}
.referral-info-item > svg {
  width: 20px;
  height: 20px;
  color: var(--accent);
  flex-shrink: 0;
  margin-top: 2px;
}
.referral-info-item > div {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.referral-info-item > div strong {
  font-size: 13px;
  font-weight: 500;
  color: var(--text-400);
}
.referral-info-item > div span {
  font-size: 16px;
  font-weight: 600;
  color: var(--text);
}
.referral-how-card {
  background: var(--blurred-background);
  border: 1px solid var(--transp-1);
  border-radius: var(--ref-radius-lg);
  padding: 20px;
}
.referral-how-card h3 {
  font-size: 15px;
  font-weight: 600;
  color: var(--text);
  margin: 0 0 16px;
}
.referral-how-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.referral-how-list li {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}
.referral-how-list li span:last-child {
  font-size: 14px;
  color: var(--text-300);
  line-height: 1.5;
  padding-top: 2px;
}
.referral-how-step {
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--accent);
  border-radius: 50%;
  font-size: 12px;
  font-weight: 600;
  color: white;
  flex-shrink: 0;
}
.ref-profile {
  display: flex;
  flex-direction: column;
  gap: var(--space-lg);
}
.ref-profile__label {
  display: block;
  font-size: var(--p-small);
  font-weight: 600;
  color: var(--text);
  margin-bottom: var(--space-xs);
  letter-spacing: -0.01em;
}
.ref-profile__link-row {
  display: flex;
  gap: var(--space-xs);
  align-items: stretch;
}
.ref-profile__link-input {
  flex: 1;
}
.ref-profile__link-input .input__field {
  font-family: var(--font-mono);
  font-size: var(--p-small);
  letter-spacing: 0.01em;
  cursor: text;
}
.ref-profile__link-input .input__prefix {
  color: var(--text-600);
  font-size: var(--p-small);
}
.ref-profile__code-row {
  display: flex;
  align-items: center;
  gap: var(--space-xs);
  margin-top: var(--space-sm);
}
.ref-profile__code-label {
  font-size: var(--small);
  color: var(--text-500);
  font-weight: 500;
}
.ref-profile__code {
  font-family: var(--font-mono);
  font-size: var(--small);
  font-weight: 600;
  color: var(--accent);
  letter-spacing: 0.08em;
  padding: var(--space-2xs) var(--space-xs);
  background: var(--transp-05);
  border: 1px solid var(--transp-1);
  border-radius: var(--border05);
  cursor: pointer;
  transition: border-color var(--transition), background-color var(--transition);
}
.ref-profile__code:hover {
  border-color: var(--transp-2);
  background: var(--transp-1);
}
.ref-profile__rewards {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--space-sm);
}
.ref-profile__reward {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  padding: var(--space-md);
  background: var(--transp-03);
  border: 1px solid var(--transp-1);
  border-radius: var(--border1);
  transition: border-color var(--transition);
}
.ref-profile__reward:hover {
  border-color: var(--transp-2);
}
.ref-profile__reward-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: var(--border05);
  flex-shrink: 0;
}
.ref-profile__reward-icon svg {
  width: 18px;
  height: 18px;
}
.ref-profile__reward-icon--accent {
  background: var(--success-light);
  color: var(--success);
}
.ref-profile__reward-icon--primary {
  background: var(--info-light);
  color: var(--info);
}
.ref-profile__reward-body {
  display: flex;
  flex-direction: column;
  gap: 1px;
  min-width: 0;
}
.ref-profile__reward-label {
  font-size: var(--small);
  color: var(--text-500);
  font-weight: 500;
  line-height: 1.3;
}
.ref-profile__reward-value {
  font-size: var(--p-small);
  font-weight: 700;
  color: var(--text);
  font-variant-numeric: tabular-nums;
  letter-spacing: -0.02em;
}
.ref-profile__list-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}
.ref-profile__list-header .card-title {
  font-size: var(--p-small);
  font-weight: 600;
}
.ref-profile__list {
  display: flex;
  flex-direction: column;
}
.ref-profile__list-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-sm);
  padding: var(--space-sm) var(--space-lg);
  border-bottom: 1px solid var(--transp-05);
  transition: background-color var(--transition);
}
.ref-profile__list-item:last-child {
  border-bottom: none;
}
.ref-profile__list-item:hover {
  background: var(--transp-03);
}
.ref-profile__list-user {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  min-width: 0;
}
.ref-profile__list-avatar {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
  border: 1px solid var(--transp-1);
}
.ref-profile__list-info {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.ref-profile__list-name {
  font-size: var(--p-small);
  font-weight: 500;
  color: var(--text);
  line-height: 1.3;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.ref-profile__list-date {
  font-size: var(--small);
  color: var(--text-500);
  font-variant-numeric: tabular-nums;
  line-height: 1.3;
}
.ref-profile__empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: var(--space-xl) var(--space-lg);
  background: var(--transp-03);
  border: 1px dashed var(--transp-2);
  border-radius: var(--border1);
}
.ref-profile__empty-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  background: var(--transp-05);
  border: 1px solid var(--transp-1);
  border-radius: var(--border05);
  margin-bottom: var(--space-md);
}
.ref-profile__empty-icon svg {
  width: 22px;
  height: 22px;
  color: var(--text-600);
}
.ref-profile__empty-title {
  font-size: var(--p-small);
  font-weight: 600;
  color: var(--text);
  margin: 0 0 var(--space-2xs);
  line-height: 1.4;
}
.ref-profile__empty-desc {
  font-size: var(--small);
  color: var(--text-500);
  margin: 0 0 var(--space-md);
  max-width: 260px;
  line-height: 1.5;
}
@media (max-width: 640px) {
  .ref-profile__link-row {
    flex-direction: column;
  }
  .ref-profile__rewards {
    grid-template-columns: 1fr;
  }
  .ref-profile__list-item {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--space-xs);
    padding: var(--space-md) var(--space-lg);
  }
}
.referral-field {
  position: relative;
  margin: 16px 0;
  padding: 16px;
  background: linear-gradient(135deg, var(--transp-1) 0%, transparent 100%);
  border: 1px dashed var(--transp-3);
  border-radius: 12px;
  transition: all 0.3s ease;
}
.referral-field--active {
  border-style: solid;
  border-color: var(--success);
  background: linear-gradient(135deg, rgba(16, 185, 129, 0.08) 0%, transparent 100%);
}
.referral-field--active .referral-field__icon {
  background: rgba(16, 185, 129, 0.15);
  color: var(--success);
}
.referral-field .input-wrapper {
  width: 100%;
}
.referral-field__header {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 12px;
}
.referral-field__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  background: var(--transp-1);
  border-radius: 8px;
  color: var(--accent);
  font-size: 16px;
  flex-shrink: 0;
  transition: all 0.3s ease;
}
.referral-field__title {
  font-size: 13px;
  font-weight: 600;
  color: var(--text-primary);
  letter-spacing: 0.01em;
}
.referral-field__input-wrap {
  position: relative;
  display: flex;
  align-items: center;
}
.referral-field__badge {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  background: var(--success);
  border-radius: 50%;
  color: #000;
  font-size: 14px;
  animation: badgePop 0.3s ease;
}
.referral-field__status {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-top: 10px;
  padding: 8px 12px;
  font-size: 12px;
  border-radius: 6px;
  font-weight: 500;
}
.referral-field__status--success {
  background: rgba(16, 185, 129, 0.1);
  color: var(--success);
}
.referral-field__status--success i {
  font-size: 14px;
}
.referral-field__hint {
  margin-top: 8px;
  font-size: 12px;
  color: var(--text-600);
  line-height: 1.4;
}
@keyframes badgePop {
  0% {
    transform: translateY(-50%) scale(0);
    opacity: 0;
  }
  50% {
    transform: translateY(-50%) scale(1.2);
  }
  100% {
    transform: translateY(-50%) scale(1);
    opacity: 1;
  }
}
@media (max-width: 1024px) {
  .referral-content {
    grid-template-columns: 1fr;
  }
  .referral-sidebar {
    order: -1;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
  }
  .referral-stats-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 768px) {
  .referral-hero {
    padding: 48px 0 32px;
  }
  .referral-hero__title {
    font-size: 1.75rem;
  }
  .referral-hero__subtitle {
    font-size: 1rem;
  }
  .referral-sidebar {
    grid-template-columns: 1fr;
  }
  .referral-stats-grid {
    grid-template-columns: 1fr;
  }
  .referral-link-input {
    flex-direction: column;
  }
  .referral-link-input input {
    width: 100%;
  }
  .referral-link-copy {
    width: 100%;
    justify-content: center;
  }
  .referral-stat-card {
    padding: 16px;
  }
  .referral-stat-card__icon {
    width: 42px;
    height: 42px;
  }
  .referral-stat-card__icon svg {
    width: 20px;
    height: 20px;
  }
  .referral-stat-card__value {
    font-size: 20px;
  }
  .referral-list-item {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }
  .referral-list-item__status {
    align-self: flex-start;
  }
}
@media (max-width: 480px) {
  .referral-hero__badge {
    padding: 6px 12px;
  }
  .referral-hero__badge span {
    font-size: 11px;
  }
  .referral-link-card__header, .referral-link-card__body {
    padding: 16px;
  }
  .referral-how-card {
    padding: 16px;
  }
}
.rules-layout {
  display: flex;
  gap: var(--space-lg);
  align-items: flex-start;
  min-height: 50vh;
}
.rules-layout-single .rules-content {
  max-width: 100%;
}
@media (max-width: 768px) {
  .rules-layout {
    flex-direction: column;
    gap: var(--space-md);
  }
}
.rules-sidebar {
  width: 280px;
  min-width: 280px;
  position: sticky;
  top: 80px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  max-height: calc(100vh - 120px);
}
@media (max-width: 768px) {
  .rules-sidebar {
    width: 100%;
    min-width: 100%;
    position: static;
    max-height: 320px;
  }
}
.rules-sidebar__header {
  padding: 16px;
  border-bottom: 1px solid var(--transp-1);
  flex-shrink: 0;
}
.rules-sidebar__title {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  font-weight: 600;
  color: var(--text);
  letter-spacing: -0.01em;
}
.rules-sidebar__title svg {
  width: 16px;
  height: 16px;
  color: var(--text-400);
}
.rules-categories {
  flex: 1;
  overflow-y: auto;
  padding: 6px;
}
.rules-categories::-webkit-scrollbar {
  width: 3px;
}
.rules-categories::-webkit-scrollbar-track {
  background: transparent;
}
.rules-categories::-webkit-scrollbar-thumb {
  background: var(--transp-2);
  border-radius: 10px;
}
.rule-tab-container {
  margin-bottom: 2px;
}
.rule-tab {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  padding: 10px 12px;
  border: none;
  border-radius: var(--border05);
  background: transparent;
  color: var(--text-400);
  text-align: left;
  font-size: 13px;
  font-weight: 500;
  cursor: pointer;
  transition: background 0.1s ease, color 0.1s ease;
  position: relative;
  line-height: 1.4;
}
.rule-tab:hover {
  background: var(--transp-05);
  color: var(--text);
}
.rule-tab.rule-tab-active {
  background: var(--transp-05);
  color: var(--text);
  font-weight: 600;
}
.rule-tab.rule-tab-active::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 2px;
  height: 16px;
  background: var(--text);
  border-radius: 1px;
}
.rule-tab.rule-tab-parent-active {
  background: var(--transp-05);
  color: var(--text);
  font-weight: 600;
}
.rule-tab-toggle {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  border-radius: 4px;
  transition: background 0.1s ease;
}
.rule-tab-toggle:hover {
  background: var(--transp-1);
}
.rule-tab-toggle .toggle-icon {
  width: 12px;
  height: 12px;
  color: var(--text-500);
  transition: transform 0.15s ease;
}
.rule-tab-text {
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.rule-tab-children {
  display: none;
  flex-direction: column;
  padding-left: 20px;
  margin-top: 2px;
  gap: 2px;
}
.rule-tab-child {
  padding: 8px 12px;
  font-size: 12px;
  font-weight: 400;
  color: var(--text-500);
  position: relative;
  margin-left: 0;
  max-width: 100%;
}
.rule-tab-child::before {
  display: none;
}
.rule-tab-child:hover {
  color: var(--text);
  background: var(--transp-05);
}
.rule-tab-child.rule-tab-active {
  color: var(--text);
  background: var(--transp-05);
  font-weight: 500;
}
.rule-tab-child.rule-tab-active::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 2px;
  height: 12px;
  background: var(--text-400);
  border-radius: 1px;
}
.rules-content {
  flex: 1;
  min-width: 0;
  max-width: 800px;
}
@media (max-width: 768px) {
  .rules-content {
    max-width: 100%;
  }
}
.rule-category-content h2 {
  font-size: 1.5rem;
  font-weight: 600;
  color: var(--text);
  margin-bottom: 20px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--transp-1);
  letter-spacing: -0.02em;
}
.rule-content-body {
  padding: var(--space-md) var(--space-lg);
  font-size: var(--p);
  line-height: 1.5;
  color: var(--text);
}
.rule-content-body h1, .rule-content-body h2, .rule-content-body h3, .rule-content-body h4, .rule-content-body h5, .rule-content-body h6 {
  margin-top: 32px;
  margin-bottom: 12px;
  font-weight: 600;
  color: var(--text);
  letter-spacing: -0.01em;
}
.rule-content-body h1:first-child, .rule-content-body h2:first-child, .rule-content-body h3:first-child, .rule-content-body h4:first-child, .rule-content-body h5:first-child, .rule-content-body h6:first-child {
  margin-top: 0;
}
.rule-content-body h1 {
  font-size: 1.75rem;
  font-weight: 700;
}
.rule-content-body h2 {
  font-size: 1.4rem;
  font-weight: 700;
}
.rule-content-body h3 {
  font-size: 1.2rem;
}
.rule-content-body h4 {
  font-size: 1.05rem;
}
.rule-content-body p {
  margin-bottom: 16px;
  color: var(--text-300);
}
.rule-content-body p:last-child {
  margin-bottom: 0;
}
.rule-content-body ul, .rule-content-body ol {
  margin-bottom: 16px;
  padding-left: 24px;
}
.rule-content-body ul li, .rule-content-body ol li {
  margin-bottom: 6px;
  color: var(--text-300);
  line-height: 1.7;
}
.rule-content-body ul li::marker, .rule-content-body ol li::marker {
  color: var(--text-500);
}
.rule-content-body ul ul, .rule-content-body ol ol, .rule-content-body ul ol, .rule-content-body ol ul {
  margin-top: 6px;
  margin-bottom: 0;
}
.rule-content-body blockquote {
  margin: 20px 0;
  padding: 16px 20px;
  background: var(--transp-05);
  border-left: 3px solid var(--text-400);
  border-radius: 0 var(--border05) var(--border05) 0;
  color: var(--text-300);
}
.rule-content-body blockquote p:last-child {
  margin-bottom: 0;
}
.rule-content-body code:not(pre code) {
  padding: 2px 6px;
  background: var(--transp-1);
  border-radius: 4px;
  font-family: var(--font-mono);
  font-size: 0.875em;
  color: var(--text-200);
}
.rule-content-body pre {
  position: relative;
  margin: 20px 0;
  padding: 16px;
  background: var(--secondary);
  border: 1px solid var(--transp-1);
  border-radius: var(--border05);
  overflow-x: auto;
  white-space: pre;
}
.rule-content-body pre code {
  display: block;
  font-family: var(--font-mono);
  font-size: 13px;
  line-height: 1.6;
  color: var(--text);
  background: none;
  padding: 0;
  border-radius: 0;
  white-space: pre;
}
.rule-content-body a {
  color: var(--text);
  text-decoration: underline;
  text-underline-offset: 2px;
  text-decoration-color: var(--text-500);
  transition: text-decoration-color 0.1s ease;
}
.rule-content-body a:hover {
  text-decoration-color: var(--text);
}
.rule-content-body strong {
  font-weight: 600;
  color: var(--text);
}
.rule-content-body em {
  font-style: italic;
}
.rule-content-body hr {
  border: none;
  height: 1px;
  background: var(--transp-1);
  margin: 28px 0;
}
.rule-content-body table {
  width: 100%;
  border-collapse: collapse;
  margin: 20px 0;
  font-size: 14px;
}
.rule-content-body table th, .rule-content-body table td {
  padding: 12px 14px;
  text-align: left;
  border-bottom: 1px solid var(--transp-1);
}
.rule-content-body table th {
  font-weight: 600;
  color: var(--text);
  background: var(--transp-05);
}
.rule-content-body table td {
  color: var(--text-300);
}
.rule-content-body table tr:hover td {
  background: var(--transp-05);
}
.rule-content-body img {
  max-width: 100%;
  height: auto;
  border-radius: var(--border05);
  margin: 16px 0;
}
.rule-content-changed {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-top: 16px;
  font-size: 12px;
  color: var(--text-500);
}
.rule-content-changed svg {
  width: 14px;
  height: 14px;
  opacity: 0.6;
}
.no-rules, .no-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 48px 24px;
  background: var(--transp-05);
  border: 1px solid var(--transp-1);
  border-radius: var(--border1);
}
.no-rules-icon, .no-content-icon {
  width: 48px;
  height: 48px;
  margin-bottom: 16px;
  color: var(--text-500);
  opacity: 0.4;
}
.no-rules p, .no-content p {
  margin: 0;
  font-size: 14px;
  color: var(--text-500);
  line-height: 1.5;
}
#rule-content.htmx-request {
  opacity: 0.6;
  pointer-events: none;
  transition: opacity 0.1s ease;
}
.stats-free .stats__cell-player {
  justify-content: flex-start;
  width: max-content;
}
.stats-free .stats__cell-player img {
  border-radius: 50%;
  width: 40px;
  height: 40px;
  object-fit: cover;
  transition: var(--transition);
}
.stats-free .stats__cell-player-text span {
  font-weight: 500;
  font-size: var(--p);
  line-height: 1.7;
  color: var(--text-300);
}
.stats-free .stats__cell-player-text small {
  line-height: 1.5;
}
.stats-free .stats__cell-player:hover img {
  filter: brightness(0.8);
}
.stats-free .stats__cell-player:hover span {
  color: var(--text);
}
.stats-free .stats__cell-rank {
  text-align: center;
}
.stats-free .stats__cell-rank img {
  max-width: 40px;
  max-height: 40px;
  object-fit: contain;
}
.stats-free .stats__cell-kd {
  font-weight: 600;
  color: var(--bs-success);
}
.stats-free .stats__cell-kd.negative {
  color: var(--bs-danger);
}
.steam-friends-container {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.steam-friends-list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 1rem;
}
@media (max-width: 768px) {
  .steam-friends-list {
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
  }
}
@media (max-width: 480px) {
  .steam-friends-list {
    grid-template-columns: 1fr 1fr;
    gap: 0.75rem;
  }
}
@media (max-width: 360px) {
  .steam-friends-list {
    grid-template-columns: 1fr;
  }
}
.steam-friends-card {
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: var(--space-sm);
  border-radius: var(--border1);
  background-color: var(--transp-05);
  transition: var(--transition);
  position: relative;
  text-decoration: none;
  color: var(--text);
  border: 1px solid var(--transp-1);
  gap: 1rem;
}
.steam-friends-card:hover {
  background-color: var(--transp-2);
}
.steam-friends-avatar {
  width: 50px;
  height: 50px;
  border-radius: var(--border05);
  overflow: hidden;
  flex-shrink: 0;
  position: relative;
}
.steam-friends-avatar::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background-color: var(--text-600);
  border: 2px solid var(--background-950);
  transition: background-color 0.2s ease, border-color 0.2s ease;
}
.steam-friends-avatar--online::after {
  background-color: var(--accent);
}
.steam-friends-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.steam-friends-info {
  flex: 1;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 0.25rem;
}
.steam-friends-name {
  font-weight: 600;
  font-size: var(--p);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  width: 100%;
  line-height: 1.4;
}
.steam-friends-status {
  font-size: var(--small);
  color: var(--text-500);
  line-height: 1.4;
}
.steam-friends-empty {
  text-align: center;
  padding: 2rem;
  background-color: var(--background-950);
  border-radius: var(--border05);
  color: var(--text-500);
  font-size: var(--p-small);
  border: 1px solid var(--background-900);
}
.tabs-widget {
  width: 100%;
}
.tabs-widget .tab-empty-content {
  color: var(--text-400);
  font-style: italic;
  margin: var(--space-md) 0;
}
.tabs-widget .tab-content-inner {
  line-height: 1.6;
}
.tabs-widget .tab-content-inner * {
  line-height: 1.6;
}
.tabs-widget .tab-content-inner p:last-child {
  margin-bottom: 0;
}
.tabs-widget .tab-content-inner ul, .tabs-widget .tab-content-inner ol {
  padding-left: var(--space-lg);
}
.tabs-widget .tab-content-inner a {
  color: var(--accent);
  text-decoration: none;
  font-weight: 500;
  transition: color 0.15s ease;
}
.tabs-widget .tab-content-inner a:hover {
  color: var(--accent-400);
  text-decoration: underline;
}
.tabs-widget .tab-content-inner code {
  background-color: var(--transp-1);
  padding: 0.125rem 0.375rem;
  border-radius: 0.25rem;
  font-family: var(--font-mono);
  font-size: 0.875em;
  color: var(--text);
  border: 1px solid var(--transp-2);
}
.tabs-widget .tab-content-inner pre {
  background-color: var(--transp-1);
  padding: var(--space-md);
  border-radius: var(--border05);
  overflow-x: auto;
  margin-bottom: var(--space-sm);
  border: 1px solid var(--transp-2);
}
.tabs-widget .tab-content-inner pre code {
  background: none;
  padding: 0;
  border: none;
}
.tabs-widget.tabs-position-left .tabs-left-container {
  display: grid;
  grid-template-columns: 200px 1fr;
  gap: var(--space-lg);
  min-height: 300px;
}
@media (max-width: 768px) {
  .tabs-widget.tabs-position-left .tabs-left-container {
    grid-template-columns: 1fr;
    gap: var(--space-md);
  }
}
.tabs-widget.tabs-position-left .tabs-left-container .tabs-left-nav {
  display: flex;
  flex-direction: column;
  gap: var(--space-xs);
  background-color: var(--transp-05);
  border-radius: var(--border1);
  padding: var(--space-sm);
  border: 1px solid var(--transp-1);
  height: fit-content;
}
@media (max-width: 768px) {
  .tabs-widget.tabs-position-left .tabs-left-container .tabs-left-nav {
    flex-direction: row;
    overflow-x: auto;
    padding: var(--space-xs);
    gap: var(--space-xs);
  }
}
.tabs-widget.tabs-position-left .tabs-left-container .tabs-left-nav .tab-left-button {
  width: 100%;
  padding: var(--space-sm) var(--space-md);
  background: none;
  border: none;
  border-radius: var(--border05);
  text-align: left;
  font-size: var(--p-small);
  font-weight: 500;
  color: var(--text-400);
  cursor: pointer;
  transition: all 0.2s ease;
  position: relative;
}
@media (max-width: 768px) {
  .tabs-widget.tabs-position-left .tabs-left-container .tabs-left-nav .tab-left-button {
    white-space: nowrap;
    text-align: center;
    min-width: fit-content;
  }
}
@media (prefers-reduced-motion: reduce) {
  .tabs-widget.tabs-position-left .tabs-left-container .tabs-left-nav .tab-left-button {
    transition: none;
  }
}
.tabs-widget.tabs-position-left .tabs-left-container .tabs-left-nav .tab-left-button:hover {
  background-color: var(--transp-1);
  color: var(--text);
}
.tabs-widget.tabs-position-left .tabs-left-container .tabs-left-nav .tab-left-button:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 2px;
}
.tabs-widget.tabs-position-left .tabs-left-container .tabs-left-nav .tab-left-button.active {
  background-color: var(--accent);
  color: var(--background);
  font-weight: 600;
}
.tabs-widget.tabs-position-left .tabs-left-container .tabs-left-content {
  background-color: var(--background);
  border-radius: var(--border1);
  border: 1px solid var(--transp-1);
  position: relative;
  overflow: hidden;
}
.tabs-widget.tabs-position-left .tabs-left-container .tabs-left-content .tab-left-panel {
  display: none;
  padding: var(--space-lg);
  animation: fadeIn 0.2s ease;
}
@media (prefers-reduced-motion: reduce) {
  .tabs-widget.tabs-position-left .tabs-left-container .tabs-left-content .tab-left-panel {
    animation: none;
  }
}
.tabs-widget.tabs-position-left .tabs-left-container .tabs-left-content .tab-left-panel.active {
  display: block;
}
@media (max-width: 768px) {
  .tabs-widget.tabs-position-left .tabs-left-container .tabs-left-content .tab-left-panel {
    padding: var(--space-md);
  }
}
@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@media (prefers-reduced-motion: reduce) {
  .tabs-widget * {
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}
.tabs-settings-container {
  max-height: 85vh;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
.tabs-settings-form {
  flex: 1;
  overflow-y: auto;
  padding-right: var(--space-xs);
}
.tabs-settings-form .settings-section {
  margin-bottom: var(--space-lg);
  padding-bottom: var(--space-lg);
  border-bottom: 1px solid var(--transp-1);
}
.tabs-settings-form .settings-section:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}
.tabs-settings-form .settings-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-lg);
  align-items: end;
}
@media (max-width: 768px) {
  .tabs-settings-form .settings-grid {
    grid-template-columns: 1fr;
    gap: var(--space-md);
    align-items: stretch;
  }
}
.tabs-settings-form .settings-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: var(--space-md);
}
.tabs-settings-form .settings-header .section-title {
  font-size: var(--h6);
  font-weight: 600;
  margin: 0;
  color: var(--text);
}
.tabs-settings-form .settings-header .btn-add {
  display: flex;
  align-items: center;
  gap: var(--space-xs);
  padding: var(--space-xs) var(--space-md);
  background-color: var(--accent);
  color: var(--background);
  border-radius: var(--border05);
  transition: all var(--transition);
  font-size: var(--p-small);
  font-weight: 500;
}
@media (prefers-reduced-motion: reduce) {
  .tabs-settings-form .settings-header .btn-add {
    transition: none;
  }
}
.tabs-settings-form .settings-header .btn-add:hover {
  background-color: var(--accent-400);
  transform: translateY(-1px);
}
.tabs-settings-form .settings-header .btn-add:active {
  transform: translateY(0);
}
.tabs-settings-form .settings-header .btn-add:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 2px;
}
.tabs-settings-form .settings-header .btn-add svg {
  width: 1.25em;
  height: 1.25em;
}
.tabs-settings-form .tabs-container {
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
}
.tabs-settings-form .tabs-count {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--space-sm) var(--space-md);
  background-color: var(--transp-05);
  border-radius: var(--border05);
  border: 1px solid var(--transp-1);
}
.tabs-settings-form .tabs-count .count-text {
  font-size: var(--p-small);
  color: var(--text-400);
  font-weight: 500;
}
.tabs-settings-form .tabs-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: var(--space-xl);
  text-align: center;
  background-color: var(--background-900);
  border-radius: var(--border05);
  border: 1px solid var(--transp-1);
}
.tabs-settings-form .tabs-empty .empty-text {
  font-size: var(--p);
  font-weight: 500;
  color: var(--text);
  margin-bottom: var(--space-xs);
}
.tabs-settings-form .tabs-empty .empty-subtext {
  font-size: var(--p-small);
  color: var(--text-400);
  margin: 0;
}
.tabs-settings-form .tabs-list {
  display: flex;
  flex-direction: column;
  gap: var(--space-md);
  max-height: 50vh;
  overflow-y: auto;
  padding-right: var(--space-xs);
}
.tabs-settings-form .tabs-list .tab-item {
  background-color: var(--blurred-background);
  border-radius: var(--border1);
  padding: var(--space-md);
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  border: 1px solid var(--transp-1);
}
@media (prefers-reduced-motion: reduce) {
  .tabs-settings-form .tabs-list .tab-item {
    transition: none;
  }
}
.tabs-settings-form .tabs-list .tab-item .tab-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: var(--space-md);
  padding-bottom: var(--space-sm);
  border-bottom: 1px solid var(--transp-1);
}
.tabs-settings-form .tabs-list .tab-item .tab-header .tab-title {
  margin: 0;
  font-size: var(--p);
  font-weight: 600;
  color: var(--text);
}
.tabs-settings-form .tabs-list .tab-item .tab-header .btn-remove-tab {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.75rem;
  height: 1.75rem;
  border-radius: 50%;
  background-color: var(--error-light);
  color: var(--error);
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  border: 1px solid transparent;
  cursor: pointer;
}
@media (prefers-reduced-motion: reduce) {
  .tabs-settings-form .tabs-list .tab-item .tab-header .btn-remove-tab {
    transition: none;
  }
}
.tabs-settings-form .tabs-list .tab-item .tab-header .btn-remove-tab:hover {
  background-color: var(--error);
  color: white;
  border-color: var(--error);
}
.tabs-settings-form .tabs-list .tab-item .tab-header .btn-remove-tab:focus-visible {
  outline: 2px solid var(--error);
  outline-offset: 2px;
}
.tabs-settings-form .tabs-list .tab-item .tab-header .btn-remove-tab svg {
  width: 0.875rem;
  height: 0.875rem;
}
.tabs-settings-form .tabs-list .tab-item .tab-inputs {
  display: flex;
  flex-direction: column;
  gap: var(--space-md);
}
@media (max-width: 768px) {
  .tabs-settings-form .settings-header {
    flex-direction: column;
    align-items: stretch;
    gap: var(--space-sm);
  }
  .tabs-settings-form .settings-header .btn-add {
    justify-content: center;
  }
  .tabs-settings-form .tabs-list .tab-item {
    padding: var(--space-sm);
  }
  .tabs-settings-form .tabs-list .tab-item .tab-header {
    margin-bottom: var(--space-sm);
    padding-bottom: var(--space-xs);
  }
  .tabs-settings-form .tabs-list .tab-item .tab-header .tab-title {
    font-size: var(--p-small);
  }
  .tabs-settings-form .tabs-list .tab-item .tab-header .btn-remove-tab {
    width: 1.5rem;
    height: 1.5rem;
  }
  .tabs-settings-form .tabs-list .tab-item .tab-header .btn-remove-tab svg {
    width: 0.75rem;
    height: 0.75rem;
  }
  .tabs-settings-form .tabs-list .tab-item .tab-inputs {
    gap: var(--space-sm);
  }
}
@media (prefers-reduced-motion: reduce) {
  .tabs-settings-form * {
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}
.welcome-popup {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--space-md);
  opacity: 0;
  visibility: hidden;
  transition: opacity var(--transition), visibility var(--transition);
}
.welcome-popup--visible {
  opacity: 1;
  visibility: visible;
}
.welcome-popup--visible .welcome-popup__card {
  transform: scale(1) translateY(0);
}
.welcome-popup__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.6);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}
.welcome-popup__card {
  position: relative;
  width: 100%;
  max-width: 400px;
  background: var(--secondary);
  border: 1px solid var(--transp-2);
  border-radius: 32px;
  overflow: hidden;
  box-shadow: var(--shadow-medium);
  transform: scale(0.95) translateY(1rem);
  transition: transform 0.5s cubic-bezier(0.16, 1, 0.3, 1);
}
.welcome-popup__glow {
  position: absolute;
  width: 200px;
  height: 200px;
  border-radius: 50%;
  filter: blur(60px);
  pointer-events: none;
  transition: background 0.7s ease;
}
.welcome-popup__glow--top {
  top: -80px;
  right: -80px;
}
.welcome-popup__glow--bottom {
  bottom: -80px;
  left: -80px;
}
.welcome-popup__glow--center {
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  margin-top: -32px;
  width: 120px;
  height: 120px;
  filter: blur(50px);
}
.welcome-popup__content {
  position: relative;
  z-index: 10;
  padding: var(--space-lg);
  display: flex;
  flex-direction: column;
  min-height: 400px;
  transition: opacity 0.15s ease;
}
.welcome-popup__content--animating {
  opacity: 0.5;
}
.welcome-popup__content--info {
  align-items: center;
  text-align: center;
  min-height: auto;
  padding: var(--space-lg);
}
.welcome-popup__header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: var(--space-xl);
}
.welcome-popup__icon-wrapper {
  width: 48px;
  height: 48px;
  border-radius: 16px;
  background: var(--transp-1);
  border: 1px solid var(--transp-2);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.5s ease;
  font-size: 20px;
}
.welcome-popup__icon-wrapper-big {
  width: 60px;
  height: 60px;
  font-size: 30px;
}
.welcome-popup__icon-wrapper--info {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  margin-bottom: var(--space-lg);
  box-shadow: var(--shadow-medium);
}
.welcome-popup__icon {
  font-size: 24px;
  transition: color 0.5s ease;
}
.welcome-popup__icon-big {
  font-size: 50px;
}
.welcome-popup__close {
  padding: var(--space-xs);
  background: transparent;
  border: none;
  cursor: pointer;
  color: var(--text-500);
  transition: color var(--transition);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--border05);
}
.welcome-popup__close:hover {
  color: var(--text);
  background: var(--transp-1);
}
.welcome-popup__close--info {
  position: absolute;
  top: var(--space-md);
  right: var(--space-md);
}
.welcome-popup__body {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.welcome-popup__body--info {
  flex: 0;
  margin-bottom: var(--space-lg);
}
.welcome-popup__body--info p {
  font-size: var(--p-small);
  color: var(--text-500);
  line-height: 1.6;
}
.welcome-popup__title {
  font-size: var(--h3);
  font-weight: 700;
  color: var(--text);
  margin-bottom: var(--space-md);
  letter-spacing: -0.025em;
  line-height: 1.2;
}
.welcome-popup__title--info {
  font-size: var(--h5);
  margin-bottom: var(--space-xs);
}
.welcome-popup__description {
  font-size: var(--p);
  color: var(--text-500);
  line-height: 1.6;
}
.welcome-popup__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: var(--space-xl);
}
.welcome-popup__dots {
  display: flex;
  gap: var(--space-xs);
}
.welcome-popup__dot {
  height: 6px;
  width: 6px;
  border-radius: 3px;
  background: var(--transp-3);
  transition: all 0.3s ease;
  cursor: pointer;
}
.welcome-popup__dot:hover {
  background: var(--text-600);
}
.welcome-popup__dot--active {
  width: 24px;
  background: var(--text);
}
.welcome-popup__steps {
  position: relative;
}
.welcome-popup__info {
  position: relative;
}
.welcome-popup__info .welcome-popup__card {
  max-width: 360px;
}
.welcome-popup__info .welcome-popup__content {
  min-height: auto;
}
.welcome-popup__info-text {
  font-size: var(--p-small);
  color: var(--text-500);
  line-height: 1.6;
  text-align: left;
  margin-top: var(--space-sm);
}
.welcome-popup__info-text p {
  margin: 0 0 var(--space-sm);
}
.welcome-popup__info-text p:last-child {
  margin-bottom: 0;
}
.welcome-popup__info-text a {
  color: var(--accent);
  text-decoration: underline;
}
.welcome-popup__info-text a:hover {
  text-decoration: none;
}
.welcome-popup__info-text strong, .welcome-popup__info-text b {
  color: var(--text);
  font-weight: 600;
}
.welcome-popup__info-text ul, .welcome-popup__info-text ol {
  margin: var(--space-sm) 0;
  padding-left: var(--space-lg);
}
.welcome-popup__info-text li {
  margin-bottom: var(--space-2xs);
  line-height: 1.5;
}
@media (max-width: 480px) {
  .welcome-popup {
    padding: var(--space-xs);
  }
  .welcome-popup__card {
    border-radius: 24px;
  }
  .welcome-popup__content {
    padding: var(--space-lg);
    min-height: 380px;
  }
  .welcome-popup__content--info {
    min-height: auto;
    padding: var(--space-md);
  }
  .welcome-popup__title {
    font-size: var(--h4);
  }
  .welcome-popup__title--info {
    font-size: var(--h6);
  }
  .welcome-popup__description {
    font-size: var(--p-small);
  }
  .welcome-popup__icon-wrapper {
    width: 40px;
    height: 40px;
    border-radius: 12px;
  }
  .welcome-popup__icon-wrapper--info {
    width: 56px;
    height: 56px;
  }
  .welcome-popup__icon {
    font-size: 20px;
  }
  .welcome-popup__footer {
    flex-direction: column-reverse;
    gap: var(--space-md);
  }
  .welcome-popup__btn {
    width: 100%;
    justify-content: center;
  }
  .welcome-popup__btn--next {
    width: 100%;
  }
  .welcome-popup__dots {
    justify-content: center;
    width: 100%;
  }
}
:root {
  --wiki-sidebar-width: 280px;
  --wiki-toc-width: 260px;
  --wiki-content-max: 800px;
  --wiki-transition-fast: 0.15s cubic-bezier(0.4, 0, 0.2, 1);
  --wiki-transition-normal: 0.25s cubic-bezier(0.4, 0, 0.2, 1);
  --wiki-transition-smooth: 0.35s cubic-bezier(0.4, 0, 0.2, 1);
  --wiki-radius-xs: 4px;
  --wiki-radius-sm: 8px;
  --wiki-radius-md: 12px;
  --wiki-radius-lg: 16px;
  --wiki-radius-xl: 20px;
  --wiki-radius-full: 9999px;
  --wiki-blur: 20px;
  --wiki-blur-heavy: 40px;
  --wiki-shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.04), 0 1px 3px rgba(0, 0, 0, 0.06);
  --wiki-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.06), 0 2px 4px -1px rgba(0, 0, 0, 0.04);
  --wiki-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.08), 0 4px 6px -2px rgba(0, 0, 0, 0.04);
  --wiki-shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.08), 0 10px 10px -5px rgba(0, 0, 0, 0.03);
  --wiki-glass-bg: rgba(255, 255, 255, 0.6);
  --wiki-glass-border: rgba(255, 255, 255, 0.2);
}
:root[data-theme=dark] {
  --wiki-shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.2), 0 1px 3px rgba(0, 0, 0, 0.3);
  --wiki-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.3), 0 2px 4px -1px rgba(0, 0, 0, 0.2);
  --wiki-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.35), 0 4px 6px -2px rgba(0, 0, 0, 0.2);
  --wiki-shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.4), 0 10px 10px -5px rgba(0, 0, 0, 0.2);
  --wiki-glass-bg: rgba(28, 28, 30, 0.75);
  --wiki-glass-border: rgba(255, 255, 255, 0.08);
}
.wiki-page {
  display: flex;
  min-height: 50vh;
  background: var(--background);
  position: relative;
  align-items: flex-start;
}
.wiki-container {
  display: flex;
  flex: 1;
  max-width: 1400px;
  margin: 0 auto;
  width: 100%;
}
.wiki-main {
  flex: 1;
  padding-left: var(--space-xl);
  min-width: 0;
  display: flex;
  flex-direction: column;
}
.wiki-content-wrapper {
  display: flex;
  gap: 24px;
  flex: 1;
}
.wiki-content {
  flex: 1;
  min-width: 0;
  max-width: 100%;
}
.wiki-breadcrumbs {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  color: var(--text-500);
  margin-bottom: 32px;
}
.wiki-breadcrumb__link {
  color: var(--text-500);
  transition: color var(--wiki-transition-fast);
  cursor: pointer;
  text-decoration: none;
  display: flex;
  align-items: center;
}
.wiki-breadcrumb__link svg {
  width: 14px;
  height: 14px;
}
.wiki-breadcrumb__link:hover {
  color: var(--text);
}
.wiki-breadcrumb__separator {
  color: var(--text-600);
  width: 12px;
  height: 12px;
  flex-shrink: 0;
}
.wiki-breadcrumb__current {
  color: var(--text-300);
  font-weight: 500;
  max-width: 200px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.wiki-article-header {
  margin-bottom: 40px;
  padding-bottom: 32px;
  border-bottom: 1px solid var(--transp-1);
}
.wiki-article__meta {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 20px;
  flex-wrap: wrap;
}
.wiki-article__category {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 14px;
  background: var(--transp-05);
  border: 1px solid var(--transp-1);
  border-radius: var(--wiki-radius-full);
  font-size: 12px;
  font-weight: 500;
  color: var(--text-400);
  transition: all var(--wiki-transition-fast);
}
.wiki-article__category svg {
  width: 12px;
  height: 12px;
  opacity: 0.7;
}
.wiki-article__category:hover {
  background: var(--transp-1);
  border-color: var(--transp-2);
}
.wiki-article__title {
  font-size: clamp(1.75rem, 4vw, 2.5rem);
  font-weight: 700;
  color: var(--text);
  line-height: 1.2;
  margin-bottom: 16px;
  letter-spacing: -0.025em;
}
.wiki-article__description {
  font-size: 1.05rem;
  color: var(--text-400);
  line-height: 1.7;
  margin-bottom: 24px;
}
.wiki-article__info {
  display: flex;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
}
.wiki-article__info-item {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  color: var(--text-500);
}
.wiki-article__info-item svg {
  opacity: 0.6;
  width: 14px;
  height: 14px;
}
.wiki-article__author {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  transition: opacity var(--wiki-transition-fast);
}
.wiki-article__author:hover {
  opacity: 0.8;
}
.wiki-article__author-avatar {
  width: 24px;
  height: 24px;
  border-radius: var(--wiki-radius-sm);
  object-fit: cover;
}
.wiki-article__author-name {
  font-size: 13px;
  font-weight: 500;
  color: var(--text);
}
.wiki-tags {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  margin-top: 20px;
}
.wiki-tag {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 4px 10px;
  background: var(--transp-05);
  border: 1px solid var(--transp-1);
  border-radius: var(--wiki-radius-sm);
  font-size: 12px;
  color: var(--text-500);
  cursor: default;
  transition: all var(--wiki-transition-fast);
}
.wiki-tag svg {
  width: 10px;
  height: 10px;
  opacity: 0.5;
}
.wiki-sidebar {
  width: var(--wiki-sidebar-width);
  min-width: var(--wiki-sidebar-width);
  background: var(--wiki-glass-bg);
  backdrop-filter: blur(var(--wiki-blur));
  -webkit-backdrop-filter: blur(var(--wiki-blur));
  border: 1px solid var(--transp-1);
  border-radius: var(--wiki-radius-lg);
  position: sticky;
  top: 80px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
.wiki-sidebar__header {
  padding: 20px 16px;
  border-bottom: 1px solid var(--transp-1);
  flex-shrink: 0;
}
.wiki-sidebar__title {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  font-weight: 600;
  color: var(--text);
  margin-bottom: 12px;
  letter-spacing: -0.01em;
}
.wiki-sidebar__title svg {
  color: var(--accent);
  width: 18px;
  height: 18px;
}
.wiki-search-wrapper {
  position: relative;
}
.wiki-search__icon {
  position: absolute;
  left: 10px;
  top: 50%;
  transform: translateY(-50%);
  color: var(--text-500);
  pointer-events: none;
  width: 14px;
  height: 14px;
  transition: color 0.15s ease;
}
.wiki-search__input {
  width: 100%;
  padding: 8px 10px 8px 32px;
  background: var(--transp-05);
  border: 1px solid var(--transp-1);
  border-radius: var(--wiki-radius-sm);
  color: var(--text);
  font-size: 12px;
  transition: border-color 0.15s ease;
}
.wiki-search__input:focus {
  border-color: var(--accent);
  outline: none;
}
.wiki-search__input:focus + .wiki-search__icon, .wiki-search__input:focus ~ .wiki-search__icon {
  color: var(--accent);
}
.wiki-search__input::placeholder {
  color: var(--text-600);
}
.wiki-search__results {
  position: absolute;
  top: calc(100% + 6px);
  left: 0;
  right: 0;
  background: var(--wiki-glass-bg);
  border: 1px solid var(--transp-1);
  border-radius: var(--wiki-radius-sm);
  box-shadow: var(--wiki-shadow-lg);
  max-height: 280px;
  overflow-y: auto;
  z-index: 200;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-4px);
  transition: opacity 0.15s ease, transform 0.15s ease, visibility 0.15s ease;
}
.wiki-search__results--open {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.wiki-search__result-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  cursor: pointer;
  transition: background 0.1s ease;
  text-decoration: none;
}
.wiki-search__result-item:not(:last-child) {
  border-bottom: 1px solid var(--transp-05);
}
.wiki-search__result-item:hover {
  background: var(--transp-05);
}
.wiki-search__result-icon {
  color: var(--text-500);
  width: 14px;
  height: 14px;
  flex-shrink: 0;
}
.wiki-search__result-content {
  flex: 1;
  min-width: 0;
  text-align: left;
}
.wiki-search__result-title {
  font-size: 12px;
  font-weight: 500;
  color: var(--text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.4;
}
.wiki-search__result-category {
  font-size: 10px;
  color: var(--text-500);
  margin-top: 1px;
  line-height: 1.4;
}
.wiki-search__no-results {
  padding: 16px 12px;
  text-align: center;
  color: var(--text-500);
  font-size: 12px;
}
.wiki-categories {
  flex: 1;
  overflow-y: auto;
  padding: 8px;
}
.wiki-categories::-webkit-scrollbar {
  width: 3px;
}
.wiki-categories::-webkit-scrollbar-track {
  background: transparent;
}
.wiki-categories::-webkit-scrollbar-thumb {
  background: var(--transp-2);
  border-radius: var(--wiki-radius-full);
}
.wiki-category:not(:last-child) {
  margin-bottom: 2px;
}
.wiki-category__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 6px 10px;
  border-radius: var(--wiki-radius-sm);
  cursor: pointer;
  transition: background 0.1s ease;
  user-select: none;
  gap: 6px;
}
.wiki-category__header:hover {
  background: var(--transp-05);
}
.wiki-category__header--active {
  background: var(--transp-05);
}
.wiki-category__title {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  font-weight: 500;
  color: var(--text);
  flex: 1;
  min-width: 0;
}
.wiki-category__title span:not(.wiki-category__icon) {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.wiki-category__icon {
  color: var(--text-400);
  width: 14px;
  height: 14px;
  flex-shrink: 0;
}
.wiki-category__header--active .wiki-category__icon {
  color: var(--accent);
}
.wiki-category__meta {
  display: flex;
  align-items: center;
  gap: 4px;
  flex-shrink: 0;
}
.wiki-category__count {
  font-size: 10px;
  font-weight: 500;
  color: var(--text-500);
  background: var(--transp-1);
  padding: 1px 5px;
  border-radius: var(--wiki-radius-full);
  min-width: 16px;
  text-align: center;
}
.wiki-category__chevron {
  color: var(--text-500);
  transition: transform 0.2s ease;
  width: 12px;
  height: 12px;
  flex-shrink: 0;
}
.wiki-category__chevron--open {
  transform: rotate(180deg);
}
.wiki-articles-list {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.25s ease;
}
.wiki-articles-list--open {
  grid-template-rows: 1fr;
}
.wiki-articles-list__inner {
  overflow: hidden;
  padding-left: 22px;
}
.wiki-articles-list--open .wiki-articles-list__inner {
  padding-top: 2px;
  padding-bottom: 4px;
}
.wiki-article-item {
  display: block;
  padding: 8px 10px;
  font-size: 12px;
  color: var(--text-400);
  border-radius: var(--wiki-radius-sm);
  cursor: pointer;
  transition: color 0.1s ease, background 0.1s ease;
  text-decoration: none;
  line-height: 1.4;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.wiki-article-item:hover {
  color: var(--text);
  background: var(--transp-05);
}
.wiki-article-item--active {
  color: var(--accent);
  background: var(--transp-05);
  font-weight: 500;
}
.wiki-article-item__icon {
  display: none;
}
.wiki-article-item__text {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
}
.wiki-article-content {
  font-size: 15px;
  line-height: 1.8;
  color: var(--text);
  max-width: var(--wiki-content-max);
}
.wiki-article-content h2 {
  font-size: 1.5rem;
  font-weight: 600;
  color: var(--text);
  margin: 40px 0 16px;
  scroll-margin-top: 100px;
  letter-spacing: -0.02em;
}
.wiki-article-content h2:first-child {
  margin-top: 0;
  padding-top: 0;
  border-top: none;
}
.wiki-article-content h3 {
  font-size: 1.2rem;
  font-weight: 600;
  color: var(--text);
  margin: 28px 0 12px;
  scroll-margin-top: 100px;
  letter-spacing: -0.01em;
}
.wiki-article-content h4 {
  font-size: 1.05rem;
  font-weight: 600;
  color: var(--text);
  margin: 20px 0 10px;
  scroll-margin-top: 100px;
}
.wiki-article-content p {
  color: var(--text-300);
}
.wiki-article-content ul, .wiki-article-content ol {
  margin-bottom: 18px;
  padding-left: 20px;
}
.wiki-article-content li {
  color: var(--text-300);
}
.wiki-article-content li::marker {
  color: var(--text-500);
}
.wiki-article-content a {
  color: var(--accent);
  text-decoration: none;
  border-bottom: 1px solid transparent;
  transition: all var(--wiki-transition-fast);
}
.wiki-article-content a:hover {
  border-bottom-color: var(--accent);
}
.wiki-article-content strong {
  font-weight: 600;
  color: var(--text);
}
.wiki-article-content em {
  font-style: italic;
}
.wiki-article-content blockquote {
  margin: 24px 0;
  padding: 16px 20px;
  background: var(--transp-05);
  border-left: 3px solid var(--accent);
  border-radius: 0 var(--wiki-radius-md) var(--wiki-radius-md) 0;
  color: var(--text-300);
}
.wiki-article-content blockquote p:last-child {
  margin-bottom: 0;
}
.wiki-article-content pre {
  position: relative;
  margin: 24px 0;
  background: var(--background-800);
  border: 1px solid var(--transp-1);
  border-radius: var(--wiki-radius-md);
  overflow: hidden;
}
.wiki-article-content pre code {
  display: block;
  overflow-x: auto;
  font-family: var(--font-mono);
  font-size: 13px;
  line-height: 1.6;
  color: var(--text);
  white-space: pre;
}
.wiki-article-content code:not(pre code) {
  padding: 2px 6px;
  background: var(--transp-1);
  border-radius: var(--wiki-radius-xs);
  font-family: var(--font-mono);
  font-size: 0.875em;
  color: var(--text-200);
}
.wiki-article-content img {
  max-width: 100%;
  height: auto;
  border-radius: var(--wiki-radius-md);
  margin: 20px 0;
}
.wiki-article-content table {
  width: 100%;
  border-collapse: collapse;
  margin: 24px 0;
  font-size: 14px;
}
.wiki-article-content table th, .wiki-article-content table td {
  padding: 12px 16px;
  text-align: left;
  border-bottom: 1px solid var(--transp-1);
}
.wiki-article-content table th {
  font-weight: 600;
  color: var(--text);
  background: var(--transp-05);
}
.wiki-article-content table td {
  color: var(--text-300);
}
.wiki-article-content table tr:hover td {
  background: var(--transp-05);
}
.wiki-article-content hr {
  border: none;
  height: 1px;
  background: var(--transp-1);
  margin: 32px 0;
}
.wiki-article-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 60px 20px;
  color: var(--text-500);
}
.wiki-article-empty svg {
  width: 48px;
  height: 48px;
  margin-bottom: 16px;
  opacity: 0.4;
}
.wiki-article-empty p {
  font-size: 14px;
  color: var(--text-500);
}
.wiki-article-footer {
  margin-top: 56px;
  padding-top: 32px;
  border-top: 1px solid var(--transp-1);
  max-width: var(--wiki-content-max);
}
.wiki-feedback {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 20px 24px;
  background: var(--transp-05);
  border: 1px solid var(--transp-1);
  border-radius: var(--wiki-radius-lg);
  margin-bottom: 32px;
  gap: 16px;
}
.wiki-feedback__question {
  font-size: 14px;
  font-weight: 500;
  color: var(--text);
}
.wiki-feedback__buttons {
  display: flex;
  gap: 10px;
}
.wiki-feedback__btn {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 8px 16px;
  background: var(--transp-05);
  border: 1px solid var(--transp-1);
  border-radius: var(--wiki-radius-sm);
  font-size: 13px;
  font-weight: 500;
  color: var(--text-400);
  cursor: pointer;
  transition: all var(--wiki-transition-fast);
}
.wiki-feedback__btn svg {
  width: 14px;
  height: 14px;
}
.wiki-feedback__btn:hover {
  background: var(--transp-1);
  color: var(--text);
}
.wiki-feedback__btn--positive:hover, .wiki-feedback__btn--positive.active {
  border-color: var(--success);
  color: var(--success);
  background: var(--success-light);
}
.wiki-feedback__btn--negative:hover, .wiki-feedback__btn--negative.active {
  border-color: var(--error);
  color: var(--error);
  background: var(--error-light);
}
.wiki-feedback__count {
  font-size: 12px;
  color: var(--text-500);
  margin-left: 2px;
}
.wiki-related {
  margin-top: 32px;
}
.wiki-related__title {
  font-size: 1rem;
  font-weight: 600;
  color: var(--text);
  margin-bottom: 16px;
}
.wiki-related__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
}
.wiki-related__card {
  display: flex;
  flex-direction: column;
  padding: 18px 20px;
  background: var(--transp-05);
  border: 1px solid var(--transp-1);
  border-radius: var(--wiki-radius-md);
  cursor: pointer;
  transition: all var(--wiki-transition-fast);
  text-decoration: none;
}
.wiki-related__card:hover {
  background: var(--transp-1);
  border-color: var(--transp-2);
}
.wiki-related__category {
  font-size: 10px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--text-500);
  margin-bottom: 6px;
}
.wiki-related__card-title {
  font-size: 14px;
  font-weight: 600;
  color: var(--text);
  margin-bottom: 4px;
  line-height: 1.4;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.wiki-related__card-desc {
  font-size: 12px;
  color: var(--text-500);
  line-height: 1.5;
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.wiki-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 80px 20px;
  text-align: center;
}
.wiki-empty__icon {
  width: 72px;
  height: 72px;
  border-radius: var(--wiki-radius-lg);
  background: var(--transp-05);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 24px;
}
.wiki-empty__icon svg {
  width: 32px;
  height: 32px;
  color: var(--text-500);
}
.wiki-empty h3 {
  font-size: 1.25rem;
  font-weight: 600;
  color: var(--text);
  margin-bottom: 8px;
}
.wiki-empty p {
  font-size: 14px;
  color: var(--text-500);
  max-width: 320px;
}
.wiki-toc {
  width: 200px;
  min-width: 200px;
  position: sticky;
  top: 100px;
  height: fit-content;
  max-height: calc(100vh - 140px);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  flex-shrink: 0;
}
.wiki-toc__title {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--text-500);
  margin-bottom: 12px;
}
.wiki-toc__title svg {
  width: 12px;
  height: 12px;
  opacity: 0.6;
}
.wiki-toc__list {
  list-style: none;
  padding: 0;
  margin: 0;
  overflow-y: auto;
  flex: 1;
  position: relative;
  padding-left: 12px;
}
.wiki-toc__list::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 1px;
  background: var(--transp-1);
}
.wiki-toc__list::-webkit-scrollbar {
  width: 2px;
}
.wiki-toc__list::-webkit-scrollbar-track {
  background: transparent;
}
.wiki-toc__list::-webkit-scrollbar-thumb {
  background: var(--transp-2);
  border-radius: var(--wiki-radius-full);
}
.wiki-toc__item {
  margin-bottom: 0;
  position: relative;
}
.wiki-toc__link {
  display: block;
  font-size: 12px;
  color: var(--text-500);
  line-height: 1.5;
  cursor: pointer;
  transition: all var(--wiki-transition-fast);
  padding: 4px 0;
  position: relative;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  line-clamp: 2;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.wiki-toc__link::before {
  content: "";
  position: absolute;
  left: -12px;
  top: 50%;
  transform: translateY(-50%);
  width: 1px;
  height: 0;
  background: var(--accent);
  transition: height var(--wiki-transition-fast);
}
.wiki-toc__link:hover {
  color: var(--text);
}
.wiki-toc__link--active {
  color: var(--accent);
  font-weight: 500;
}
.wiki-toc__link--active::before {
  height: 16px;
}
.wiki-toc__link--h3 {
  padding-left: 12px;
  font-size: 11px;
  color: var(--text-500);
}
.wiki-toc__link--h3::before {
  left: 0px;
}
.wiki-last-updated {
  margin-top: 20px;
  padding-top: 16px;
  border-top: 1px solid var(--transp-1);
  flex-shrink: 0;
}
.wiki-last-updated__title {
  font-size: 10px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--text-500);
  margin-bottom: 10px;
}
.wiki-update-item {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 12px;
  color: var(--text-400);
  cursor: pointer;
  transition: opacity var(--wiki-transition-fast);
  text-decoration: none;
}
.wiki-update-item:hover {
  opacity: 0.8;
}
.wiki-update-item__avatar {
  width: 26px;
  height: 26px;
  border-radius: var(--wiki-radius-sm);
  object-fit: cover;
  flex-shrink: 0;
}
.wiki-update-item__avatar--placeholder {
  background: var(--transp-1);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 9px;
  font-weight: 600;
  color: var(--text-400);
}
.wiki-update-item__info {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 1px;
}
.wiki-update-item__author {
  font-weight: 500;
  color: var(--text);
  font-size: 11px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  line-height: 1.25;
}
.wiki-update-item__date {
  line-height: 1.25;
  font-size: 10px;
  color: var(--text-500);
}
.wiki-code-wrapper {
  position: relative;
  margin: 24px 0;
  background: var(--secondary);
  border: 1px solid var(--transp-1);
  border-radius: var(--wiki-radius-lg);
  overflow: hidden;
}
.wiki-code-wrapper pre {
  margin: 0;
  border: none;
  border-radius: 0;
  background: transparent;
}
.wiki-code-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 14px;
  background: var(--transp-05);
  border-bottom: 1px solid var(--transp-1);
}
.wiki-code-lang {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 11px;
  font-weight: 500;
  color: var(--text-500);
  font-family: var(--font-mono);
  text-transform: uppercase;
  letter-spacing: 0.3px;
}
.wiki-code-lang svg {
  opacity: 0.6;
}
.wiki-code-copy {
  display: flex;
  align-items: center;
  gap: 5px;
  padding: 5px 10px;
  background: var(--transp-05);
  border: 1px solid var(--transp-1);
  border-radius: var(--wiki-radius-sm);
  font-size: 11px;
  font-weight: 500;
  color: var(--text-500);
  cursor: pointer;
  transition: all var(--wiki-transition-fast);
}
.wiki-code-copy svg {
  width: 12px;
  height: 12px;
}
.wiki-code-copy:hover {
  background: var(--transp-1);
  color: var(--text);
  border-color: var(--transp-2);
}
.wiki-code-copy.copied {
  color: var(--success);
  border-color: var(--success);
  background: var(--success-light);
}
.wiki-landing {
  min-height: calc(100vh - 80px);
  padding-bottom: 80px;
}
.wiki-landing__hero {
  position: relative;
  padding: 72px 0 56px;
  text-align: center;
}
.wiki-landing__hero::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 800px;
  height: 500px;
  background: radial-gradient(ellipse at center, var(--accent-alpha-1) 0%, transparent 70%);
  pointer-events: none;
  opacity: 0.6;
}
.wiki-landing__hero-content {
  position: relative;
  z-index: 1;
  max-width: 580px;
  margin: 0 auto;
  padding: 0 24px;
}
.wiki-landing__title {
  font-size: clamp(2.25rem, 5vw, 3rem);
  font-weight: 700;
  color: var(--text);
  letter-spacing: -0.035em;
  line-height: 1.1;
  margin-bottom: 12px;
}
.wiki-landing__subtitle {
  font-size: 1.0625rem;
  color: var(--text-400);
  line-height: 1.6;
  margin-bottom: 36px;
  text-align: center;
}
.wiki-landing__search {
  position: relative;
  max-width: 520px;
  margin: 0 auto;
}
.wiki-landing__search-box {
  position: relative;
  display: flex;
  align-items: center;
}
.wiki-landing__search-icon {
  position: absolute;
  left: 20px;
  width: 20px;
  height: 20px;
  color: var(--text-500);
  pointer-events: none;
  transition: color 0.2s ease;
}
.wiki-landing__search-input {
  width: 100%;
  padding: 18px 100px 18px 54px;
  background: var(--block);
  border: 1px solid var(--transp-1);
  border-radius: 14px;
  font-size: 16px;
  color: var(--text);
  transition: all 0.2s ease;
  box-shadow: 0 2px 16px -4px rgba(0, 0, 0, 0.06);
}
.wiki-landing__search-input::placeholder {
  color: var(--text-500);
}
.wiki-landing__search-input:hover {
  border-color: var(--transp-2);
}
.wiki-landing__search-input:focus {
  outline: none;
  border-color: var(--accent);
  box-shadow: 0 2px 16px -4px rgba(0, 0, 0, 0.06), 0 0 0 3px var(--accent-alpha-1);
}
.wiki-landing__search-input:focus ~ .wiki-landing__search-icon {
  color: var(--accent);
}
.wiki-landing__search-hint {
  position: absolute;
  right: 16px;
  display: flex;
  gap: 4px;
  pointer-events: none;
}
.wiki-landing__search-hint kbd {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 24px;
  height: 24px;
  padding: 0 6px;
  background: var(--transp-05);
  border: 1px solid var(--transp-1);
  border-radius: 6px;
  font-size: 11px;
  font-family: inherit;
  color: var(--text-500);
}
.wiki-landing__search-results {
  top: calc(100% + 8px);
  border-radius: 12px;
  max-height: 360px;
}
.wiki-category-section {
  margin-bottom: 32px;
}
.wiki-category-section:last-child {
  margin-bottom: 0;
}
.wiki-category-section__header {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 20px 24px;
  background: var(--block);
  border: 1px solid var(--transp-1);
  border-radius: 16px 16px 0 0;
  border-bottom: none;
}
.wiki-category-section__icon {
  width: 44px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--accent-alpha-1);
  border-radius: 12px;
  flex-shrink: 0;
}
.wiki-category-section__icon svg {
  width: 22px;
  height: 22px;
  color: var(--accent);
}
.wiki-category-section__info {
  flex: 1;
  min-width: 0;
}
.wiki-category-section__title {
  font-size: 17px;
  font-weight: 600;
  color: var(--text);
  margin-bottom: 2px;
  letter-spacing: -0.01em;
}
.wiki-category-section__desc {
  font-size: 13px;
  color: var(--text-400);
  line-height: 1.4;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.wiki-category-section__count {
  font-size: 13px;
  font-weight: 600;
  color: var(--text-500);
  background: var(--transp-1);
  padding: 4px 12px;
  border-radius: 20px;
  flex-shrink: 0;
}
.wiki-category-section__articles {
  background: var(--block);
  border: 1px solid var(--transp-1);
  border-radius: 0 0 16px 16px;
  overflow: hidden;
}
.wiki-article-row {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 16px 24px;
  text-decoration: none;
  transition: background 0.15s ease;
  border-bottom: 1px solid var(--transp-05);
}
.wiki-article-row:last-child {
  border-bottom: none;
}
.wiki-article-row:hover {
  background: var(--transp-05);
}
.wiki-article-row:hover .wiki-article-row__arrow {
  transform: translateX(4px);
  opacity: 1;
}
.wiki-article-row:hover .wiki-article-row__title {
  color: var(--accent);
}
.wiki-article-row__content {
  flex: 1;
  min-width: 0;
}
.wiki-article-row__title {
  font-size: 15px;
  font-weight: 500;
  color: var(--text);
  margin-bottom: 2px;
  transition: color 0.15s ease;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.wiki-article-row__desc {
  font-size: 13px;
  color: var(--text-400);
  line-height: 1.4;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.wiki-article-row__arrow {
  width: 18px;
  height: 18px;
  color: var(--text-400);
  opacity: 0.4;
  flex-shrink: 0;
  transition: all 0.2s ease;
}
.wiki-landing__empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 80px 24px;
  text-align: center;
}
.wiki-landing__empty svg {
  width: 56px;
  height: 56px;
  color: var(--text-500);
  opacity: 0.4;
  margin-bottom: 20px;
}
.wiki-landing__empty h3 {
  font-size: 1.125rem;
  font-weight: 600;
  color: var(--text);
  margin-bottom: 6px;
}
.wiki-landing__empty p {
  font-size: 14px;
  color: var(--text-400);
}
@media (max-width: 768px) {
  .wiki-landing__hero {
    padding: 48px 0 40px;
  }
  .wiki-landing__title {
    font-size: 1.875rem;
  }
  .wiki-landing__subtitle {
    font-size: 1rem;
    margin-bottom: 28px;
  }
  .wiki-landing__search-input {
    padding: 16px 16px 16px 48px;
    font-size: 15px;
    border-radius: 12px;
  }
  .wiki-landing__search-icon {
    left: 16px;
    width: 18px;
    height: 18px;
  }
  .wiki-landing__search-hint {
    display: none;
  }
  .wiki-category-section__header {
    padding: 16px 20px;
    gap: 12px;
  }
  .wiki-category-section__icon {
    width: 40px;
    height: 40px;
  }
  .wiki-category-section__icon svg {
    width: 20px;
    height: 20px;
  }
  .wiki-category-section__title {
    font-size: 15px;
  }
  .wiki-category-section__desc {
    display: none;
  }
  .wiki-article-row {
    padding: 14px 20px;
  }
  .wiki-article-row__title {
    font-size: 14px;
  }
  .wiki-article-row__desc {
    display: none;
  }
}
@media (max-width: 1280px) {
  .wiki-main {
    padding: 32px 40px;
  }
  .wiki-content-wrapper {
    gap: 20px;
  }
  .wiki-toc {
    width: 200px;
    min-width: 200px;
  }
}
@media (max-width: 1100px) {
  .wiki-toc {
    display: none;
  }
  .wiki-main {
    padding: 32px 40px;
  }
}
@media (max-width: 900px) {
  :root {
    --wiki-sidebar-width: 260px;
  }
  .wiki-main {
    padding: 24px 32px;
  }
  .wiki-article__title {
    font-size: 1.75rem;
  }
  .wiki-related__grid {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 768px) {
  .wiki-page {
    flex-direction: column;
  }
  .wiki-sidebar {
    width: 100%;
    min-width: 100%;
    position: relative;
    top: 0;
    height: auto;
    max-height: none;
    border-bottom: 1px solid var(--transp-1);
  }
  .wiki-sidebar__header {
    padding: 20px 16px;
  }
  .wiki-categories {
    max-height: 300px;
    padding: 12px 16px 16px;
  }
  .wiki-main {
    padding: 24px 16px;
  }
  .wiki-article__title {
    font-size: 1.5rem;
  }
  .wiki-article__description {
    font-size: 1rem;
  }
  .wiki-article__info {
    gap: 12px;
  }
  .wiki-breadcrumbs {
    margin-bottom: 20px;
  }
  .wiki-breadcrumbs .wiki-breadcrumb__link:not(:first-child):not(:last-child) {
    display: none;
  }
  .wiki-breadcrumbs .wiki-breadcrumb__separator:not(:first-of-type):not(:last-of-type) {
    display: none;
  }
  .wiki-feedback {
    flex-direction: column;
    text-align: center;
    padding: 16px;
  }
  .wiki-feedback__buttons {
    width: 100%;
    justify-content: center;
  }
  .wiki-article-content {
    font-size: 14px;
  }
  .wiki-article-content h2 {
    font-size: 1.3rem;
    margin: 36px 0 16px;
  }
  .wiki-article-content h3 {
    font-size: 1.1rem;
    margin: 24px 0 12px;
  }
  .wiki-article-content pre code {
    font-size: 12px;
    padding: 14px 16px;
  }
  .wiki-article-content blockquote {
    padding: 14px 16px;
  }
  .wiki-code-header {
    padding: 8px 12px;
  }
  .wiki-code-lang {
    font-size: 10px;
  }
  .wiki-code-copy {
    padding: 4px 8px;
    font-size: 10px;
  }
  .wiki-code-copy span {
    display: none;
  }
}
@media (max-width: 480px) {
  .wiki-main {
    padding: 20px 12px;
  }
  .wiki-sidebar__header {
    padding: 16px 12px;
  }
  .wiki-categories {
    padding: 8px 12px 12px;
  }
  .wiki-article__title {
    font-size: 1.35rem;
  }
  .wiki-article__meta {
    gap: 8px;
  }
  .wiki-article__category {
    padding: 4px 10px;
    font-size: 11px;
  }
  .wiki-article-header {
    margin-bottom: 24px;
    padding-bottom: 20px;
  }
  .wiki-feedback__btn {
    padding: 8px 12px;
    font-size: 12px;
  }
  .wiki-related__card {
    padding: 14px 16px;
  }
  .wiki-empty {
    padding: 48px 16px;
  }
  .wiki-empty__icon {
    width: 56px;
    height: 56px;
  }
  .wiki-empty__icon svg {
    width: 24px;
    height: 24px;
  }
  .wiki-empty h3 {
    font-size: 1.1rem;
  }
  .wiki-empty p {
    font-size: 13px;
  }
}
@media (hover: none) {
  .wiki-category__header:hover {
    background: transparent;
  }
  .wiki-category__header--active {
    background: var(--transp-1);
  }
  .wiki-article-item:hover {
    background: transparent;
  }
  .wiki-article-item--active {
    background: var(--transp-05);
  }
}
