@import url('https://fonts.cdnfonts.com/css/satoshi');
@tailwind base;
@tailwind components;
@tailwind utilities;

/* @layer components {
  .input-dark-mode-override {
    &:-webkit-autofill {
      box-shadow: 0 0 0 30px #1c1c1d inset !important;
    }

    &:-webkit-autofill:hover {
      box-shadow: 0 0 0 30px #1c1c1d inset !important;
    }

    &:-webkit-autofill:focus {
      box-shadow: 0 0 0 30px #1c1c1d inset !important;
    }

    &:-webkit-autofill:active {
      box-shadow: 0 0 0 30px #1c1c1d inset !important;
    }
  }
} */

/* .field_with_errors {
  label {
    color: #dc2626;
  }

  input,
  textarea,
  select {
    border-color: #fca5a5;
    color: #dc2626;
    
    &::placeholder {
      color: #fca5a5;
    }
  }
} */

/* Base */
:root {
  --main-50: #FFECFB;
  --main-500: #D32CB4;
  --main-700: #8F0B77;
  --zinc-400: #A1A1AA;
  --box-shadow-color: rgb(39, 39, 42);
  --gradient-dark: linear-gradient(90deg, #161A26 0%, #040207 101.09%);
  --color-accent-primary: #6F158D;
  --color-accent-secondary: #6B185D;
  --color-accent-third: #C31A98;
  --color-dark-primary: #151924;
  --color-white-primary: #ffffff;
  --color-white-secondary: #FDFDFD;
  --color-gray: #B8B8B8;
  --font-primary: "Jost", sans-serif;
  --font-secondary: "Space Grotesk", sans-serif;
  --line-height: 18px;
  --border-radius: 12px;
  --tw-content: "moon.svg";
  
  /* Убираем розовый accent-color для скроллбаров Safari */
  accent-color: #9ca3af;
}

body {
  display: flex;
  flex-direction: column;
  min-height: -webkit-fill-available;
  min-height: 100vh;
  font-family: 'satoshi', sans-serif;
  scrollbar-gutter: stable;
}

body[data-theme-select-theme-value='dark'] {

  :-webkit-autofill,
  :-webkit-autofill:hover,
  :-webkit-autofill:focus {
    /* -webkit also works in firefox here */
    filter: none;
    /* needed for firefox! */
    box-shadow: 0 0 0 100px rgb(39, 39, 42) inset;
    -webkit-text-fill-color: rgb(75 85 99);
    /* -moz-box-shadow: 0 0 0 100px rgb(39, 39, 42) inset; */
    /* box-shadow: 0 0 0 100px rgb(39, 39, 42) inset inset; */
  }
}


body[data-theme-select-theme-value='light'] {

  :-webkit-autofill,
  :-webkit-autofill:hover,
  :-webkit-autofill:focus {
    /* -webkit also works in firefox here */
    filter: none;
    /* needed for firefox! */
    -webkit-box-shadow: 0 0 0 100px rgb(255, 255, 255) inset;
    box-shadow: 0 0 0 100px rgb(255, 255, 255) inset;
    -webkit-text-fill-color: rgb(75 85 99);
    /* -moz-box-shadow: 0 0 0 100px rgb(39, 39, 42) inset; */
    /* box-shadow: 0 0 0 100px rgb(39, 39, 42) inset inset; */
  }
}

dialog::backdrop {
  @apply bg-black bg-opacity-50 backdrop-blur-sm;
}

.main-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 12px 10px;
  border-radius: var(--border-radius);
  background: var(--main-500);
  color: var(--color-white-primary);
  font-size: 1rem;
  line-height: var(--line-height);
  gap: 10px;
  transition: .3s ease-out all
}

.main-btn:active,
.main-btn:hover {
  background: var(--main-700);
  color: var(--color-white-primary);
}

.main-btn:focus {
  outline: 0 !important;
}

.main-outline-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 12px 10px;
  border-radius: var(--border-radius);
  border: 1px solid var(--main-500);
  color: var(--main-500);
  font-size: 1rem;
  line-height: var(--line-height);
  gap: 10px;
  transition: .3s ease-out all
}

.main-outline-btn:active,
.main-outline-btn:hover {
  background: var(--main-700);
  ;
  color: var(--color-white-primary);
}

.main-btn:disabled,
.main-outline-btn:disabled {
  background: var(--main-50);
  color: var(--zinc-400);
  cursor: not-allowed;
}

.bg-loader {
  background-color: rgba(0, 0, 0, .4);
  z-index: 9999;
  transition: .4ss ease-out all
}

.disabled-link {
  pointer-events: none;
  cursor: not-allowed;
  opacity: 0.5;
  color: var(--zinc-400) !important;
  border-color: var(--zinc-400) !important;
}

.disabled-link:hover {
  color: var(--zinc-400) !important;
  opacity: 0.5;
  border-color: var(--zinc-400) !important;
}

.close-btn:focus:not(:focus-visible) {
  outline: 0 !important;
}

.close-btn:focus-visible {
  outline: 0 !important;
}

.-min-heihgt-screen-16 {
  min-height: calc(100vh - 16rem);
}

input[readonly] {
  background-color: unset !important;
  opacity: .8;
}

/* @media (prefers-color-scheme: light) {
  input[readonly] {
    background-color: #fff !important;
    opacity: .8;
  }
}

@media (prefers-color-scheme: dark) {
  input[readonly] {
    background-color: rgb(39 39 42) !important;
    opacity: .8;
  }
} */

@media (min-width: 768px) {
  .md\:h-screen-20 {
    height: calc(100vh - 5rem);
  }

  .md\:h-screen-16 {
    height: calc(100vh - 64px);
  }

  .md\:min-heihgt-20 {
    min-height: calc(100vh - 20rem);
  }
}

.overflow-x-clip {
  overflow-x: clip
}

.filter--grayscale {
  filter: grayscale(1)
}

.bg-gradient--dark {
  background-image: var(--gradient-dark) !important
}

.color-accent--primary {
  color: var(--color-accent-primary)
}

.color-accent--secondary {
  color: var(--color-accent-secondary)
}

.color-accent--third {
  color: var(--color-accent-third)
}

.color-dark--primary {
  color: var(--color-dark-primary)
}

.color-white--primary {
  color: var(--color-white-primary)
}

.color-white--secondary {
  color: var(--color-white-secondary)
}

.color-gray {
  color: var(--color-gray)
}

h1.section__title {
  font-size: 2.875rem
}

h1.section__title:before {
  content: "_";
  color: var(--color-accent-third)
}

h2.section__title {
  font-size: 2rem
}

h2.section__title:before {
  content: "|";
  color: var(--color-accent-third)
}

.section__text {
  font-size: 1.125rem;
  line-height: 1.625rem
}

.gap-7 {
  gap: 2.5rem;
}

@media (max-width: 480px) {
  h1.section__title {
    font-size: 2rem
  }

  h2.section__title {
    font-size: 1.6rem
  }

  .section__text {
    font-size: 1rem;
    line-height: 1.25rem
  }
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Скрыть стрелки в Firefox */
input[type=number] {
  appearance: none;
  -moz-appearance: textfield;
}

.btn-primary {
  cursor: pointer;
  display: inline-block;
  font-family: Space Grotesk, sans-serif;
  font-weight: 400;
  font-size: 12px;
  padding: 11px 34px;
  border-radius: 18px;
  color: var(--color-white-primary);
  background-color: var(--color-accent-secondary);
  text-decoration: none;
  transition: .3s ease-out all
}

.btn-primary:hover {
  background-color: var(--color-accent-primary);
  color: var(--color-white-secondary);
  transition: .3s ease-in all
}

.btn-primary--small {
  font-size: 10px;
  padding: 9px 21px
}

.hero {
  overflow-x: clip
}

.hero__title {
  font-size: 5.7375rem;
  line-height: 5.625rem;
  word-break: keep-all
}

.hero__subtitle {
  font-size: 2.77rem;
  line-height: 3.125rem
}

.hero__text {
  font-size: 1rem;
  line-height: 1.25rem
}

.hero_hostings,
.hero__img {
  position: relative
}

.hero_hostings svg,
.hero__img svg {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: -20%;
  vertical-align: middle;
  overflow-x: hidden;
  overflow-y: hidden;
  height: 75%;
}

.hero_hostings svg {
  right: 33%;
}

@media (min-width: 992px) {
  .hero__height {
    min-height: 500px
  }
}

@media (max-width: 991px) {

  .hero_hostings svg,
  .hero__img svg {
    display: none;
    opacity: .5;
    top: unset;
    transform: translateY(-85%);
    z-index: -1;
    right: 0
  }
}

@media (max-width: 768px) {

  .hero_hostings svg,
  .hero__img svg {
    transform: translateY(-100%)
  }
}

@media (max-width: 640px) {
  .hero__title {
    font-size: 5rem
  }

  .hero__subtitle {
    font-size: 2rem;
    line-height: 2.5rem
  }
}

@media (max-width: 480px) {
  .hero__title {
    font-size: 3rem;
    line-height: 4.25rem
  }

  .hero__subtitle {
    font-size: 1.75rem;
    line-height: 2rem
  }
}

.hosting-popover {
  max-width: 32rem;
  white-space: normal !important;
}

.hosting-popover.overflow-scroll {
  text-overflow: clip;
  overflow: scroll;
}

.hosting-popover.overflow-scroll::-webkit-scrollbar {
  width: 0px;
  padding-right: -4px;
  height: 8px;
}

/* Track */
.hosting-popover.overflow-scroll::-webkit-scrollbar-track {
  background: #111;
}

/* Handle */
.hosting-popover.overflow-scroll::-webkit-scrollbar-thumb {
  background: #333;
  border-radius: 4px;
}

/* Handle on hover */
.hosting-popover.overflow-scroll::-webkit-scrollbar-thumb:hover {
  background: #444;
}

.white-blink path {
  fill: var(--color-dark-primary)
}

.white-blink path.white-blink--active {
  animation-name: white-blink;
  animation-timing-function: ease;
  animation-duration: .5s;
  animation-fill-mode: forwards
}

@keyframes white-blink {
  0% {
    filter: brightness(3);
    transform: translate(2px, -2px)
  }

  50% {
    transform: translate(-1px, 1px)
  }

  to {
    transform: translate(0);
    fill: var(--color-accent-third)
  }
}


/* Errors */
.field_with_errors label {
  color: #dc2626;
}

.field_with_errors input,
.field_with_errors textarea,
.field_with_errors select {
  border-color: #fca5a5;
  color: #dc2626;
}

.field_with_errors input::placeholder,
.field_with_errors textarea::placeholder,
.field_with_errors select::placeholder {
  color: #fca5a5;
}

#error_explanation {
  background: rgba(255, 41, 41, .9);
  color: #eee;
  border-radius: 4px;
  margin-bottom: 12px;
  opacity: .85;
}

#error_explanation h2 {
  padding: 6px 12px;
  margin: 0;
  font-size: 14px;
}

#error_explanation ul {
  border: 1px solid #f23551;
  margin: 0;
  list-style: none;
  padding: 4px 0;
}

#error_explanation li {
  padding: 2px 10px;
  font-size: 14px;
}

#error_explanation li::before {
  content: '×';
  font-weight: bold;
  font-size: 16px;
  margin-right: 10px;
}

.pagy-nav {
  @apply inline-flex h-10 -space-x-px text-base;
}

.pagy-nav .page a {
  @apply flex items-center justify-center h-10 px-4 border border-gray-300 dark:border-gray-700;
}

.pagy-nav .page.active a {
  @apply text-white cursor-default bg-zinc-400 dark:bg-gray-600 dark:text-gray-200;
}

.pagy-nav .page.prev a {
  @apply ms-0 border-e-0 rounded-s-lg;
}

.pagy-nav .page.next a {
  @apply rounded-e-lg;
}

.pagy-nav .page.prev:not(.disabled) a,
.pagy-nav .page.next:not(.disabled) a,
.pagy-nav .page:not(.active) a {
  @apply leading-tight text-gray-500 bg-white dark:bg-zinc-800 dark:text-zinc-400;

  &:hover {
    @apply text-gray-700 bg-gray-100 dark:bg-gray-700 dark:text-white;
  }
}

.pagy-nav .page.prev.disabled a,
.pagy-nav .page.next.disabled a {
  @apply cursor-default opacity-65;

  &:hover {
    @apply text-gray-500 bg-white dark:bg-zinc-800 dark:text-zinc-400;
  }
}

/* Avatars */
.avatar {
  font-size: 13px;
  font-weight: 600;
  position: relative;
  display: inline-flex;
  width: 3rem;
  height: 3rem;
  min-width: 14px;
  color: #fff;
  align-items: center;
  justify-content: center;

  .avatar-small {
    position: absolute;
    border-radius: 50%;
    height: 16px;
    width: 16px;
    bottom: 0;
    right: 0;
    box-shadow: 0 0 0 2px #fff;
  }
}

/* Profile */
.label-profile {
  padding: 4px 8px;
  opacity: 0.85;
  border-radius: 4px;
}

.bg-green-500 {
  transition: width 0.4s ease;
}

.bg-yellow-500 {
  transition: width 0.4s ease;
}

.bg-red-500 {
  transition: width 0.4s ease;
}

.hoverWrapper #hoverContent {
  display: none;
  position: absolute;
  width: max-content;
}

.hoverWrapper:hover {
  color: #FFECFB;
  opacity: 0.8;
}

.hoverWrapper:hover #hoverContent {
  display: block;
}

.performance-popover-arrow {
  left: .5rem !important;
}

.performance-popover {
  left: -0.6rem !important;
}

/* full rounded Basic if closed (without GPUS content) */
.basic-one:not(.opened) {
  @apply rounded-xl
}

/* top rounded only Basic if opened (without GPUS content) */
.basic-one.opened {
  @apply border-b-0 rounded-t-xl;
}

/* Always only top rounded Basic with GPUs content */
.basic-duet {
  @apply border-b-0 rounded-t-xl;
}

.gpus-duet:not(.opened) {
  @apply border-t-0 rounded-b-xl;
}

.ports-to[disabled],
.ports-from[disabled] {
  opacity: 0.35;
  /* -webkit-filter: blur(0.3px);
  filter: blur(0.3px); */
}

.select-all:indeterminate {
  /* background-image: none !important; */
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath stroke='%23fff' stroke-width='2' d='M2 8h12'/%3E%3C/svg%3E");
  opacity: .8 !important;
}

.transactions-data-content {
  min-height: 420px;
}

/* Стиль для фона скроллбара - унифицированные цвета (менее приоритетные) */
body::-webkit-scrollbar {
  width: 8px;
  /* ширина скроллбара */
}

body::-webkit-scrollbar-track {
  background: transparent;
  /* прозрачный фон скроллбара */
}

body::-webkit-scrollbar-thumb {
  background-color: #9ca3af;
  /* унифицированный цвет ползунка */
  border-radius: 4px;
  /* скругление ползунка */
}

body::-webkit-scrollbar-thumb:hover {
  background-color: #6b7280;
  /* темнее при наведении */
}

/* Для Firefox - унифицированные цвета (менее приоритетные) */
body {
  scrollbar-width: thin;
  /* тонкий скроллбар */
  scrollbar-color: #9ca3af transparent;
  /* унифицированный цвет ползунка и прозрачный фон */
}

.form-log-title {
  padding-left: 4rem;
  
  @media screen and (min-width: 768px) {
    padding-left: 0;
  }
}

.omniauth-provider-btn {
  padding: .8rem;
  border-radius: 50%;

  @media screen and (min-width: 768px) {
    padding: .65rem 1.5rem;
    rounded: 16px;
    border-radius: 32px;
    align-items: center;
  }
}

.provider-icon-container {
  width: 24px;
  height: 24px;
  /* display: flex;
  justify-content: center;
  align-items: center; */
  
  @media screen and (min-width: 768px) {
    margin-right: .5rem;
    width: 20px;
    height: 20px;
  }
}


[data-controller="swipe-to-delete"] [data-swipe-to-delete-target="content"] {
  transition: transform 0.3s ease;
  z-index: 1;
  touch-action: pan-y; /* Allow vertical scrolling on mobile */
  background-color: inherit; /* Inherit the background color from parent */
}

/* Style for the delete action button container */
[data-controller="swipe-to-delete"] [data-swipe-to-delete-target="deleteAction"] {
  transition: opacity 0.3s ease;
  z-index: 0;
}

/* Red button hover effect */
[data-controller="swipe-to-delete"] [data-swipe-to-delete-target="deleteAction"] button:hover {
  background-color: #ef4444; /* Darker red on hover */
}

/* Add a shadow to create depth when content is swiped */
[data-controller="swipe-to-delete"] [data-swipe-to-delete-target="content"].swiped {
  box-shadow: -2px 0 5px rgba(0, 0, 0, 0.1);
}

/* Enhanced press effect for delete button */
[data-controller="swipe-to-delete"] [data-swipe-to-delete-target="deleteAction"] button:active {
  background-color: #dc2626; /* Even darker red when pressed */
  transform: scale(0.98);
}

.log-line--dimmed {
  opacity: 0.2;
  transition: opacity 0.3s ease-in-out;
}

/* Modal fullscreen styles - Simplified approach */
.modal-fullscreen:fullscreen,
.modal-fullscreen:-webkit-full-screen,
.modal-fullscreen:-moz-full-screen {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
}

/* Fullscreen: All child divs should fill space */
.modal-fullscreen:fullscreen > div,
.modal-fullscreen:-webkit-full-screen > div,
.modal-fullscreen:-moz-full-screen > div {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

/* Fullscreen: Center container */
.modal-fullscreen:fullscreen .flex,
.modal-fullscreen:-webkit-full-screen .flex,
.modal-fullscreen:-moz-full-screen .flex {
  width: 100vw !important;
  height: 100vh !important;
  margin: 0 !important;
  padding: 0 !important;
  min-height: 100vh !important;
}

/* Fullscreen: Modal container - Override max-w-5xl specifically */
.modal-fullscreen:fullscreen [data-modal-universal-target="container"],
.modal-fullscreen:-webkit-full-screen [data-modal-universal-target="container"],
.modal-fullscreen:-moz-full-screen [data-modal-universal-target="container"] {
  width: 100vw !important;
  height: 100vh !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  border-radius: 0 !important;
  transform: none !important;
}



/* Fullscreen: Modal content */
.modal-fullscreen:fullscreen [data-modal-universal-target="content"],
.modal-fullscreen:-webkit-full-screen [data-modal-universal-target="content"],
.modal-fullscreen:-moz-full-screen [data-modal-universal-target="content"] {
  height: calc(100vh - 80px) !important;
  max-height: calc(100vh - 80px) !important;
  overflow-y: hidden !important;
  padding: 1rem !important;
}

/* Fix for modal width consistency across tabs - prevent content from changing width */
#session-logs-modal [data-modal-universal-target="container"] {
  width: 100% !important;
}

/* Fullscreen mode: Remove height constraints for logs and use full available height */
.modal-fullscreen:fullscreen #system-logs-panel,
.modal-fullscreen:fullscreen #container-logs-panel,
.modal-fullscreen:-webkit-full-screen #system-logs-panel,
.modal-fullscreen:-webkit-full-screen #container-logs-panel,
.modal-fullscreen:-moz-full-screen #system-logs-panel,
.modal-fullscreen:-moz-full-screen #container-logs-panel {
  height: calc(100vh - 220px) !important;
  min-height: calc(100vh - 220px) !important;
  max-height: calc(100vh - 220px) !important;
  overflow-y: auto !important;
}

.modal-fullscreen:fullscreen .system-logs-container,
.modal-fullscreen:-webkit-full-screen .system-logs-container,
.modal-fullscreen:-moz-full-screen .system-logs-container {
  height: calc(100vh - 220px) !important;
  min-height: calc(100vh - 220px) !important;
  max-height: calc(100vh - 220px) !important;
  overflow-y: auto !important;
}

.modal-fullscreen:fullscreen .empty-logs-placeholder,
.modal-fullscreen:-webkit-full-screen .empty-logs-placeholder,
.modal-fullscreen:-moz-full-screen .empty-logs-placeholder {
  height: calc(100vh - 220px) !important;
  min-height: calc(100vh - 220px) !important;
  max-height: calc(100vh - 220px) !important;
  overflow-y: auto !important;
}

.modal-fullscreen:fullscreen .terminal-content,
.modal-fullscreen:-webkit-full-screen .terminal-content,
.modal-fullscreen:-moz-full-screen .terminal-content {
  max-height: calc(100vh - 260px) !important;
  overflow-y: auto !important;
}

/* Fallback fullscreen mode: Same rules without :fullscreen pseudo-classes */
.modal-fullscreen #system-logs-panel,
.modal-fullscreen #container-logs-panel {
  height: calc(100vh - 220px) !important;
  min-height: calc(100vh - 220px) !important;
  max-height: calc(100vh - 220px) !important;
  overflow-y: auto !important;
}

.modal-fullscreen .system-logs-container {
  height: calc(100vh - 220px) !important;
  min-height: calc(100vh - 220px) !important;
  max-height: calc(100vh - 220px) !important;
  overflow-y: auto !important;
}

.modal-fullscreen .empty-logs-placeholder {
  height: calc(100vh - 220px) !important;
  min-height: calc(100vh - 220px) !important;
  max-height: calc(100vh - 220px) !important;
  overflow-y: auto !important;
}

.modal-fullscreen .terminal-content {
  max-height: calc(100vh - 260px) !important;
  overflow-y: auto !important;
}

/* Fullscreen button icons - adaptive colors */
[data-modal-universal-target="fullscreenBtn"] svg {
  @apply text-gray-500 dark:text-gray-400;
}

[data-modal-universal-target="fullscreenBtn"]:hover svg {
  @apply text-gray-900 dark:text-white;
}

/* Override SVG fill to use currentColor */
[data-modal-universal-target="expandIcon"] svg,
[data-modal-universal-target="shrinkIcon"] svg {
  fill: currentColor !important;
}
/* Базовые стили контейнера */
[data-controller="chat-swipe"] {
  position: relative;
  overflow: hidden;
  touch-action: pan-y; /* Разрешить вертикальный скролл */
}

/* Стили для основного содержимого */
[data-controller="chat-swipe"] [data-chat-swipe-target="content"] {
  transition: transform 0.3s ease;
  position: relative;
  z-index: 1;
  transform: translateX(0); /* Начальное положение */
  will-change: transform; /* Оптимизация производительности */
}

/* Стили для контейнера действий */
[data-controller="chat-swipe"] [data-chat-swipe-target="actions"] {
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  transition: transform 0.3s ease;
  transform: translateX(100%); /* Начальное положение - спрятан */
  z-index: 0;
  will-change: transform; /* Оптимизация производительности */
}

/* Стили для кнопки действия */
[data-controller="chat-swipe"] [data-chat-swipe-target="actions"] a {
  height: 100%;
  white-space: nowrap;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 1.5rem;
  transition: background-color 0.2s;
  -webkit-tap-highlight-color: transparent; /* Убираем подсветку при тапе на мобильных */
}

/* Эффект нажатия на кнопку */
[data-controller="chat-swipe"] [data-chat-swipe-target="actions"] a:active {
  background-color: #dc2626; /* Темно-красный при нажатии */
}

/* Класс для визуального эффекта при свайпе */
[data-controller="chat-swipe"] [data-chat-swipe-target="content"].swiped {
  box-shadow: -2px 0 5px rgba(0, 0, 0, 0.1);
}

/* Поддержка темной темы */
@media (prefers-color-scheme: dark) {
  [data-controller="chat-swipe"] [data-chat-swipe-target="content"].swiped {
    box-shadow: -2px 0 5px rgba(0, 0, 0, 0.4);
  }
  
  [data-controller="chat-swipe"] [data-chat-swipe-target="actions"] a:active {
    background-color: #b91c1c; /* Более темный красный для темной темы */
  }
}

/* Дополнительные стили для лучшей поддержки мобильных */
@media (max-width: 768px) {
  /* Увеличиваем размер кнопки для лучшего UX на мобильных */
  [data-controller="chat-swipe"] [data-chat-swipe-target="actions"] a {
    padding: 0 2rem;
  }
  
  /* Улучшаем отзывчивость на мобильных */
  [data-controller="chat-swipe"] [data-chat-swipe-target="content"] {
    touch-action: pan-y pinch-zoom; /* Поддержка жестов зума и вертикального скролла */
  }
}

/* Предотвращаем выделение текста при свайпе */
[data-controller="chat-swipe"] * {
  user-select: none;
  -webkit-user-select: none;
}

/* app/assets/stylesheets/components/image_upload.css */

/* Контейнер для загружаемого изображения */
.upload-container {
  position: relative;
  width: 5rem;
  height: 5rem;
  margin-bottom: 0.5rem;
  margin-right: 0.5rem;
  border-radius: 0.5rem;
  overflow: hidden;
}

/* Превью изображения */
.upload-preview {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 0.5rem;
}

/* Затемняющий оверлей */
.upload-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.6);
  border-radius: 0.5rem;
}

/* Контейнер для индикатора прогресса */
.upload-progress-container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Круг прогресса */
.upload-progress-circle {
  position: relative;
  width: 3.5rem;
  height: 3.5rem;
  border-radius: 50%;
  overflow: hidden;
}

/* Заполнение прогресса */
.upload-progress-fill {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.8);
  transform: scale(0);
  transform-origin: center;
  transition: transform 0.2s ease-out;
}

/* Центральная часть с процентами */
.upload-progress-center {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  background-color: rgba(0, 0, 0, 0.6);
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  font-size: 0.75rem;
  font-weight: bold;
  z-index: 2;
}

/* Кнопка отмены загрузки */
.upload-btn-cancel {
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  top: 0.25rem;
  right: 0.25rem;
  width: 1.25rem;
  height: 1.25rem;
  background-color: rgba(239, 68, 68, 1);
  color: white;
  border-radius: 9999px;
  z-index: 10;
  cursor: pointer;
}

/* Кнопка удаления загруженного файла */
.upload-btn-delete {
  position: absolute;
  display: none;
  justify-content: center;
  align-items: center;
  top: 0.25rem;
  right: 0.25rem;
  width: 1.5rem;
  height: 1.5rem;
  background-color: rgba(239, 68, 68, 1);
  color: white;
  border-radius: 9999px;
  z-index: 10;
  cursor: pointer;
}

/* Метка успешной загрузки */
.upload-success-mark {
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  bottom: 0.25rem;
  right: 0.25rem;
  width: 1.25rem;
  height: 1.25rem;
  background-color: rgba(34, 197, 94, 1);
  color: white;
  border-radius: 9999px;
}

/* Показ кнопки удаления при наведении */
.group:hover .upload-btn-delete {
  display: flex;
}

/* Стили для сообщений */
.message {
  margin-bottom: 0.5rem;
  padding: 0.5rem 1rem;
  border-radius: 0.5rem;
}

.message-info {
  background-color: rgba(59, 130, 246, 0.1);
  border: 1px solid #D32CB4;
  color: #D32CB4;
}

.message-error {
  background-color: linear-gradient(90deg, #161A26 0%, #040207 101.09%);
  border: 1px solid rgba(239, 68, 68, 0.5);
  color: rgb(185, 28, 28);
}

.message-content {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.message-close {
  margin-left: 0.5rem;
  font-size: 1.25rem;
  line-height: 1;
  cursor: pointer;
}

/* Стили для контейнера при активном состоянии dropzone */
.dropzone-active {
  outline: 1px solid #D32CB4;
  background-color: rgba(211, 44, 180, 0.05);
  position: relative;
}

/* Основной индикатор dropzone */
.dropzone-indicator {
  position: absolute;
  background-color: rgba(59, 130, 246, 0.1);
  border: 1px solid #D32CB4;
  color: #D32CB4;
  opacity: .8;
  border-radius: 9px;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  /* display: flex; */
  align-items: center;
  justify-content: center;
  z-index: 50;
  pointer-events: none; /* Чтобы индикатор не мешал обработке событий */
}

/* Дополнительные стили для темного режима */
.dark .dropzone-indicator {
  background-color: #201921;
  /* background-color: rgba(211, 44, 180, 0.1); */
  /* background-color: rgba(59, 130, 246, 0.1); */
  opacity: 0.8;
  border-color: #D32CB4;
  color: #D32CB4
}

/* Контейнер для сообщения внутри индикатора */
.dropzone-message {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 1rem;
}

/* Иконка в индикаторе */
.dropzone-icon {
  font-size: 1.5rem;
  margin-bottom: 0.5rem;
  color: #D32CB4;
  display: flex;
  align-items: center;
  justify-content: center;
}

.dark .dropzone-icon {
  color: #D32CB4;
}
/* PWA Install Instructions Styles */

/* Скрыть PWA инструкции в установленном приложении */
@media (display-mode: standalone) {
  .pwa-install-instructions {
    display: none !important;
  }
}

/* Адаптивные инструкции показываются только в браузере */
.pwa-browser-only {
  display: block;
}

@media (display-mode: standalone) {
  .pwa-browser-only {
    display: none !important;
  }
}

/* Детали с PWA инструкциями */
.pwa-instructions-details {
  transition: all 0.3s ease;
}

.pwa-instructions-details[open] {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.pwa-instructions-details[open] summary svg {
  transform: rotate(180deg);
}

/* Номера шагов в инструкциях */
.pwa-step-number {
  min-width: 1.25rem;
  min-height: 1.25rem;
  line-height: 1;
  font-size: 0.75rem;
}

/* Специальные стили для PWA платформ */
.platform-ios .pwa-install-notice {
  background: linear-gradient(135deg, #007AFF 0%, #5856D6 100%);
  color: white;
}

.platform-android .pwa-install-notice {
  background: linear-gradient(135deg, #4CAF50 0%, #2196F3 100%);
  color: white;
}

/* Анимации для PWA инструкций */
.pwa-instructions-slide-in {
  animation: pwaSlideIn 0.4s ease-out;
}

@keyframes pwaSlideIn {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Совместимость с темной темой */
@media (prefers-color-scheme: dark) {
  .pwa-instructions-details {
    border-color: #374151;
  }
  
  .pwa-instructions-details[open] {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
  }
}

/* Стили для раскрывающихся деталей браузера */
.browser-settings-details summary {
  list-style: none;
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
}

.browser-settings-details summary::-webkit-details-marker {
  display: none;
}

.browser-settings-details summary svg {
  transition: transform 0.2s ease;
}

.browser-settings-details[open] summary svg {
  transform: rotate(180deg);
}

/* Адаптивность для мобильных устройств */
@media (max-width: 640px) {
  .pwa-detailed-instructions {
    max-width: calc(100vw - 2rem);
    margin: 0 1rem;
  }
  
  .pwa-step-list {
    font-size: 0.875rem;
  }
  
  .pwa-step-number {
    min-width: 1rem;
    min-height: 1rem;
    font-size: 0.6875rem;
  }
}

/* Состояния для различных браузеров */
.browser-chrome .chrome-specific {
  display: block;
}

.browser-firefox .firefox-specific {
  display: block;
}

.browser-safari .safari-specific {
  display: block;
}

.browser-edge .edge-specific {
  display: block;
}

/* Скрыть специфичные инструкции по умолчанию */
.chrome-specific,
.firefox-specific,
.safari-specific,
.edge-specific {
  display: none;
}

/* Индикаторы платформы */
.platform-indicator {
  display: inline-flex;
  align-items: center;
  padding: 0.25rem 0.5rem;
  border-radius: 0.375rem;
  font-size: 0.75rem;
  font-weight: 500;
}

.platform-indicator.ios {
  background-color: #F3F4F6;
  color: #1F2937;
}

.platform-indicator.android {
  background-color: #ECFDF5;
  color: #065F46;
}

.platform-indicator.desktop {
  background-color: #EFF6FF;
  color: #1E40AF;
}

/* Темная тема для индикаторов */
@media (prefers-color-scheme: dark) {
  .platform-indicator.ios {
    background-color: #374151;
    color: #F9FAFB;
  }
  
  .platform-indicator.android {
    background-color: #064E3B;
    color: #A7F3D0;
  }
  
  .platform-indicator.desktop {
    background-color: #1E3A8A;
    color: #DBEAFE;
  }
}

/* PWA Install Banner Animations and Positioning */

/* Banner appearance animation */
#pwa-install-banner:not(.hidden) {
  animation: slideInUp 0.3s ease-out;
}

@keyframes slideInUp {
  from {
    transform: translateY(100%);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}

/* Raise PWA banner if there is push notification banner */
#pwa-install-banner:not(.hidden) {
  bottom: 1rem;
}

/* If there is push notification dialog, move PWA banner higher */
body:has(dialog[open]) #pwa-install-banner:not(.hidden) {
  bottom: 5rem;
  transition: bottom 0.3s ease;
}

/* Alternative positioning for older browsers */
@supports not (selector(:has(*))) {
  #pwa-install-banner:not(.hidden) {
    bottom: 1rem;
  }
}

/* Browser-specific instruction sections (initially hidden) */
.chrome-edge-install,
.safari-instructions,
.firefox-instructions {
  display: none;
}

/* Show when browser is detected */
.chrome-edge-install.show,
.safari-instructions.show,
.firefox-instructions.show {
  display: block;
} 
/* Safari Scrollbar Fix - Убираем розовый цвет полностью */

/* Принудительно переопределяем все скроллбары в Safari */
* {
  scrollbar-width: thin !important;
  scrollbar-color: #9ca3af transparent !important;
  accent-color: #9ca3af !important;
}

*::-webkit-scrollbar {
  width: 8px !important;
  height: 8px !important;
  background: transparent !important;
}

*::-webkit-scrollbar-track {
  background: transparent !important;
  border: none !important;
}

*::-webkit-scrollbar-thumb {
  background: #9ca3af !important;
  border-radius: 4px !important;
  border: none !important;
}

*::-webkit-scrollbar-thumb:hover {
  background: #6b7280 !important;
}

/* Темная тема */
@media (prefers-color-scheme: dark) {
  * {
    scrollbar-color: #52525b transparent !important;
  }
  
  *::-webkit-scrollbar-thumb {
    background: #52525b !important;
  }
  
  *::-webkit-scrollbar-thumb:hover {
    background: #71717a !important;
  }
}

/* Специально для Safari - убираем любые наследованные цвета */
@supports (-webkit-appearance: none) {
  * {
    scrollbar-color: #9ca3af transparent !important;
  }
  
  *::-webkit-scrollbar-thumb {
    background: #9ca3af !important;
    background-color: #9ca3af !important;
  }
  
  *::-webkit-scrollbar-thumb:hover {
    background: #6b7280 !important;
    background-color: #6b7280 !important;
  }
  
  @media (prefers-color-scheme: dark) {
    * {
      scrollbar-color: #52525b transparent !important;
    }
    
    *::-webkit-scrollbar-thumb {
      background: #52525b !important;
      background-color: #52525b !important;
    }
    
    *::-webkit-scrollbar-thumb:hover {
      background: #71717a !important;
      background-color: #71717a !important;
    }
  }
}

/* Убираем розовый цвет из основной темы для скроллбаров */
*::-webkit-scrollbar-thumb {
  background: #9ca3af !important;
  background-color: #9ca3af !important;
  color: #9ca3af !important;
}

/* Убираем любые переменные CSS которые могут влиять на скроллбар */
*::-webkit-scrollbar-thumb {
  --tw-bg-opacity: 1 !important;
  --main-500: #9ca3af !important;
  --main-color: #9ca3af !important;
  --main-50: #9ca3af !important;
  --main-700: #9ca3af !important;
  color: #9ca3af !important;
  border-color: #9ca3af !important;
  fill: #9ca3af !important;
}

/* Блокируем все возможные источники розового цвета */
*::-webkit-scrollbar-thumb,
*::-webkit-scrollbar-thumb:hover,
*::-webkit-scrollbar-thumb:active {
  background: #9ca3af !important;
  background-color: #9ca3af !important;
  background-image: none !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
}

/* Темная тема - блокируем розовый цвет */
@media (prefers-color-scheme: dark) {
  *::-webkit-scrollbar-thumb,
  *::-webkit-scrollbar-thumb:hover,
  *::-webkit-scrollbar-thumb:active {
    background: #52525b !important;
    background-color: #52525b !important;
    background-image: none !important;
    --main-500: #52525b !important;
    --main-color: #52525b !important;
  }
}

/* Дополнительная защита от розового цвета */
*::-webkit-scrollbar-thumb {
  background-image: none !important;
  box-shadow: none !important;
  outline: none !important;
}



/* Видимый серый скроллбар для Safari */
@supports (-webkit-appearance: none) {
  *::-webkit-scrollbar {
    width: 8px !important;
    background: transparent !important;
  }
  
  *::-webkit-scrollbar-track {
    background: transparent !important;
  }
  
  *::-webkit-scrollbar-thumb {
    background: #9ca3af !important;
    background-color: #9ca3af !important;
    border-radius: 4px !important;
  }
  
  *::-webkit-scrollbar-thumb:hover {
    background: #6b7280 !important;
    background-color: #6b7280 !important;
  }
  
  @media (prefers-color-scheme: dark) {
    *::-webkit-scrollbar-thumb {
      background: #52525b !important;
      background-color: #52525b !important;
    }
    
    *::-webkit-scrollbar-thumb:hover {
      background: #71717a !important;
      background-color: #71717a !important;
    }
  }
} 
/* Safari-specific styles to hide default time display */
@media screen and (-webkit-min-device-pixel-ratio:0) {
  /* Hide time content for empty fields in Safari */
  .safari-time-field[data-empty="true"]::-webkit-datetime-edit-text,
  .safari-time-field[data-empty="true"]::-webkit-datetime-edit-hour-field,
  .safari-time-field[data-empty="true"]::-webkit-datetime-edit-minute-field {
    color: transparent !important;
    -webkit-text-fill-color: transparent !important;
  }
  
  /* Show placeholder text for empty time fields */
  .safari-time-field[data-empty="true"]:before {
    content: "--:--" !important;
    color: #9CA3AF !important;
    position: absolute !important;
    left: 44px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    font-size: 14px !important;
    pointer-events: none !important;
    font-family: inherit !important;
  }
  
  /* Dark mode placeholder */
  .dark .safari-time-field[data-empty="true"]:before {
    color: #6B7280 !important;
  }
  
  /* When disabled, make it look like other browsers */
  .safari-time-field:disabled[data-empty="true"]::-webkit-datetime-edit-text,
  .safari-time-field:disabled[data-empty="true"]::-webkit-datetime-edit-hour-field,
  .safari-time-field:disabled[data-empty="true"]::-webkit-datetime-edit-minute-field {
    display: none !important;
  }
  
  .safari-time-field:disabled[data-empty="true"]:before {
    content: "Time" !important;
    color: #9CA3AF !important;
  }
  
  .dark .safari-time-field:disabled[data-empty="true"]:before {
    color: #6B7280 !important;
  }
} 
/* Стили для темной темы EasyMDE */
.easymde-dark-theme .CodeMirror {
  background-color: #27272a;
  /* bg-gray-800 из вашей темы */
  color: #DBDBDC;
  /* dark:text-dark-100 */
  border-color: #3f3f46;
  /* border-gray-700 */
}

.easymde-dark-theme .editor-toolbar {
  background-color: #1a1a1f5c;
  /* полупрозрачный bg-gray-900 */
  border-color: #3f3f46;
  /* border-gray-700 */
}

.easymde-dark-theme .editor-toolbar button {
  color: #B8B8B8;
  /* dark:text-dark-300 */
}

.easymde-dark-theme .editor-toolbar button:hover,
.easymde-dark-theme .editor-toolbar button.active {
  color: #D32CB4;
  /* text-cube-500 */
  background-color: rgba(211, 44, 180, 0.1);
  /* bg-cube-500 с прозрачностью */
}

.easymde-dark-theme .editor-preview {
  background-color: #27272a;
  /* bg-gray-800 */
  color: #DBDBDC;
  /* dark:text-dark-100 */
}

.easymde-dark-theme .editor-statusbar {
  color: #B8B8B8;
  /* dark:text-dark-300 */
}

.easymde-dark-theme .CodeMirror-cursor {
  border-color: #ffffff;
  /* белый курсор */
}

.easymde-dark-theme .CodeMirror-selected {
  background-color: rgba(211, 44, 180, 0.15);
  /* bg-cube-500 с прозрачностью */
}

/* Стили для предпросмотра в темной теме */
.easymde-dark-theme .editor-preview-side {
  background-color: #27272a;
  /* bg-gray-800 */
  color: #DBDBDC;
  /* dark:text-dark-100 */
}

.easymde-dark-theme .editor-preview-side h1,
.easymde-dark-theme .editor-preview-side h2,
.easymde-dark-theme .editor-preview-side h3,
.easymde-dark-theme .editor-preview-side h4,
.easymde-dark-theme .editor-preview-side h5,
.easymde-dark-theme .editor-preview-side h6 {
  color: #DBDBDC;
  /* dark:text-dark-100 */
}

.easymde-dark-theme .editor-preview-side a {
  color: #D32CB4;
  /* text-cube-500 */
}

.easymde-dark-theme .editor-preview-side code {
  background-color: #3f3f46;
  /* bg-gray-700 */
  color: #DBDBDC;
  /* dark:text-dark-100 */
}

.easymde-dark-theme .editor-preview-side pre {
  background-color: #3f3f46;
  /* bg-gray-700 */
  color: #DBDBDC;
  /* dark:text-dark-100 */
}

.easymde-dark-theme .editor-preview-side blockquote {
  border-left-color: #D32CB4;
  /* border-cube-500 */
  color: #B8B8B8;
  /* dark:text-dark-300 */
}

.easymde-dark-theme .CodeMirror-focused .CodeMirror-selected {
  background-color: rgba(211, 44, 180, 0.25);
  /* bg-cube-500 с большей прозрачностью */
}

/* Добавляем стили для фокуса, как у других полей */
.easymde-dark-theme .CodeMirror.CodeMirror-focused {
  border-color: #D32CB4;
  /* border-cube-500 */
  box-shadow: 0 0 0 2px rgba(211, 44, 180, 0.25);
  /* ring-cube-500 ring-opacity-75 */
}

/* Стили для светлой темы EasyMDE */
.CodeMirror:not(.easymde-dark-theme .CodeMirror) {
  background-color: #ffffff;
  /* белый фон */
  color: #090910;
  /* light:text-light-100 */
  border-color: #e4e4e7;
  /* border-gray-200 */
}

.editor-toolbar:not(.easymde-dark-theme .editor-toolbar) {
  background-color: #f4f4f5;
  /* bg-gray-100 */
  border-color: #e4e4e7;
  /* border-gray-200 */
}

.editor-toolbar:not(.easymde-dark-theme .editor-toolbar) button {
  color: #52525b;
  /* text-gray-600 */
}

.editor-toolbar:not(.easymde-dark-theme .editor-toolbar) button:hover,
.editor-toolbar:not(.easymde-dark-theme .editor-toolbar) button.active {
  color: #D32CB4;
  /* text-cube-500 */
  background-color: rgba(211, 44, 180, 0.1);
  /* bg-cube-500 с прозрачностью */
}

.editor-preview:not(.easymde-dark-theme .editor-preview) {
  background-color: #ffffff;
  /* белый фон */
  color: #090910;
  /* light:text-light-100 */
}

.editor-statusbar:not(.easymde-dark-theme .editor-statusbar) {
  color: #71717a;
  /* text-gray-500 */
}

.CodeMirror-cursor:not(.easymde-dark-theme .CodeMirror-cursor) {
  border-color: #000000;
  /* черный курсор для светлой темы */
}

.CodeMirror-selected:not(.easymde-dark-theme .CodeMirror-selected) {
  background-color: rgba(211, 44, 180, 0.1);
  /* bg-cube-500 с прозрачностью */
}

/* Стили для предпросмотра в светлой теме */
.editor-preview-side:not(.easymde-dark-theme .editor-preview-side) {
  background-color: #ffffff;
  /* белый фон */
  color: #090910;
  /* light:text-light-100 */
}

.editor-preview-side:not(.easymde-dark-theme .editor-preview-side) h1,
.editor-preview-side:not(.easymde-dark-theme .editor-preview-side) h2,
.editor-preview-side:not(.easymde-dark-theme .editor-preview-side) h3,
.editor-preview-side:not(.easymde-dark-theme .editor-preview-side) h4,
.editor-preview-side:not(.easymde-dark-theme .editor-preview-side) h5,
.editor-preview-side:not(.easymde-dark-theme .editor-preview-side) h6 {
  color: #090910;
  /* light:text-light-100 */
}

.editor-preview-side:not(.easymde-dark-theme .editor-preview-side) a {
  color: #D32CB4;
  /* text-cube-500 */
}

.editor-preview-side:not(.easymde-dark-theme .editor-preview-side) code {
  background-color: #f4f4f5;
  /* bg-gray-100 */
  color: #090910;
  /* light:text-light-100 */
}

.editor-preview-side:not(.easymde-dark-theme .editor-preview-side) pre {
  background-color: #f4f4f5;
  /* bg-gray-100 */
  color: #090910;
  /* light:text-light-100 */
}

.editor-preview-side:not(.easymde-dark-theme .editor-preview-side) blockquote {
  border-left-color: #D32CB4;
  /* border-cube-500 */
  color: #52525b;
  /* text-gray-600 */
}

.CodeMirror-focused:not(.easymde-dark-theme .CodeMirror-focused) .CodeMirror-selected {
  background-color: rgba(211, 44, 180, 0.15);
  /* bg-cube-500 с прозрачностью */
}

/* Добавляем стили для фокуса в светлой теме */
.CodeMirror.CodeMirror-focused:not(.easymde-dark-theme .CodeMirror.CodeMirror-focused) {
  border-color: #D32CB4;
  /* border-cube-500 */
  box-shadow: 0 0 0 2px rgba(211, 44, 180, 0.25);
  /* ring-cube-500 ring-opacity-75 */
}

/* Стили для placeholder в светлой теме */
.CodeMirror:not(.easymde-dark-theme .CodeMirror) .cm-placeholder {
  color: #a1a1aa;
  /* placeholder-gray-400 */
}

/* Общие стили для заголовков в предпросмотре (для обеих тем) */
.editor-preview-side h1,
.editor-preview h1 {
  font-size: 1.875rem;
  line-height: 2.25rem;
  font-weight: 700;
  margin-bottom: 1rem;
}

.editor-preview-side h2,
.editor-preview h2 {
  font-size: 1.5rem;
  line-height: 2rem;
  font-weight: 600;
  margin-bottom: 0.75rem;
}

.editor-preview-side h3,
.editor-preview h3 {
  font-size: 1.25rem;
  line-height: 1.75rem;
  font-weight: 600;
  margin-bottom: 0.5rem;
}

.editor-preview-side h4,
.editor-preview h4 {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 600;
  margin-bottom: 0.5rem;
}

/* Улучшение внешнего вида редактора в целом (для обеих тем) */
.CodeMirror {
  border-radius: 0.5rem;
  /* rounded-lg */
  padding: 0.75rem;
  /* p-3 */
}

/* Стили для списков в предпросмотре (общие для обеих тем) */
.editor-preview ul,
.editor-preview-side ul {
  list-style-type: disc;
  padding-left: 2rem;
  margin-bottom: 1rem;
}

.editor-preview ol,
.editor-preview-side ol {
  list-style-type: decimal;
  padding-left: 2rem;
  margin-bottom: 1rem;
}

.editor-preview li,
.editor-preview-side li {
  margin-bottom: 0.5rem;
  display: list-item;
}

/* Дополнительные стили для заголовков, которые могут не отображаться правильно */
.editor-preview h1,
.editor-preview-side h1 {
  font-size: 1.875rem;
  font-weight: bold;
  margin-top: 1.5rem;
  margin-bottom: 1rem;
}

.editor-preview h2,
.editor-preview-side h2 {
  font-size: 1.5rem;
  font-weight: bold;
  margin-top: 1.25rem;
  margin-bottom: 0.75rem;
}

/* Стили для параграфов */
.editor-preview p,
.editor-preview-side p {
  margin-bottom: 1rem;
}

/* Стили для курсива и жирного шрифта */
.editor-preview em,
.editor-preview-side em {
  font-style: italic;
}

.editor-preview strong,
.editor-preview-side strong {
  font-weight: bold;
}

/* Стили для индикатора оставшихся символов */
.character-counter {
  margin-top: 0.5rem;
  text-align: right;
  font-size: 0.75rem;
  line-height: 1rem;
  transition: color 0.2s ease;
}

.easymde-dark-theme .character-counter {
  color: #9ca3af;
  /* text-gray-400 в темной теме */
}

.CodeMirror:not(.easymde-dark-theme)~.character-counter {
  color: #6b7280;
  /* text-gray-500 в светлой теме */
}

.character-counter.warning {
  color: #f59e0b !important;
  /* text-yellow-500 */
}

.character-counter.error {
  color: #ef4444 !important;
  /* text-red-500 */
}

/* Стили для правильного отображения вложенных списков */
.editor-preview ul ul,
.editor-preview-side ul ul,
.editor-preview ol ol,
.editor-preview-side ol ol,
.editor-preview ul ol,
.editor-preview-side ul ol,
.editor-preview ol ul,
.editor-preview-side ol ul {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
}

/* Улучшенные стили для блоков кода */
.editor-preview code,
.editor-preview-side code {
  padding: 0.15rem 0.3rem;
  border-radius: 0.25rem;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}

.editor-preview pre,
.editor-preview-side pre {
  padding: 1rem;
  border-radius: 0.5rem;
  margin-bottom: 1rem;
  overflow-x: auto;
}

.editor-preview pre code,
.editor-preview-side pre code {
  padding: 0;
  background-color: transparent;
  border-radius: 0;
}

/* Улучшения для ссылок - подчеркивание при наведении */
.editor-preview a:hover,
.editor-preview-side a:hover {
  text-decoration: underline;
}

/* Более чёткие границы между элементами в предпросмотре */
.editor-preview hr,
.editor-preview-side hr {
  margin: 1.5rem 0;
  border: 0;
  height: 1px;
}

.easymde-dark-theme .editor-preview hr,
.easymde-dark-theme .editor-preview-side hr {
  background-color: #4b5563;
  /* bg-gray-600 */
}

.editor-preview hr:not(.easymde-dark-theme .editor-preview hr),
.editor-preview-side hr:not(.easymde-dark-theme .editor-preview-side hr) {
  background-color: #e5e7eb;
  /* bg-gray-200 */
}

/* Улучшение стилей для таблиц в предпросмотре */
.editor-preview table,
.editor-preview-side table {
  border-collapse: collapse;
  width: 100%;
  margin-bottom: 1rem;
}

.editor-preview th,
.editor-preview-side th {
  font-weight: 600;
  text-align: left;
  padding: 0.5rem;
}

.editor-preview td,
.editor-preview-side td {
  padding: 0.5rem;
}

.easymde-dark-theme .editor-preview th,
.easymde-dark-theme .editor-preview-side th,
.easymde-dark-theme .editor-preview td,
.easymde-dark-theme .editor-preview-side td {
  border: 1px solid #4b5563;
  /* border-gray-600 */
}

.editor-preview th:not(.easymde-dark-theme .editor-preview th),
.editor-preview-side th:not(.easymde-dark-theme .editor-preview-side th),
.editor-preview td:not(.easymde-dark-theme .editor-preview td),
.editor-preview-side td:not(.easymde-dark-theme .editor-preview-side td) {
  border: 1px solid #d1d5db;
  /* border-gray-300 */
}

/* Стили для кнопки Preview, соответствующие другим кнопкам тулбара */
.editor-toolbar .preview-button-with-text {
  opacity: 0.75;
  transition: opacity 0.2s ease, color 0.2s ease, background-color 0.2s ease;
}

/* Для темной темы */
.easymde-dark-theme .editor-toolbar button.preview-button-with-text:hover,
.easymde-dark-theme .editor-toolbar button.preview-button-with-text.active {
  color: #D32CB4;
  /* text-cube-500 */
  background-color: rgba(211, 44, 180, 0.1);
  /* bg-cube-500 с прозрачностью */
  opacity: 1;
}

/* Для светлой темы */
.editor-toolbar:not(.easymde-dark-theme) button.preview-button-with-text:hover,
.editor-toolbar:not(.easymde-dark-theme) button.preview-button-with-text.active {
  color: #D32CB4;
  /* text-cube-500 */
  background-color: rgba(211, 44, 180, 0.1);
  /* bg-cube-500 с прозрачностью */
  opacity: 1;
}
/* app/assets/stylesheets/terminal.css */

/* Стили для терминала в модальном окне */
.terminal-content {
  background-color: #000;
  color: #f0f0f0;
  font-family: "Menlo", "Monaco", "Consolas", monospace;
  font-size: 14px;
  line-height: 1.5;
  padding: 0.125rem 0.75rem;
  margin: 0;
  white-space: pre-wrap;
  word-break: break-word;
  /* max-height: 400px; */
  width: 100%;
  overflow-x: hidden;
  overflow-y: auto;
}

/* Стили для заглушки пустых логов */
.empty-logs-placeholder {
  height: 362px;
  width: 100%;
  background-color: #000;
  color: #f0f0f0;
  font-family: "Menlo", "Monaco", "Consolas", monospace;
  font-size: 14px;
  border-radius: 0.375rem;
  border: 1px solid #333;
  margin: 0;
  padding: 6px 0 0 14px;
  text-align: left;
  opacity: 0.8;
  box-sizing: border-box;
}

/* Фиксированная высота для обеих панелей табов - предотвращает "прыжки" */
#system-logs-panel,
#container-logs-panel {
  height: 362px !important;
  min-height: 362px !important;
  max-height: 362px !important;
  overflow: hidden !important;
}

/* Фиксированная высота для terminal контроллеров внутри панелей */
#container-logs-panel [data-controller="terminal"] {
  height: 362px !important;
  max-height: 362px !important;
  overflow: hidden !important;
}

/* Для system logs убираем ограничения высоты, так как у них есть .system-logs-container */
#system-logs-panel [data-controller="terminal"] {
  max-height: none !important;
  overflow: visible !important;
}

/* Стили для terminal-content в модальных окнах логов */
#container-logs-panel .terminal-content {
  height: 362px !important;
  max-height: 362px !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
}

/* Для system logs terminal-content убираем ограничения, используем inherit */
#system-logs-panel .terminal-content {
  max-height: none !important;
  overflow-y: visible !important;
  overflow-x: hidden !important;
}

/* Стили для контейнера системных логов */
.system-logs-container {
  height: 362px;
  min-height: 362px;
  max-height: 362px;
  background-color: #000;
  color: #f0f0f0;
  font-family: "Menlo", "Monaco", "Consolas", monospace;
  border-radius: 0.375rem;
  border: 1px solid #333;
  margin: 0;
  padding: 0;
  overflow: hidden;
}

/* Стили для UL контейнера логов */
#system-logs-panel > .system-logs-container > ul {
  height: 100%;
  background-color: transparent;
  color: inherit;
  font-family: inherit;
  border: none;
  margin: 0;
  padding: 0;
  list-style: none;
  overflow-y: auto;
  overflow-x: hidden;
}

/* ==============================================
   ПОЛНОЭКРАННЫЙ РЕЖИМ - СТИЛИ ДЛЯ CONTAINER LOGS
   ============================================== */

/* Container logs в полноэкранном режиме */
.modal-fullscreen #container-logs-panel [data-controller="terminal"] {
  height: calc(100vh - 220px) !important;
  max-height: calc(100vh - 220px) !important;
}

.modal-fullscreen #container-logs-panel .terminal-content {
  height: calc(100vh - 220px) !important;
  max-height: calc(100vh - 220px) !important;
}

/* ==============================================
   БОЛЕЕ ТЕМНЫЕ СКРОЛЛБАРЫ
   ============================================== */

/* Стили для скроллбара в темном режиме - более темные цвета */
.terminal-content::-webkit-scrollbar {
  width: 10px;
}

.terminal-content::-webkit-scrollbar-track {
  background: #111; /* Более темный фон трека */
}

.terminal-content::-webkit-scrollbar-thumb {
  background: #333; /* Более темный ползунок */
  border-radius: 5px;
}

.terminal-content::-webkit-scrollbar-thumb:hover {
  background: #444; /* Чуть светлее при наведении */
}

/* Стили для Firefox - более темные */
.terminal-content {
  scrollbar-width: thin;
  scrollbar-color: #333 #111; /* ползунок, трек */
}

/* Скроллбары для UL системных логов - тоже темнее */
#system-logs-panel > .system-logs-container > ul::-webkit-scrollbar {
  width: 10px;
}

#system-logs-panel > .system-logs-container > ul::-webkit-scrollbar-track {
  background: #111;
}

#system-logs-panel > .system-logs-container > ul::-webkit-scrollbar-thumb {
  background: #333;
  border-radius: 5px;
}

#system-logs-panel > .system-logs-container > ul::-webkit-scrollbar-thumb:hover {
  background: #444;
}

#system-logs-panel > .system-logs-container > ul {
  scrollbar-width: thin;
  scrollbar-color: #333 #111;
}

/* Основные цвета ANSI */
.ansi-black { color: #3A3A3A; }
.ansi-red { color: #E84F4F; }
.ansi-green { color: #B8D68C; }
.ansi-yellow { color: #E1AA5D; }
.ansi-blue { color: #7DC1CF; }
.ansi-magenta { color: #9B64FB; }
.ansi-cyan { color: #6D878D; }
.ansi-white { color: #DDDDDD; }

/* Яркие цвета ANSI */
.ansi-bright-black { color: #666666; }
.ansi-bright-red { color: #FF6C5C; }
.ansi-bright-green { color: #A8FF60; }
.ansi-bright-yellow { color: #FFFFB6; }
.ansi-bright-blue { color: #96CBFE; }
.ansi-bright-magenta { color: #FF73FD; }
.ansi-bright-cyan { color: #93E0E3; }
.ansi-bright-white { color: #FFFFFF; }

/* Фоновые цвета */
.ansi-bg-black { background-color: #3A3A3A; }
.ansi-bg-red { background-color: #E84F4F; }
.ansi-bg-green { background-color: #B8D68C; }
.ansi-bg-yellow { background-color: #E1AA5D; }
.ansi-bg-blue { background-color: #7DC1CF; }
.ansi-bg-magenta { background-color: #9B64FB; }
.ansi-bg-cyan { background-color: #6D878D; }
.ansi-bg-white { background-color: #DDDDDD; }

/* Стили текста */
.ansi-bold { font-weight: bold; }
.ansi-italic { font-style: italic; }
.ansi-underline { text-decoration: underline; }

/* Дополнительные стили для модального окна */
.logs-modal-backdrop {
  @apply fixed inset-0 z-40 bg-black bg-opacity-50;
}

#idle_job_logs .terminal-content b span[style="color:#000"] {
    color: rgb(240, 240, 240) !important;
    font-weight: normal !important;
}

/* Стили для li элементов */
#system-logs-panel ul > li {
  margin: 0;
  padding: 0;
  background: transparent;
}

/* Стили для time элементов (timestamps) */
#system-logs-panel ul > li > time {
  display: block;
  width: 100%;
  margin: 0;
  padding: 0.125rem 0.75rem;
  background-color: #000;
  color: #0AA;
  font-family: "Menlo", "Monaco", "Consolas", monospace;
  font-size: 13px;
}

/* Убираем ограничения высоты с отдельных terminal контроллеров внутри li */
#system-logs-panel li .terminal-content {
  min-height: auto !important;
  max-height: none !important;
}

.flag-icon-background, .flag-icon {
  background-size: contain;
  background-position: 50%;
  background-repeat: no-repeat; }

.flag-icon {
  position: relative;
  display: inline-block;
  width: 1.3333333333em;
  line-height: 1em; }
  .flag-icon:before {
    content: '\00a0'; }
  .flag-icon.flag-icon-squared {
    width: 1em; }

.flag-icon-ad {
  background-image: url(/assets/flags/4x3/ad-04b4b65e6a104b102172258b3894a9a4e29890aa63e8edc4812033dd7387b77e.svg); }
  .flag-icon-ad.flag-icon-squared {
    background-image: url(/assets/flags/1x1/ad-847534ad5665b0bb24f766110a56922d9115cbd4c35746597e1fc5edb381b41a.svg); }

.flag-icon-ae {
  background-image: url(/assets/flags/4x3/ae-f6dd88c6cb3940f07ad1ee2635ec0f081d53885efea97c2f363f61c4f06129e8.svg); }
  .flag-icon-ae.flag-icon-squared {
    background-image: url(/assets/flags/1x1/ae-c5992978bbf00ada1971a746b819936eb2f73aefac7f10518995545c2ccf2c10.svg); }

.flag-icon-af {
  background-image: url(/assets/flags/4x3/af-745ad7e8ea956edf06641d01bf5a0374cfae6902846e62a30ed56ad80f889906.svg); }
  .flag-icon-af.flag-icon-squared {
    background-image: url(/assets/flags/1x1/af-50e587ac98a5af98e21994909aa1f9898add6842954e2ad6a709d857b39a8b55.svg); }

.flag-icon-ag {
  background-image: url(/assets/flags/4x3/ag-ec678db01740bd72757a7883a1dbea0c163e2b0a7a692cc8a0749c6f50428abb.svg); }
  .flag-icon-ag.flag-icon-squared {
    background-image: url(/assets/flags/1x1/ag-35c11ca3ad0581842f9c1eddc462690e6166f94a8dbb15e248398df93a276004.svg); }

.flag-icon-ai {
  background-image: url(/assets/flags/4x3/ai-d688814fa60d2294b79b6ffe3d2a64e55a0bc013718cbf028b5d5720e3041794.svg); }
  .flag-icon-ai.flag-icon-squared {
    background-image: url(/assets/flags/1x1/ai-850f5995f9b55ac8f30b35157cb1881d149e8257c168f39dbc8e51cae25c222d.svg); }

.flag-icon-al {
  background-image: url(/assets/flags/4x3/al-5631be891ba0ccdb1f2a9b3a934031ed681aaeb139acc9e3b414e2561a608495.svg); }
  .flag-icon-al.flag-icon-squared {
    background-image: url(/assets/flags/1x1/al-96787887d75cd3bd02e8eff8a75ba0856873167743205a5cbfc5439197e3070d.svg); }

.flag-icon-am {
  background-image: url(/assets/flags/4x3/am-fd6eb7b12b2bbd15d4e5db6949b57255849f5fecc62d9a48d848bab767f1123e.svg); }
  .flag-icon-am.flag-icon-squared {
    background-image: url(/assets/flags/1x1/am-85e618fb93d8a64fc145ce0ebfb0397e5468816476df4c43ff0419dfea72d53b.svg); }

.flag-icon-ao {
  background-image: url(/assets/flags/4x3/ao-09b6b18d13202b859e9e94b9a88e59701b7b2d00d88d8a749f7f0d3bb71c745c.svg); }
  .flag-icon-ao.flag-icon-squared {
    background-image: url(/assets/flags/1x1/ao-dd2f7930f4f4214707f7a311f16cae422471094601319a5b69abeb48d384855c.svg); }

.flag-icon-aq {
  background-image: url(/assets/flags/4x3/aq-2adcc4b28a1da2ac271675b5377a39f226fe06b135d287215c153957b2176da2.svg); }
  .flag-icon-aq.flag-icon-squared {
    background-image: url(/assets/flags/1x1/aq-8809bb8b30a063b921c866da0a83236d7dd8a17148ef4c0db3c53ccd0dc15e6f.svg); }

.flag-icon-ar {
  background-image: url(/assets/flags/4x3/ar-8208e0546b8e666d806ee3fc3061504a62bf6cdea5fa4385d54c3ba131e3135c.svg); }
  .flag-icon-ar.flag-icon-squared {
    background-image: url(/assets/flags/1x1/ar-2d821fddef311e29c74ce2b19bbc651a2d613aebbd88f59ad8fc6c3a81544d1b.svg); }

.flag-icon-as {
  background-image: url(/assets/flags/4x3/as-a7ce0712972b05287e9ddf7da0e19630d4b440f0ce59b3a50397bc29d162192e.svg); }
  .flag-icon-as.flag-icon-squared {
    background-image: url(/assets/flags/1x1/as-06505370c9bcfcad7b057757c3e892d12930db56565c0fd0bc86f4af5af5686f.svg); }

.flag-icon-at {
  background-image: url(/assets/flags/4x3/at-644b0cc2d91fe69f18d9992488a748efa0df7eb6ddc83ac79351ba9226956d25.svg); }
  .flag-icon-at.flag-icon-squared {
    background-image: url(/assets/flags/1x1/at-b36d3570a5102400e028dfa0b5204e9c2cd8d72b398e94bab5c51edd0954ce40.svg); }

.flag-icon-au {
  background-image: url(/assets/flags/4x3/au-887bb0cc0e77e15153e4c9006e785d5f68c77ca0ab9eb7f538e371a0e4f218af.svg); }
  .flag-icon-au.flag-icon-squared {
    background-image: url(/assets/flags/1x1/au-ba82260247c564d9f4735fa2eeca092ac9b5d4e32c6a6a8db1d4177b746516a5.svg); }

.flag-icon-aw {
  background-image: url(/assets/flags/4x3/aw-ea7eeaeec20598c43c59a2536b150a7fb5e7f6443a5bfb7e1bd72aa7186be8e1.svg); }
  .flag-icon-aw.flag-icon-squared {
    background-image: url(/assets/flags/1x1/aw-c39c9c3d5de9ece42a7e717ac3670886532dd75d50a34e1b3ae10e39487679fb.svg); }

.flag-icon-ax {
  background-image: url(/assets/flags/4x3/ax-4825f85b2d4669c70f360bd63f1e36215d16bace4700dffc61992911de53198a.svg); }
  .flag-icon-ax.flag-icon-squared {
    background-image: url(/assets/flags/1x1/ax-ce68def4e721fcb48feb3b2aee81ad4ba7e75642ace96f24c059ee82b906c35b.svg); }

.flag-icon-az {
  background-image: url(/assets/flags/4x3/az-9e3354b743219dbaf19cc54a63e1a8ed41d1f41485455330775b3b5c6dd6c9fe.svg); }
  .flag-icon-az.flag-icon-squared {
    background-image: url(/assets/flags/1x1/az-4e93f9eef0ef96515e8c152c87d4a278d725ecb20108257105c9ccd48a156ddb.svg); }

.flag-icon-ba {
  background-image: url(/assets/flags/4x3/ba-7e420cae1feb7be337a34f25fb8fd6421295cde2e03273efa7e880d7d5d9281e.svg); }
  .flag-icon-ba.flag-icon-squared {
    background-image: url(/assets/flags/1x1/ba-2e20ab2d7c91e67460cc9a910016a7706b0d7e5865895cce6b835b4f557cc861.svg); }

.flag-icon-bb {
  background-image: url(/assets/flags/4x3/bb-35373b19bd542d0382d79bbd162be7583932adbb180c8b6223614a52c31fb1a0.svg); }
  .flag-icon-bb.flag-icon-squared {
    background-image: url(/assets/flags/1x1/bb-f5d71a0072d6dbc25a4264c4ab0d997b785550f8e6581230c22bb30fec7c9841.svg); }

.flag-icon-bd {
  background-image: url(/assets/flags/4x3/bd-0531b5c730836d8ecfb4b9b79aad2e560dfc53a30e65f2a4030d2f275827f5ae.svg); }
  .flag-icon-bd.flag-icon-squared {
    background-image: url(/assets/flags/1x1/bd-c35883811cce9a21ef91202da7fc4648cc62b9ffee53a5ad0a88b179494e95fc.svg); }

.flag-icon-be {
  background-image: url(/assets/flags/4x3/be-ac7f9445060d07698cf4c4b5126b13397e12949102326caa3179eb98d4a90974.svg); }
  .flag-icon-be.flag-icon-squared {
    background-image: url(/assets/flags/1x1/be-61e1bb398ed6bf0253a21f9e32feb26395cf5aec5dc05640235d4accf43c2ee1.svg); }

.flag-icon-bf {
  background-image: url(/assets/flags/4x3/bf-4f19b8dfd521393da6d1f2ca95cc79d22d558c34c3d74b2718417d9df29726f3.svg); }
  .flag-icon-bf.flag-icon-squared {
    background-image: url(/assets/flags/1x1/bf-7b037b76d1915df2f978852ebc0b88e6fa9abf8d579ed85e360d081b8f95e09c.svg); }

.flag-icon-bg {
  background-image: url(/assets/flags/4x3/bg-1433c1cd05916af99e2db72a9e2c6d7532013a619770b66b51595fcd349cbaa6.svg); }
  .flag-icon-bg.flag-icon-squared {
    background-image: url(/assets/flags/1x1/bg-d631585f0e0981298746582b913765429bbcdd2349cc6062b8e9e790be5f31f0.svg); }

.flag-icon-bh {
  background-image: url(/assets/flags/4x3/bh-d677a52979c37517212e9b9b6697541a366b0104e09808d396a6d02411a983f5.svg); }
  .flag-icon-bh.flag-icon-squared {
    background-image: url(/assets/flags/1x1/bh-d408321e7282b8ee67413917d3063536197d8ceeb23abc05677d748ebb8a6378.svg); }

.flag-icon-bi {
  background-image: url(/assets/flags/4x3/bi-6323bc95384cf7a6ea6c91332c3054e55152b391e8f823828df3d05a3e40854a.svg); }
  .flag-icon-bi.flag-icon-squared {
    background-image: url(/assets/flags/1x1/bi-e79238de5c139c78aeb157e1b7d5646a79dc5e154f35ad49aeae21321c0a8d78.svg); }

.flag-icon-bj {
  background-image: url(/assets/flags/4x3/bj-951d79103aea5585768fa178923f6127f918fc01d02556174dff9f8506cf90ea.svg); }
  .flag-icon-bj.flag-icon-squared {
    background-image: url(/assets/flags/1x1/bj-7f5cc7510ece68a729788fcfbebd91dd941e0014ba3187b66bcd3da245c78460.svg); }

.flag-icon-bl {
  background-image: url(/assets/flags/4x3/bl-cc250a31e29ac0fe10c9e79a35920b280f6ec2731b9d5f701b2313bee631e114.svg); }
  .flag-icon-bl.flag-icon-squared {
    background-image: url(/assets/flags/1x1/bl-cfb5dd954f586d0662e09cdcbd338da8e225d481896414688262e2bd14c38c8a.svg); }

.flag-icon-bm {
  background-image: url(/assets/flags/4x3/bm-1e95c5f49d3f1f4a7049a82cdcd6ae326e4c37effd2249df9f7df423942b7396.svg); }
  .flag-icon-bm.flag-icon-squared {
    background-image: url(/assets/flags/1x1/bm-e0b05c8af03f5fe3728e191b24bedb2ac2429b86abfba4fa14b7d48960883d9c.svg); }

.flag-icon-bn {
  background-image: url(/assets/flags/4x3/bn-2e92465bcaef939fcf20029aedac6af2262eb4ee25e36d64bcf98d03976bbbe9.svg); }
  .flag-icon-bn.flag-icon-squared {
    background-image: url(/assets/flags/1x1/bn-6a56361917ec344da75ebb87a3713a2eaaf4605d84b1f1e3db1a8df6685bfb3f.svg); }

.flag-icon-bo {
  background-image: url(/assets/flags/4x3/bo-4c581c015880880d328153d007fc2517a7e0b53126c1a3a676e4abbb19e4c7fb.svg); }
  .flag-icon-bo.flag-icon-squared {
    background-image: url(/assets/flags/1x1/bo-ec135db8db19ecafc614799d5e9e459cc5d8e9d91308f7d4511f3b95f8ee1054.svg); }

.flag-icon-bq {
  background-image: url(/assets/flags/4x3/bq-973b8d977bde843039e96a9229d803fcbb1c29ba92272b8bc3223b28b8ccc803.svg); }
  .flag-icon-bq.flag-icon-squared {
    background-image: url(/assets/flags/1x1/bq-78c259288833d36f4d2209a4a95ca18cd3c18820f79f49b278bf7960cf5b34e7.svg); }

.flag-icon-br {
  background-image: url(/assets/flags/4x3/br-68ee8e029f99c31821e646aec1c8e9e8f8b1aaf26d72909ac75ff38c1f8e9201.svg); }
  .flag-icon-br.flag-icon-squared {
    background-image: url(/assets/flags/1x1/br-746af5283e4e792a1a7f94d934cac1e45c94470c4ffd37df5d1ab10bec2fd4db.svg); }

.flag-icon-bs {
  background-image: url(/assets/flags/4x3/bs-7b507794ee3f8d7e6b0c5739552e37cd2ab0596fab63a03f20fde4249cbf18d2.svg); }
  .flag-icon-bs.flag-icon-squared {
    background-image: url(/assets/flags/1x1/bs-277f44ad225c320c1a44610721f5b3a457d7e3d649593b598d59e2ce5164f727.svg); }

.flag-icon-bt {
  background-image: url(/assets/flags/4x3/bt-2f99024e1cec950a6bce184bc2d8a27629efdab8178a28bad798881ac3167710.svg); }
  .flag-icon-bt.flag-icon-squared {
    background-image: url(/assets/flags/1x1/bt-77d4f8b9a2c3dadacce904304c524b507e2a0d4109cf6506aa8cc1c131c359ad.svg); }

.flag-icon-bv {
  background-image: url(/assets/flags/4x3/bv-de8bb212ed5afdf6d557928d784ed98d2e2baa7aaaf2ced7abc5cf13fa540423.svg); }
  .flag-icon-bv.flag-icon-squared {
    background-image: url(/assets/flags/1x1/bv-4e4ae03e0878a6e689a0a2ebfe2b1b10fe58329a86acd73ee41f1a9c569f2cb3.svg); }

.flag-icon-bw {
  background-image: url(/assets/flags/4x3/bw-76559252bbe0a305e9228103c5c34c39271a9d0b69f8f2b0dfbea5e18d7b37de.svg); }
  .flag-icon-bw.flag-icon-squared {
    background-image: url(/assets/flags/1x1/bw-3797276ece0055f7c569dc013b59174f613e956c714b5674c90e911615f61318.svg); }

.flag-icon-by {
  background-image: url(/assets/flags/4x3/by-7865b19bb46d15f8004699022907d7c8d07193121dac101a3724b7ca578ee3ba.svg); }
  .flag-icon-by.flag-icon-squared {
    background-image: url(/assets/flags/1x1/by-7bd37ee878e4225470de8cc284d66cf70785a0329da88b43e5f93e25c047b738.svg); }

.flag-icon-bz {
  background-image: url(/assets/flags/4x3/bz-c8dfd550816ef86ff0fb82f9b31ca2467fcf50a7ba53e6163fe2bb01cccab0d5.svg); }
  .flag-icon-bz.flag-icon-squared {
    background-image: url(/assets/flags/1x1/bz-07baa0c080ae0dec236c42810db344f5b6e4209fe16bc9644cf998108b56b85c.svg); }

.flag-icon-ca {
  background-image: url(/assets/flags/4x3/ca-f9229a913dece446e34e6de7245dfd3adbea059934b5beaed45654cef2f1cb1d.svg); }
  .flag-icon-ca.flag-icon-squared {
    background-image: url(/assets/flags/1x1/ca-47f58efb8689efb510291bb7b7a354c3e434e983914f0cc382e763ecccfa7a6e.svg); }

.flag-icon-cc {
  background-image: url(/assets/flags/4x3/cc-acf43807923322e2e43deef84443007b75d0d21ebb8a85d0d4e2837e998798c8.svg); }
  .flag-icon-cc.flag-icon-squared {
    background-image: url(/assets/flags/1x1/cc-827355b0b5c0a98cd0b479c7914c62d1de7712c643978941a97741c13ee69891.svg); }

.flag-icon-cd {
  background-image: url(/assets/flags/4x3/cd-594addda580762e53242cc9e5a3885cc200d6b92c9453b65242c0038e4e22959.svg); }
  .flag-icon-cd.flag-icon-squared {
    background-image: url(/assets/flags/1x1/cd-6f390c3dac0d0d278ea6593bb615e3e23a94f7e84cc40b917e47bdce520a3a2b.svg); }

.flag-icon-cf {
  background-image: url(/assets/flags/4x3/cf-31a4f1c7e55d90551235336b339544920b01a8a4fb27efd5b18d0a68ea908f0e.svg); }
  .flag-icon-cf.flag-icon-squared {
    background-image: url(/assets/flags/1x1/cf-820b63e306c3eec593028576d9ea830f24526b8e4c8a51cec04f4a1851f1f781.svg); }

.flag-icon-cg {
  background-image: url(/assets/flags/4x3/cg-cb3b4a7be309eae587becb687690e332624b75d8a40481abd13a4d8a3c685a87.svg); }
  .flag-icon-cg.flag-icon-squared {
    background-image: url(/assets/flags/1x1/cg-3b7d163f2951bc21e895dbead028c79b8f97dc4a95f9d9ca76d78b398025a20b.svg); }

.flag-icon-ch {
  background-image: url(/assets/flags/4x3/ch-d32cf51d10ea8174a3e8725e620c5bd13511a6a6c676d3c807e6ad82017f6178.svg); }
  .flag-icon-ch.flag-icon-squared {
    background-image: url(/assets/flags/1x1/ch-ff30c29ed89a29db4cae89e8f4915e573c75dd7ad377e5ac7987c956fb68a141.svg); }

.flag-icon-ci {
  background-image: url(/assets/flags/4x3/ci-70e248e97c577c3ab3a85a8a76e5f20ef0bfd2c2a3c190746e625fa37edbbec9.svg); }
  .flag-icon-ci.flag-icon-squared {
    background-image: url(/assets/flags/1x1/ci-fb50e5c5558e915f5cd4060bd75d63e43ed4a2af1cf77caf1d184d8e5b3c888b.svg); }

.flag-icon-ck {
  background-image: url(/assets/flags/4x3/ck-a86d1e54e265e2de5155595e838ec7c3db3ca23f563336885d7c5d17888c4709.svg); }
  .flag-icon-ck.flag-icon-squared {
    background-image: url(/assets/flags/1x1/ck-a0d6f5ca82965ef1838549666bef9735b619c40bcf791850f092486b1fa3831d.svg); }

.flag-icon-cl {
  background-image: url(/assets/flags/4x3/cl-0bec6c3cc4d36bbf245a3be22c10b8ff9c25996bb372a916e365e3274e62ccfb.svg); }
  .flag-icon-cl.flag-icon-squared {
    background-image: url(/assets/flags/1x1/cl-8dc4289cd2cba6ac3f07519957f3cbd582f59e1153d655871a507bc0559fc93f.svg); }

.flag-icon-cm {
  background-image: url(/assets/flags/4x3/cm-8832f17145686399c412437f6762b4de6afb48fcc409590b7b09e593fe3b08d5.svg); }
  .flag-icon-cm.flag-icon-squared {
    background-image: url(/assets/flags/1x1/cm-4ba39a0a5fe36564e132e7a4d0f881ca10e95b0824157253a9180b2fe0089553.svg); }

.flag-icon-cn {
  background-image: url(/assets/flags/4x3/cn-865ae68cc9042422bae55dba123af75dfab352069aa15121385a739c57caf1aa.svg); }
  .flag-icon-cn.flag-icon-squared {
    background-image: url(/assets/flags/1x1/cn-cdf756a16521136b99d38c241ee5df601912f290c6bafd45f7a5f73f916ed8ed.svg); }

.flag-icon-co {
  background-image: url(/assets/flags/4x3/co-48603194a139754c8c7908f4d0c8181ca6729a221de897e8e5d26c9a3f211b1d.svg); }
  .flag-icon-co.flag-icon-squared {
    background-image: url(/assets/flags/1x1/co-0be1e3cef708f4f0f979a3c36bdcb4046a45693846dc9b9e5be2ea5f1c536667.svg); }

.flag-icon-cr {
  background-image: url(/assets/flags/4x3/cr-127b7f2e0f6ebe8c62885fd78f6a3dc167624e8e7b5fac79d4b8f3054b798a92.svg); }
  .flag-icon-cr.flag-icon-squared {
    background-image: url(/assets/flags/1x1/cr-80711b24354b0eedd247bbd77352db3bc9ad586c31d0a8727a4400368e56b2c4.svg); }

.flag-icon-cu {
  background-image: url(/assets/flags/4x3/cu-c72751747322de6b51b1dd462d04d0b533fa1e1c68f51b3c90d19ec683c2af3a.svg); }
  .flag-icon-cu.flag-icon-squared {
    background-image: url(/assets/flags/1x1/cu-ec5f9adfe3639f609ebf60d933d6500a0a9a5d77f9c8d5ec6a2f0d0ec2efd5a4.svg); }

.flag-icon-cv {
  background-image: url(/assets/flags/4x3/cv-029b4bd4d5c58ee3479b9a5fd3700923efa4881282225ac47690a3955472b7f1.svg); }
  .flag-icon-cv.flag-icon-squared {
    background-image: url(/assets/flags/1x1/cv-750969622373a36a416fc64118f1cb5407764d508f99b7db720f2ab474b93ebf.svg); }

.flag-icon-cw {
  background-image: url(/assets/flags/4x3/cw-f3c7dc011a64c13ebab21e47baaea3e0fea8d83f83fd8cc1845630a5f78ce087.svg); }
  .flag-icon-cw.flag-icon-squared {
    background-image: url(/assets/flags/1x1/cw-48a78eb5e8abd98b90ae7b373746bbd58851c76eb305ca0e7d8081df9180f248.svg); }

.flag-icon-cx {
  background-image: url(/assets/flags/4x3/cx-9033ee142f06aac6b700968943103e6dba8ce3171b17f7f7d54f26c35387c022.svg); }
  .flag-icon-cx.flag-icon-squared {
    background-image: url(/assets/flags/1x1/cx-f8356811ad67ac25c4a8c22bba7468615f8a0bcb09e4d8da09ad3806febc7d1b.svg); }

.flag-icon-cy {
  background-image: url(/assets/flags/4x3/cy-86c9999efa3399db043be615d16558ec0e40feafe9325fe1b6422ff0e089a60c.svg); }
  .flag-icon-cy.flag-icon-squared {
    background-image: url(/assets/flags/1x1/cy-67835af18d83749f0ac63e160db340d7a83b2e189e5e5b715b49c4b922fbb4ff.svg); }

.flag-icon-cz {
  background-image: url(/assets/flags/4x3/cz-e8f891c91f0889f53815958ed9c0d0472c03ecf58c5b8d3d87a864ede0e57ce0.svg); }
  .flag-icon-cz.flag-icon-squared {
    background-image: url(/assets/flags/1x1/cz-de11cacecaee1ed952a170fa43d318b01507ae9c8b0ab16b96f53848676326c7.svg); }

.flag-icon-de {
  background-image: url(/assets/flags/4x3/de-dcf5931120e541ce9e83e97c37cf95eeac9a152cd5e5ed9e0bf58116943d7250.svg); }
  .flag-icon-de.flag-icon-squared {
    background-image: url(/assets/flags/1x1/de-3479e75f866450220db28ef3ebb1ba0c345c059ed67de62c4176a09572da8f32.svg); }

.flag-icon-dj {
  background-image: url(/assets/flags/4x3/dj-e69892f8499ec8d780cdd20b051f936d5471eb92efd519b93be9d10f31382c77.svg); }
  .flag-icon-dj.flag-icon-squared {
    background-image: url(/assets/flags/1x1/dj-49721ea1deeb6e17f32ee2b3617d27961ad256505849243843f0fd5697332b18.svg); }

.flag-icon-dk {
  background-image: url(/assets/flags/4x3/dk-d50cdf2f88be249eb116da08c38cf119d44246ab4f5d62a94feefd37da149019.svg); }
  .flag-icon-dk.flag-icon-squared {
    background-image: url(/assets/flags/1x1/dk-24ccaa605d1f01e33802197d416654b64fac3f3d28ba90b5f6094c17dfe95344.svg); }

.flag-icon-dm {
  background-image: url(/assets/flags/4x3/dm-24faadaf18d5651beccc45688ef3421d2d083b5f2e92cab50c414e487a899095.svg); }
  .flag-icon-dm.flag-icon-squared {
    background-image: url(/assets/flags/1x1/dm-4f6888ba822d1592b9751c198ae6aafd1c14630be57d7e3b4372e3df8eb4f201.svg); }

.flag-icon-do {
  background-image: url(/assets/flags/4x3/do-43538ca280e65a4eb8b38992290cda974a7f631ae18f3e6864dc6f61397ab514.svg); }
  .flag-icon-do.flag-icon-squared {
    background-image: url(/assets/flags/1x1/do-1164fc19d2a5f2299e84d59627b780ff9dcba335acaa19a4acacd4781d916b78.svg); }

.flag-icon-dz {
  background-image: url(/assets/flags/4x3/dz-1b56086fc67c067d339838fc63e8f98faea641560b14839260546c895bdf4768.svg); }
  .flag-icon-dz.flag-icon-squared {
    background-image: url(/assets/flags/1x1/dz-b9527d30bdb9d67fba87351df4d4340fcc1c0dce368f0371359e5fcf7d445f3b.svg); }

.flag-icon-ec {
  background-image: url(/assets/flags/4x3/ec-d6df0532653f0a2a3ccdee80854ad75c4a4fe4a360fc5d5c73865253ebfc6b7f.svg); }
  .flag-icon-ec.flag-icon-squared {
    background-image: url(/assets/flags/1x1/ec-a1a0b637c3d12b488cd180746ea10e42e659907c99c0b3d9eec65415494b5321.svg); }

.flag-icon-ee {
  background-image: url(/assets/flags/4x3/ee-2e52e01e34f175e856e120e57184ce61eccb5bff94633d3f2effcfed765f610b.svg); }
  .flag-icon-ee.flag-icon-squared {
    background-image: url(/assets/flags/1x1/ee-1058c4a95d48696c8c99608a104e756d4ac5c431a7a1f60e179769416c443420.svg); }

.flag-icon-eg {
  background-image: url(/assets/flags/4x3/eg-2b5a88cf9ab7a59447e6a3e3cc12d350c573719d2a90810d50ed7695a1591d30.svg); }
  .flag-icon-eg.flag-icon-squared {
    background-image: url(/assets/flags/1x1/eg-ded55c3561ee2003ede5cc35af88959adb2398badc3c63dcc40e320d5bdb6c97.svg); }

.flag-icon-eh {
  background-image: url(/assets/flags/4x3/eh-250c6f7e1db483fb08f682d4917c06741614edb0a093aa80c0fe57f9bff03eba.svg); }
  .flag-icon-eh.flag-icon-squared {
    background-image: url(/assets/flags/1x1/eh-ae52d9c4377873ea1db474ef820d87e956753992097bbce93118c836f27c5598.svg); }

.flag-icon-er {
  background-image: url(/assets/flags/4x3/er-13b1d5072a285b78863f33088676ff459fc9049e403c4427d0bf149ab8a65eac.svg); }
  .flag-icon-er.flag-icon-squared {
    background-image: url(/assets/flags/1x1/er-516d763b5c3ddf087968e8e2ce10eb9f6a162e98b1c586ae90f7ebc2a9e877e6.svg); }

.flag-icon-es {
  background-image: url(/assets/flags/4x3/es-85290c103c538de1b8629c7a609319f01fc5a63a24655946e6003740d30f1534.svg); }
  .flag-icon-es.flag-icon-squared {
    background-image: url(/assets/flags/1x1/es-582d90241cc77269d8eeaa709ee9345c4e3935b7c20f9d3f04d707800c554896.svg); }

.flag-icon-et {
  background-image: url(/assets/flags/4x3/et-818e867ed44592f1c476d5abd8d9e5b60bb1e485f01076a633f5304fee7990d4.svg); }
  .flag-icon-et.flag-icon-squared {
    background-image: url(/assets/flags/1x1/et-7e2476975a4837f67af86aa6556d382dfd6769922a47ee9a49ef81a540c0f3b7.svg); }

.flag-icon-fi {
  background-image: url(/assets/flags/4x3/fi-262396615a680200f7709a9a998a1f346db6de48844bb0a76d8c41d0d8dfb466.svg); }
  .flag-icon-fi.flag-icon-squared {
    background-image: url(/assets/flags/1x1/fi-cdfc9cc3908d4f0d534fb34853fda8db5981195204ab6219bad3aa3cf90ecfa6.svg); }

.flag-icon-fj {
  background-image: url(/assets/flags/4x3/fj-fd0cc7fe3c27f0c999ce61d40b0143ca536d9d39875c524bb20afe5ccd55e40c.svg); }
  .flag-icon-fj.flag-icon-squared {
    background-image: url(/assets/flags/1x1/fj-930160f9247a73774021c9d019dfedc21ed09934db523690ca76f0a7e1a2d9d1.svg); }

.flag-icon-fk {
  background-image: url(/assets/flags/4x3/fk-5d5fdf224c1455f03c84d85f587463d8c511ff86dd5592f216a7470989175e42.svg); }
  .flag-icon-fk.flag-icon-squared {
    background-image: url(/assets/flags/1x1/fk-b614bdecd7ba844a5885a5acfb6b658bf649dd72d095844abdd4cf14860685c4.svg); }

.flag-icon-fm {
  background-image: url(/assets/flags/4x3/fm-6e665d3e05ae726fee0ced73ae84ce1d0596e80cb3dafce78d0c56dbc3018584.svg); }
  .flag-icon-fm.flag-icon-squared {
    background-image: url(/assets/flags/1x1/fm-c59efd1b95788946440a90610eac4f3222be5fbfb5748c076eabd0d4b6b8613e.svg); }

.flag-icon-fo {
  background-image: url(/assets/flags/4x3/fo-e2bcddb90777676679c7d680f18bcace56143f3a6bb0618ce59e4bf863b9e58e.svg); }
  .flag-icon-fo.flag-icon-squared {
    background-image: url(/assets/flags/1x1/fo-c9e403639ac04f28b0c86fc370ac5a106213f2ecf2ffc291cb9cd0ec2c000d8b.svg); }

.flag-icon-fr {
  background-image: url(/assets/flags/4x3/fr-14bbb212b68a54751cbf4354dc9ca16bf4fd671fba4bfd0e77fb855fc55ce884.svg); }
  .flag-icon-fr.flag-icon-squared {
    background-image: url(/assets/flags/1x1/fr-8b9d16b144204ecd34289bf1f0e06e57ad03a889a3813463de8e1a25005da5ec.svg); }

.flag-icon-ga {
  background-image: url(/assets/flags/4x3/ga-ae7daae3629bfa925e336323a198a018ae2007a1ea2ab9ba32d4b110e0abc7d4.svg); }
  .flag-icon-ga.flag-icon-squared {
    background-image: url(/assets/flags/1x1/ga-1a903d6903087e08d16b56a27741cd1ea2c0685fbd325e9c4cef45d7fb00ccc3.svg); }

.flag-icon-gb {
  background-image: url(/assets/flags/4x3/gb-14e43b4df91315b33ed5f8ad46d9e84f43f84be11c65148bca043808832cab95.svg); }
  .flag-icon-gb.flag-icon-squared {
    background-image: url(/assets/flags/1x1/gb-81ec47f82b87b9398d17f1db841ea31695a24fa3e05c60fa4d59b21ae4d5bed2.svg); }

.flag-icon-gd {
  background-image: url(/assets/flags/4x3/gd-9a09ce17c1792c8860223020288f72ed168afebcafdc9fa8c46a7b7b1513c28a.svg); }
  .flag-icon-gd.flag-icon-squared {
    background-image: url(/assets/flags/1x1/gd-1678beac8104635c4360593bbba3e3e4b84467d8997ed538137b5a68740ba1b9.svg); }

.flag-icon-ge {
  background-image: url(/assets/flags/4x3/ge-0ed0a003c1e169ed60bdd889c8c841b0a7931aa3e809ca4d8e5da522385f35c9.svg); }
  .flag-icon-ge.flag-icon-squared {
    background-image: url(/assets/flags/1x1/ge-d90251ffc959309587136e12331f57a2db6b284a892ba1fee03927383208a760.svg); }

.flag-icon-gf {
  background-image: url(/assets/flags/4x3/gf-d4b632e9a932eff7d4e32338d13724f58332eeb445cfa9351a052b77cd688d3d.svg); }
  .flag-icon-gf.flag-icon-squared {
    background-image: url(/assets/flags/1x1/gf-be726fca00f77b50eec1525f3889ebf6de7f8f46e28cb63f0cbbe026cdaf564b.svg); }

.flag-icon-gg {
  background-image: url(/assets/flags/4x3/gg-ea89231f0fa42d543d008b4f2fe8a94fc253a1808b8b8f6ab49f4bd9553c498e.svg); }
  .flag-icon-gg.flag-icon-squared {
    background-image: url(/assets/flags/1x1/gg-ebfebaf3102bbdfecee844b24f59ef79c78d3b573203d8058e363847b33531a0.svg); }

.flag-icon-gh {
  background-image: url(/assets/flags/4x3/gh-90efce1b22e18fbd77cb6f13e9f72ecea1338e3fd090b3817171eb3e24ba2516.svg); }
  .flag-icon-gh.flag-icon-squared {
    background-image: url(/assets/flags/1x1/gh-e9286720b91098135c65f7ad83d9a796efed89e27a052aac78af57e82d003859.svg); }

.flag-icon-gi {
  background-image: url(/assets/flags/4x3/gi-03f50f9d9b262fdf822d325c5325b374661821d6fae41e20de42bc761e56df52.svg); }
  .flag-icon-gi.flag-icon-squared {
    background-image: url(/assets/flags/1x1/gi-94700c7efeae285ce37ad883ca906c4ee65a99ede614b40eacb88d64873abb96.svg); }

.flag-icon-gl {
  background-image: url(/assets/flags/4x3/gl-3b1f2b9c26c35f87fcb4b417fff6ad3d2aada484d734382440c338d4c7dcbd00.svg); }
  .flag-icon-gl.flag-icon-squared {
    background-image: url(/assets/flags/1x1/gl-e468d30f57d5159f92aa487c8d16f9395671e64e4dcd74ec71b40bfa96259df4.svg); }

.flag-icon-gm {
  background-image: url(/assets/flags/4x3/gm-8a5011e0a99457e6dfeb53b55a90875f2d9a802fe8fec13f570de6f2a27b8639.svg); }
  .flag-icon-gm.flag-icon-squared {
    background-image: url(/assets/flags/1x1/gm-4200b76a4dbfbd9de052de9de778ae19d659a1d75d669757885580ef286497ec.svg); }

.flag-icon-gn {
  background-image: url(/assets/flags/4x3/gn-e990df30eba87d7036bbf6a47b64d0a6360d82fba6b5bba812e148648e56ea47.svg); }
  .flag-icon-gn.flag-icon-squared {
    background-image: url(/assets/flags/1x1/gn-4f9823b9e177c0604f8cbc1b2412ac9c39b4ffc3eda66311e787a6d9a640ebf7.svg); }

.flag-icon-gp {
  background-image: url(/assets/flags/4x3/gp-024ddd0e63a5e22c9d9f73a84b8306f2176083081825a065d99646ee123dc242.svg); }
  .flag-icon-gp.flag-icon-squared {
    background-image: url(/assets/flags/1x1/gp-00fab4fc916f5f267afd8e100a52098ba4aa6761cba1ecde56d506e85bd12025.svg); }

.flag-icon-gq {
  background-image: url(/assets/flags/4x3/gq-4e5c5e90e99f9dd14a43b597b6d370c8691ee73e8c75a8184e4a8390ff3e2bb0.svg); }
  .flag-icon-gq.flag-icon-squared {
    background-image: url(/assets/flags/1x1/gq-0e6d55dbcfe1e727dbe9c00ac2988407c196e5c0a20a0f71f752788649ec83c0.svg); }

.flag-icon-gr {
  background-image: url(/assets/flags/4x3/gr-db2138fa7bb0c95282ec0ecae3b5bd6ff2b3a06e2f27c1434b5b2285d422a6e0.svg); }
  .flag-icon-gr.flag-icon-squared {
    background-image: url(/assets/flags/1x1/gr-40c78a60595b2a3f485040d93505c0128de81b60f44e18e35ce0ca9d5a95f184.svg); }

.flag-icon-gs {
  background-image: url(/assets/flags/4x3/gs-bf3e078414a68dcd77d82694f5411f67c1eb5a1503f427c8dbcace16238e359a.svg); }
  .flag-icon-gs.flag-icon-squared {
    background-image: url(/assets/flags/1x1/gs-0130b60737c3873dd1868c70f7c3018fc276d152a398c2ce727edddb46f32513.svg); }

.flag-icon-gt {
  background-image: url(/assets/flags/4x3/gt-1b63340464e9dd3363a631f74db87defe40bfc520ba41002bf094f154b579934.svg); }
  .flag-icon-gt.flag-icon-squared {
    background-image: url(/assets/flags/1x1/gt-7cd5c99c47d16d4fc914979ffd7b95d87247d4c6652e07562a71a323f7145d58.svg); }

.flag-icon-gu {
  background-image: url(/assets/flags/4x3/gu-4018f5c92a9dd473d226f09136e956de2570729e80d704e8cc4e8f3ca2bdc871.svg); }
  .flag-icon-gu.flag-icon-squared {
    background-image: url(/assets/flags/1x1/gu-bb95d4d48c1e20be2b15258d9b895f38e9df1c54b65d4ed4aab1b323576f3899.svg); }

.flag-icon-gw {
  background-image: url(/assets/flags/4x3/gw-0ea266c02a02d578e96bb5335244c83c2815f28ebd34ff7ab8408b16416dd88e.svg); }
  .flag-icon-gw.flag-icon-squared {
    background-image: url(/assets/flags/1x1/gw-bd83c376f118c350751de000e2a48f97772438555dc1a70a7beb15cc4caee5c7.svg); }

.flag-icon-gy {
  background-image: url(/assets/flags/4x3/gy-441a978efab1565daf964e822a75b8658f5879af41371b0b52e468e00eb6b095.svg); }
  .flag-icon-gy.flag-icon-squared {
    background-image: url(/assets/flags/1x1/gy-d84ae82776b7142e4d9d51b1bdce601560275833b8d249e8e3d74bd3752b5aaa.svg); }

.flag-icon-hk {
  background-image: url(/assets/flags/4x3/hk-e5350bb4c4d63e98d802b3190247b2ce459d2695756ec62d64a995c43c4edd1e.svg); }
  .flag-icon-hk.flag-icon-squared {
    background-image: url(/assets/flags/1x1/hk-082835aaf3d1d61e1dd0e3b2b86231ef11b20150f98898af2e352b87c910f7da.svg); }

.flag-icon-hm {
  background-image: url(/assets/flags/4x3/hm-1048d79fd546482c290e1a0e4c2f9ce053aa3821f17bf12487a4f3e0ac7477d4.svg); }
  .flag-icon-hm.flag-icon-squared {
    background-image: url(/assets/flags/1x1/hm-af2df9fe67b48ead95d7ebe32d0a28a16c0d2fb03af909ca99e3b7d3cbe1a4a3.svg); }

.flag-icon-hn {
  background-image: url(/assets/flags/4x3/hn-d0e2cededb00e5dc79c75ab95e8f93d1851844c0924e49b59a8b78f6b35a7cfb.svg); }
  .flag-icon-hn.flag-icon-squared {
    background-image: url(/assets/flags/1x1/hn-45eebaaac195fd50e374926f9876eb5456a8cbcc2fb30e6a19229c409c51520b.svg); }

.flag-icon-hr {
  background-image: url(/assets/flags/4x3/hr-e10c8456ac0fc1946d1cb1f15e73484d03e4442368d78b230b050cadb7730b04.svg); }
  .flag-icon-hr.flag-icon-squared {
    background-image: url(/assets/flags/1x1/hr-8a4ca8ec8de4fc911306e198e66086fbbbf33891c8fa3e860af482f8ac2ddb44.svg); }

.flag-icon-ht {
  background-image: url(/assets/flags/4x3/ht-f862a9bb3b96630fc26a6fd2200b77c985b90a87ff9c52c42c3d7f42a0198b04.svg); }
  .flag-icon-ht.flag-icon-squared {
    background-image: url(/assets/flags/1x1/ht-1a12f16c45567e7b4fc2737b630345f7c7d0ac79ff31c41bc23920d0effd9adb.svg); }

.flag-icon-hu {
  background-image: url(/assets/flags/4x3/hu-a555e216b05645110da533dd2a5225021f70d7438e456877e77dc4522c261e41.svg); }
  .flag-icon-hu.flag-icon-squared {
    background-image: url(/assets/flags/1x1/hu-70b6438afdbc91f98b5ebfd0cafa40b6d5b0266f8d0df56cf3bcc7f777bd54c4.svg); }

.flag-icon-id {
  background-image: url(/assets/flags/4x3/id-3b48b1012b8beab850a28e27d785e92afee830444749c814a32419b8fce5dec1.svg); }
  .flag-icon-id.flag-icon-squared {
    background-image: url(/assets/flags/1x1/id-7d8348730949413fc7ff2587be342ff90c9ee1734d2ccdbca637a55839a894af.svg); }

.flag-icon-ie {
  background-image: url(/assets/flags/4x3/ie-8758528ee7852e7ded3f03fb7bc96ef9c502b1321c3011e9aade28702c68e235.svg); }
  .flag-icon-ie.flag-icon-squared {
    background-image: url(/assets/flags/1x1/ie-1cf70c38a49b5ec8c5ec6aace1dd0f1e1ac1663b8a5339ca3a98dc7bc4978702.svg); }

.flag-icon-il {
  background-image: url(/assets/flags/4x3/il-028f767bebb716e7a2e7198bfd03e698a7f19cad00385b30014a27680c101710.svg); }
  .flag-icon-il.flag-icon-squared {
    background-image: url(/assets/flags/1x1/il-395ee62ffbff4ab2ae456281a90f441e1148c0143a237f8a0e540e31d55518d5.svg); }

.flag-icon-im {
  background-image: url(/assets/flags/4x3/im-7dbb2dd66eda428c32edbbf2275f709df06cb1270dd69c65e214874966c30d69.svg); }
  .flag-icon-im.flag-icon-squared {
    background-image: url(/assets/flags/1x1/im-ed578fcc5e398ffdbc7a62d31b568a76b91e14ffa0afb794f3587aee8d248d67.svg); }

.flag-icon-in {
  background-image: url(/assets/flags/4x3/in-63b359940156312c6ed31c2b61f005c2bc386823401773aac9aaa328d994f7bc.svg); }
  .flag-icon-in.flag-icon-squared {
    background-image: url(/assets/flags/1x1/in-3fd1bedfc697bfe677a9774d7a6f51d04115cce400b4d7a892ecf1f69526790f.svg); }

.flag-icon-io {
  background-image: url(/assets/flags/4x3/io-67be58cb5bf7afe6099ec339235ec7ba0da153a50c651e28d4c32b2e6aa64cbc.svg); }
  .flag-icon-io.flag-icon-squared {
    background-image: url(/assets/flags/1x1/io-aa0702e0280d98693b3fb6350b45a7903ca25782082d3f1cee75f33f1a4d739d.svg); }

.flag-icon-iq {
  background-image: url(/assets/flags/4x3/iq-51acd0adc48bf1cb7256aba82069573f84db0baaf49b968f7f06afe140555f7a.svg); }
  .flag-icon-iq.flag-icon-squared {
    background-image: url(/assets/flags/1x1/iq-0ec8238d4e53fd7ec06ceda47e1378ee68042666f1f7f1a91753595a2167366e.svg); }

.flag-icon-ir {
  background-image: url(/assets/flags/4x3/ir-0d6f2bd5403ac2c3f7dfd49e3c5124817575c00b5167ef4c03cbfb63cfc10a26.svg); }
  .flag-icon-ir.flag-icon-squared {
    background-image: url(/assets/flags/1x1/ir-123d34118d6933f90a6b1191e2605c8344850c39f72644b9d91e15bfa640b623.svg); }

.flag-icon-is {
  background-image: url(/assets/flags/4x3/is-21543ffd547f651c7628bfe97d3c3626ea5e6999848de64efddee4656c27177b.svg); }
  .flag-icon-is.flag-icon-squared {
    background-image: url(/assets/flags/1x1/is-d73fc857d6844a1cdab62f81ba30a1ea895557d8d8fa4eecf7fa4b9127bc0123.svg); }

.flag-icon-it {
  background-image: url(/assets/flags/4x3/it-8b46e4a9676eb92cd507acef1d7c62115e6acc4b85e58a0806a0721ac34735f6.svg); }
  .flag-icon-it.flag-icon-squared {
    background-image: url(/assets/flags/1x1/it-2767e5c7250ec17539972ef710a8cebde73971bf0b9b3186d5baffb02f66974e.svg); }

.flag-icon-je {
  background-image: url(/assets/flags/4x3/je-35111082a6e24dccbd512743a37ebec13094ffbed5fef2b0793037433821a7ce.svg); }
  .flag-icon-je.flag-icon-squared {
    background-image: url(/assets/flags/1x1/je-87c6120456d517be72bdf28fd125176a743006be1cbe47ff5f59d54d1bf1253e.svg); }

.flag-icon-jm {
  background-image: url(/assets/flags/4x3/jm-eb05254eb1abb6d7fcd764284581224857c980d7bad9d7e9afff3dfff49d1e73.svg); }
  .flag-icon-jm.flag-icon-squared {
    background-image: url(/assets/flags/1x1/jm-0af380d25aef6a7de4c545a85ea3f76d3b08e56c000980c08a681ada232ba49d.svg); }

.flag-icon-jo {
  background-image: url(/assets/flags/4x3/jo-193203037e596abc063a9c30d0dd3aaa9c908557a1b57bcbcb94e1a1e8bb2402.svg); }
  .flag-icon-jo.flag-icon-squared {
    background-image: url(/assets/flags/1x1/jo-2b9c3f54d7e98c848cc0bd764bcd5ac2320d4f13aee8a84a207e7d0490c03516.svg); }

.flag-icon-jp {
  background-image: url(/assets/flags/4x3/jp-169d02f898d54cacbecd7b0197d32045a46c4424c10a67e78bbf488f7b44541e.svg); }
  .flag-icon-jp.flag-icon-squared {
    background-image: url(/assets/flags/1x1/jp-20835e83e8d43872df1ef8a2b3a26379b5f6bcff854dab3c7a24dcad4a42e02d.svg); }

.flag-icon-ke {
  background-image: url(/assets/flags/4x3/ke-58146180a02774a36ff2e4caf23b75c441a92dc69ffe3b9d4e9ded31e16748b5.svg); }
  .flag-icon-ke.flag-icon-squared {
    background-image: url(/assets/flags/1x1/ke-b3b9722930c4ecc82ed67d7c47eb751eefba3a59b24b68927c45d43a06b450a8.svg); }

.flag-icon-kg {
  background-image: url(/assets/flags/4x3/kg-7c23eb9471af5dc5ee4391e4ec08fec7889c2d83f2712ce59310a0eb81d663f0.svg); }
  .flag-icon-kg.flag-icon-squared {
    background-image: url(/assets/flags/1x1/kg-83e2a04c6199e69a1604a12610591fda15c8cf60e9fe7f682916815c5f1840bf.svg); }

.flag-icon-kh {
  background-image: url(/assets/flags/4x3/kh-4f121b97388966312c5691244a72214a3306f87ec517c658adcaf39a131a1d8c.svg); }
  .flag-icon-kh.flag-icon-squared {
    background-image: url(/assets/flags/1x1/kh-9b9ebdb74308e4975fef2e9737cad7fe44538bf97f5c1b7b6239fc2f065d4cea.svg); }

.flag-icon-ki {
  background-image: url(/assets/flags/4x3/ki-0e1a57754e3271771a154b525dfb57e20d584083b47b1ac2708b843abf11948a.svg); }
  .flag-icon-ki.flag-icon-squared {
    background-image: url(/assets/flags/1x1/ki-64df628a3c2bacf16209af95403dd7ae5402f705b2776da20ea741646e047b12.svg); }

.flag-icon-km {
  background-image: url(/assets/flags/4x3/km-2301fd16e41810016f9a58d75b8a361ffe9885ecfc89a0b3e9108bda7f5501d9.svg); }
  .flag-icon-km.flag-icon-squared {
    background-image: url(/assets/flags/1x1/km-6f9716ac74c8ef80557e682ae6d951a6ca6993eabd049f8de81a742f77a84452.svg); }

.flag-icon-kn {
  background-image: url(/assets/flags/4x3/kn-8e866a33f9952f8b29e45e8576133345446925907a2c4bcd429a34ae377bc74e.svg); }
  .flag-icon-kn.flag-icon-squared {
    background-image: url(/assets/flags/1x1/kn-46b0fcf2a59d3f923fc5ae6c914d9ee2d886fb4ee6f9c1108133244f4093d481.svg); }

.flag-icon-kp {
  background-image: url(/assets/flags/4x3/kp-ab0a3c4310474b324bbb39f77579ac3b421c531397d31e8f38de35a681d79bc9.svg); }
  .flag-icon-kp.flag-icon-squared {
    background-image: url(/assets/flags/1x1/kp-3a2ce32e4b76931fd6383f9833a4764528cc89c92f23672cc8eaff26c7a31ee1.svg); }

.flag-icon-kr {
  background-image: url(/assets/flags/4x3/kr-854d1521a9cb2b22c90f96d5d62277a9e1382818eefdc294d481c397c92f97c0.svg); }
  .flag-icon-kr.flag-icon-squared {
    background-image: url(/assets/flags/1x1/kr-343a5d08f9d0ff8c4268c77111cff9d2296c3f875b8d776c95dea1ae246d9bda.svg); }

.flag-icon-kw {
  background-image: url(/assets/flags/4x3/kw-75be6f04a24e7ddaaec57c95420ece390603961fa238245b776386890ab5627b.svg); }
  .flag-icon-kw.flag-icon-squared {
    background-image: url(/assets/flags/1x1/kw-cdbf39e8dc62ffc15b7bc3c373151070377db56c0508dadf80bdd3c971d8a094.svg); }

.flag-icon-ky {
  background-image: url(/assets/flags/4x3/ky-f75f33396887f6234e7ee4fd483e57c8e35ac52d504a4a6e12fad25d855bf061.svg); }
  .flag-icon-ky.flag-icon-squared {
    background-image: url(/assets/flags/1x1/ky-8ed8729ad8553aa468c0d9ea196f38048770b15a1bb632fb7c3bd56fbfd5b643.svg); }

.flag-icon-kz {
  background-image: url(/assets/flags/4x3/kz-51f42e580c605b6580aa4288d88d9c88bc6fd86af2388b0e4313bce969628743.svg); }
  .flag-icon-kz.flag-icon-squared {
    background-image: url(/assets/flags/1x1/kz-38ef143eed3d03cebe2e4924d520a0d90d5e59e97a39b13cb3085415267af6f3.svg); }

.flag-icon-la {
  background-image: url(/assets/flags/4x3/la-0a762fcc7ef73f1fedb4765b718e2e96c819d4b26d5375acfa48d245fb97fcec.svg); }
  .flag-icon-la.flag-icon-squared {
    background-image: url(/assets/flags/1x1/la-59d7d7dd1443e9bc557631254afa4333d1b83db314c9eb8bc170ce26f34f5dd8.svg); }

.flag-icon-lb {
  background-image: url(/assets/flags/4x3/lb-26ea2add2ac68a8040b027b510f29080d8407b961243c77b33b46c8957768b66.svg); }
  .flag-icon-lb.flag-icon-squared {
    background-image: url(/assets/flags/1x1/lb-eb8049cb746a3913ac814f4d6e0e850d0e4b9a60b78dec5e9acd95b299bf95e4.svg); }

.flag-icon-lc {
  background-image: url(/assets/flags/4x3/lc-444f9f77d0b09bd84fe2a5fd7194eae81341d8b7b4823070fc3e74cab481a122.svg); }
  .flag-icon-lc.flag-icon-squared {
    background-image: url(/assets/flags/1x1/lc-13a572e5fcbada8bf66eb77413f04f862b0cf95d4b85c5292b3d6348ec4d8c99.svg); }

.flag-icon-li {
  background-image: url(/assets/flags/4x3/li-b2d0ccbceb7e6129a6529c98721d92fcee379ed6c225a18e1eff3c6fa092eec7.svg); }
  .flag-icon-li.flag-icon-squared {
    background-image: url(/assets/flags/1x1/li-97814472256460b19df380ad90e5380202001a8a7ad6b4140cd2a0b92db909ac.svg); }

.flag-icon-lk {
  background-image: url(/assets/flags/4x3/lk-d910bd0d9ddb013c5668824d6600a842496c0a17c74f772a801f833b9eb044f8.svg); }
  .flag-icon-lk.flag-icon-squared {
    background-image: url(/assets/flags/1x1/lk-c7fb3c2b64782519d94f0a9fd21c057e5e32b856c428b68abb11667191235270.svg); }

.flag-icon-lr {
  background-image: url(/assets/flags/4x3/lr-42e8d3bdacafc05835fcd52026cb3e1717573965ce9d4f49635dbb390021a4b4.svg); }
  .flag-icon-lr.flag-icon-squared {
    background-image: url(/assets/flags/1x1/lr-169945e579afdf35dd158694a1679380886f8541278cbd225c7e750add25e60e.svg); }

.flag-icon-ls {
  background-image: url(/assets/flags/4x3/ls-a4db42569c4760bffd695cbdb030c90bc203f40f75fb357cbdbef961d29cf5dd.svg); }
  .flag-icon-ls.flag-icon-squared {
    background-image: url(/assets/flags/1x1/ls-1dd02208fc24c668e18430bb0500fa14c995f64cab8cde080b4256bd1b42b23f.svg); }

.flag-icon-lt {
  background-image: url(/assets/flags/4x3/lt-a57e003a5cbe538a4bfc2d29fd3523a87948bc8e29f731096dff9095096178c9.svg); }
  .flag-icon-lt.flag-icon-squared {
    background-image: url(/assets/flags/1x1/lt-e386ebe0482bdf999b151c3ae8c5e5e40a58037eab35b29f37682aa849edd3f0.svg); }

.flag-icon-lu {
  background-image: url(/assets/flags/4x3/lu-2746295f8b0a1540d43e0c2548d4ec1341fafcffe48b919fb135a6c82535b657.svg); }
  .flag-icon-lu.flag-icon-squared {
    background-image: url(/assets/flags/1x1/lu-9695b187733f52bae07c65e78aae8956e25360ad773c1f4703855997571a764d.svg); }

.flag-icon-lv {
  background-image: url(/assets/flags/4x3/lv-b51d475acf37be9accc82ddf5f60773861cf58b0e9b599460852589da88501ef.svg); }
  .flag-icon-lv.flag-icon-squared {
    background-image: url(/assets/flags/1x1/lv-dbf5d3fb294b518bc6373c4fc22b028fc462647fbd5032cf57513556896577bc.svg); }

.flag-icon-ly {
  background-image: url(/assets/flags/4x3/ly-7409a315d2f9aab4676558d7e97f4316ea87fc7afd93a493def4adf0b5773ca6.svg); }
  .flag-icon-ly.flag-icon-squared {
    background-image: url(/assets/flags/1x1/ly-6457e38177d82f6c52e3f3c38328f1ac66bb5a5c7a9026229d4e3aafe3b592af.svg); }

.flag-icon-ma {
  background-image: url(/assets/flags/4x3/ma-0628f236b2067d66c841c1190a3e8e3e9c37fbf2f3521fdb5ecba3eda75e805e.svg); }
  .flag-icon-ma.flag-icon-squared {
    background-image: url(/assets/flags/1x1/ma-5c96636ed7496b25e989cb74f202e377ec4c59b056b9d0c425ded77199b0d659.svg); }

.flag-icon-mc {
  background-image: url(/assets/flags/4x3/mc-10a533ce437c40973f8684439f7e24da1ea624c5e5535fa4738d62ede0650242.svg); }
  .flag-icon-mc.flag-icon-squared {
    background-image: url(/assets/flags/1x1/mc-6a9a8fe216f75ecdb8bddf6e6c816c1c9771ebffe3c09e83975a434ec1fb4950.svg); }

.flag-icon-md {
  background-image: url(/assets/flags/4x3/md-6641e05826ea580544c1890fe3698eb2e8e3af463518fc37eea7c41eb8cbb6c0.svg); }
  .flag-icon-md.flag-icon-squared {
    background-image: url(/assets/flags/1x1/md-e51dd640155b523a207eb1dc9dc909c38d9e88de04729e250e0cccd1e9d1b0b7.svg); }

.flag-icon-me {
  background-image: url(/assets/flags/4x3/me-c841acf1209c546dd77c18b718141ce4e21dba95a120cc3092988edaaf08f432.svg); }
  .flag-icon-me.flag-icon-squared {
    background-image: url(/assets/flags/1x1/me-c290031be15a14ebd1fd278774142e29f7dfe3d0fb3aba79c0d6932cb0feeb4b.svg); }

.flag-icon-mf {
  background-image: url(/assets/flags/4x3/mf-41a6043e2495b346fd700b17352150a8e43ca342a515fcb5159c39f809663ec6.svg); }
  .flag-icon-mf.flag-icon-squared {
    background-image: url(/assets/flags/1x1/mf-a3f24457b393082243eb00ea514057c09b1cf4985f6fa17d7902500fbb716317.svg); }

.flag-icon-mg {
  background-image: url(/assets/flags/4x3/mg-1baa2b12c3e79d592538d5d8e4d5a2c0e1373d3871c9d829f57b212daaf42129.svg); }
  .flag-icon-mg.flag-icon-squared {
    background-image: url(/assets/flags/1x1/mg-7e78efcc81f02f0616a11aec87bfd8dfaed1a328496301902f53375eee8f72ee.svg); }

.flag-icon-mh {
  background-image: url(/assets/flags/4x3/mh-1236a730a9819f0b58ac8cd642d17482b3945a894c63663b4accf10ac8ce5ecc.svg); }
  .flag-icon-mh.flag-icon-squared {
    background-image: url(/assets/flags/1x1/mh-3ecae469e3987c59cc4b19833eb8ccfe49a9477f70aa2aa2be5e9a4a131a48d0.svg); }

.flag-icon-mk {
  background-image: url(/assets/flags/4x3/mk-2a7bfeeba74701ceba752795d02eac7a97a6139471e5bdd529f2a858f4fd1d0e.svg); }
  .flag-icon-mk.flag-icon-squared {
    background-image: url(/assets/flags/1x1/mk-fe5c84d0e9bd4b7ceeed81f9564a970d7b5b39659e42f819c50950e191443720.svg); }

.flag-icon-ml {
  background-image: url(/assets/flags/4x3/ml-086660fe4272a22e220c94854fe4f80dd61afadd5c0c81cc075aea91bbcaa691.svg); }
  .flag-icon-ml.flag-icon-squared {
    background-image: url(/assets/flags/1x1/ml-9ef37a44932a3af38990145042c85352b1c5c4e791221d1fd91b5a9f7a412efb.svg); }

.flag-icon-mm {
  background-image: url(/assets/flags/4x3/mm-60ae7680502d9af8796fe3b3d57bbf6105a406e2e66840e9aa1f6e2470466058.svg); }
  .flag-icon-mm.flag-icon-squared {
    background-image: url(/assets/flags/1x1/mm-ea5bef04548342d984d8c8707333a31203a5abf015db093553f26c3a9febb251.svg); }

.flag-icon-mn {
  background-image: url(/assets/flags/4x3/mn-1309f63a0b6bfc594a1721a8af76381a1389fda64d840b256d353eb1341cb794.svg); }
  .flag-icon-mn.flag-icon-squared {
    background-image: url(/assets/flags/1x1/mn-86ecb7d9fcefe13783f165d44a93c9c2b1add55481bc69a70f9bd3652c27ae74.svg); }

.flag-icon-mo {
  background-image: url(/assets/flags/4x3/mo-6c69662b2581d90527965dd2c444784ab366f0080c93f2014ca37f2f7541b898.svg); }
  .flag-icon-mo.flag-icon-squared {
    background-image: url(/assets/flags/1x1/mo-ef906f7a8fdaccb7532359de1e5ce664ec0342975052b55a2e389f1b6338cba8.svg); }

.flag-icon-mp {
  background-image: url(/assets/flags/4x3/mp-dd2fa1cf9846007f88c88143047430f3f666099875407cf36648b271b6e1400a.svg); }
  .flag-icon-mp.flag-icon-squared {
    background-image: url(/assets/flags/1x1/mp-cd1d342862684bdb7caacb093e37d7e3b094cf49cfa5aa579d6b8201ffb4dd93.svg); }

.flag-icon-mq {
  background-image: url(/assets/flags/4x3/mq-be00a7c77b6aec1f86cd16bcafc7fe27b7b8c967b03632f8230cd83794833ba8.svg); }
  .flag-icon-mq.flag-icon-squared {
    background-image: url(/assets/flags/1x1/mq-bfaccc4a61b2d7067b44d54a75ce5bb5757292bdabff5e104b547aa2435a2e5d.svg); }

.flag-icon-mr {
  background-image: url(/assets/flags/4x3/mr-2293d4180eff3670e1c484d52a206efb562e8d96b9cb8c5a43aa65e1e2b1289c.svg); }
  .flag-icon-mr.flag-icon-squared {
    background-image: url(/assets/flags/1x1/mr-a3eb1a496e2c5dc86245856e18a91d71046b44d74d88274014e2d4fab41c3453.svg); }

.flag-icon-ms {
  background-image: url(/assets/flags/4x3/ms-913b24dbffa69bc3a57e997a806cdca5026cc5f87f83eefeef36a1aa8f5c2789.svg); }
  .flag-icon-ms.flag-icon-squared {
    background-image: url(/assets/flags/1x1/ms-8be40421854193032b83670c6a91aa1f5c818578eafb85ee90dce959eb54c6db.svg); }

.flag-icon-mt {
  background-image: url(/assets/flags/4x3/mt-517b4f67a94fff5be6346cae3731f5a17290b4c56732129967c15f482199365e.svg); }
  .flag-icon-mt.flag-icon-squared {
    background-image: url(/assets/flags/1x1/mt-371c5673e14380308182c7ae324f54792652bf4d0cf64de30b1d1fefea8c9b5d.svg); }

.flag-icon-mu {
  background-image: url(/assets/flags/4x3/mu-0a0d71ecace32a2948ac3eacc94927fb0ba7306236bf2a18ab5ae85bb2351664.svg); }
  .flag-icon-mu.flag-icon-squared {
    background-image: url(/assets/flags/1x1/mu-e0d4ee6c8f915eb54307ff51f57734c0bffa843060d953b9bd27f365b4a11b36.svg); }

.flag-icon-mv {
  background-image: url(/assets/flags/4x3/mv-421f31e8be8d80695f9f4811435214e8a8ac8729e145f9d491b888d91d0ca999.svg); }
  .flag-icon-mv.flag-icon-squared {
    background-image: url(/assets/flags/1x1/mv-c0056befcc1b506b4b498bf37dfa30642839a1beb6373f682e1214850b51cf6d.svg); }

.flag-icon-mw {
  background-image: url(/assets/flags/4x3/mw-644750e23780e66258d7b56777be8ef47ce3ca2d9d5735eac5abbb22fae33056.svg); }
  .flag-icon-mw.flag-icon-squared {
    background-image: url(/assets/flags/1x1/mw-70a282f17250f7fb49f8fbeb357dc492b742dd2a9c58e13281f0e900a8c63e94.svg); }

.flag-icon-mx {
  background-image: url(/assets/flags/4x3/mx-246482013102c12a6f83dcdfe0fa40c350560ae64505f9b4d3113ea5356e2f71.svg); }
  .flag-icon-mx.flag-icon-squared {
    background-image: url(/assets/flags/1x1/mx-27887b671ab9de501b6693ab60380e809962ac12222ddb580c9426e79e1360e3.svg); }

.flag-icon-my {
  background-image: url(/assets/flags/4x3/my-00a98291486af1c01c11fe46a203dd07bee31d6b5ffb5f60d04ad337a3499775.svg); }
  .flag-icon-my.flag-icon-squared {
    background-image: url(/assets/flags/1x1/my-a60a1ae968ed1ebbb60626370bd0494112b562a358c1381e6bb162268a110d8f.svg); }

.flag-icon-mz {
  background-image: url(/assets/flags/4x3/mz-8281fb68c18d27bf1588de7684e67f14aeabbf8e66117eb4e640faac9762dbb4.svg); }
  .flag-icon-mz.flag-icon-squared {
    background-image: url(/assets/flags/1x1/mz-dc805944726edfe3a8900cecd82ef15037381b81b6fab0d96d2cf93ba0d7a3ec.svg); }

.flag-icon-na {
  background-image: url(/assets/flags/4x3/na-d798d2db5bccea439f545e5e6dfa5aad6a166966cb5e223f7f2aa4d4dc73abd7.svg); }
  .flag-icon-na.flag-icon-squared {
    background-image: url(/assets/flags/1x1/na-0fceb3e900c021df14c00cab058c84cd834cb2f494a1db2fa58728a7f9445762.svg); }

.flag-icon-nc {
  background-image: url(/assets/flags/4x3/nc-2861e50f3a0a1b1c368d913df4f4092c65bb3faa2d01e4d084fa33ed041e537a.svg); }
  .flag-icon-nc.flag-icon-squared {
    background-image: url(/assets/flags/1x1/nc-1d65d86f9caaec75cc886c8abca3cc39b8de23c48e67b55936be3649ae67d716.svg); }

.flag-icon-ne {
  background-image: url(/assets/flags/4x3/ne-90b12ff4abee66e42d27b6c55dd602af3cc249f3492c8a449ec84a35a74ee6ed.svg); }
  .flag-icon-ne.flag-icon-squared {
    background-image: url(/assets/flags/1x1/ne-ecd9bd0f027c05147c336ef396ffce7c16cf011f051860ae082ea99be34554e0.svg); }

.flag-icon-nf {
  background-image: url(/assets/flags/4x3/nf-3323e2cb59cb8f9282e45155b6830e4c06876bc0c24ee28e5dd4dcff28d2dc70.svg); }
  .flag-icon-nf.flag-icon-squared {
    background-image: url(/assets/flags/1x1/nf-3da2a0db99d85998154510ac50674728e4768079a57443529b18b1ed87e5c077.svg); }

.flag-icon-ng {
  background-image: url(/assets/flags/4x3/ng-387e036e728aa4c36d93fad3c90e76e3beab727783ec11da7fbce30ff52c805e.svg); }
  .flag-icon-ng.flag-icon-squared {
    background-image: url(/assets/flags/1x1/ng-c4c24f43d15d5690390ea6d5a4b41911aa7cf0807167d69e95748c4439211dcb.svg); }

.flag-icon-ni {
  background-image: url(/assets/flags/4x3/ni-b83cccf0a65d0abf0398b905936ca6b6d5b1b64db8a34223225e3e4eb4f0311d.svg); }
  .flag-icon-ni.flag-icon-squared {
    background-image: url(/assets/flags/1x1/ni-35731438cffa30b56cc403c5e9a59e85e661566a0d72c5310865aaf282731e0f.svg); }

.flag-icon-nl {
  background-image: url(/assets/flags/4x3/nl-a71cd17ec0d083d39373108c1f5e994e71491e1f7ac34119e60c859142a2d34d.svg); }
  .flag-icon-nl.flag-icon-squared {
    background-image: url(/assets/flags/1x1/nl-6bfba1aa0f31f33e126e51832eddba06a92106d569f3e01dc4989a3425f45eac.svg); }

.flag-icon-no {
  background-image: url(/assets/flags/4x3/no-d4ae9765d2dd03faef1007008bf1ccde064e36c765faef79a270e7e8fa97c23a.svg); }
  .flag-icon-no.flag-icon-squared {
    background-image: url(/assets/flags/1x1/no-7b3a522b5101f7bcc5c9ac05adbfbfa3dacde4fc4420d2997b1ab38af7e50dbc.svg); }

.flag-icon-np {
  background-image: url(/assets/flags/4x3/np-043dff0f7f1cd254f2c2d82367557e5f4a15579af81242e2979523700adaeaf1.svg); }
  .flag-icon-np.flag-icon-squared {
    background-image: url(/assets/flags/1x1/np-976aa23f62798e1c0974a78649ff295334fc0d39f63eb19e990d2a13efe9fbe2.svg); }

.flag-icon-nr {
  background-image: url(/assets/flags/4x3/nr-f977239dc4f2dbb4185bcb741dc0aae4b46dd2d647444150f317e8dfb3062fd3.svg); }
  .flag-icon-nr.flag-icon-squared {
    background-image: url(/assets/flags/1x1/nr-1899ab289aa424dfa1bb1a787a5dae3d9081b212433441fe9a7c95c1c377fc01.svg); }

.flag-icon-nu {
  background-image: url(/assets/flags/4x3/nu-84b56f2711a6b958b9072dff3912f225c034d246341cc29c4eba6c34c70fe6f0.svg); }
  .flag-icon-nu.flag-icon-squared {
    background-image: url(/assets/flags/1x1/nu-60cdb57b27737dddc21980f6630e7476471ce8c1bc34b3a2632819bef23a26a5.svg); }

.flag-icon-nz {
  background-image: url(/assets/flags/4x3/nz-9cca5c871f70cdd784a33836d5a07ada7f6eaa720811c70dc2306a2a5056648d.svg); }
  .flag-icon-nz.flag-icon-squared {
    background-image: url(/assets/flags/1x1/nz-e5c8b6660d172e25e80f1d9530fb3e8b05fba1c4c02b95679fbcd5a0c50169f9.svg); }

.flag-icon-om {
  background-image: url(/assets/flags/4x3/om-fbef9222761223ced04e2946ec71432c761618ad58b8a3a5af5627a1d75b48e9.svg); }
  .flag-icon-om.flag-icon-squared {
    background-image: url(/assets/flags/1x1/om-07148a6924f8ce843e33be4f3d9d5dd40040da366e667925985e7b247073d08e.svg); }

.flag-icon-pa {
  background-image: url(/assets/flags/4x3/pa-50535df4995256b70ce0a7971ba95922046d445c06a567fd951d7f5a79cbe547.svg); }
  .flag-icon-pa.flag-icon-squared {
    background-image: url(/assets/flags/1x1/pa-e4d955c65827104b4f898beb392af5ffed5f62a09035f42801512b5b3d7767d1.svg); }

.flag-icon-pe {
  background-image: url(/assets/flags/4x3/pe-b518a86545125ff3c3fde029c2992233df876b663d8ec723bd4d67f90f72cb62.svg); }
  .flag-icon-pe.flag-icon-squared {
    background-image: url(/assets/flags/1x1/pe-8e395c37a87d3ea212ceaf0768869f2ae38ad507761ef6b10b2077f01274d6b0.svg); }

.flag-icon-pf {
  background-image: url(/assets/flags/4x3/pf-d1537625ade03a7fae7a5bdcfc5fe9f6449977613a38ddd258c8572f3630185b.svg); }
  .flag-icon-pf.flag-icon-squared {
    background-image: url(/assets/flags/1x1/pf-c78c72a0ad139c9da31592af7c443cfef4e1e1baf208e44088ca667298324c9e.svg); }

.flag-icon-pg {
  background-image: url(/assets/flags/4x3/pg-3190ab67d73878026d59e98e14b0cf98812c5c086d35956383c9986f7e0433a3.svg); }
  .flag-icon-pg.flag-icon-squared {
    background-image: url(/assets/flags/1x1/pg-fe2bbe3c6599a4bf895b9f748d5a15650a7d29c854252e3b074c780a77cd51b9.svg); }

.flag-icon-ph {
  background-image: url(/assets/flags/4x3/ph-ec483bd752a5a0d1f063397a2c206bdd9b23451d2c262eceba6411b2769ed3b1.svg); }
  .flag-icon-ph.flag-icon-squared {
    background-image: url(/assets/flags/1x1/ph-0d61f012185140030d9879f180b8279ab7798a9d7d062e141937ba83b51ab20e.svg); }

.flag-icon-pk {
  background-image: url(/assets/flags/4x3/pk-776714f751e4347341656ce5e88c6fa13316e2e36205cd8d09c73779794c2a56.svg); }
  .flag-icon-pk.flag-icon-squared {
    background-image: url(/assets/flags/1x1/pk-50284d5da424696f41ac4861f8eff6e5bc23a6e1812df7b444967c6e58ec6f81.svg); }

.flag-icon-pl {
  background-image: url(/assets/flags/4x3/pl-9bb56d1ec91d8c843ec53b018dc861772e466bad1582a9ba42148524347adf6d.svg); }
  .flag-icon-pl.flag-icon-squared {
    background-image: url(/assets/flags/1x1/pl-acc73e013a67a13fde68d812b22889be9150cce57d029deab6ba5b0ba4e7b69a.svg); }

.flag-icon-pm {
  background-image: url(/assets/flags/4x3/pm-5d990f5bc74366f734851ceb35046baaae3555ccff57e6cf95c7143f9b245532.svg); }
  .flag-icon-pm.flag-icon-squared {
    background-image: url(/assets/flags/1x1/pm-781f551a82a88b0a5e238b078310bc843950c844092d8ce1e52587feca285606.svg); }

.flag-icon-pn {
  background-image: url(/assets/flags/4x3/pn-1e347803c27d86312324a6a6712dee0bf5590971f027fffe082681dccce6c4c1.svg); }
  .flag-icon-pn.flag-icon-squared {
    background-image: url(/assets/flags/1x1/pn-b9762ab4fd752edc4506fd05f2810094e8de8b3cf6fffd00bafb89b6ed95359c.svg); }

.flag-icon-pr {
  background-image: url(/assets/flags/4x3/pr-4c0359aa4277d04c3c3af8ff89d0bbea462b480334cd6974beb6c5739c42903a.svg); }
  .flag-icon-pr.flag-icon-squared {
    background-image: url(/assets/flags/1x1/pr-dc838368c71fe79aea88491ec3e419ff01c26a5af460b05a79cb6cc6fa02b6b2.svg); }

.flag-icon-ps {
  background-image: url(/assets/flags/4x3/ps-39b00800524af9e8d270c479274be2dd5459c13d67a6f308139a69adbae4997f.svg); }
  .flag-icon-ps.flag-icon-squared {
    background-image: url(/assets/flags/1x1/ps-9102a922196261028bd07e60d1b2ef435e123aae8bba6d49a5918123f8be18f6.svg); }

.flag-icon-pt {
  background-image: url(/assets/flags/4x3/pt-f76294ca6203778375158111051358fb535eaebb06d50951eb5326f9ede31536.svg); }
  .flag-icon-pt.flag-icon-squared {
    background-image: url(/assets/flags/1x1/pt-09b4548e5764d2a6c56bf9c33e8652911f91b16ab6bfa3041630506480281047.svg); }

.flag-icon-pw {
  background-image: url(/assets/flags/4x3/pw-029fb7bb87eec12c79cbe662fe3614698c7638186958fb6032e59a17705777cb.svg); }
  .flag-icon-pw.flag-icon-squared {
    background-image: url(/assets/flags/1x1/pw-39f82e7a0e390333a2d0f4a1396a8f710af7ec3002c5542d7d6c76d634a67e82.svg); }

.flag-icon-py {
  background-image: url(/assets/flags/4x3/py-6f18a4e716e9fbe7d0caf99651fee56e44ffd2a13ce77f50a8374a7fe6b0879d.svg); }
  .flag-icon-py.flag-icon-squared {
    background-image: url(/assets/flags/1x1/py-0325fb333b5ea2adb996345bf2bf5df0c460c87ca97cb3c8f6e65a7f33aa1722.svg); }

.flag-icon-qa {
  background-image: url(/assets/flags/4x3/qa-55eb7d6716998d68fe6e3345807dc410e5c5e8511bb2c78f0d08d51da707a131.svg); }
  .flag-icon-qa.flag-icon-squared {
    background-image: url(/assets/flags/1x1/qa-cfff93f4c31946f7646a855521a7db667c78cb89a7c2ac339c64c14f06be0f7a.svg); }

.flag-icon-re {
  background-image: url(/assets/flags/4x3/re-8b3124b78a7752ee288a401ae16c3cf5dafc1296e443ba941de8b338b16c2723.svg); }
  .flag-icon-re.flag-icon-squared {
    background-image: url(/assets/flags/1x1/re-c7173d64ef4a62237f83c7af8cb144fba8c38bd7ac8e7125eda78320931215ca.svg); }

.flag-icon-ro {
  background-image: url(/assets/flags/4x3/ro-a10768f5227b028969ceb2bce6e3fc2ecbea0c5e40d1946c47d913d2745a8b21.svg); }
  .flag-icon-ro.flag-icon-squared {
    background-image: url(/assets/flags/1x1/ro-a4cfc4bce72dc7b034f2b84e932ba3d47f7a9404b94b1450af48263c576b62c8.svg); }

.flag-icon-rs {
  background-image: url(/assets/flags/4x3/rs-9792f9ae9694c0dfa1a213ec6ceb29d7b41819a508bedc4bf89dc4c285e48712.svg); }
  .flag-icon-rs.flag-icon-squared {
    background-image: url(/assets/flags/1x1/rs-cd44c0b89c5e2c2d0afe1902a263d60648dd18e97636256eb1ffc3148e336cd7.svg); }

.flag-icon-ru {
  background-image: url(/assets/flags/4x3/ru-ce34e72a9d955c6c6860a5e552cd3902d236bbff5a714a49a1b8f8dbbce3c410.svg); }
  .flag-icon-ru.flag-icon-squared {
    background-image: url(/assets/flags/1x1/ru-aa0d5e4855f92f211efad3979493956dfe01ad4a0b552814cad05fa67694de03.svg); }

.flag-icon-rw {
  background-image: url(/assets/flags/4x3/rw-0f08a5e527db8287642f1aafeb397fd49ac3add8e86dbb0d9a8be7d2c43b0153.svg); }
  .flag-icon-rw.flag-icon-squared {
    background-image: url(/assets/flags/1x1/rw-297915f2fa836eba2dc1d795a4f5b1c51f8d9abdc6704b13e63cd81c81476f09.svg); }

.flag-icon-sa {
  background-image: url(/assets/flags/4x3/sa-70281c72fb6008faf5d36c401593c7c8f0c8870332e23fa3b1b53cd0f88e9ad5.svg); }
  .flag-icon-sa.flag-icon-squared {
    background-image: url(/assets/flags/1x1/sa-463ab66153968c569b854793714e414ea77185758a8236364019d4e7e40582fc.svg); }

.flag-icon-sb {
  background-image: url(/assets/flags/4x3/sb-5de262c7e2fda747ea4ac98c2ca9ce045f07de995330b1fc3bbbf39e25ae42f6.svg); }
  .flag-icon-sb.flag-icon-squared {
    background-image: url(/assets/flags/1x1/sb-638ead7b9c9a42fe2318daf753a8f0ce9cea4792114d8d7475d5a5abcf697cb6.svg); }

.flag-icon-sc {
  background-image: url(/assets/flags/4x3/sc-46736983ebac2719d3e3aca36e3dbb896f612db71b72e9e5d6f3da36ae59c0ac.svg); }
  .flag-icon-sc.flag-icon-squared {
    background-image: url(/assets/flags/1x1/sc-1dc9321cdeeecad7c6485b2bc3aef87a1a1ca116c18908286b5f79bdb5ee8313.svg); }

.flag-icon-sd {
  background-image: url(/assets/flags/4x3/sd-3b49e891fcda945b02ee18ce8cee078f251d8e822201ba0f8953eb3efb0b2860.svg); }
  .flag-icon-sd.flag-icon-squared {
    background-image: url(/assets/flags/1x1/sd-993e4821f73f36e6dd12332ed727047a97c7d31b1c8f0b3312e924c5f437eb34.svg); }

.flag-icon-se {
  background-image: url(/assets/flags/4x3/se-8e13876ab89aedc66156f36f55fefe66068c43657a803ba6b98843c171fb06c7.svg); }
  .flag-icon-se.flag-icon-squared {
    background-image: url(/assets/flags/1x1/se-8af88180b9c1ca0b24dbf5e04039a523c6f0ce975094c7fb6b38a4901b2e5c5d.svg); }

.flag-icon-sg {
  background-image: url(/assets/flags/4x3/sg-da88143d134efe0c37b67471ceb24a9ced62ae9ade25530232c92435e6f46b65.svg); }
  .flag-icon-sg.flag-icon-squared {
    background-image: url(/assets/flags/1x1/sg-80e8f95951096bba14b6d6ebea036b0717617668d96f32b5a8172a06be1feb22.svg); }

.flag-icon-sh {
  background-image: url(/assets/flags/4x3/sh-3b36e972618f594e95974a9c551d3ba9ead3e9b175d8dac0bc30fd1910f82561.svg); }
  .flag-icon-sh.flag-icon-squared {
    background-image: url(/assets/flags/1x1/sh-f25afcdb45a6c2d58e3984d40188a03342271f2f6312b868236b2a1c02a2e60e.svg); }

.flag-icon-si {
  background-image: url(/assets/flags/4x3/si-a9715a0c1db87762010c25b6d3bb90f73de3c893aa3bbc7412d57dfa14f28dd5.svg); }
  .flag-icon-si.flag-icon-squared {
    background-image: url(/assets/flags/1x1/si-daa3e030c059585d235a78f228c89a32bc50df223da8efa32f85a13978524365.svg); }

.flag-icon-sj {
  background-image: url(/assets/flags/4x3/sj-a2fa34115702482c2af9c7632eaeec77a26a1de129ce825bc38e27b6523e19ba.svg); }
  .flag-icon-sj.flag-icon-squared {
    background-image: url(/assets/flags/1x1/sj-55f27b8e6aa75b9db244543edd19b891f3c07d59106cf08ff5c47781c480d272.svg); }

.flag-icon-sk {
  background-image: url(/assets/flags/4x3/sk-b285dd82884088b14db516eac76a39b29752279ac9f0f3e7c84b624edea66aa8.svg); }
  .flag-icon-sk.flag-icon-squared {
    background-image: url(/assets/flags/1x1/sk-cf28c14c8d736a45cbb0a31c0743373b6414974d561729d322cb7204e6a2f25b.svg); }

.flag-icon-sl {
  background-image: url(/assets/flags/4x3/sl-571df59f51a68477e49c8bbbe397e505d30d27ed1611b37485c94198b6401a9a.svg); }
  .flag-icon-sl.flag-icon-squared {
    background-image: url(/assets/flags/1x1/sl-038ea846f3362ef266345b5a7f9f0c7e94334edf697c24c5faeda27bc0396927.svg); }

.flag-icon-sm {
  background-image: url(/assets/flags/4x3/sm-a15cef2d34582deb77e611ac2df3580749a7faafa1bc7c5c661c906ccbdad64d.svg); }
  .flag-icon-sm.flag-icon-squared {
    background-image: url(/assets/flags/1x1/sm-b9bb79651c85755c984570a106213c32d87c7fbe5737b9b6a6e5512a05d98429.svg); }

.flag-icon-sn {
  background-image: url(/assets/flags/4x3/sn-d8a7143973e5ea3d4b58e707ac2b791b45b5c7a7e65cea521fa82e9e5920926d.svg); }
  .flag-icon-sn.flag-icon-squared {
    background-image: url(/assets/flags/1x1/sn-2432d592221bbdd387548cfa5069c62f75245597749ffa6e2dc8d029b76e88ae.svg); }

.flag-icon-so {
  background-image: url(/assets/flags/4x3/so-c82eddc49e0c223a307286bed233a03794954ad83efd12d8e2499a728bb78f22.svg); }
  .flag-icon-so.flag-icon-squared {
    background-image: url(/assets/flags/1x1/so-52cb6599bb12bafd9e49b2661297961fe585068009eb1b1c1153023514a342a7.svg); }

.flag-icon-sr {
  background-image: url(/assets/flags/4x3/sr-cda17a0b4748b11b3e116d4f034adf47def0faaae1e71a5bb5d5c61645be9795.svg); }
  .flag-icon-sr.flag-icon-squared {
    background-image: url(/assets/flags/1x1/sr-fb0ff6fc7108d1b993a838bb0e9db479af4e2af4cda72c80e7456c0777cdea28.svg); }

.flag-icon-ss {
  background-image: url(/assets/flags/4x3/ss-744839019f2833ed8059e53d0d6e1cde2471c6a61d51f9e09814bda42bdc1f12.svg); }
  .flag-icon-ss.flag-icon-squared {
    background-image: url(/assets/flags/1x1/ss-d77200a3fe67f1533ea642a6013667ce15bb0c8068b09db151c960593b37549a.svg); }

.flag-icon-st {
  background-image: url(/assets/flags/4x3/st-b0a9259277e38c0c8e0efec1d10b40d3e9c80a9eef21c174246aad28511e976d.svg); }
  .flag-icon-st.flag-icon-squared {
    background-image: url(/assets/flags/1x1/st-02eb52348f8547d028ba692f909483c32474105aae7940731d9264027493e479.svg); }

.flag-icon-sv {
  background-image: url(/assets/flags/4x3/sv-b524450c407002e1cf8e85444bb4225849cae409f54f5dc87d14d65faeeb833a.svg); }
  .flag-icon-sv.flag-icon-squared {
    background-image: url(/assets/flags/1x1/sv-e16fe96bd7f32dadd74091ee73b723c2b8dd92e791f337c54ee5bb18693ef1d2.svg); }

.flag-icon-sx {
  background-image: url(/assets/flags/4x3/sx-076f4363898d1374f985352dddbfe2a618bf4e7fedd80e43956be6614ca27ec0.svg); }
  .flag-icon-sx.flag-icon-squared {
    background-image: url(/assets/flags/1x1/sx-689aabb209fec5e8fc325bbaff80aa0bf11a2d6c819fa821b82069a2e5f12911.svg); }

.flag-icon-sy {
  background-image: url(/assets/flags/4x3/sy-d99ddced9cf98e95f7086a70703cd234cc8e21e744c37a6f90820c37ebc755d2.svg); }
  .flag-icon-sy.flag-icon-squared {
    background-image: url(/assets/flags/1x1/sy-c7f1e1422a9d941be9abd5e0f51b4c4ebdd08efd31c4ba3e378c155911cbe844.svg); }

.flag-icon-sz {
  background-image: url(/assets/flags/4x3/sz-b8760e27e50f7f31f0b38c2cdbcfa0121317bad064561cbcfeb8413ee8764e6d.svg); }
  .flag-icon-sz.flag-icon-squared {
    background-image: url(/assets/flags/1x1/sz-6c0e7ae75aa0fa71821d7b6230dff63e34b65221c0dc08f50226299d37716652.svg); }

.flag-icon-tc {
  background-image: url(/assets/flags/4x3/tc-abf0740c371bb155066651fca91c9e27e12b3cc9c05c14494e53dac851cc78bb.svg); }
  .flag-icon-tc.flag-icon-squared {
    background-image: url(/assets/flags/1x1/tc-13c94ed220ff9c70284c379e33fc85891de95dce60ec053787549485bca40a36.svg); }

.flag-icon-td {
  background-image: url(/assets/flags/4x3/td-354d8d74597706ece28b45f28030c948596f91c04392d07307b800cb0fc6e4cd.svg); }
  .flag-icon-td.flag-icon-squared {
    background-image: url(/assets/flags/1x1/td-fb3c31a792ab9fffe28bfe959cacdac54daebe9f795c30515830d93773805c3e.svg); }

.flag-icon-tf {
  background-image: url(/assets/flags/4x3/tf-f4edacabdba5b4d4d898a4edd7f07976f6a01ceee97c03fdf3561f2ba369b4f3.svg); }
  .flag-icon-tf.flag-icon-squared {
    background-image: url(/assets/flags/1x1/tf-fa00833e3ac96967c55c7f495a580ad5beb1fd912d32d0c9751b93c3c89be893.svg); }

.flag-icon-tg {
  background-image: url(/assets/flags/4x3/tg-32688daf8870e048421dcbfa2777d9b5f146e588f5f604433d17143fe702dac7.svg); }
  .flag-icon-tg.flag-icon-squared {
    background-image: url(/assets/flags/1x1/tg-0e62ff3b4c2106e7c5fe27a6f32fb3c10f69f9cfd5dad9aeb7a8b54af7cab786.svg); }

.flag-icon-th {
  background-image: url(/assets/flags/4x3/th-da4f1fda6eda5971dd52bad365bfc4aae176f0eedebf5c8bd9af25789c03993d.svg); }
  .flag-icon-th.flag-icon-squared {
    background-image: url(/assets/flags/1x1/th-95ac5f4463da0b9164f2fbed65ca12046370fcb1e250c6170975b77d1509b3e5.svg); }

.flag-icon-tj {
  background-image: url(/assets/flags/4x3/tj-d072d6cd4136ae97533d32ac74d20350ac794f8a79eaecd1c55142e76b93b3d9.svg); }
  .flag-icon-tj.flag-icon-squared {
    background-image: url(/assets/flags/1x1/tj-2cefbad6aee66d30fd757ea564fdbbde86aebde70720e9c961799caa6bdc8b84.svg); }

.flag-icon-tk {
  background-image: url(/assets/flags/4x3/tk-da715012efe8731020fe54063a76bffb256ea6696da290ccbb599ab36990edfe.svg); }
  .flag-icon-tk.flag-icon-squared {
    background-image: url(/assets/flags/1x1/tk-4055f5153398c294b2344880102e23847e952df1d04ad8734218fb0f6b43bf42.svg); }

.flag-icon-tl {
  background-image: url(/assets/flags/4x3/tl-388fac3c65fbbc18779b88f7fcdea523ba440860923a7e1602ca1138bcd5c40b.svg); }
  .flag-icon-tl.flag-icon-squared {
    background-image: url(/assets/flags/1x1/tl-9fea1b22d992cd15cafd1e5824d65f1f0f84b7c89a0f5a460b82429e2f9a8e95.svg); }

.flag-icon-tm {
  background-image: url(/assets/flags/4x3/tm-f5d7cce194b88ed026465717ee593c35c03f76f3483d77bee2a3e05827628679.svg); }
  .flag-icon-tm.flag-icon-squared {
    background-image: url(/assets/flags/1x1/tm-a3f255f0a6874a326140c9a4cad876cd386c30ac7b9e974905699ada62811042.svg); }

.flag-icon-tn {
  background-image: url(/assets/flags/4x3/tn-ba48fb29a4c8511d1145b87abc10cb75e8dc9ac4e704dc9efc113cf920d4b640.svg); }
  .flag-icon-tn.flag-icon-squared {
    background-image: url(/assets/flags/1x1/tn-d9b89cb7ab0b22d5a4709eb4681d77b8f6877d572a1d2f6424f6ce2fbed2dede.svg); }

.flag-icon-to {
  background-image: url(/assets/flags/4x3/to-9f1079a109d27abe53f17281320474ecfa6edc571502831f167471edd470773e.svg); }
  .flag-icon-to.flag-icon-squared {
    background-image: url(/assets/flags/1x1/to-a543262eaac18a114c5c70153895192a3e58981d4a00084473cd479bbca5783b.svg); }

.flag-icon-tr {
  background-image: url(/assets/flags/4x3/tr-04941a0f055d2ee2466b8e19532f58a2a0c4e3a83d986a601220fda2b6a3b090.svg); }
  .flag-icon-tr.flag-icon-squared {
    background-image: url(/assets/flags/1x1/tr-0df7b630a61ad40f32017487e6fef02258e8b2c8709c6fc8c1d3de1e9b36b09c.svg); }

.flag-icon-tt {
  background-image: url(/assets/flags/4x3/tt-9ca06051696b194f98d36ab4adb6aa7eb75275333cc0b48c9c9e1c34601013aa.svg); }
  .flag-icon-tt.flag-icon-squared {
    background-image: url(/assets/flags/1x1/tt-b05ee6c590e5c757190226182ac72648604086a272479f91d73dc24d90162eef.svg); }

.flag-icon-tv {
  background-image: url(/assets/flags/4x3/tv-5875f68681a06f613b3f84cd6959eb9dba70524bf14b0c8aa4a823a833dd6a98.svg); }
  .flag-icon-tv.flag-icon-squared {
    background-image: url(/assets/flags/1x1/tv-d8be186cccd6335a8f85c89085ef08b19c247df4081ed61698604972fdb8fa43.svg); }

.flag-icon-tw {
  background-image: url(/assets/flags/4x3/tw-29e639da18e668c62eb04ed3f3a02e11b0809890a2a0c82b529e50d53076e4e2.svg); }
  .flag-icon-tw.flag-icon-squared {
    background-image: url(/assets/flags/1x1/tw-2a2531772efdfcc74f70cc88f6fc15df7dc42dc344d9ed94b08e1847557976c4.svg); }

.flag-icon-tz {
  background-image: url(/assets/flags/4x3/tz-69ae0bf011f019428148ba9c3d793b4104be88621741beb216dfc9f43d125d6c.svg); }
  .flag-icon-tz.flag-icon-squared {
    background-image: url(/assets/flags/1x1/tz-581f05e20eeb5d8d77f807f2d6edaf786da8226284726841f33d9288ee84d6b7.svg); }

.flag-icon-ua {
  background-image: url(/assets/flags/4x3/ua-ddfa2a9985ed8342421c8df6fe852ec92e15d584c2565c525347bcd5f524c9da.svg); }
  .flag-icon-ua.flag-icon-squared {
    background-image: url(/assets/flags/1x1/ua-86260ecf3aa1da110f92b58861d7918e3e574a79cfb4334f9c82b1a750a8a875.svg); }

.flag-icon-ug {
  background-image: url(/assets/flags/4x3/ug-b748460c255e064ba8a2d89bb78c48fd29bdf496a7ca3c3af0ed0d83e49995cb.svg); }
  .flag-icon-ug.flag-icon-squared {
    background-image: url(/assets/flags/1x1/ug-8a8552bd983c6e2136f9eba9b4917d0e158415a24d9945f663ed56239299b44b.svg); }

.flag-icon-um {
  background-image: url(/assets/flags/4x3/um-d3a2b6a726a36d08db81fe4a5f0decd0afe5aa4ad8515304db4c3ace8f27e415.svg); }
  .flag-icon-um.flag-icon-squared {
    background-image: url(/assets/flags/1x1/um-0bcb31652ebcfa8c6727911e3df341b30425c3c699e6c4bf9f47c739ab9f442d.svg); }

.flag-icon-us {
  background-image: url(/assets/flags/4x3/us-c10177f8d2a93643101b39e419273bdd2f43a58ff9beff88a90431b0a4aa6a00.svg); }
  .flag-icon-us.flag-icon-squared {
    background-image: url(/assets/flags/1x1/us-a46068d8032a1e3364325da9675a41ba85a40c5401981c403fb7297aea254906.svg); }

.flag-icon-uy {
  background-image: url(/assets/flags/4x3/uy-ab18ad511d2822414e3b4f32e3309dca27b5b559cabd89cba2b4b4072387f440.svg); }
  .flag-icon-uy.flag-icon-squared {
    background-image: url(/assets/flags/1x1/uy-d94f5244cbd79f9348a048b7ec8861d37a237806dc1a6427fc9e743b86f43097.svg); }

.flag-icon-uz {
  background-image: url(/assets/flags/4x3/uz-78ae3b6ad90b0bb256102b6db50b8f9a7700fb6275e80d0c5b755e0defdcf8e5.svg); }
  .flag-icon-uz.flag-icon-squared {
    background-image: url(/assets/flags/1x1/uz-eff129a2e58e047e1daa2883f9ab0ef410bc11c42d652b9c4635bce5ab045b4f.svg); }

.flag-icon-va {
  background-image: url(/assets/flags/4x3/va-20117c2869d005de2cc54801f2d264b2823c214276f5559de1e48108f572fc79.svg); }
  .flag-icon-va.flag-icon-squared {
    background-image: url(/assets/flags/1x1/va-3206ffbb26fff2b3cd06959ba7f9d713efa9d133932d94ea1f1f6e3dd42687a3.svg); }

.flag-icon-vc {
  background-image: url(/assets/flags/4x3/vc-dccc1c2e4dc2d36ff71f8b04ebda868a7c4ce753b9fe5ccf0bed00edd7d41abb.svg); }
  .flag-icon-vc.flag-icon-squared {
    background-image: url(/assets/flags/1x1/vc-08a544ff242da12cc3fbad36579499a0b125c4b7ee7aa0af4eff0a261ea27a13.svg); }

.flag-icon-ve {
  background-image: url(/assets/flags/4x3/ve-d62ba31ca157e54409e09617a264e0dd18a2c597b1ad611c34da7fe7962e05dc.svg); }
  .flag-icon-ve.flag-icon-squared {
    background-image: url(/assets/flags/1x1/ve-f465be9b82185e94a0f84a3d8b2f536e026b8893fecfc324997ca711b9fe0097.svg); }

.flag-icon-vg {
  background-image: url(/assets/flags/4x3/vg-d6c3f0ef53e605acc97f33a4e0a61711b6a8207c6a2cff55b9427870053da583.svg); }
  .flag-icon-vg.flag-icon-squared {
    background-image: url(/assets/flags/1x1/vg-8a2a8af88748ff501bc90aceb327488cce5f323948d59f62c960ccfb58ca7510.svg); }

.flag-icon-vi {
  background-image: url(/assets/flags/4x3/vi-882e3005bf905201f3ccb79736ff058aad41d99046ef58fefb2e5f7df30d4ef4.svg); }
  .flag-icon-vi.flag-icon-squared {
    background-image: url(/assets/flags/1x1/vi-8f89c34e92ffdc8d17724234254fadad1bbb4b2828cb5e041b4d6a21ec5c3caa.svg); }

.flag-icon-vn {
  background-image: url(/assets/flags/4x3/vn-53c52e450c6e603d8b08c0170dd3bd15aaa0d4e9d250657bea188945c1252138.svg); }
  .flag-icon-vn.flag-icon-squared {
    background-image: url(/assets/flags/1x1/vn-7267ad3b33fb6d304ff414c998a2c69c6b46abc2528c2e955ff4367959cae8e1.svg); }

.flag-icon-vu {
  background-image: url(/assets/flags/4x3/vu-2dd468b3a9c89ef0bcbb155422cb38bb19e6255d2871ec2b7012055d31d13e2a.svg); }
  .flag-icon-vu.flag-icon-squared {
    background-image: url(/assets/flags/1x1/vu-477e1ac8d2d514517a8a6b84f917f9c43d0145d52f4b89e7205277ee3bbea422.svg); }

.flag-icon-wf {
  background-image: url(/assets/flags/4x3/wf-d2b9db8f6fa2a78507a5b4751f95e92c334673ecddd68eb33844ea91fc62d771.svg); }
  .flag-icon-wf.flag-icon-squared {
    background-image: url(/assets/flags/1x1/wf-095484363036fafbb44da7fbbdb6bb371c92c002163fb610c29912c6027a3cb7.svg); }

.flag-icon-ws {
  background-image: url(/assets/flags/4x3/ws-6a3fef801ba087404d3718c0b5b8741261d790cb2bf8b7581fea317e9689bcc7.svg); }
  .flag-icon-ws.flag-icon-squared {
    background-image: url(/assets/flags/1x1/ws-a312f6f7ddd2d5694c70b935f000ccc7716aae0b207e98ca4ad6ee252d272f49.svg); }

.flag-icon-ye {
  background-image: url(/assets/flags/4x3/ye-38ca92e79aeba152eee33f0d5dac55430af032a31b39d56d49c4287b0639fe72.svg); }
  .flag-icon-ye.flag-icon-squared {
    background-image: url(/assets/flags/1x1/ye-2d43095605cb09aeebaa7d9ec1147717dfffb26cd6a7ab66adfbf550a3bc8962.svg); }

.flag-icon-yt {
  background-image: url(/assets/flags/4x3/yt-2b54852c423d68df342c5bec300477510632be3f1046a2d9d9715a9617bc90ae.svg); }
  .flag-icon-yt.flag-icon-squared {
    background-image: url(/assets/flags/1x1/yt-3ea3c372eb1f7e269abafc08882bdb99d94c18ea363b905f8422f2733a550db8.svg); }

.flag-icon-za {
  background-image: url(/assets/flags/4x3/za-c57ff71cb91d156461c64ada7fb86779c009a9c0a53df0b6de2e87044eeefb74.svg); }
  .flag-icon-za.flag-icon-squared {
    background-image: url(/assets/flags/1x1/za-571b8b7da7f17cd9a4ce08e5696468e86efce9be83bb776c7586184fa75e99a9.svg); }

.flag-icon-zm {
  background-image: url(/assets/flags/4x3/zm-8a6d8f87b53dd7256d461f64cf66e2cd90df833aca8833849fbfe7445caeeae2.svg); }
  .flag-icon-zm.flag-icon-squared {
    background-image: url(/assets/flags/1x1/zm-d68871c839973048d37ad325312abfc1b22b525e3f48faefedcebea29e3e9175.svg); }

.flag-icon-zw {
  background-image: url(/assets/flags/4x3/zw-506cb345575e94583b442c3a23ded41e36cf454e797b3b2e03b4445a37395666.svg); }
  .flag-icon-zw.flag-icon-squared {
    background-image: url(/assets/flags/1x1/zw-f7716b45f4f267a661f85af47e95447adc282a4b9fc18bc88316cd970f8d947d.svg); }

.flag-icon-es-ca {
  background-image: url(/assets/flags/4x3/es-ca-884e8f11877dc43b5c29bbc00c6980cc57ee8e671b710b9f9d59e29927cd25d4.svg); }
  .flag-icon-es-ca.flag-icon-squared {
    background-image: url(/assets/flags/1x1/es-ca-2f61e283eeea7f76c15207644f2a8538e05a4eae39dbc8186509209773701cd9.svg); }

.flag-icon-eu {
  background-image: url(/assets/flags/4x3/eu-dfa7f5c90f5fe9eb16c8c865e73cf7e3e8fea328bf6cfc1b07f6bc28eefd43f5.svg); }
  .flag-icon-eu.flag-icon-squared {
    background-image: url(/assets/flags/1x1/eu-c3a400ee8dc3ee4dcc2d0f2868698ce781d403a9ea249d972115c8455cfcaa9b.svg); }

.flag-icon-gb-eng {
  background-image: url(/assets/flags/4x3/gb-eng-65a380032580f7144bddfd4ab353bb478d523232c4303edb0095e34e98c7dcb9.svg); }
  .flag-icon-gb-eng.flag-icon-squared {
    background-image: url(/assets/flags/1x1/gb-eng-6fe299a85ef920693f193828362f306fbd23020d2bfc61dcf9143d85a6a5001b.svg); }

.flag-icon-gb-nir {
  background-image: url(/assets/flags/4x3/gb-nir-7cdb174057442ee76cc8a3fef9df4650460b3a3a9c0634c2417c42e7383efe3f.svg); }
  .flag-icon-gb-nir.flag-icon-squared {
    background-image: url(/assets/flags/1x1/gb-nir-ea58e209ad11b7e21e357799a5a0d4c7cfd13b2f7407cb09933a2dc485da41ff.svg); }

.flag-icon-gb-sct {
  background-image: url(/assets/flags/4x3/gb-sct-f7b13851e9b9de7532ef86afefb7fe2efe6149fee8ea50505771b4f7d112cf7b.svg); }
  .flag-icon-gb-sct.flag-icon-squared {
    background-image: url(/assets/flags/1x1/gb-sct-76e5e39a38915cf5f6020d6f58d0385f1fc0d502dbecddabf00a18cd50c88995.svg); }

.flag-icon-gb-wls {
  background-image: url(/assets/flags/4x3/gb-wls-c6e549d37113c25f679d5ea75020ea514971a1038b3c92d6a71c316a56b542da.svg); }
  .flag-icon-gb-wls.flag-icon-squared {
    background-image: url(/assets/flags/1x1/gb-wls-99a7a03c4ef2a0789d35aa1ab8b746ec72c1c8de58426afc7fa096d5a00802a7.svg); }

.flag-icon-un {
  background-image: url(/assets/flags/4x3/un-3760dc125288de6c2143060b283497dfed4de7430943f5be86a67d7668ede7a3.svg); }
  .flag-icon-un.flag-icon-squared {
    background-image: url(/assets/flags/1x1/un-aac693764e62f5d0bccf80bc53f68bb6cde75b18c3b3829a89b79555df538c71.svg); }

.flag-icon-xk {
  background-image: url(/assets/flags/4x3/xk-c40be9a1d1844391b275542b4a4ef7a9eecac72a93b08e7f4f2f4ebb17c7538c.svg); }
  .flag-icon-xk.flag-icon-squared {
    background-image: url(/assets/flags/1x1/xk-c5498f241b2608496ac30b7c8570d9dcd8f88432ea739ac0ca1abd7fd8beae99.svg); }
/*
 * This is a manifest file that'll be compiled into application.css, which will include all the files
 * listed below.
 *
 * Any CSS (and SCSS, if configured) file within this directory, lib/assets/stylesheets, or any plugin's
 * vendor/assets/stylesheets directory can be referenced here using a relative path.
 *
 * You're free to add application-wide styles to this file and they'll appear at the bottom of the
 * compiled file so the styles you add here take precedence over styles defined in any other CSS
 * files in this directory. Styles in this file should be added after the last require_* statement.
 * It is generally better to create a new file per style scope.
 *


 *= easymde-custom
 *= chats
 *= terminal

 */

/* Глобальное исправление скроллбара - унифицированный цвет для всех браузеров */
* {
  scrollbar-width: thin !important;
  scrollbar-color: #9ca3af transparent !important;
  accent-color: #9ca3af !important;
}

*::-webkit-scrollbar {
  width: 8px !important;
  height: 8px !important;
}

*::-webkit-scrollbar-track {
  background: transparent !important;
  border: none !important;
}

*::-webkit-scrollbar-thumb {
  background: #9ca3af !important;
  background-color: #9ca3af !important;
  border-radius: 4px !important;
  border: none !important;
}

*::-webkit-scrollbar-thumb:hover {
  background: #6b7280 !important;
  background-color: #6b7280 !important;
}

/* Темная тема */
.dark * {
  scrollbar-color: #52525b transparent !important;
}

.dark *::-webkit-scrollbar-thumb {
  background: #52525b !important;
  background-color: #52525b !important;
}

.dark *::-webkit-scrollbar-thumb:hover {
  background: #71717a !important;
  background-color: #71717a !important;
}

/* Специально для Safari - убираем наследование розового цвета */
@supports (-webkit-appearance: none) {
  *::-webkit-scrollbar-thumb {
    background: #9ca3af !important;
    background-color: #9ca3af !important;
    --main-500: #9ca3af !important;
  }
  
  .dark *::-webkit-scrollbar-thumb {
    background: #52525b !important;
    background-color: #52525b !important;
    --main-500: #52525b !important;
  }
}
