    * {
      box-sizing: border-box;
      margin: 0;
      padding: 0;
    }

    body {
      min-height: 100vh;
      display: flex;
      flex-direction: column;
      font-family: Arial, sans-serif;
    }

    header {
      background-color: #f5f5f5;
      padding: 12px 16px;
      border-bottom: 1px solid #ccc;
    }

    .search-box input[type="text"] {
      width: 100%;
      padding: 10px;
      font-size: 16px;
      border: 1px solid #ccc;
      border-radius: 4px;
    }

    .alphabet-links {
      background-color: #eaeaea;
      padding: 10px 16px;
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      border-bottom: 1px solid #ccc;
      overflow-x: auto; /* Горизонтальная прокрутка на мобильных */
      scrollbar-width: none; /* Убираем полосу прокрутки в Firefox */
    }

    .alphabet-links::-webkit-scrollbar {
      display: none; /* Убираем полосу прокрутки в Chrome/Safari */
    }

    .alphabet-links a {
      text-decoration: none;
      color: #333;
      padding: 6px 10px;
      background-color: #fff;
      border: 1px solid #ccc;
      border-radius: 4px;
      flex-shrink: 0;
      font-size: 14px;
    }

    main {
      flex: 1;
      padding: 16px;
    }

    footer {
      background-color: #222;
      color: #fff;
      text-align: center;
      padding: 12px 0;
      position: fixed;
      bottom: 0;
      width: 100%;
    }

    /* Медиа-запросы для мобильных устройств */
    @media (max-width: 600px) {
      .alphabet-links a {
        font-size: 13px;
        padding: 5px 8px;
      }

      .search-box input[type="text"] {
        font-size: 14px;
      }

      main h1 {
        font-size: 20px;
      }
    }