    /* --- БАЗОВЫЕ СТИЛИ (для компьютеров) --- */
    body { 
        font-family: Arial, sans-serif; 
        background: #f4f4f9; 
        padding: 20px; 
        margin: 0;
        display: flex;
        justify-content: center; /* Центрируем по горизонтали */
        align-items: flex-start; /* Прижимаем к верху */
        min-height: 100vh;
    }
    .container { 
        width: 100%;
        max-width: 600px; 
        background: white; 
        padding: 30px; 
        border-radius: 8px; 
        box-shadow: 0 4px 12px rgba(0,0,0,0.1); 
        margin-top: 20px;
    }
    h2 {
        text-align: center;
        color: #333;
        margin-bottom: 25px;
    }
    .question-block { 
        margin-bottom: 20px; 
        padding: 15px; 
        border: 1px solid #e0e0e0; 
        border-radius: 8px; 
        background: #fafafa; 
    }
    .question-title { 
        font-weight: 600; 
        margin-bottom: 10px; 
        font-size: 16px;
    }
    input, select { 
        width: 100%; 
        padding: 12px; 
        margin-top: 5px; 
        box-sizing: border-box; 
        border: 1px solid #ccc; 
        border-radius: 6px; 
        font-size: 16px; /* Предотвращает зум на iPhone */
        background: white;
    }
    button { 
        margin-top: 20px; 
        padding: 14px; 
        background: #673ab7; 
        color: white; 
        border: none; 
        width: 100%; 
        cursor: pointer; 
        border-radius: 6px; 
        font-size: 16px; 
        font-weight: bold;
        transition: background 0.2s;
    }
    button:hover {
        background: #5e35b1;
    }
    .btn-secondary { 
        background: #9e9e9e; 
        margin-top: 10px;
    }
    .btn-secondary:hover { 
        background: #757575; 
    }
    .hidden { 
        display: none !important; 
    }

    /* --- АДАПТАЦИЯ ДЛЯ МОБИЛЬНЫХ ТЕЛЕФОНОВ --- */
    @media (max-width: 768px) {
        body {
            padding: 0; /* Убираем отступы у body, чтобы форма была на весь экран */
            background: white; /* Белый фон, чтобы не было серых полос */
        }
        .container {
            padding: 20px;
            border-radius: 0; /* Убираем скругления */
            box-shadow: none; /* Убираем тень */
            max-width: 100%; /* Растягиваем на всю ширину */
            margin-top: 0; /* Прижимаем к верху */
        }
        h2 {
            font-size: 20px;
            margin-bottom: 20px;
        }
        .question-block {
            padding: 12px; /* Чуть меньше отступы, чтобы влезло больше */
        }
        input, select {
            font-size: 16px; 
            padding: 14px; /* Чуть больше для пальца */
        }
        button {
            font-size: 16px;
            padding: 16px; /* Кнопки крупнее */
        }
    }
