*, *::before, *::after {
  box-sizing: border-box;
}
body {
            font-family: "Manrope", sans-serif;
            margin: 0;
            padding: 0;
            background-color: #ecebeb;
            background-image: url('/static/img/footage/background3.jpg');
            display: flex;
            justify-content: center;
            align-items: center;
            min-height: 100vh;

        }
        
        
        
/* Remove default margin */
h1,
h2,
h3,
h4,
p,
figure,
blockquote,
dl,
dd {
  margin: 0;
}        
        
        

h1 {
  font-family: "Roboto Serif", serif;
  font-optical-sizing: auto;
  font-size: 3rem;
  line-height: 1.2;
  margin-bottom: 1rem;
  font-weight: 600;
  font-style: normal;
  font-variation-settings:
    "wdth" 100,
    "GRAD" 0;
}

h2 {
  font-family: "Roboto Serif", serif;
  font-optical-sizing: auto;
  font-size: 2.5rem;
  line-height: 1.2;
  margin-bottom: 1rem;  
  font-weight: 600;
  font-style: normal;
  font-variation-settings:
    "wdth" 100,
    "GRAD" 0;
}

h3 {
  font-family: "Manrope", sans-serif;
  font-optical-sizing: auto;
  font-size: 2rem;
  line-height: 1.2; 
  margin-bottom: 0.5rem;  
  opacity: 0.8;
  font-weight: 500;
  font-style: normal;
}

h4 {
  font-family: "Roboto Serif", serif;
  font-optical-sizing: auto;
  font-size: 1.8rem;
  line-height: 1.2;
  opacity: 0.8;
  font-weight: 700;
  font-style: normal;
  font-variation-settings:
    "wdth" 100,
    "GRAD" 0;
}

h5 {
  font-family: "Roboto Serif", serif;
  font-optical-sizing: auto;
  font-size: 1.5rem;
  line-height: 1.2;  
  opacity: 0.7;
  font-weight: 700;
  font-style: italic;
  font-variation-settings:
    "wdth" 100,
    "GRAD" 0;
}

h6 {
  font-family: "Roboto Serif", serif;
  font-optical-sizing: auto;
  font-size: 1.3rem;
  line-height: 1.2;  
  opacity: 0.9;
  font-weight: 400;
  font-style: italic;
  font-variation-settings:
    "wdth" 100,
    "GRAD" 0;
}


        

        .container {
            display: grid;
            grid-template-columns: 1fr 2fr;
            grid-gap: 50px;
            /*width: 90vw;*/
            padding: 0 0.5rem;
            max-width: 1200px;
        }
        .sidebar {
            /*background-color: #ecebeb;*/
            /*opacity: 0.7;*/
            padding-top: 20px;
            border-radius: 4px;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            text-align: left;
        }
        .logo {
            width: 230px;
            height: 230px;
            /*background: #b3dcdc;*/
            background-image: url('/static/img/logo/chatgpru-cyan-smart-logo.svg');
            background-size: contain;
            background-repeat: no-repeat;
            margin-bottom: 1rem;
        }
        .links a {
            text-align: left;
            font-size: 0.8em;
            display: block;
            color: rgba(44, 44, 44, 0.62);
            text-decoration: none;
            margin-top: 20px;
        }

        .links a:hover {
            color: rgb(44, 44, 44);
        }

        .links a:focus {
           color: #171717;
        }

        .links-row {
            display: flex;           /* горизонтально */
            flex-direction: row;
            flex-grow: 1;
            gap: 0.5rem;
            justify-content: space-between; /* расстояние между ссылками */
            margin-top: 1rem;
            margin-bottom: 10px;
            padding: 1rem;
            width: 100%;
            text-align: left;
            }

        .links-row a {
            text-align: left;
            font-size: 0.8em;
            color: rgba(44, 44, 44, 0.62);
            text-decoration: none;
        }

        .links-row a:hover {
            color: rgb(44, 44, 44);
            font-weight: bold;
        }

        .links-row a:focus {
            color: #171717;
            font-weight: bold;
        }


        .grid {
            margin-top: 1em;
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 30px;
            align-items: center;
            justify-content: center;

        }
        .grid a {
            text-decoration: none;
            color: rgb(23, 23, 23);
        }
        .grid a:visited {
            text-decoration: none;
        }
        .card {
            max-width: 100%;
            height: 300px;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            background-color: #f4f4f4;
            padding: 1rem;
            border-radius: 10px;
            text-align: left;
            box-shadow: 0 10px 20px rgba(0, 0, 0, 0.3);
            text-decoration: none;
        }

        .card img {
            width: 150px;
            height: auto;
            }

        .card h3 {
            text-align: left;
        }

        .card-price {
            font-size: 1em;
            font-weight: 600;
        }
        .card-content {
            text-align: left;
        }

        .card-small {
            margin: 10px 0;
            display: block;
            font-size: 0.7em;
            font-weight: 600;
            /*color: #ff5757;*/
        }
        .card-medium {
            display: block;
            font-size: 0.8em;
            padding: 1rem;
        }

        .card:hover {
            background-color: #ffffff;
            box-shadow: 0 0 2rem rgba(0, 0, 0, 0.4);
            transition: all 0.3s ease-in-out;
        }

        .card:active {
            border: 2px darkcyan solid;
        }

        .card.active {
            border: 1px solid darkcyan;
            background-color: lightcyan; /* Светлый оттенок для выделения */
            box-shadow: 0 0 2rem rgba(32, 178, 170, 0.8);
            /*font-weight: bolder;*/
         }
        .card:first-child {
            margin-top: 0;
        }
        .card:last-child {
            margin-bottom: 0;
        }

        .right-side {
            position: relative;
            display: flex;
            gap: 2rem;
            flex-grow: 1;
            flex-wrap: wrap;
            justify-content: center;
        }

        .form_button{
    display: flex;
    align-items: center; /* Выравнивание по вертикали */
    justify-content: center; /* Центрирование содержимого */
    gap: 10px; /* Расстояние между иконкой и текстом */
    padding: 10px 20px;
    width: 80%;
    background-color: lightcyan;
    margin: 1rem auto 1rem;
    border-radius: 10px;
    height: 45px;
    border: none;
    cursor: pointer;
}

        .form_button:hover {
      color: #000000;
      border-radius: 10px;
      background: cyan;
      opacity: 0.7;
}

.dropdown {
    width: 100%;
    margin-top: 1rem;
}


.dropdown-button {
    background-color: lightcyan;
    border-radius: 8px;
    padding: 10px 15px;
    text-align: center;
    cursor: pointer;
    font-weight: bold;
    font-size: 0.8em;
    color: #171717;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
    list-style: none;
    user-select: none;
    width: 100%;
    box-sizing: border-box;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.dropdown-button:hover {
    background-color: cyan;
    opacity: 0.85;
}

.dropdown[open] .dropdown-button {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

.dropdown-content {
    background-color: #fff;
    border: 1px solid #ccc;
    border-top: none;
    border-radius: 0 0 8px 8px;
    padding: 10px 15px;
    font-size: 0.75em;
    color: #333;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
    max-width: 200px;
    max-height: 420px;         /* ✅ Ограничиваем высоту */
    overflow-y: auto;          /* ✅ Добавляем вертикальную прокрутку */
    box-sizing: border-box;
    width: 100%;
}

.form_auth_block {
    width: clamp(min(10vw, 20rem), 370px, max(90vw, 55rem));
    font-family: "Manrope", sans-serif;
    /*position: absolute;*/
    /*top: 50%;*/
    /*left: 50%;*/
    /*margin-right: -50%;*/
    /*transform: translate(-50%, -50%);*/
    margin-bottom: 1rem;
    background-color: darkcyan;
    background-size: cover;
    border-radius: 4px;
}

.form_auth_block label{
    display: block;
    text-align: center;
    padding: 10px;
    color: #ffffff;
    font-weight: 400;
    margin-bottom: 5px;
    margin-top: 5px;
}
.form_auth_block input{
      display: block;
      margin: 0 auto 10px;
      /*padding-left: 10px;*/
      width: 80%;
      height: 45px;
      border-radius: 10px;
      border:none;
      outline: none;
}

input:hover {
      color: #000000;
      border-radius: 10px;
      background: #ffffff;
      opacity: 0.7;
}

input:focus {
  color: #000000;
  border-radius: 10px;
  border: 2px solid #436fea;
}
.form_auth_button{
    display: flex;
    align-items: center; /* Выравнивание по вертикали */
    justify-content: center; /* Центрирование содержимого */
    gap: 10px; /* Расстояние между иконкой и текстом */
    padding: 10px 20px;
    width: 80%;
    /*margin-top: 10px;*/
    margin: 0 auto 10px;
    border-radius: 10px;
    height: 45px;
    border: none;
    cursor: pointer;
}

svg {
    flex-shrink: 0; /* Запрещаем уменьшение иконки */
}

.form_auth_button:hover {
      color: #000000;
      border-radius: 10px;
      background: #ffffff;
      opacity: 0.7;
}

.copy-container {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  border: 1px solid #ccc;
  border-radius: 8px;
  padding: 4px 8px;
  background-color: #f9f9f9;
  position: relative;
  max-width: 100%;
}

.copy-text {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: clamp( 150px, 200px, 250px);
}

.copy-button {
  background: none;
  border: none;
  cursor: pointer;
  color: #555;
  font-size: 1rem;
  padding: 2px;
  transition: color 0.2s ease;
}

.copy-button:hover {
  color: #000;
}

.boosty-row {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 1rem;
    /*width: 80%;*/
}
.user-literal {
    background-color: #cce8b6;
    border-radius: 100%;
    display: flex;
    width: 2.5rem;
    height: 2.5rem;
    aspect-ratio: 1 / 1;
    align-items: center;
    justify-content: center;
    font-weight: bold; /* опционально */
    color: #2a3602;       /* или тёмный цвет, если фон светлый */
    font-size: 1rem;
    overflow: hidden;
    flex-shrink: 0;             /* Не даёт flexу сжать блок */
    place-self: center; 
}

.user-info {
    position: absolute;
    /*margin-left: auto;*/
    top: 20px;
    left: 10px;
    width: 2rem;
    height: 2rem;
    background-color: #31edae;
    border-radius: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold; /* опционально */
    color: #2a3602; /* или тёмный цвет, если фон светлый */
    font-size: 0.8rem;
    text-align: center;
    overflow: hidden;
    cursor: pointer;
    z-index: 100;
}



.custom-list {
  list-style: none;
  padding-left: 0;
}

.custom-list li {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 0.2rem;
  font-size: 0.7em;
}

.bullet-icon {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}



        @media (max-width: 1024px) {
            .container {
                grid-template-columns: 1fr;
                gap: 10px;
            }

            .grid {
                grid-template-columns: repeat(2, 1fr);
                margin-top: 20px;
              }

            .card {
                max-width: 100%;
            }

            }

        @media (max-width: 600px) {
            .container {
                grid-template-columns: 1fr;
                gap: 10px;
            }

            .grid {
                grid-template-columns: 1fr;
                margin-top: 20px;
                margin-bottom: 20px;
                gap: 10px;
            }
            .card {
                max-width: 100%;
                max-height: 100%;
            }
            .card-medium {
                font-size: 1em;
            }

            .dropdown-content {
            max-width: 250px;
            }
        }


@media (prefers-color-scheme: dark) {
    card {
        color: #171717;
    }
    .card h3 {
      color: #171717;
    }
    .card-medium {
        color: #171717;
    }
    .card-small {
       color: #171717;
    }
    .copy-text {
        color: #171717;
    }
}
