  .checkbox-wrapper input:checked + div {
      background-color: #06261F;
      border-color: #06261F;
  }

  .checkbox-wrapper input:checked + div svg {
      display: block;
  }

  .material-symbols-outlined {
    font-variation-settings:
    'FILL' 0,
    'wght' 400,
    'GRAD' 0,
    'opsz' 24
  }

  details > summary {
    list-style: none;
  }
  details > summary::-webkit-details-marker {
    display: none;
  }

  /* Стили для активного пункта меню */
  header nav a {
    position: relative;
    display: inline-block;
    padding-bottom: 4px;
  }

  header nav a::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0;
    height: 0;
    background-color: white;
    transition: width 0.3s ease-in-out, height 0.3s ease-in-out;
  }

  header nav a.active::after {
    width: 100%;
    height: 2px;
    animation: activeLine 0.4s ease-out;
  }

  @keyframes activeLine {
    0% {
      width: 0;
      height: 0;
      opacity: 0;
    }
    50% {
      width: 50%;
      height: 1px;
      opacity: 0.7;
    }
    100% {
      width: 100%;
      height: 2px;
      opacity: 1;
    }
  }

  /* Стили для уведомлений */
  .form-notification {
    transition: all 0.3s ease-in-out;
  }

  @keyframes slide-in {
    from {
      opacity: 0;
      transform: translateX(100%);
    }
    to {
      opacity: 1;
      transform: translateX(0);
    }
  }

  .animate-slide-in {
    animation: slide-in 0.3s ease-out;
  }

  /* Стили для ошибок формы */
  .error-border {
    outline: 2px solid #ef4444 !important;
    outline-offset: 2px;
    border-radius: 4px;
    background-color: rgba(239, 68, 68, 0.05);
  }

  /* Анимация тряски для ошибки */
  @keyframes shake {
    0%, 100% { transform: translateX(0); }
    10%, 30%, 50%, 70%, 90% { transform: translateX(-5px); }
    20%, 40%, 60%, 80% { transform: translateX(5px); }
  }

  .error-shake {
    animation: shake 0.5s ease-in-out;
  }